Skip to content

Commit 4f13267

Browse files
gh-129388: Use user supplied env vars when checking for gdbm deps
Use GDBM_CFLAGS and GDBM_LIBS for all gdbm related checks.
1 parent 8e57877 commit 4f13267

File tree

2 files changed

+72
-102
lines changed

2 files changed

+72
-102
lines changed

configure

Lines changed: 39 additions & 65 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

configure.ac

Lines changed: 33 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -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

44174445
AC_MSG_CHECKING([for ndbm presence and linker args])
@@ -4428,38 +4456,6 @@ AS_CASE([$ac_cv_search_dbm_open],
44284456
)
44294457
AC_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
44654461
AC_CHECK_HEADERS([db.h], [

0 commit comments

Comments
 (0)