bpo-45723: Add helper macros and more caching to configure.ac (GH-29429)

Almost all checks are now cached by AC_CACHE_CHECK().

Common patterns are replaced by helper macros.

Variable names now use naming scheme ``ac_cv_func_$funcname``,
``ac_cv_lib_$library_$funcname``, or ``ac_cv_header_$headername_h``.

``SYS_SELECT_WITH_SYS_TIME`` is no longer used.

``uuid_create`` and ``uuid_enc_be`` are provided by libc on BSD. It is
safe to use ``AC_CHECK_FUNCS`` here.

Caching speeds up ./configure -C from ~ 4s to 2.6s on my system.

Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@innova.no>
This commit is contained in:
Christian Heimes 2021-11-08 09:06:31 +02:00 committed by GitHub
parent 19b107e9b5
commit 57c50c9c7c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 1361 additions and 1060 deletions

View file

@ -0,0 +1,2 @@
configure.ac now uses custom helper macros and ``AC_CACHE_CHECK`` to
simplify and speed up configure runs.

1726
configure vendored

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -118,7 +118,7 @@
/* define to 1 if your sem_getvalue is broken. */
#undef HAVE_BROKEN_SEM_GETVALUE
/* Define if `unsetenv` does not return an int. */
/* Define if 'unsetenv' does not return an int. */
#undef HAVE_BROKEN_UNSETENV
/* Has builtin __atomic_load_n() and __atomic_store_n() functions */
@ -187,7 +187,7 @@
/* Define if you have the 'immedok' function. */
#undef HAVE_CURSES_IMMEDOK
/* Define if you have the 'is_pad' function or macro. */
/* Define if you have the 'is_pad' function. */
#undef HAVE_CURSES_IS_PAD
/* Define if you have the 'is_term_resized' function. */
@ -290,7 +290,7 @@
/* Define to 1 if you have the <endian.h> header file. */
#undef HAVE_ENDIAN_H
/* Define if you have the 'epoll' functions. */
/* Define if you have the 'epoll' function. */
#undef HAVE_EPOLL
/* Define if you have the 'epoll_create1' function. */
@ -559,7 +559,7 @@
/* Define to 1 if you have the `killpg' function. */
#undef HAVE_KILLPG
/* Define if you have the 'kqueue' functions. */
/* Define if you have the 'kqueue' function. */
#undef HAVE_KQUEUE
/* Define to 1 if you have the <langinfo.h> header file. */
@ -779,7 +779,7 @@
/* Define to 1 if you have the `preadv2' function. */
#undef HAVE_PREADV2
/* Define if you have the 'prlimit' functions. */
/* Define if you have the 'prlimit' function. */
#undef HAVE_PRLIMIT
/* Define to 1 if you have the <process.h> header file. */
@ -1287,10 +1287,10 @@
/* Define to 1 if you have the <utime.h> header file. */
#undef HAVE_UTIME_H
/* Define if uuid_create() exists. */
/* Define to 1 if you have the `uuid_create' function. */
#undef HAVE_UUID_CREATE
/* Define if uuid_enc_be() exists. */
/* Define to 1 if you have the `uuid_enc_be' function. */
#undef HAVE_UUID_ENC_BE
/* Define if uuid_generate_time_safe() exists. */