Skip to content

Configure UX #115806

Closed

Description

@erlend-aasland

Feature or enhancement

The LDLIBRARY and HOSTRUNNER checks overlap; this results in garbled output:

$ ./configure
[...]
checking LDLIBRARY... checking HOSTRUNNER... 
libpython$(VERSION)$(ABIFLAGS).a

The IPv6 library check is very subtle:

$ ./configure
[...]
configure: using libc

Suggesting to clean this up, for improved configure user experience:

$ ./configure
[...]
checking LDLIBRARY... libpython$(VERSION)$(ABIFLAGS).a
checking HOSTRUNNER...
[...]
checking ipv6 stack type... kame
checking ipv6 library... libc

Linked PRs

Activity

  1. added a commit that references this issue on Feb 23, 2024
  2. erlend-aasland commented on Feb 29, 2024

    @erlend-aasland
    ContributorAuthor

    Ah, our PR gh-116016 mangled the output again:

    checking ipv6 stack type... checking for IPV6_INRIA_VERSION defined in netinet/in.h... no
    checking for __KAME__ defined in netinet/in.h... yes
    kame

    With #116165 applied, we get this:

    checking for IPV6_INRIA_VERSION defined in netinet/in.h... no
    checking for __KAME__ defined in netinet/in.h... yes
    checking ipv6 stack type... kame
    checking ipv6 library... libc
  3. added a commit that references this issue on Feb 29, 2024
  4. added a commit that references this issue on Mar 1, 2024
  5. added 2 commits that reference this issue on Mar 4, 2024
  6. added a commit that references this issue on Mar 25, 2024
  7. erlend-aasland commented on Apr 13, 2024

    @erlend-aasland
    ContributorAuthor

    configure -C still produces some garbled output:

    checking for library containing dbm_open... (cached) -lgdbm_compat
    checking for ndbm presence and linker args... yes (-lgdbm_compat)
    (cached) (cached) checking for library containing dbm_open... -lgdbm_compat
    
  8. added 2 commits that reference this issue on Apr 17, 2024
  9. hugovk commented on Jun 15, 2024

    @hugovk
    Member

    Triage: the linked PRs are merged, can this be closed?

  10. added a commit that references this issue on Jan 22, 2025
  11. encukou commented on Jan 27, 2025

    @encukou
    Member

    I'll close it now. If there are more improvements to do, please re-open or open a new issue.

    Thank you for the improvements!

  12. erlend-aasland commented on Jan 28, 2025

    @erlend-aasland
    ContributorAuthor

    #115806 (comment) is still not fixed. The problem is that we're using AC_CHECK_HEADER wrapped in AC_CACHE_VAL:

    cpython/configure.ac

    Lines 4431 to 4454 in 8e57877

    dnl "gdbm-ndbm.h" and "gdbm/ndbm.h" are both normalized to "gdbm_ndbm_h"
    dnl unset ac_cv_header_gdbm_ndbm_h to prevent false positive cache hits.
    AS_UNSET([ac_cv_header_gdbm_ndbm_h])
    AC_CACHE_VAL([ac_cv_header_gdbm_slash_ndbm_h], [
    AC_CHECK_HEADER(
    [gdbm/ndbm.h],
    [ac_cv_header_gdbm_slash_ndbm_h=yes], [ac_cv_header_gdbm_slash_ndbm_h=no]
    )
    ])
    AS_VAR_IF([ac_cv_header_gdbm_slash_ndbm_h], [yes], [
    AC_DEFINE([HAVE_GDBM_NDBM_H], [1], [Define to 1 if you have the <gdbm/ndbm.h> header file.])
    ])
    AS_UNSET([ac_cv_header_gdbm_ndbm_h])
    AC_CACHE_VAL([ac_cv_header_gdbm_dash_ndbm_h], [
    AC_CHECK_HEADER(
    [gdbm-ndbm.h],
    [ac_cv_header_gdbm_dash_ndbm_h=yes], [ac_cv_header_gdbm_dash_ndbm_h=no]
    )
    ])
    AS_VAR_IF([ac_cv_header_gdbm_dash_ndbm_h], [yes], [
    AC_DEFINE([HAVE_GDBM_DASH_NDBM_H], [1], [Define to 1 if you have the <gdbm-ndbm.h> header file.])
    ])
    AS_UNSET([ac_cv_header_gdbm_ndbm_h])

    I wonder if we're better off by using AC_CACHE_CHECK and AC_PREPROC_IFELSE for these.

  13. added a commit that references this issue on Jan 28, 2025
  14. added a commit that references this issue on Feb 8, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    buildThe build process and cross-buildtype-featureA feature request or enhancement

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions