-dnl --------------
-dnl CHECK FOR NDBM
-dnl --------------
-
-AC_ARG_WITH([ndbm],AS_HELP_STRING([--with-ndbm=ARG],[use -lARG to link with ndbm]),
- [nmh_ndbm=$withval],[nmh_ndbm=autodetect])
-AC_ARG_WITH([ndbmheader],AS_HELP_STRING([--with-ndbmheader=ARG],[#include <ARG> to use ndbm]),
- [nmh_ndbmheader=$withval],[nmh_ndbmheader=autodetect])
-
-if test "$nmh_ndbm" = "autodetect"; then
- if test "$nmh_ndbmheader" != "autodetect"; then
- AC_MSG_ERROR([must specify both --with-ndbm and --with-ndbmheader or neither])
- else
-
- dnl There are at least four implementations of ndbm, and
- dnl several of those can be in different places at the whim
- dnl of the system integrator. A good summary of this mess
- dnl can be found at http://www.unixpapa.com/incnote/dbm.html
-
- dnl Classic ndbm with no library required (eg NetBSD): try this
- dnl first so we don't accidentally link in a pointless but harmless
- dnl library in one of the later ndbm.h+libfoo tests:
- NMH_CHECK_NDBM(ndbm.h,,,
- dnl Berkeley DBv2 emulating ndbm: header in db.h:
- NMH_CHECK_NDBM(db.h,db,,
- dnl Berkeley DBv1 emulating ndbm:
- NMH_CHECK_NDBM(ndbm.h,db,,
- NMH_CHECK_NDBM(ndbm.h,db1,,
- dnl Classic ndbm:
- NMH_CHECK_NDBM(ndbm.h,ndbm,,
- dnl glibc2.1 systems put db1 in a subdir:
- NMH_CHECK_NDBM(db1/ndbm.h,db1,,
- dnl GNU gdbm emulating ndbm, with header possibly in gdbm/
- dnl and possibly needing gbdm_compat library:
- NMH_CHECK_NDBM(gdbm/ndbm.h,gdbm,,
- NMH_CHECK_NDBM(gdbm/ndbm.h,gdbm_compat -lgdbm,,
- NMH_CHECK_NDBM(ndbm.h,gdbm,,
- NMH_CHECK_NDBM(ndbm.h,gdbm_compat -lgdbm))))))))))
-
- fi
-else
- dnl We don't really need to check that the user-specified values work,
- dnl but it is a convenience to the user to bomb out early rather than
- dnl after configure and half the compile process.
- NMH_CHECK_NDBM([$nmh_ndbmheader],[$nmh_ndbm])
-fi
-
-if test "$nmh_ndbm_found" = "no"; then
- AC_MSG_ERROR([could not find a working ndbm library/header combination])
-else
- dnl Now export the lib/header to our makefile/config.h:
- if test x"$nmh_ndbmheader" != x; then
- AC_DEFINE_UNQUOTED(NDBM_HEADER, <$nmh_ndbmheader>,
- [Define to the header containing the ndbm API prototypes.])
- fi
- if test x"$nmh_ndbm" != x; then
- NDBM_LIBS="-l$nmh_ndbm"
- else
- NDBM_LIBS=
- fi
- AC_SUBST(NDBM_LIBS)
-fi
-