Split check-build into check-source and check-win32.
This commit is contained in:
@@ -18,4 +18,6 @@ update-changelog: FORCE
|
||||
&& git log --stat | grep -v '^ \(git-svn-id\|$$\)' \
|
||||
| sed '/^Author:/s/ <.*@.*>//' > ChangeLog
|
||||
|
||||
echo-dirs: ; echo src test
|
||||
|
||||
FORCE:
|
||||
|
||||
@@ -8,7 +8,7 @@ TESTS = check-zzuf-A-autoinc \
|
||||
check-zzuf-m-md5 \
|
||||
check-zzuf-M-max-memory \
|
||||
check-zzuf-r-ratio \
|
||||
check-build check-overflow check-div0 check-utils
|
||||
check-source check-win32 check-overflow check-div0 check-utils
|
||||
|
||||
echo-sources: ; echo $(SOURCES)
|
||||
|
||||
|
||||
@@ -1,65 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# check-build - check build system and source code for inconsistencies
|
||||
# Copyright (c) 2009-2010 Sam Hocevar <sam@hocevar.net>
|
||||
# All Rights Reserved
|
||||
#
|
||||
# This program is free software. It comes without any warranty, to
|
||||
# the extent permitted by applicable law. You can redistribute it
|
||||
# and/or modify it under the terms of the Do What The Fuck You Want
|
||||
# To Public License, Version 2, as published by Sam Hocevar. See
|
||||
# http://sam.zoy.org/wtfpl/COPYING for more details.
|
||||
#
|
||||
|
||||
ret=0
|
||||
|
||||
#
|
||||
# Check that the Win32 config.h is in sync with config.h.in
|
||||
#
|
||||
|
||||
config_h_in=$(dirname "$0")/../config.h.in
|
||||
msvc_config_h=$(dirname "$0")/../msvc/config.h
|
||||
|
||||
failure=0
|
||||
for key in $(sed -ne 's/.*#undef *\([A-Za-z0-9_]*\).*/\1/p' "$config_h_in");
|
||||
do
|
||||
if ! grep "[ef] $key[ (]" "$msvc_config_h" >/dev/null 2>&1; then
|
||||
echo "error: $key missing from msvc/config.h"
|
||||
failure=1
|
||||
fi
|
||||
done
|
||||
if test "$failure" != "0"; then
|
||||
ret=1
|
||||
else
|
||||
echo "0 errors in Win32 config.h"
|
||||
fi
|
||||
|
||||
#
|
||||
# Check that we have no tabs or trailing spaces in the source code
|
||||
#
|
||||
failure=0
|
||||
for dir in src test; do
|
||||
(cd $(dirname "$0")/../$dir
|
||||
for x in $(make -s echo-sources); do
|
||||
if grep '[[:space:]]$' "$x" >/dev/null 2>&1; then
|
||||
echo "error: $dir/$x contains trailing spaces"
|
||||
failure=1
|
||||
fi
|
||||
if grep ' ' "$x" >/dev/null 2>&1; then
|
||||
echo "error: $dir/$x contains tabs"
|
||||
failure=1
|
||||
fi
|
||||
done)
|
||||
done
|
||||
if test "$failure" != "0"; then
|
||||
ret=1
|
||||
else
|
||||
echo "0 errors in source code"
|
||||
fi
|
||||
|
||||
if test "$ret" != "0"; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
exit 0
|
||||
|
||||
37
test/check-source
Executable file
37
test/check-source
Executable file
@@ -0,0 +1,37 @@
|
||||
#!/bin/sh
|
||||
|
||||
#
|
||||
# Check that we have no tabs or trailing spaces in the source code
|
||||
#
|
||||
nfails=0
|
||||
nfiles=0
|
||||
nlines=0
|
||||
for dir in $(make -s echo-dirs -C ..); do
|
||||
if [ ! -d "../$dir" ]; then continue; fi
|
||||
for x in $(make -s echo-sources -C ../$dir); do
|
||||
case "$x" in
|
||||
*.c|*.cpp|*.h|*.m|*.php|*.cs|*.java|.py|.pl)
|
||||
nfiles=$(($nfiles + 1));
|
||||
nlines=$(($nlines + `grep -c . "../$dir/$x"`)) ;;
|
||||
*)
|
||||
continue ;;
|
||||
esac
|
||||
if grep '[[:space:]]$' "../$dir/$x" >/dev/null 2>&1; then
|
||||
echo "error: $dir/$x contains trailing spaces"
|
||||
nfails=$(($nfails + 1))
|
||||
fi
|
||||
if grep ' ' "../$dir/$x" >/dev/null 2>&1; then
|
||||
echo "error: $dir/$x contains tabs"
|
||||
nfails=$(($nfails + 1))
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
echo "$nfiles files, $nlines lines, $nfails errors in source code"
|
||||
|
||||
if test "$nfails" != "0"; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
exit 0
|
||||
|
||||
30
test/check-win32
Executable file
30
test/check-win32
Executable file
@@ -0,0 +1,30 @@
|
||||
#!/bin/sh
|
||||
|
||||
ret=0
|
||||
|
||||
#
|
||||
# Check that the Win32 config.h is in sync with config.h.in
|
||||
#
|
||||
|
||||
config_h_in=$(dirname "$0")/../config.h.in
|
||||
win32_config_h=$(dirname "$0")/../msvc/config.h
|
||||
|
||||
nfails=0
|
||||
ntokens=0
|
||||
for key in $(sed -ne 's/.*#undef *\([A-Za-z0-9_]*\).*/\1/p' "$config_h_in");
|
||||
do
|
||||
ntokens=$(($ntokens + 1))
|
||||
if ! grep '[ef] \<'"$key"'\>' "$win32_config_h" >/dev/null 2>&1; then
|
||||
echo "error: $key missing from msvc/config.h"
|
||||
nfails=$(($nfails + 1))
|
||||
fi
|
||||
done
|
||||
|
||||
echo "$ntokens tokens, $nfails errors in Win32 config.h"
|
||||
|
||||
if test "$nfails" != "0"; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
exit 0
|
||||
|
||||
Reference in New Issue
Block a user