@@ -4404,14 +4404,42 @@ WITH_SAVE_ENV([
44044404 GDBM_LIBS=${GDBM_LIBS-"-lgdbm"}
44054405 ] , [ have_gdbm=no] )
44064406 ] , [ have_gdbm=no] )
4407- ] )
44084407
4409- dnl check for _dbmmodule.c dependencies
4410- dnl ndbm, gdbm_compat, libdb
4411- AC_CHECK_HEADERS ( [ ndbm.h] , [
4412- WITH_SAVE_ENV([
4408+ dnl check for _dbmmodule.c dependencies
4409+ dnl ndbm, gdbm_compat, libdb
4410+ AC_CHECK_HEADERS ( [ ndbm.h] , [
44134411 AC_SEARCH_LIBS ( [ dbm_open] , [ ndbm gdbm_compat] )
44144412 ] )
4413+
4414+ dnl "gdbm-ndbm.h" and "gdbm/ndbm.h" are both normalized to "gdbm_ndbm_h"
4415+ dnl unset ac_cv_header_gdbm_ndbm_h to prevent false positive cache hits.
4416+ AS_UNSET ( [ ac_cv_header_gdbm_ndbm_h] )
4417+ AC_CACHE_VAL ( [ ac_cv_header_gdbm_slash_ndbm_h] , [
4418+ AC_CHECK_HEADER (
4419+ [ gdbm/ndbm.h] ,
4420+ [ ac_cv_header_gdbm_slash_ndbm_h=yes] , [ ac_cv_header_gdbm_slash_ndbm_h=no]
4421+ )
4422+ ] )
4423+ AS_VAR_IF ( [ ac_cv_header_gdbm_slash_ndbm_h] , [ yes] , [
4424+ AC_DEFINE ( [ HAVE_GDBM_NDBM_H] , [ 1] , [ Define to 1 if you have the <gdbm/ndbm.h> header file.] )
4425+ ] )
4426+
4427+ AS_UNSET ( [ ac_cv_header_gdbm_ndbm_h] )
4428+ AC_CACHE_VAL ( [ ac_cv_header_gdbm_dash_ndbm_h] , [
4429+ AC_CHECK_HEADER (
4430+ [ gdbm-ndbm.h] ,
4431+ [ ac_cv_header_gdbm_dash_ndbm_h=yes] , [ ac_cv_header_gdbm_dash_ndbm_h=no]
4432+ )
4433+ ] )
4434+ AS_VAR_IF ( [ ac_cv_header_gdbm_dash_ndbm_h] , [ yes] , [
4435+ AC_DEFINE ( [ HAVE_GDBM_DASH_NDBM_H] , [ 1] , [ Define to 1 if you have the <gdbm-ndbm.h> header file.] )
4436+ ] )
4437+ AS_UNSET ( [ ac_cv_header_gdbm_ndbm_h] )
4438+
4439+ if test "$ac_cv_header_gdbm_slash_ndbm_h" = yes -o "$ac_cv_header_gdbm_dash_ndbm_h" = yes; then
4440+ AS_UNSET ( [ ac_cv_search_dbm_open] )
4441+ AC_SEARCH_LIBS ( [ dbm_open] , [ gdbm_compat] , [ have_gdbm_compat=yes] , [ have_gdbm_compat=no] )
4442+ fi
44154443] )
44164444
44174445AC_MSG_CHECKING ( [ for ndbm presence and linker args] )
@@ -4428,38 +4456,6 @@ AS_CASE([$ac_cv_search_dbm_open],
44284456)
44294457AC_MSG_RESULT ( [ $have_ndbm ($dbm_ndbm)] )
44304458
4431- dnl "gdbm-ndbm.h" and "gdbm/ndbm.h" are both normalized to "gdbm_ndbm_h"
4432- dnl unset ac_cv_header_gdbm_ndbm_h to prevent false positive cache hits.
4433- AS_UNSET ( [ ac_cv_header_gdbm_ndbm_h] )
4434- AC_CACHE_VAL ( [ ac_cv_header_gdbm_slash_ndbm_h] , [
4435- AC_CHECK_HEADER (
4436- [ gdbm/ndbm.h] ,
4437- [ ac_cv_header_gdbm_slash_ndbm_h=yes] , [ ac_cv_header_gdbm_slash_ndbm_h=no]
4438- )
4439- ] )
4440- AS_VAR_IF ( [ ac_cv_header_gdbm_slash_ndbm_h] , [ yes] , [
4441- AC_DEFINE ( [ HAVE_GDBM_NDBM_H] , [ 1] , [ Define to 1 if you have the <gdbm/ndbm.h> header file.] )
4442- ] )
4443-
4444- AS_UNSET ( [ ac_cv_header_gdbm_ndbm_h] )
4445- AC_CACHE_VAL ( [ ac_cv_header_gdbm_dash_ndbm_h] , [
4446- AC_CHECK_HEADER (
4447- [ gdbm-ndbm.h] ,
4448- [ ac_cv_header_gdbm_dash_ndbm_h=yes] , [ ac_cv_header_gdbm_dash_ndbm_h=no]
4449- )
4450- ] )
4451- AS_VAR_IF ( [ ac_cv_header_gdbm_dash_ndbm_h] , [ yes] , [
4452- AC_DEFINE ( [ HAVE_GDBM_DASH_NDBM_H] , [ 1] , [ Define to 1 if you have the <gdbm-ndbm.h> header file.] )
4453- ] )
4454- AS_UNSET ( [ ac_cv_header_gdbm_ndbm_h] )
4455-
4456- if test "$ac_cv_header_gdbm_slash_ndbm_h" = yes -o "$ac_cv_header_gdbm_dash_ndbm_h" = yes; then
4457- AS_UNSET ( [ ac_cv_search_dbm_open] )
4458- WITH_SAVE_ENV([
4459- AC_SEARCH_LIBS ( [ dbm_open] , [ gdbm_compat] , [ have_gdbm_compat=yes] , [ have_gdbm_compat=no] )
4460- ] )
4461- fi
4462-
44634459# Check for libdb >= 5 with dbm_open()
44644460# db.h re-defines the name of the function
44654461AC_CHECK_HEADERS ( [ db.h] , [
0 commit comments