45 lines
1.1 KiB
Bash
45 lines
1.1 KiB
Bash
|
#!/usr/bin/env bash
|
||
|
|
||
|
RETVAL=0
|
||
|
|
||
|
# params - paths to the source files to search
|
||
|
SRC="$*"
|
||
|
|
||
|
# param FUNC - name of the function in compat to check
|
||
|
check_compat_func () {
|
||
|
FILES=`grep -rE "([^[:alnum:]]|^)$1\([^\)]+\)" --include=\*.{c,h} $SRC | cut -d: -f1 | uniq`
|
||
|
for f in $FILES; do
|
||
|
grep -q "#include \"compat.h\"" $f
|
||
|
if [ $? -ne 0 ]; then
|
||
|
echo "Missing #include \"compat.h\" in file $f for function $1()"
|
||
|
RETVAL=$((RETVAL+1))
|
||
|
fi
|
||
|
done
|
||
|
}
|
||
|
|
||
|
check_compat_macro () {
|
||
|
FILES=`grep -rE "([^[:alnum:]]|^)$1([^[:alnum:]]|$)" --include=\*.{c,h} $SRC | cut -d: -f1 | uniq`
|
||
|
for f in $FILES; do
|
||
|
grep -q "#include \"compat.h\"" $f
|
||
|
if [ $? -ne 0 ]; then
|
||
|
echo "Missing #include \"compat.h\" in file $f for macro $1"
|
||
|
RETVAL=$((RETVAL+1))
|
||
|
fi
|
||
|
done
|
||
|
}
|
||
|
|
||
|
check_compat_func vdprintf
|
||
|
check_compat_func asprintf
|
||
|
check_compat_func vasprintf
|
||
|
check_compat_func getline
|
||
|
check_compat_func strndup
|
||
|
check_compat_func strnstr
|
||
|
check_compat_func strdupa
|
||
|
check_compat_func strchrnul
|
||
|
check_compat_func get_current_dir_name
|
||
|
check_compat_func pthread_mutex_timedlock
|
||
|
check_compat_func UNUSED
|
||
|
check_compat_macro _PACKED
|
||
|
|
||
|
exit $RETVAL
|