diff options
Diffstat (limited to 'src/check-header-compile.in')
| -rwxr-xr-x | src/check-header-compile.in | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/src/check-header-compile.in b/src/check-header-compile.in new file mode 100755 index 000000000..6d0e10789 --- /dev/null +++ b/src/check-header-compile.in @@ -0,0 +1,41 @@ +#! /bin/sh +# Check that each .h file has all the includes it needs. + +# Probably requires gnu find (for -printf '%P\n'). + +# This script hereby placed into the public domain. + +set -e +mydir=`dirname "$0"` +cd "$mydir" +srcdir="@srcdir@" +CXX="@CXX@" +INKSCAPE_CFLAGS="@INKSCAPE_CFLAGS@" +OBJEXT="@OBJEXT@" +config_h_dir=.. + +check_compile () { + (echo "#include <config.h>"; echo "#include <$1>"; echo "int header_tst_dummy;") > header-tst.cpp + $CXX -c -I. -I"$srcdir" -I$config_h_dir $INKSCAPE_CFLAGS header-tst.cpp +} + +if [ $# = 0 ]; then + for i in `find "$srcdir" \ + -name bonobo -prune \ + -o -name ecma -prune \ + -o -name render -prune \ + -o -name xpath -prune \ + -o -path '*/extension/script/js' -prune \ + -o -name '*.h' \ + \! -name gnome.h \! -name win32.h \! -name nr-type-gnome.h \! -name nr-type-w32.h \! -name Livarot.h \! -name radial.h \ + \! -name '*-test.h' \ + -printf '%P\n'` + do + check_compile "$i" + done +else + for i in "$@"; do + check_compile "$i" + done +fi +rm header-tst.cpp header-tst.$OBJEXT |
