build: fix <ndbm.h> detection in AC_PACKAGE_WANT_GDBM
authorJeff Mahoney <jeffm@suse.com>
Thu, 15 Mar 2018 21:54:55 +0000 (17:54 -0400)
committerEryu Guan <guaneryu@gmail.com>
Fri, 23 Mar 2018 03:26:04 +0000 (11:26 +0800)
SUSE systems export the NDBM interface via /usr/include/ndbm.h

This means that dbtest wasn't built on SUSE systems until commit
2353022 (build: update AC_PACKAGE_WANT_GDBM() and src/dbtest.c to
build). That change was incompatible with older SLES releases due to
<ndbm.h> and <gdbm.h> both defining the datum type, resulting in
build failures.

Nothing has ever set HAVE_GDBM_H or checked for the <gdbm.h> header
prior to the above commit, and it's not required on SUSE systems
either, so just remove that entirely.

Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Reviewed-by: Eryu Guan <guaneryu@gmail.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
m4/package_gdbmdev.m4
src/dbtest.c

index 922cbcb..723900f 100644 (file)
@@ -22,26 +22,12 @@ AC_DEFUN([AC_PACKAGE_WANT_GDBM],
     fi
 
     if test -z "$have_db"; then
-      AC_CHECK_HEADER(gdbm.h,
-       [
-         have_db=true
-         gdbm_ndbm_=true
-       ], [
-         have_db=false
-         gdbm_ndbm_=false
-       ])
       AC_CHECK_HEADER(ndbm.h,
        [
-         ndbm_=true
-       ], [
-         ndbm_=false
+         have_db=true
+         AC_DEFINE(HAVE_NDBM_H, [1],
+                   [Define to 1 if you have the <ndbm.h> header file.])
        ])
-       if test $gdbm_ndbm_ = true; then
-         if test $ndbm_ = true; then
-           AC_DEFINE(HAVE_GDBM_H, [1],
-                     [Define to 1 if you have both <gdbm.h> and <ndbm.h> header files.])
-         fi
-       fi
     fi
 
     if test "$have_db" = true; then
index f45db4a..4366dcd 100644 (file)
@@ -22,9 +22,6 @@
 #include <gdbm/ndbm.h>
 #elif HAVE_GDBM_NDBM_H
 #include <gdbm-ndbm.h>
-#elif HAVE_GDBM_H
-#include <gdbm.h>
-#include <ndbm.h>
 #elif HAVE_NDBM_H
 #include <ndbm.h>
 #else