spot/src/sanity/80columns.test
Alexandre Duret-Lutz 0c005c8159 More fixes for the OS X builds.
* src/bin/common_r.hh: Include common_sys.hh first.
* src/sanity/80columns.test: Set LANG.
2012-09-17 11:51:44 +02:00

47 lines
1 KiB
Bash
Executable file

#! /bin/sh
# Check that all files use at most 80 columns.
set -e
rm -f failures
LANG=en_US.UTF-8
export LANG
if [ "`echo '{r₁|r₂|r₃}' | wc -m`" != 11 ]; then
LANG=C
export LANG
# The current locale does not grok unicode.
# We still run this test, but only on lines that are purely ascii.
x='[^ -~]' # This blank is a tab.
else
x='.'
fi
x="$x$x$x$x$x$x$x$x$x" # 9x
x="$x$x$x$x$x$x$x$x$x" # 81x
for dir in "${INCDIR-..}" "${INCDIR-..}"/../iface; do
find "$dir" \( -name "${1-*}.hh" \
-o -name "${1-*}.hxx" \
-o -name "${1-*}.cc" \
-o -name "${1-*}.test" \) -a -type f -a -print |
while read file; do
if (expand $file | grep -q $x) 2>/dev/null; then
if grep 'GNU Bison' "$file" >/dev/null ||
grep 'generated by flex' "$file" >/dev/null ; then
:
else
echo "$file" >>failures
fi
fi
done
done
if test -f failures; then
echo "The following files contain lines with more than 80 characters:"
cat failures
rm failures
exit 1;
fi