# Our config tool sucks... if this script decides to modify the # LIBS variable it won't be used by any of the other TestCompiles. # So unless we protect ourselves with the found_dbm variable # we'd end up having to do the work twice... and we'd end up putting # two -ldbm -ldbm into the LIBS variable. if [ "x$found_dbm" = "x" ]; then if ./helpers/TestCompile func dbm_open; then found_dbm=1 else found_dbm=0 case "$PLAT" in *-linux*) # many systems don't have -ldbm DBM_LIB="" if ./helpers/TestCompile lib ndbm dbm_open; then DBM_LIB="-lndbm" if ./helpers/TestCompile lib db1 dbm_open; then # Red Hat needs this; ndbm.h lives in db1 CFLAGS="$CFLAGS -I/usr/include/db1" fi elif ./helpers/TestCompile lib db1 dbm_open; then # For Red Hat 7, if not handled by the ndbm case above DBM_LIB="-ldb1" CFLAGS="$CFLAGS -I/usr/include/db1" elif ./helpers/TestCompile lib gdbm dbm_open; then DBM_LIB="-lgdbm" CFLAGS="$CFLAGS -I/usr/include/gdbm" elif ./helpers/TestCompile lib dbm dbm_open; then DBM_LIB="-ldbm" fi if [ "x$DBM_LIB" != "x" ]; then LIBS="$LIBS $DBM_LIB" found_dbm=1 fi ;; *-cygwin*) # we use the shared DLL version of gdbm if available DBM_LIB="" if ./helpers/TestCompile lib gdbm dbm_open; then DBM_LIB="-lgdbm" LIBS="$LIBS $DBM_LIB" found_dbm=1 fi ;; *) if [ "x$DBM_LIB" != "x" ]; then oldLIBS="$LIBS" LIBS="$LIBS $DBM_LIB" if ./helpers/TestCompile func dbm_open; then found_dbm=1 else found_dbm=0 LIBS="$oldLIBS" fi else for dblib in dbm ndbm db do DBM_LIB="" if ./helpers/TestCompile lib $dblib dbm_open; then DBM_LIB="-l${dblib}" LIBS="$LIBS $DBM_LIB" found_dbm=1 break fi done fi ;; esac if [ "x$found_dbm" = "x1" ]; then echo " + using $DBM_LIB for DBM support" fi fi fi