-
- Notifications
You must be signed in to change notification settings - Fork 33.6k
Closed
Labels
buildThe build process and cross-buildThe build process and cross-buildtype-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error
Description
Bug report
It seems that the configure script is no longer able to build _dbm module from gdbm_compat.
Excerpts from configure log (full log: configure.txt):
$ ./configure -C --with-dbmliborder=gdbm [...] checking gdbm.h usability... yes checking gdbm.h presence... yes checking for gdbm.h... yes checking for gdbm_open in -lgdbm... yes checking ndbm.h usability... no checking ndbm.h presence... no checking for ndbm.h... no checking for ndbm presence and linker args... () checking gdbm/ndbm.h usability... yes checking gdbm/ndbm.h presence... yes checking for gdbm/ndbm.h... yes checking gdbm-ndbm.h usability... no checking gdbm-ndbm.h presence... no checking for gdbm-ndbm.h... no checking for library containing dbm_open... -lgdbm_compat checking db.h usability... no checking db.h presence... no checking for db.h... no checking for --with-dbmliborder... gdbm checking for _dbm module CFLAGS and LIBS... [...] checking for stdlib extension module _dbm... missing checking for stdlib extension module _gdbm... yes [...] It seems that the problem is in the following snippet:
for db in $with_dbmliborder; do case "$db" in ndbm) if test "$have_ndbm" = yes; then DBM_CFLAGS="-DUSE_NDBM" DBM_LIBS="$dbm_ndbm" have_dbm=yes break fi ;; gdbm) if test "$have_gdbm_compat" = yes; then DBM_CFLAGS="-DUSE_GDBM_COMPAT" DBM_LIBS="-lgdbm_compat" have_dbm=yes break fi ;;However, have_gdbm_compat is not declared anymore, probably because of:
AC_MSG_CHECKING([for ndbm presence and linker args]) AS_CASE([$ac_cv_search_dbm_open], [*ndbm*|*gdbm_compat*], [ dbm_ndbm="$ac_cv_search_dbm_open" have_ndbm=yes ],declaring have_ndbm=yes in this case.
Seems to have been introduced in ec5e253 by @tiran.
Your environment
- CPython versions tested on: 3.12.0a1
- Operating system and architecture: Gentoo/amd64
Linked PRs
Metadata
Metadata
Assignees
Labels
buildThe build process and cross-buildThe build process and cross-buildtype-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error