summaryrefslogtreecommitdiff
path: root/db-4.8.30/test/scr002
diff options
context:
space:
mode:
Diffstat (limited to 'db-4.8.30/test/scr002')
-rw-r--r--db-4.8.30/test/scr002/chk.def67
1 files changed, 67 insertions, 0 deletions
diff --git a/db-4.8.30/test/scr002/chk.def b/db-4.8.30/test/scr002/chk.def
new file mode 100644
index 0000000..16001fd
--- /dev/null
+++ b/db-4.8.30/test/scr002/chk.def
@@ -0,0 +1,67 @@
+#!/bin/sh -
+#
+# $Id$
+#
+# Check to make sure we haven't forgotten to add any interfaces
+# to the Windows libdb.def file.
+
+d=../..
+
+# Test must be run from the top-level directory, not from a test directory.
+[ -f $d/LICENSE ] || {
+ echo 'FAIL: cannot find source distribution directory.'
+ exit 1
+}
+
+f=$d/build_windows/libdb.def
+t1=__1
+t2=__2
+
+exitv=0
+
+sed '/; /d' $f |
+ egrep @ |
+ awk '{print $1}' |
+ sed -e '/^__/d' \
+ -e '/^;/d' |
+ sort > $t1
+
+egrep __P $d/dbinc_auto/ext_prot.in |
+ sed '/^[a-z]/!d' |
+ awk '{print $2}' |
+ sed -e 's/^\*//' \
+ -e '/db_env_set_func_\(free\|malloc\|realloc\)/p' \
+ -e '/db_env_set_func_/d' |
+ sed '/^__/d' | sort > $t2
+
+if cmp -s $t1 $t2 ; then
+ :
+else
+ echo "<<< libdb.def >>> DB include files"
+ diff $t1 $t2
+ echo "FAIL: missing items in libdb.def file."
+ exitv=1
+fi
+
+# Check to make sure we don't have any extras in the libdb.def file.
+sed '/; /d' $f |
+ egrep @ |
+ awk '{print $1}' |
+ sed -e '/__db_global_values/d' |
+ sed -e '/__db_C*/d' > $t1
+
+for i in `cat $t1`; do
+ if egrep $i $d/*/*.c > /dev/null; then
+ :
+ else
+ echo "$f: $i not found in DB sources"
+ fi
+done > $t2
+
+test -s $t2 && {
+ cat $t2
+ echo "FAIL: found unnecessary items in libdb.def file."
+ exitv=1
+}
+
+exit $exitv