From 207617e11c3c6643d989db5c4cc0004e6d25105b Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Thu, 4 Nov 2021 17:49:04 +0100 Subject: [PATCH 1/8] bpo-45573: Detect stdlib extension modules in configure configure now detects if a stdlib extension module is enabled/disabled and all prerequisites are available. Compiler and linker flags are passed to Makefile, makesetup, and setup.py. Missing modules: _curses, _curses_panel, _dbm, _sqlite3, _nis, _ctypes. Signed-off-by: Christian Heimes --- Makefile.pre.in | 40 + Modules/Setup | 34 +- Modules/makesetup | 10 +- aclocal.m4 | 50 + configure | 2521 +++++++++++++++++++++++++++++++++++++++++---- configure.ac | 331 ++++-- pyconfig.h.in | 9 + setup.py | 24 +- 8 files changed, 2719 insertions(+), 300 deletions(-) diff --git a/Makefile.pre.in b/Makefile.pre.in index 1535cabdade9c2..22547bde59ec5d 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -207,6 +207,46 @@ OPENSSL_LIBS=@OPENSSL_LIBS@ OPENSSL_LDFLAGS=@OPENSSL_LDFLAGS@ OPENSSL_RPATH=@OPENSSL_RPATH@ +# Module compiler and linker flags +MODULE_READLINE_CFLAGS=@MODULE_READLINE_CFLAGS@ +MODULE_READLINE_LDFLAGS=@MODULE_READLINE_LDFLAGS@ +# MODULE__CURSES_CFLAGS=@MODULE__CURSES_CFLAGS@ +# MODULE__CURSES_LDFLAGS=@MODULE__CURSES_LDFLAGS@ +# MODULE__CURSES_PANEL_CFLAGS=@MODULE__CURSES_PANEL_CFLAGS@ +# MODULE__CURSES_PANEL_LDFLAGS=@MODULE__CURSES_PANEL_LDFLAGS@ +MODULE__CRYPT_CFLAGS=@MODULE__CRYPT_CFLAGS@ +MODULE__CRYPT_LDFLAGS=@MODULE__CRYPT_LDFLAGS@ +MODULE__SSL_CFLAGS=@MODULE__SSL_CFLAGS@ +MODULE__SSL_LDFLAGS=@MODULE__SSL_LDFLAGS@ +MODULE__HASHLIB_CFLAGS=@MODULE__HASHLIB_CFLAGS@ +MODULE__HASHLIB_LDFLAGS=@MODULE__HASHLIB_LDFLAGS@ +# MODULE__DBM_CFLAGS=@MODULE__DBM_CFLAGS@ +# MODULE__DBM_LDFLAGS=@MODULE__DBM_LDFLAGS@ +MODULE__GDBM_CFLAGS=@MODULE__GDBM_CFLAGS@ +MODULE__GDBM_LDFLAGS=@MODULE__GDBM_LDFLAGS@ +# MODULE__SQLITE3_CFLAGS=@MODULE__SQLITE3_CFLAGS@ +# MODULE__SQLITE3_LDFLAGS=@MODULE__SQLITE3_LDFLAGS@ +MODULE__SCPROXY_CFLAGS=@MODULE__SCPROXY_CFLAGS@ +MODULE__SCPROXY_LDFLAGS=@MODULE__SCPROXY_LDFLAG +# MODULE_NIS_CFLAGS=@MODULE_NIS_CFLAGS@ +# MODULE_NIS_LDFLAGS=@MODULE_NIS_LDFLAGS@ +MODULE_ZLIB_CFLAGS=@MODULE_ZLIB_CFLAGS@ +MODULE_ZLIB_LDFLAGS=@MODULE_ZLIB_LDFLAGS@ +MODULE_BINASCII_CFLAGS=@MODULE_BINASCII_CFLAGS@ +MODULE_BINASCII_LDFLAGS=@MODULE_BINASCII_LDFLAGS@ +MODULE__BZ2_CFLAGS=@MODULE__BZ2_CFLAGS@ +MODULE__BZ2_LDFLAGS=@MODULE__BZ2_LDFLAGS@ +MODULE__LZMA_CFLAGS=@MODULE__LZMA_CFLAGS@ +MODULE__LZMA_LDFLAGS=@MODULE__LZMA_LDFLAGS@ +# MODULE__CTYPES_CFLAGS=@MODULE__CTYPES_CFLAGS@ +# MODULE__CTYPES_LDFLAGS=@MODULE__CTYPES_LDFLAGS@ +MODULE__POSIXSHMEM_CFLAGS=@MODULE__POSIXSHMEM_CFLAGS@ +MODULE__POSIXSHMEM_LDFLAGS=@MODULE__POSIXSHMEM_LDFLAGS@ +MODULE__TKINTER_CFLAGS=@MODULE__TKINTER_CFLAGS@ +MODULE__TKINTER_LDFLAGS=@MODULE__TKINTER_LDFLAGS@ +MODULE__UUID_CFLAGS=@MODULE__UUID_CFLAGS@ +MODULE__UUID_LDFLAGS=@MODULE__UUID_LDFLAGS@ + # Default zoneinfo.TZPATH. Added here to expose it in sysconfig.get_config_var TZPATH=@TZPATH@ diff --git a/Modules/Setup b/Modules/Setup index 608866d9cedd53..0075a566ad392c 100644 --- a/Modules/Setup +++ b/Modules/Setup @@ -42,6 +42,15 @@ # You can also use any Make variable that is detected by configure and # defined in Makefile.pre.in, e.g. OpenSSL flags $(OPENSSL_INCLUDES). # +# Rules generated by makesetup use additional variables: +# +# - All source file rules have a dependency on $(PYTHON_HEADERS) and on +# optional variable $(MODULES_{mod_upper}_DEPS). +# - If no and no arguments are given, then makesetup +# defaults to $(MODULES_{mod_upper}_CFLAGS) cppargs and +# $(MODULES_{mod_upper}_LDFLAGS) libraries. The variables are typically +# defined by configure. +# # The build process works like this: # # 1. Build all modules that are declared as static in Modules/Setup, @@ -196,7 +205,7 @@ time timemodule.c # Modules with some UNIX dependencies #_posixsubprocess _posixsubprocess.c -#_posixshmem -I$(srcdir)/Modules/_multiprocessing _multiprocessing/posixshmem.c -lrt +#_posixshmem -I$(srcdir)/Modules/_multiprocessing _multiprocessing/posixshmem.c #fcntl fcntlmodule.c #grp grpmodule.c #ossaudiodev ossaudiodev.c @@ -207,28 +216,29 @@ time timemodule.c # Modules with UNIX dependencies that require external libraries -#_crypt _cryptmodule.c -lcrypt +#_crypt _cryptmodule.c #nis nismodule.c -I/usr/include/tirpc -lnsl -ltirpc # Modules that require external libraries. -#_bz2 _bz2module.c -lbz2 +#_bz2 _bz2module.c #_ctypes _ctypes/_ctypes.c _ctypes/callbacks.c _ctypes/callproc.c _ctypes/stgdict.c _ctypes/cfield.c -ldl -lffi -DHAVE_FFI_PREP_CIF_VAR -DHAVE_FFI_PREP_CLOSURE_LOC -DHAVE_FFI_CLOSURE_ALLOC # The _dbm module supports NDBM, GDBM with compat module, and Berkeley DB. #_dbm _dbmmodule.c -lgdbm_compat -DUSE_GDBM_COMPAT -#_gdbm _gdbmmodule.c -lgdbm -#_lzma _lzmamodule.c -llzma +#_gdbm _gdbmmodule.c +#_lzma _lzmamodule.c #_sqlite3 _sqlite/connection.c _sqlite/cursor.c _sqlite/microprotocols.c _sqlite/module.c _sqlite/prepare_protocol.c _sqlite/row.c _sqlite/statement.c _sqlite/util.c -lsqlite3 -#_uuid _uuidmodule.c -luuid -#zlib zlibmodule.c -lz +#_uuid _uuidmodule.c +#zlib zlibmodule.c # The readline module also supports libeditline (-leditline). # Some systems may require -ltermcap or -ltermlib. -#readline readline.c -lreadline -ltermcap +#readline readline.c +#*shared* # OpenSSL bindings -#_ssl _ssl.c $(OPENSSL_INCLUDES) $(OPENSSL_LDFLAGS) $(OPENSSL_LIBS) -#_hashlib _hashopenssl.c $(OPENSSL_INCLUDES) $(OPENSSL_LDFLAGS) -lcrypto +#_ssl _ssl.c +#_hashlib _hashopenssl.c # To statically link OpenSSL: # _ssl _ssl.c $(OPENSSL_INCLUDES) $(OPENSSL_LDFLAGS) \ @@ -248,8 +258,10 @@ time timemodule.c # done by the shell's "read" command and it may not be implemented on # every system. +#_tkinter _tkinter.c tkappinit.c + # *** Always uncomment this (leave the leading underscore in!): -#_tkinter _tkinter.c tkappinit.c -DWITH_APPINIT $(TCLTK_INCLUDES) $(TCLTK_LIBS) \ +# _tkinter _tkinter.c tkappinit.c -DWITH_APPINIT $(TCLTK_INCLUDES) $(TCLTK_LIBS) \ # *** Uncomment and edit to reflect where your Tcl/Tk libraries are: # -L/usr/local/lib \ # *** Uncomment and edit to reflect where your Tcl/Tk headers are: diff --git a/Modules/makesetup b/Modules/makesetup index a8817fffb7c84b..2335724e804cc0 100755 --- a/Modules/makesetup +++ b/Modules/makesetup @@ -154,6 +154,7 @@ sed -e 's/[ ]*#.*//' -e '/^[ ]*$/d' | cpps= libs= mods= + mods_upper= skip= for arg in $line do @@ -194,11 +195,17 @@ sed -e 's/[ ]*#.*//' -e '/^[ ]*$/d' | *.*) echo 1>&2 "bad word $arg in $line" exit 1;; -u) skip=libs; libs="$libs -u";; - [a-zA-Z_]*) mods="$mods $arg";; + [a-zA-Z_]*) + mods="$mods $arg" + mods_upper=$(echo $mods | tr '[a-z]' '[A-Z]');; *) echo 1>&2 "bad word $arg in $line" exit 1;; esac done + if test -z "$cpps" -a -z "$libs"; then + cpps="\$(MODULE_${mods_upper}_CFLAGS)" + libs="\$(MODULE_${mods_upper}_LDFLAGS)" + fi case $doconfig in yes) LIBS="$LIBS $libs" @@ -245,7 +252,6 @@ sed -e 's/[ ]*#.*//' -e '/^[ ]*$/d' | *) cc="$cc \$(PY_BUILTIN_MODULE_CFLAGS)";; esac - mods_upper=$(echo $mods | tr '[a-z]' '[A-Z]') # force rebuild when header file or module build flavor (static/shared) is changed rule="$obj: $src \$(MODULE_${mods_upper}_DEPS) \$(PYTHON_HEADERS) Modules/config.c; $cc $cpps -c $src -o $obj" echo "$rule" >>$rulesf diff --git a/aclocal.m4 b/aclocal.m4 index 2f1bd37528c85d..6a33c0cc9d9e8c 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -619,3 +619,53 @@ AS_IF([test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"], [AC_DEFINE([HAVE_][$1], 1, [Enable ]m4_tolower([$1])[ support])]) ])dnl PKG_HAVE_DEFINE_WITH_MODULES +# AM_CONDITIONAL -*- Autoconf -*- + +# Copyright (C) 1997-2020 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# AM_CONDITIONAL(NAME, SHELL-CONDITION) +# ------------------------------------- +# Define a conditional. +AC_DEFUN([AM_CONDITIONAL], +[AC_PREREQ([2.52])dnl + m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], + [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl +AC_SUBST([$1_TRUE])dnl +AC_SUBST([$1_FALSE])dnl +_AM_SUBST_NOTMAKE([$1_TRUE])dnl +_AM_SUBST_NOTMAKE([$1_FALSE])dnl +m4_define([_AM_COND_VALUE_$1], [$2])dnl +if $2; then + $1_TRUE= + $1_FALSE='#' +else + $1_TRUE='#' + $1_FALSE= +fi +AC_CONFIG_COMMANDS_PRE( +[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then + AC_MSG_ERROR([[conditional "$1" was never defined. +Usually this means the macro was only invoked conditionally.]]) +fi])]) + +# Copyright (C) 2006-2020 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# _AM_SUBST_NOTMAKE(VARIABLE) +# --------------------------- +# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. +# This macro is traced by Automake. +AC_DEFUN([_AM_SUBST_NOTMAKE]) + +# AM_SUBST_NOTMAKE(VARIABLE) +# -------------------------- +# Public sister of _AM_SUBST_NOTMAKE. +AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) + diff --git a/configure b/configure index 53dc4a23f80631..d9447c1f2be252 100755 --- a/configure +++ b/configure @@ -623,6 +623,130 @@ ac_includes_default="\ #endif" ac_subst_vars='LTLIBOBJS +MODULE__UUID_FALSE +MODULE__UUID_TRUE +MODULE__UUID_LDFLAGS +MODULE__UUID_CFLAGS +MODULE__TKINTER_FALSE +MODULE__TKINTER_TRUE +MODULE__TKINTER_LDFLAGS +MODULE__TKINTER_CFLAGS +MODULE__POSIXSHMEM_FALSE +MODULE__POSIXSHMEM_TRUE +MODULE__POSIXSHMEM_LDFLAGS +MODULE__POSIXSHMEM_CFLAGS +MODULE__CTYPES_TEST_FALSE +MODULE__CTYPES_TEST_TRUE +MODULE__CTYPES_TEST_LDFLAGS +MODULE__CTYPES_TEST_CFLAGS +MODULE__LZMA_FALSE +MODULE__LZMA_TRUE +MODULE__LZMA_LDFLAGS +MODULE__LZMA_CFLAGS +MODULE__BZ2_FALSE +MODULE__BZ2_TRUE +MODULE__BZ2_LDFLAGS +MODULE__BZ2_CFLAGS +MODULE_BINASCII_FALSE +MODULE_BINASCII_TRUE +MODULE_BINASCII_LDFLAGS +MODULE_BINASCII_CFLAGS +MODULE_ZLIB_FALSE +MODULE_ZLIB_TRUE +MODULE_ZLIB_LDFLAGS +MODULE_ZLIB_CFLAGS +MODULE__SCPROXY_FALSE +MODULE__SCPROXY_TRUE +MODULE__SCPROXY_LDFLAGS +MODULE__SCPROXY_CFLAGS +MODULE_OSSAUDIODEV_FALSE +MODULE_OSSAUDIODEV_TRUE +MODULE_OSSAUDIODEV_LDFLAGS +MODULE_OSSAUDIODEV_CFLAGS +MODULE_TERMIOS_FALSE +MODULE_TERMIOS_TRUE +MODULE_TERMIOS_LDFLAGS +MODULE_TERMIOS_CFLAGS +MODULE__GDBM_FALSE +MODULE__GDBM_TRUE +MODULE__GDBM_LDFLAGS +MODULE__GDBM_CFLAGS +MODULE__SHA3_FALSE +MODULE__SHA3_TRUE +MODULE__SHA3_LDFLAGS +MODULE__SHA3_CFLAGS +MODULE__BLAKE2_FALSE +MODULE__BLAKE2_TRUE +MODULE__BLAKE2_LDFLAGS +MODULE__BLAKE2_CFLAGS +MODULE__SHA1_FALSE +MODULE__SHA1_TRUE +MODULE__SHA1_LDFLAGS +MODULE__SHA1_CFLAGS +MODULE__MD5_FALSE +MODULE__MD5_TRUE +MODULE__MD5_LDFLAGS +MODULE__MD5_CFLAGS +MODULE__SHA512_FALSE +MODULE__SHA512_TRUE +MODULE__SHA512_LDFLAGS +MODULE__SHA512_CFLAGS +MODULE__SHA256_FALSE +MODULE__SHA256_TRUE +MODULE__SHA256_LDFLAGS +MODULE__SHA256_CFLAGS +MODULE__HASHLIB_FALSE +MODULE__HASHLIB_TRUE +MODULE__HASHLIB_LDFLAGS +MODULE__HASHLIB_CFLAGS +MODULE__SSL_FALSE +MODULE__SSL_TRUE +MODULE__SSL_LDFLAGS +MODULE__SSL_CFLAGS +MODULE__CRYPT_FALSE +MODULE__CRYPT_TRUE +MODULE__CRYPT_LDFLAGS +MODULE__CRYPT_CFLAGS +MODULE_READLINE_FALSE +MODULE_READLINE_TRUE +MODULE_READLINE_LDFLAGS +MODULE_READLINE_CFLAGS +MODULE__XXTESTFUZZ_FALSE +MODULE__XXTESTFUZZ_TRUE +MODULE__XXTESTFUZZ_LDFLAGS +MODULE__XXTESTFUZZ_CFLAGS +MODULE__TESTMULTIPHASE_FALSE +MODULE__TESTMULTIPHASE_TRUE +MODULE__TESTMULTIPHASE_LDFLAGS +MODULE__TESTMULTIPHASE_CFLAGS +MODULE__TESTIMPORTMULTIPLE_FALSE +MODULE__TESTIMPORTMULTIPLE_TRUE +MODULE__TESTIMPORTMULTIPLE_LDFLAGS +MODULE__TESTIMPORTMULTIPLE_CFLAGS +MODULE__TESTBUFFER_FALSE +MODULE__TESTBUFFER_TRUE +MODULE__TESTBUFFER_LDFLAGS +MODULE__TESTBUFFER_CFLAGS +MODULE__TESTINTERNALCAPI_FALSE +MODULE__TESTINTERNALCAPI_TRUE +MODULE__TESTINTERNALCAPI_LDFLAGS +MODULE__TESTINTERNALCAPI_CFLAGS +MODULE__TESTCAPI_FALSE +MODULE__TESTCAPI_TRUE +MODULE__TESTCAPI_LDFLAGS +MODULE__TESTCAPI_CFLAGS +MODULE__XXSUBINTERPRETERS_FALSE +MODULE__XXSUBINTERPRETERS_TRUE +MODULE__XXSUBINTERPRETERS_LDFLAGS +MODULE__XXSUBINTERPRETERS_CFLAGS +MODULE_SPWD_FALSE +MODULE_SPWD_TRUE +MODULE_SPWD_LDFLAGS +MODULE_SPWD_CFLAGS +MODULE_GRP_FALSE +MODULE_GRP_TRUE +MODULE_GRP_LDFLAGS +MODULE_GRP_CFLAGS TEST_MODULES LIBRARY_DEPS STATIC_LIBPYTHON @@ -8129,7 +8253,7 @@ $as_echo "#define STDC_HEADERS 1" >>confdefs.h # checks for header files -for ac_header in asm/types.h crypt.h conio.h direct.h dlfcn.h errno.h \ +for ac_header in asm/types.h conio.h direct.h dlfcn.h errno.h \ fcntl.h grp.h \ ieeefp.h io.h langinfo.h libintl.h process.h pthread.h \ sched.h shadow.h signal.h stropts.h termios.h \ @@ -8143,7 +8267,7 @@ sys/times.h sys/types.h sys/uio.h sys/un.h sys/utsname.h sys/wait.h pty.h \ libutil.h sys/resource.h netpacket/packet.h sysexits.h bluetooth.h \ linux/tipc.h linux/random.h spawn.h util.h alloca.h endian.h \ sys/endian.h sys/sysmacros.h linux/memfd.h linux/wait.h sys/memfd.h \ -sys/mman.h sys/eventfd.h +sys/mman.h sys/eventfd.h linux/soundcard.h sys/soundcard.h do : as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" @@ -10165,63 +10289,17 @@ _ACEOF fi # Dynamic linking for HP-UX -# checks for uuid.h location -for ac_header in uuid/uuid.h uuid.h +# check for libuuid and uuid/uuid.h from util-linux +for ac_header in uuid/uuid.h do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" -if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : + ac_fn_c_check_header_mongrel "$LINENO" "uuid/uuid.h" "ac_cv_header_uuid_uuid_h" "$ac_includes_default" +if test "x$ac_cv_header_uuid_uuid_h" = xyes; then : cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uuid_generate_time_safe" >&5 -$as_echo_n "checking for uuid_generate_time_safe... " >&6; } -if ${ac_cv_lib_uuid_uuid_generate_time_safe+:} false; then : - $as_echo_n "(cached) " >&6 -else - -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main () -{ - -#ifndef uuid_generate_time_safe -void *x = uuid_generate_time_safe -#endif - - ; - return 0; -} +#define HAVE_UUID_UUID_H 1 _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_lib_uuid_uuid_generate_time_safe=yes -else - ac_cv_lib_uuid_uuid_generate_time_safe=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_uuid_uuid_generate_time_safe" >&5 -$as_echo "$ac_cv_lib_uuid_uuid_generate_time_safe" >&6; } -if test "x$ac_cv_lib_uuid_uuid_generate_time_safe" = xyes; then : - - -$as_echo "#define HAVE_UUID_GENERATE_TIME_SAFE 1" >>confdefs.h - - -fi -# check for libuuid from util-linux -save_LIBS=$LIBS -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uuid_generate_time in -luuid" >&5 + save_LIBS=$LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for uuid_generate_time in -luuid" >&5 $as_echo_n "checking for uuid_generate_time in -luuid... " >&6; } if ${ac_cv_lib_uuid_uuid_generate_time+:} false; then : $as_echo_n "(cached) " >&6 @@ -10266,13 +10344,66 @@ _ACEOF fi -LIBS=$save_LIBS + UUID_CFLAGS= + UUID_LDLAGS=-luuid + LIBS=$save_LIBS + +fi + +done + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uuid_generate_time_safe" >&5 +$as_echo_n "checking for uuid_generate_time_safe... " >&6; } +if ${ac_cv_lib_uuid_uuid_generate_time_safe+:} false; then : + $as_echo_n "(cached) " >&6 +else + +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ + +#ifndef uuid_generate_time_safe +void *x = uuid_generate_time_safe +#endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_lib_uuid_uuid_generate_time_safe=yes +else + ac_cv_lib_uuid_uuid_generate_time_safe=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_uuid_uuid_generate_time_safe" >&5 +$as_echo "$ac_cv_lib_uuid_uuid_generate_time_safe" >&6; } +if test "x$ac_cv_lib_uuid_uuid_generate_time_safe" = xyes; then : + + +$as_echo "#define HAVE_UUID_GENERATE_TIME_SAFE 1" >>confdefs.h + + +fi # AIX provides support for RFC4122 (uuid) in libc.a starting with AIX 6.1 (anno 2007) # FreeBSD and OpenBSD provides support in libc as well. # Little-endian FreeBSD, OpenBSD and NetBSD needs encoding into an octet # stream in big-endian byte-order -for ac_func in uuid_create uuid_enc_be +for ac_header in uuid.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "uuid.h" "ac_cv_header_uuid_h" "$ac_includes_default" +if test "x$ac_cv_header_uuid_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_UUID_H 1 +_ACEOF + for ac_func in uuid_create uuid_enc_be do : as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" @@ -10285,6 +10416,11 @@ fi done +fi + +done + + # 'Real Time' functions on Solaris # posix4 on Solaris 2.6 # pthread (first!) on Linux @@ -11328,24 +11464,36 @@ $as_echo_n "checking for --with-dbmliborder... " >&6; } # Check whether --with-dbmliborder was given. if test "${with_dbmliborder+set}" = set; then : withval=$with_dbmliborder; -if test x$with_dbmliborder = xyes -then -as_fn_error $? "proper usage is --with-dbmliborder=db1:db2:..." "$LINENO" 5 else - as_save_IFS=$IFS - IFS=: - for db in $with_dbmliborder; do - if test x$db != xndbm && test x$db != xgdbm && test x$db != xbdb - then - as_fn_error $? "proper usage is --with-dbmliborder=db1:db2:..." "$LINENO" 5 - fi - done - IFS=$as_save_IFS + with_dbmliborder=ndbm:gdbm:bdb fi + + +as_save_IFS=$IFS +IFS=: +dbmlibs="" +for db in $with_dbmliborder; do + case $db in #( + ndbm) : + dbmlibs="$dbmlibs ndbm" ;; #( + gdbm) : + dbmlibs="$dbmlibs gdbm_compat" ;; #( + bdb) : + dbmlibs="$dbmlibs db-5.3 db-5 db" ;; #( + *) : + dbmlibs="failed"; break + ;; +esac +done +IFS=$as_save_IFS + +if test "$dbmlibs" = failed; then + as_fn_error $? "proper usage is --with-dbmliborder=db1:db2:..." "$LINENO" 5 +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_dbmliborder (libs: $dbmlibs)" >&5 +$as_echo "$with_dbmliborder (libs: $dbmlibs)" >&6; } fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_dbmliborder" >&5 -$as_echo "$with_dbmliborder" >&6; } # Templates for things AC_DEFINEd more than once. # For a single AC_DEFINE, no template is needed. @@ -12391,7 +12539,7 @@ for ac_func in alarm accept4 setitimer getitimer bind_textdomain_codeset chown \ explicit_memset faccessat fchmod fchmodat fchown fchownat \ fdwalk fexecve fdopendir fork fpathconf fstatat ftime ftruncate futimesat \ futimens futimes gai_strerror getentropy \ - getgrgid_r getgrnam_r \ + getgrgid getgrgid_r getgrnam_r \ getgrouplist getgroups getlogin getloadavg getpeername getpgid getpid \ getpriority getresuid getresgid getpwent getpwnam_r getpwuid_r getspnam getspent getsid getwd \ if_nameindex \ @@ -13483,6 +13631,13 @@ fi done +if test "x$ac_cv_lib_z_gzread" = xyes; then : + + BINASCII_CFLAGS=-DUSE_ZLIB_CRC32 + BINASCII_LDFLAGS=-lz + +fi + for ac_header in bzlib.h do : ac_fn_c_check_header_mongrel "$LINENO" "bzlib.h" "ac_cv_header_bzlib_h" "$ac_includes_default" @@ -14051,13 +14206,18 @@ fi done -# We search for both crypt and crypt_r as one or the other may be defined -# This gets us our -lcrypt in LIBS when required on the target platform. -# Save/restore LIBS to avoid linking libpython with libcrypt. -LIBS_SAVE=$LIBS -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing crypt_r" >&5 -$as_echo_n "checking for library containing crypt_r... " >&6; } -if ${ac_cv_search_crypt_r+:} false; then : +for ac_header in crypt.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "crypt.h" "ac_cv_header_crypt_h" "$ac_includes_default" +if test "x$ac_cv_header_crypt_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_CRYPT_H 1 +_ACEOF + + LIBS_SAVE=$LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing crypt" >&5 +$as_echo_n "checking for library containing crypt... " >&6; } +if ${ac_cv_search_crypt+:} false; then : $as_echo_n "(cached) " >&6 else ac_func_search_save_LIBS=$LIBS @@ -14070,11 +14230,11 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char crypt_r (); +char crypt (); int main () { -return crypt_r (); +return crypt (); ; return 0; } @@ -14087,34 +14247,34 @@ for ac_lib in '' crypt; do LIBS="-l$ac_lib $ac_func_search_save_LIBS" fi if ac_fn_c_try_link "$LINENO"; then : - ac_cv_search_crypt_r=$ac_res + ac_cv_search_crypt=$ac_res fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext - if ${ac_cv_search_crypt_r+:} false; then : + if ${ac_cv_search_crypt+:} false; then : break fi done -if ${ac_cv_search_crypt_r+:} false; then : +if ${ac_cv_search_crypt+:} false; then : else - ac_cv_search_crypt_r=no + ac_cv_search_crypt=no fi rm conftest.$ac_ext LIBS=$ac_func_search_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_crypt_r" >&5 -$as_echo "$ac_cv_search_crypt_r" >&6; } -ac_res=$ac_cv_search_crypt_r +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_crypt" >&5 +$as_echo "$ac_cv_search_crypt" >&6; } +ac_res=$ac_cv_search_crypt if test "$ac_res" != no; then : test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" fi -LIBS="$LIBS_SAVE" -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing crypt" >&5 -$as_echo_n "checking for library containing crypt... " >&6; } -if ${ac_cv_search_crypt+:} false; then : + LIBS="$LIBS_SAVE" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing crypt_r" >&5 +$as_echo_n "checking for library containing crypt_r... " >&6; } +if ${ac_cv_search_crypt_r+:} false; then : $as_echo_n "(cached) " >&6 else ac_func_search_save_LIBS=$LIBS @@ -14127,11 +14287,11 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char crypt (); +char crypt_r (); int main () { -return crypt (); +return crypt_r (); ; return 0; } @@ -14144,59 +14304,39 @@ for ac_lib in '' crypt; do LIBS="-l$ac_lib $ac_func_search_save_LIBS" fi if ac_fn_c_try_link "$LINENO"; then : - ac_cv_search_crypt=$ac_res + ac_cv_search_crypt_r=$ac_res fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext - if ${ac_cv_search_crypt+:} false; then : + if ${ac_cv_search_crypt_r+:} false; then : break fi done -if ${ac_cv_search_crypt+:} false; then : +if ${ac_cv_search_crypt_r+:} false; then : else - ac_cv_search_crypt=no + ac_cv_search_crypt_r=no fi rm conftest.$ac_ext LIBS=$ac_func_search_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_crypt" >&5 -$as_echo "$ac_cv_search_crypt" >&6; } -ac_res=$ac_cv_search_crypt +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_crypt_r" >&5 +$as_echo "$ac_cv_search_crypt_r" >&6; } +ac_res=$ac_cv_search_crypt_r if test "$ac_res" != no; then : test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" -fi - - -ac_fn_c_check_func "$LINENO" "crypt_r" "ac_cv_func_crypt_r" -if test "x$ac_cv_func_crypt_r" = xyes; then : - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include - -int -main () -{ +$as_echo "#define HAVE_CRYPT_R 1" >>confdefs.h -struct crypt_data d; -char *r = crypt_r("", "", &d); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : +fi -$as_echo "#define HAVE_CRYPT_R 1" >>confdefs.h + LIBS=$LIBS_SAVE fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi +done -LIBS=$LIBS_SAVE for ac_func in clock_gettime do : @@ -18974,12 +19114,6 @@ $as_echo "$OPENSSL_RPATH" >&6; } # check if OpenSSL libraries work as expected -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL provides required APIs" >&5 -$as_echo_n "checking whether OpenSSL provides required APIs... " >&6; } -if ${ac_cv_working_openssl+:} false; then : - $as_echo_n "(cached) " >&6 -else - save_LIBS="$LIBS" save_CFLAGS="$CFLAGS" save_LDFLAGS="$LDFLAGS" @@ -18987,24 +19121,26 @@ LIBS="$LIBS $OPENSSL_LIBS" CFLAGS="$CFLAGS_NODIST $OPENSSL_INCLUDES" LDFLAGS="$LDFLAGS $OPENSSL_LDFLAGS" +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL provides required ssl module APIs" >&5 +$as_echo_n "checking whether OpenSSL provides required ssl module APIs... " >&6; } +if ${ac_cv_working_openssl_ssl+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include -#include #include - #if OPENSSL_VERSION_NUMBER < 0x10101000L -#error "OpenSSL >= 1.1.1 is required" + #error "OpenSSL >= 1.1.1 is required" #endif - static void keylog_cb(const SSL *ssl, const char *line) {} int main () { -/* SSL APIs */ SSL_CTX *ctx = SSL_CTX_new(TLS_client_method()); SSL_CTX_set_keylog_callback(ctx, keylog_cb); SSL *ssl = SSL_new(ctx); @@ -19013,32 +19149,69 @@ X509_VERIFY_PARAM_set1_host(param, "python.org", 0); SSL_free(ssl); SSL_CTX_free(ctx); -/* hashlib APIs */ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_working_openssl_ssl=yes +else + ac_cv_working_openssl_ssl=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_openssl_ssl" >&5 +$as_echo "$ac_cv_working_openssl_ssl" >&6; } + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenSSL provides required hashlib module APIs" >&5 +$as_echo_n "checking whether OpenSSL provides required hashlib module APIs... " >&6; } +if ${ac_cv_working_openssl_hashlib+:} false; then : + $as_echo_n "(cached) " >&6 +else + +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include +#if OPENSSL_VERSION_NUMBER < 0x10101000L +#error "OpenSSL >= 1.1.1 is required" +#endif + +int +main () +{ + OBJ_nid2sn(NID_md5); OBJ_nid2sn(NID_sha1); OBJ_nid2sn(NID_sha3_512); OBJ_nid2sn(NID_blake2b512); EVP_PBE_scrypt(NULL, 0, NULL, 0, 2, 8, 1, 0, NULL, 0); + ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_working_openssl=yes + ac_cv_working_openssl_hashlib=yes else - ac_cv_working_openssl=no + ac_cv_working_openssl_hashlib=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_openssl_hashlib" >&5 +$as_echo "$ac_cv_working_openssl_hashlib" >&6; } + LIBS="$save_LIBS" CFLAGS="$save_CFLAGS" LDFLAGS="$save_LDFLAGS" -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_openssl" >&5 -$as_echo "$ac_cv_working_openssl" >&6; } - # ssl module default cipher suite string @@ -19091,111 +19264,1793 @@ $as_echo_n "checking for --with-builtin-hashlib-hashes... " >&6; } # Check whether --with-builtin-hashlib-hashes was given. if test "${with_builtin_hashlib_hashes+set}" = set; then : withval=$with_builtin_hashlib_hashes; -case "$withval" in - yes) - withval=$default_hashlib_hashes - ;; - no) - withval="" - ;; + case $with_builtin_hashlib_hashes in #( + yes) : + with_builtin_hashlib_hashes=$default_hashlib_hashes ;; #( + no) : + with_builtin_hashlib_hashes="" + ;; #( + *) : + ;; esac -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $withval" >&5 -$as_echo "$withval" >&6; } -cat >>confdefs.h <<_ACEOF -#define PY_BUILTIN_HASHLIB_HASHES "$withval" -_ACEOF - else + with_builtin_hashlib_hashes=$default_hashlib_hashes +fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $default_hashlib_hashes" >&5 -$as_echo "$default_hashlib_hashes" >&6; }; -cat >>confdefs.h <<_ACEOF -#define PY_BUILTIN_HASHLIB_HASHES "$default_hashlib_hashes" -_ACEOF +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_builtin_hashlib_hashes" >&5 +$as_echo "$with_builtin_hashlib_hashes" >&6; } +cat >>confdefs.h <<_ACEOF +#define PY_BUILTIN_HASHLIB_HASHES "$with_builtin_hashlib_hashes" +_ACEOF + + +as_save_IFS=$IFS +IFS=, +for builtin_hash in $with_builtin_hashlib_hashes; do + case $builtin_hash in #( + md5) : + with_builtin_md5=yes ;; #( + sha1) : + with_builtin_sha1=yes ;; #( + sha256) : + with_builtin_sha256=yes ;; #( + sha512) : + with_builtin_sha512=yes ;; #( + sha3) : + with_builtin_sha3=yes ;; #( + blake2) : + with_builtin_blake2=yes + ;; #( + *) : + ;; +esac +done +IFS=$as_save_IFS + +# --with-experimental-isolated-subinterpreters + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-experimental-isolated-subinterpreters" >&5 +$as_echo_n "checking for --with-experimental-isolated-subinterpreters... " >&6; } + +# Check whether --with-experimental-isolated-subinterpreters was given. +if test "${with_experimental_isolated_subinterpreters+set}" = set; then : + withval=$with_experimental_isolated_subinterpreters; +if test "$withval" != no +then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; }; + $as_echo "#define EXPERIMENTAL_ISOLATED_SUBINTERPRETERS 1" >>confdefs.h + +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; }; +fi +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +# --with-static-libpython +STATIC_LIBPYTHON=1 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-static-libpython" >&5 +$as_echo_n "checking for --with-static-libpython... " >&6; } + +# Check whether --with-static-libpython was given. +if test "${with_static_libpython+set}" = set; then : + withval=$with_static_libpython; +if test "$withval" = no +then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; }; + STATIC_LIBPYTHON=0 +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; }; +fi +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +fi + +LIBRARY_DEPS='$(PY3LIBRARY) $(EXPORTSYMS)' +if test "$PY_ENABLE_SHARED" = 1 || test "$enable_framework" ; then + LIBRARY_DEPS="\$(LDLIBRARY) $LIBRARY_DEPS" + if test "$STATIC_LIBPYTHON" = 1; then + LIBRARY_DEPS="\$(LIBRARY) $LIBRARY_DEPS" + fi +else + LIBRARY_DEPS="\$(LIBRARY) $LIBRARY_DEPS" +fi + + + +# Check whether to disable test modules. Once set, setup.py will not build +# test extension modules and "make install" will not install test suites. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --disable-test-modules" >&5 +$as_echo_n "checking for --disable-test-modules... " >&6; } +# Check whether --enable-test-modules was given. +if test "${enable_test_modules+set}" = set; then : + enableval=$enable_test_modules; +fi + +if test "$enable_test_modules" = no; then + TEST_MODULES=no + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +else + TEST_MODULES=yes + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +# Modules that are not available on some platforms +case $ac_sys_system in #( + AIX) : + py_stdlib_not_available="_scproxy spwd" ;; #( + VxWorks*) : + py_stdlib_not_available="_scproxy _crypt termios grp" ;; #( + Darwin) : + py_stdlib_not_available="" ;; #( + *) : + py_stdlib_not_available="_scproxy" + ;; +esac + +# Check for stdlib extension modules +# PY_STDLIB_MOD([NAME], [TEST], [CFLAGS], [LDFLAGS]) + + +# reuses autoconf check values (ac_cv_*): +# * ac_cv_func and ac_cv_header values are set to "yes" when function or header exists +# * ac_cv_search values are set to "none required" or "-lsomelib" when function exists + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module grp" >&5 +$as_echo_n "checking for stdlib extension module grp... " >&6; } + + + + + if test "$ac_cv_func_getgrgid" = yes -o "$ac_cv_func_getgrgid_r" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE_GRP_CFLAGS="" + + MODULE_GRP_LDFLAGS="" + + if true; then + MODULE_GRP_TRUE= + MODULE_GRP_FALSE='#' +else + MODULE_GRP_TRUE='#' + MODULE_GRP_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *grp*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE_GRP_CFLAGS="" + + MODULE_GRP_LDFLAGS="" + + if false; then + MODULE_GRP_TRUE= + MODULE_GRP_FALSE='#' +else + MODULE_GRP_TRUE='#' + MODULE_GRP_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module spwd" >&5 +$as_echo_n "checking for stdlib extension module spwd... " >&6; } + + + + + if test "$ac_cv_func_getspent" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE_SPWD_CFLAGS="" + + MODULE_SPWD_LDFLAGS="" + + if true; then + MODULE_SPWD_TRUE= + MODULE_SPWD_FALSE='#' +else + MODULE_SPWD_TRUE='#' + MODULE_SPWD_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *spwd*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE_SPWD_CFLAGS="" + + MODULE_SPWD_LDFLAGS="" + + if false; then + MODULE_SPWD_TRUE= + MODULE_SPWD_FALSE='#' +else + MODULE_SPWD_TRUE='#' + MODULE_SPWD_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _xxsubinterpreters" >&5 +$as_echo_n "checking for stdlib extension module _xxsubinterpreters... " >&6; } + + + + + if test "$with_experimental_isolated_subinterpreters" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__XXSUBINTERPRETERS_CFLAGS="" + + MODULE__XXSUBINTERPRETERS_LDFLAGS="" + + if true; then + MODULE__XXSUBINTERPRETERS_TRUE= + MODULE__XXSUBINTERPRETERS_FALSE='#' +else + MODULE__XXSUBINTERPRETERS_TRUE='#' + MODULE__XXSUBINTERPRETERS_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_xxsubinterpreters*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__XXSUBINTERPRETERS_CFLAGS="" + + MODULE__XXSUBINTERPRETERS_LDFLAGS="" + + if false; then + MODULE__XXSUBINTERPRETERS_TRUE= + MODULE__XXSUBINTERPRETERS_FALSE='#' +else + MODULE__XXSUBINTERPRETERS_TRUE='#' + MODULE__XXSUBINTERPRETERS_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testcapi" >&5 +$as_echo_n "checking for stdlib extension module _testcapi... " >&6; } + + + + + if test "$TEST_MODULES" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__TESTCAPI_CFLAGS="" + + MODULE__TESTCAPI_LDFLAGS="" + + if true; then + MODULE__TESTCAPI_TRUE= + MODULE__TESTCAPI_FALSE='#' +else + MODULE__TESTCAPI_TRUE='#' + MODULE__TESTCAPI_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_testcapi*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__TESTCAPI_CFLAGS="" + + MODULE__TESTCAPI_LDFLAGS="" + + if false; then + MODULE__TESTCAPI_TRUE= + MODULE__TESTCAPI_FALSE='#' +else + MODULE__TESTCAPI_TRUE='#' + MODULE__TESTCAPI_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testinternalcapi" >&5 +$as_echo_n "checking for stdlib extension module _testinternalcapi... " >&6; } + + + + + if test "$TEST_MODULES" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__TESTINTERNALCAPI_CFLAGS="" + + MODULE__TESTINTERNALCAPI_LDFLAGS="" + + if true; then + MODULE__TESTINTERNALCAPI_TRUE= + MODULE__TESTINTERNALCAPI_FALSE='#' +else + MODULE__TESTINTERNALCAPI_TRUE='#' + MODULE__TESTINTERNALCAPI_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_testinternalcapi*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__TESTINTERNALCAPI_CFLAGS="" + + MODULE__TESTINTERNALCAPI_LDFLAGS="" + + if false; then + MODULE__TESTINTERNALCAPI_TRUE= + MODULE__TESTINTERNALCAPI_FALSE='#' +else + MODULE__TESTINTERNALCAPI_TRUE='#' + MODULE__TESTINTERNALCAPI_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testbuffer" >&5 +$as_echo_n "checking for stdlib extension module _testbuffer... " >&6; } + + + + + if test "$TEST_MODULES" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__TESTBUFFER_CFLAGS="" + + MODULE__TESTBUFFER_LDFLAGS="" + + if true; then + MODULE__TESTBUFFER_TRUE= + MODULE__TESTBUFFER_FALSE='#' +else + MODULE__TESTBUFFER_TRUE='#' + MODULE__TESTBUFFER_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_testbuffer*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__TESTBUFFER_CFLAGS="" + + MODULE__TESTBUFFER_LDFLAGS="" + + if false; then + MODULE__TESTBUFFER_TRUE= + MODULE__TESTBUFFER_FALSE='#' +else + MODULE__TESTBUFFER_TRUE='#' + MODULE__TESTBUFFER_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testimportmultiple" >&5 +$as_echo_n "checking for stdlib extension module _testimportmultiple... " >&6; } + + + + + if test "$TEST_MODULES" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__TESTIMPORTMULTIPLE_CFLAGS="" + + MODULE__TESTIMPORTMULTIPLE_LDFLAGS="" + + if true; then + MODULE__TESTIMPORTMULTIPLE_TRUE= + MODULE__TESTIMPORTMULTIPLE_FALSE='#' +else + MODULE__TESTIMPORTMULTIPLE_TRUE='#' + MODULE__TESTIMPORTMULTIPLE_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_testimportmultiple*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__TESTIMPORTMULTIPLE_CFLAGS="" + + MODULE__TESTIMPORTMULTIPLE_LDFLAGS="" + + if false; then + MODULE__TESTIMPORTMULTIPLE_TRUE= + MODULE__TESTIMPORTMULTIPLE_FALSE='#' +else + MODULE__TESTIMPORTMULTIPLE_TRUE='#' + MODULE__TESTIMPORTMULTIPLE_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testmultiphase" >&5 +$as_echo_n "checking for stdlib extension module _testmultiphase... " >&6; } + + + + + if test "$TEST_MODULES" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__TESTMULTIPHASE_CFLAGS="" + + MODULE__TESTMULTIPHASE_LDFLAGS="" + + if true; then + MODULE__TESTMULTIPHASE_TRUE= + MODULE__TESTMULTIPHASE_FALSE='#' +else + MODULE__TESTMULTIPHASE_TRUE='#' + MODULE__TESTMULTIPHASE_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_testmultiphase*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__TESTMULTIPHASE_CFLAGS="" + + MODULE__TESTMULTIPHASE_LDFLAGS="" + + if false; then + MODULE__TESTMULTIPHASE_TRUE= + MODULE__TESTMULTIPHASE_FALSE='#' +else + MODULE__TESTMULTIPHASE_TRUE='#' + MODULE__TESTMULTIPHASE_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _xxtestfuzz" >&5 +$as_echo_n "checking for stdlib extension module _xxtestfuzz... " >&6; } + + + + + if test "$TEST_MODULES" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__XXTESTFUZZ_CFLAGS="" + + MODULE__XXTESTFUZZ_LDFLAGS="" + + if true; then + MODULE__XXTESTFUZZ_TRUE= + MODULE__XXTESTFUZZ_FALSE='#' +else + MODULE__XXTESTFUZZ_TRUE='#' + MODULE__XXTESTFUZZ_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_xxtestfuzz*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__XXTESTFUZZ_CFLAGS="" + + MODULE__XXTESTFUZZ_LDFLAGS="" + + if false; then + MODULE__XXTESTFUZZ_TRUE= + MODULE__XXTESTFUZZ_FALSE='#' +else + MODULE__XXTESTFUZZ_TRUE='#' + MODULE__XXTESTFUZZ_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module readline" >&5 +$as_echo_n "checking for stdlib extension module readline... " >&6; } + + + + + if test "$py_cv_lib_readline" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE_READLINE_CFLAGS="" + + MODULE_READLINE_LDFLAGS="$READLINE_LIBS" + + if true; then + MODULE_READLINE_TRUE= + MODULE_READLINE_FALSE='#' +else + MODULE_READLINE_TRUE='#' + MODULE_READLINE_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *readline*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE_READLINE_CFLAGS="" + + MODULE_READLINE_LDFLAGS="" + + if false; then + MODULE_READLINE_TRUE= + MODULE_READLINE_FALSE='#' +else + MODULE_READLINE_TRUE='#' + MODULE_READLINE_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _crypt" >&5 +$as_echo_n "checking for stdlib extension module _crypt... " >&6; } + + + + + if test "$ac_sys_system" != VxWorks -a \( "$ac_cv_search_crypt_r" != no -o "$ac_cv_search_crypt" != no \); then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__CRYPT_CFLAGS="" + + MODULE__CRYPT_LDFLAGS="-lcrypt" + + if true; then + MODULE__CRYPT_TRUE= + MODULE__CRYPT_FALSE='#' +else + MODULE__CRYPT_TRUE='#' + MODULE__CRYPT_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_crypt*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__CRYPT_CFLAGS="" + + MODULE__CRYPT_LDFLAGS="" + + if false; then + MODULE__CRYPT_TRUE= + MODULE__CRYPT_FALSE='#' +else + MODULE__CRYPT_TRUE='#' + MODULE__CRYPT_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _ssl" >&5 +$as_echo_n "checking for stdlib extension module _ssl... " >&6; } + + + + + if test "$ac_cv_working_openssl_ssl" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__SSL_CFLAGS="$OPENSSL_INCLUDES" + + MODULE__SSL_LDFLAGS="$OPENSSL_LIBS $OPENSSL_LDFLAGS" + + if true; then + MODULE__SSL_TRUE= + MODULE__SSL_FALSE='#' +else + MODULE__SSL_TRUE='#' + MODULE__SSL_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_ssl*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__SSL_CFLAGS="" + + MODULE__SSL_LDFLAGS="" + + if false; then + MODULE__SSL_TRUE= + MODULE__SSL_FALSE='#' +else + MODULE__SSL_TRUE='#' + MODULE__SSL_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _hashlib" >&5 +$as_echo_n "checking for stdlib extension module _hashlib... " >&6; } + + + + + if test "$ac_cv_working_openssl_ssl" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__HASHLIB_CFLAGS="$OPENSSL_INCLUDES" + + MODULE__HASHLIB_LDFLAGS="$OPENSSL_LIBS $OPENSSL_LDFLAGS" + + if true; then + MODULE__HASHLIB_TRUE= + MODULE__HASHLIB_FALSE='#' +else + MODULE__HASHLIB_TRUE='#' + MODULE__HASHLIB_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_hashlib*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__HASHLIB_CFLAGS="" + + MODULE__HASHLIB_LDFLAGS="" + + if false; then + MODULE__HASHLIB_TRUE= + MODULE__HASHLIB_FALSE='#' +else + MODULE__HASHLIB_TRUE='#' + MODULE__HASHLIB_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha256" >&5 +$as_echo_n "checking for stdlib extension module _sha256... " >&6; } + + + + + if test "$with_builtin_sha256" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__SHA256_CFLAGS="" + + MODULE__SHA256_LDFLAGS="" + + if true; then + MODULE__SHA256_TRUE= + MODULE__SHA256_FALSE='#' +else + MODULE__SHA256_TRUE='#' + MODULE__SHA256_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_sha256*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__SHA256_CFLAGS="" + + MODULE__SHA256_LDFLAGS="" + + if false; then + MODULE__SHA256_TRUE= + MODULE__SHA256_FALSE='#' +else + MODULE__SHA256_TRUE='#' + MODULE__SHA256_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha512" >&5 +$as_echo_n "checking for stdlib extension module _sha512... " >&6; } + + + + + if test "$with_builtin_sha512" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__SHA512_CFLAGS="" + + MODULE__SHA512_LDFLAGS="" + + if true; then + MODULE__SHA512_TRUE= + MODULE__SHA512_FALSE='#' +else + MODULE__SHA512_TRUE='#' + MODULE__SHA512_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_sha512*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__SHA512_CFLAGS="" + + MODULE__SHA512_LDFLAGS="" + + if false; then + MODULE__SHA512_TRUE= + MODULE__SHA512_FALSE='#' +else + MODULE__SHA512_TRUE='#' + MODULE__SHA512_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _md5" >&5 +$as_echo_n "checking for stdlib extension module _md5... " >&6; } + + + + + if test "$with_builtin_md5" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__MD5_CFLAGS="" + + MODULE__MD5_LDFLAGS="" + + if true; then + MODULE__MD5_TRUE= + MODULE__MD5_FALSE='#' +else + MODULE__MD5_TRUE='#' + MODULE__MD5_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_md5*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__MD5_CFLAGS="" + + MODULE__MD5_LDFLAGS="" + + if false; then + MODULE__MD5_TRUE= + MODULE__MD5_FALSE='#' +else + MODULE__MD5_TRUE='#' + MODULE__MD5_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha1" >&5 +$as_echo_n "checking for stdlib extension module _sha1... " >&6; } + + + + + if test "$with_builtin_sha1" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__SHA1_CFLAGS="" + + MODULE__SHA1_LDFLAGS="" + + if true; then + MODULE__SHA1_TRUE= + MODULE__SHA1_FALSE='#' +else + MODULE__SHA1_TRUE='#' + MODULE__SHA1_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_sha1*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__SHA1_CFLAGS="" + + MODULE__SHA1_LDFLAGS="" + + if false; then + MODULE__SHA1_TRUE= + MODULE__SHA1_FALSE='#' +else + MODULE__SHA1_TRUE='#' + MODULE__SHA1_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _blake2" >&5 +$as_echo_n "checking for stdlib extension module _blake2... " >&6; } + + + + + if test "$with_builtin_blake2" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__BLAKE2_CFLAGS="" + + MODULE__BLAKE2_LDFLAGS="" + + if true; then + MODULE__BLAKE2_TRUE= + MODULE__BLAKE2_FALSE='#' +else + MODULE__BLAKE2_TRUE='#' + MODULE__BLAKE2_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_blake2*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__BLAKE2_CFLAGS="" + + MODULE__BLAKE2_LDFLAGS="" + + if false; then + MODULE__BLAKE2_TRUE= + MODULE__BLAKE2_FALSE='#' +else + MODULE__BLAKE2_TRUE='#' + MODULE__BLAKE2_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha3" >&5 +$as_echo_n "checking for stdlib extension module _sha3... " >&6; } + + + + + if test "$with_builtin_sha3" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__SHA3_CFLAGS="" + + MODULE__SHA3_LDFLAGS="" + + if true; then + MODULE__SHA3_TRUE= + MODULE__SHA3_FALSE='#' +else + MODULE__SHA3_TRUE='#' + MODULE__SHA3_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_sha3*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__SHA3_CFLAGS="" + + MODULE__SHA3_LDFLAGS="" + + if false; then + MODULE__SHA3_TRUE= + MODULE__SHA3_FALSE='#' +else + MODULE__SHA3_TRUE='#' + MODULE__SHA3_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _gdbm" >&5 +$as_echo_n "checking for stdlib extension module _gdbm... " >&6; } + + + + + if test "$ac_cv_lib_gdbm_gdbm_open" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__GDBM_CFLAGS="$GDBM_CFLAGS" + + MODULE__GDBM_LDFLAGS="$GDBM_LDFLAGS" + + if true; then + MODULE__GDBM_TRUE= + MODULE__GDBM_FALSE='#' +else + MODULE__GDBM_TRUE='#' + MODULE__GDBM_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_gdbm*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__GDBM_CFLAGS="" + + MODULE__GDBM_LDFLAGS="" + + if false; then + MODULE__GDBM_TRUE= + MODULE__GDBM_FALSE='#' +else + MODULE__GDBM_TRUE='#' + MODULE__GDBM_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module termios" >&5 +$as_echo_n "checking for stdlib extension module termios... " >&6; } + + + + + if test "$ac_sys_system" != VxWorks; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE_TERMIOS_CFLAGS="" + + MODULE_TERMIOS_LDFLAGS="" + + if true; then + MODULE_TERMIOS_TRUE= + MODULE_TERMIOS_FALSE='#' +else + MODULE_TERMIOS_TRUE='#' + MODULE_TERMIOS_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *termios*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE_TERMIOS_CFLAGS="" + + MODULE_TERMIOS_LDFLAGS="" + + if false; then + MODULE_TERMIOS_TRUE= + MODULE_TERMIOS_FALSE='#' +else + MODULE_TERMIOS_TRUE='#' + MODULE_TERMIOS_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module ossaudiodev" >&5 +$as_echo_n "checking for stdlib extension module ossaudiodev... " >&6; } + + + + + if test "$ac_cv_header_linux_soundcard_h" = yes -o "$ac_cv_header_sys_soundcard_h" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE_OSSAUDIODEV_CFLAGS="" + + MODULE_OSSAUDIODEV_LDFLAGS="" + + if true; then + MODULE_OSSAUDIODEV_TRUE= + MODULE_OSSAUDIODEV_FALSE='#' +else + MODULE_OSSAUDIODEV_TRUE='#' + MODULE_OSSAUDIODEV_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *ossaudiodev*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE_OSSAUDIODEV_CFLAGS="" + + MODULE_OSSAUDIODEV_LDFLAGS="" + + if false; then + MODULE_OSSAUDIODEV_TRUE= + MODULE_OSSAUDIODEV_FALSE='#' +else + MODULE_OSSAUDIODEV_TRUE='#' + MODULE_OSSAUDIODEV_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _scproxy" >&5 +$as_echo_n "checking for stdlib extension module _scproxy... " >&6; } + + + + + if test "$ac_sys_system" = "Darwin"; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__SCPROXY_CFLAGS="" + + MODULE__SCPROXY_LDFLAGS="-framework SystemConfiguration -framework CoreFoundation" + + if true; then + MODULE__SCPROXY_TRUE= + MODULE__SCPROXY_FALSE='#' +else + MODULE__SCPROXY_TRUE='#' + MODULE__SCPROXY_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_scproxy*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__SCPROXY_CFLAGS="" + + MODULE__SCPROXY_LDFLAGS="" + + if false; then + MODULE__SCPROXY_TRUE= + MODULE__SCPROXY_FALSE='#' +else + MODULE__SCPROXY_TRUE='#' + MODULE__SCPROXY_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module zlib" >&5 +$as_echo_n "checking for stdlib extension module zlib... " >&6; } + + + + + if test "$ac_cv_header_zlib_h" = yes -a "$ac_cv_lib_z_gzread" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE_ZLIB_CFLAGS="" + + MODULE_ZLIB_LDFLAGS="-lz" + + if true; then + MODULE_ZLIB_TRUE= + MODULE_ZLIB_FALSE='#' +else + MODULE_ZLIB_TRUE='#' + MODULE_ZLIB_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *zlib*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE_ZLIB_CFLAGS="" + + MODULE_ZLIB_LDFLAGS="" + + if false; then + MODULE_ZLIB_TRUE= + MODULE_ZLIB_FALSE='#' +else + MODULE_ZLIB_TRUE='#' + MODULE_ZLIB_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module binascii" >&5 +$as_echo_n "checking for stdlib extension module binascii... " >&6; } + + + + + if true; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE_BINASCII_CFLAGS="$BINASCII_CFLAGS" + + MODULE_BINASCII_LDFLAGS="$BINASCII_LDFLAGS" + + if true; then + MODULE_BINASCII_TRUE= + MODULE_BINASCII_FALSE='#' +else + MODULE_BINASCII_TRUE='#' + MODULE_BINASCII_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *binascii*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE_BINASCII_CFLAGS="" + + MODULE_BINASCII_LDFLAGS="" + + if false; then + MODULE_BINASCII_TRUE= + MODULE_BINASCII_FALSE='#' +else + MODULE_BINASCII_TRUE='#' + MODULE_BINASCII_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _bz2" >&5 +$as_echo_n "checking for stdlib extension module _bz2... " >&6; } + + + + + if test "$ac_cv_header_bzlib_h" = yes -a "$ac_cv_lib_bz2_BZ2_bzCompress" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__BZ2_CFLAGS="" + MODULE__BZ2_LDFLAGS="-lbz2" + + if true; then + MODULE__BZ2_TRUE= + MODULE__BZ2_FALSE='#' +else + MODULE__BZ2_TRUE='#' + MODULE__BZ2_FALSE= fi -# --with-experimental-isolated-subinterpreters +else -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-experimental-isolated-subinterpreters" >&5 -$as_echo_n "checking for --with-experimental-isolated-subinterpreters... " >&6; } + case $py_stdlib_not_available in #( + *_bz2*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__BZ2_CFLAGS="" -# Check whether --with-experimental-isolated-subinterpreters was given. -if test "${with_experimental_isolated_subinterpreters+set}" = set; then : - withval=$with_experimental_isolated_subinterpreters; -if test "$withval" != no -then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; }; - $as_echo "#define EXPERIMENTAL_ISOLATED_SUBINTERPRETERS 1" >>confdefs.h + MODULE__BZ2_LDFLAGS="" + if false; then + MODULE__BZ2_TRUE= + MODULE__BZ2_FALSE='#' else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; }; + MODULE__BZ2_TRUE='#' + MODULE__BZ2_FALSE= +fi + + fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _lzma" >&5 +$as_echo_n "checking for stdlib extension module _lzma... " >&6; } + + + + + if test "$ac_cv_header_lzma_h" = yes -a "$ac_cv_lib_lzma_lzma_easy_encoder" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__LZMA_CFLAGS="" + + MODULE__LZMA_LDFLAGS="-llzma" + + if true; then + MODULE__LZMA_TRUE= + MODULE__LZMA_FALSE='#' else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + MODULE__LZMA_TRUE='#' + MODULE__LZMA_FALSE= fi -# --with-static-libpython -STATIC_LIBPYTHON=1 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-static-libpython" >&5 -$as_echo_n "checking for --with-static-libpython... " >&6; } +else -# Check whether --with-static-libpython was given. -if test "${with_static_libpython+set}" = set; then : - withval=$with_static_libpython; -if test "$withval" = no -then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; }; - STATIC_LIBPYTHON=0 + case $py_stdlib_not_available in #( + *_lzma*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__LZMA_CFLAGS="" + + MODULE__LZMA_LDFLAGS="" + + if false; then + MODULE__LZMA_TRUE= + MODULE__LZMA_FALSE='#' else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; }; + MODULE__LZMA_TRUE='#' + MODULE__LZMA_FALSE= +fi + + fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _ctypes_test" >&5 +$as_echo_n "checking for stdlib extension module _ctypes_test... " >&6; } + + + + + if test "$TEST_MODULES" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__CTYPES_TEST_CFLAGS="" + + MODULE__CTYPES_TEST_LDFLAGS="" + + if true; then + MODULE__CTYPES_TEST_TRUE= + MODULE__CTYPES_TEST_FALSE='#' else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 + MODULE__CTYPES_TEST_TRUE='#' + MODULE__CTYPES_TEST_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_ctypes_test*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__CTYPES_TEST_CFLAGS="" + + MODULE__CTYPES_TEST_LDFLAGS="" + + if false; then + MODULE__CTYPES_TEST_TRUE= + MODULE__CTYPES_TEST_FALSE='#' +else + MODULE__CTYPES_TEST_TRUE='#' + MODULE__CTYPES_TEST_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _posixshmem" >&5 +$as_echo_n "checking for stdlib extension module _posixshmem... " >&6; } + + + + + if true; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } + MODULE__POSIXSHMEM_CFLAGS="" + + MODULE__POSIXSHMEM_LDFLAGS="$ac_cv_search_shm_open" + + if true; then + MODULE__POSIXSHMEM_TRUE= + MODULE__POSIXSHMEM_FALSE='#' +else + MODULE__POSIXSHMEM_TRUE='#' + MODULE__POSIXSHMEM_FALSE= fi -LIBRARY_DEPS='$(PY3LIBRARY) $(EXPORTSYMS)' -if test "$PY_ENABLE_SHARED" = 1 || test "$enable_framework" ; then - LIBRARY_DEPS="\$(LDLIBRARY) $LIBRARY_DEPS" - if test "$STATIC_LIBPYTHON" = 1; then - LIBRARY_DEPS="\$(LIBRARY) $LIBRARY_DEPS" - fi + else - LIBRARY_DEPS="\$(LIBRARY) $LIBRARY_DEPS" + + case $py_stdlib_not_available in #( + *_posixshmem*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__POSIXSHMEM_CFLAGS="" + + MODULE__POSIXSHMEM_LDFLAGS="" + + if false; then + MODULE__POSIXSHMEM_TRUE= + MODULE__POSIXSHMEM_FALSE='#' +else + MODULE__POSIXSHMEM_TRUE='#' + MODULE__POSIXSHMEM_FALSE= fi +fi -# Check whether to disable test modules. Once set, setup.py will not build -# test extension modules and "make install" will not install test suites. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --disable-test-modules" >&5 -$as_echo_n "checking for --disable-test-modules... " >&6; } -# Check whether --enable-test-modules was given. -if test "${enable_test_modules+set}" = set; then : - enableval=$enable_test_modules; + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _tkinter" >&5 +$as_echo_n "checking for stdlib extension module _tkinter... " >&6; } + + + + + if test -n "$TCLTK_LIBS"; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + MODULE__TKINTER_CFLAGS="-DWITH_APPINIT=1" + + MODULE__TKINTER_LDFLAGS="$TCLTK_LIBS" + + if true; then + MODULE__TKINTER_TRUE= + MODULE__TKINTER_FALSE='#' +else + MODULE__TKINTER_TRUE='#' + MODULE__TKINTER_FALSE= fi -if test "$enable_test_modules" = no; then - TEST_MODULES=no + +else + + case $py_stdlib_not_available in #( + *_tkinter*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; +esac + MODULE__TKINTER_CFLAGS="" + + MODULE__TKINTER_LDFLAGS="" + + if false; then + MODULE__TKINTER_TRUE= + MODULE__TKINTER_FALSE='#' +else + MODULE__TKINTER_TRUE='#' + MODULE__TKINTER_FALSE= +fi + + +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _uuid" >&5 +$as_echo_n "checking for stdlib extension module _uuid... " >&6; } + + + + + if test "$ac_cv_lib_uuid_uuid_generate_time" = yes -o "$ac_cv_func_uuid_create" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } + MODULE__UUID_CFLAGS="$UUID_CFLAGS" + + MODULE__UUID_LDFLAGS="$UUID_LDLAGS" + + if true; then + MODULE__UUID_TRUE= + MODULE__UUID_FALSE='#' else - TEST_MODULES=yes + MODULE__UUID_TRUE='#' + MODULE__UUID_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_uuid*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } +$as_echo "no" >&6; } ;; +esac + MODULE__UUID_CFLAGS="" + + MODULE__UUID_LDFLAGS="" + + if false; then + MODULE__UUID_TRUE= + MODULE__UUID_FALSE='#' +else + MODULE__UUID_TRUE='#' + MODULE__UUID_FALSE= fi +fi + + + + + # generate output files ac_config_files="$ac_config_files Makefile.pre Misc/python.pc Misc/python-embed.pc Misc/python-config.sh" @@ -19312,6 +21167,254 @@ LTLIBOBJS=$ac_ltlibobjs +if test -z "${MODULE_GRP_TRUE}" && test -z "${MODULE_GRP_FALSE}"; then + as_fn_error $? "conditional \"MODULE_GRP\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_GRP_TRUE}" && test -z "${MODULE_GRP_FALSE}"; then + as_fn_error $? "conditional \"MODULE_GRP\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_SPWD_TRUE}" && test -z "${MODULE_SPWD_FALSE}"; then + as_fn_error $? "conditional \"MODULE_SPWD\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_SPWD_TRUE}" && test -z "${MODULE_SPWD_FALSE}"; then + as_fn_error $? "conditional \"MODULE_SPWD\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__XXSUBINTERPRETERS_TRUE}" && test -z "${MODULE__XXSUBINTERPRETERS_FALSE}"; then + as_fn_error $? "conditional \"MODULE__XXSUBINTERPRETERS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__XXSUBINTERPRETERS_TRUE}" && test -z "${MODULE__XXSUBINTERPRETERS_FALSE}"; then + as_fn_error $? "conditional \"MODULE__XXSUBINTERPRETERS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__TESTCAPI_TRUE}" && test -z "${MODULE__TESTCAPI_FALSE}"; then + as_fn_error $? "conditional \"MODULE__TESTCAPI\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__TESTCAPI_TRUE}" && test -z "${MODULE__TESTCAPI_FALSE}"; then + as_fn_error $? "conditional \"MODULE__TESTCAPI\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__TESTINTERNALCAPI_TRUE}" && test -z "${MODULE__TESTINTERNALCAPI_FALSE}"; then + as_fn_error $? "conditional \"MODULE__TESTINTERNALCAPI\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__TESTINTERNALCAPI_TRUE}" && test -z "${MODULE__TESTINTERNALCAPI_FALSE}"; then + as_fn_error $? "conditional \"MODULE__TESTINTERNALCAPI\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__TESTBUFFER_TRUE}" && test -z "${MODULE__TESTBUFFER_FALSE}"; then + as_fn_error $? "conditional \"MODULE__TESTBUFFER\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__TESTBUFFER_TRUE}" && test -z "${MODULE__TESTBUFFER_FALSE}"; then + as_fn_error $? "conditional \"MODULE__TESTBUFFER\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__TESTIMPORTMULTIPLE_TRUE}" && test -z "${MODULE__TESTIMPORTMULTIPLE_FALSE}"; then + as_fn_error $? "conditional \"MODULE__TESTIMPORTMULTIPLE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__TESTIMPORTMULTIPLE_TRUE}" && test -z "${MODULE__TESTIMPORTMULTIPLE_FALSE}"; then + as_fn_error $? "conditional \"MODULE__TESTIMPORTMULTIPLE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__TESTMULTIPHASE_TRUE}" && test -z "${MODULE__TESTMULTIPHASE_FALSE}"; then + as_fn_error $? "conditional \"MODULE__TESTMULTIPHASE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__TESTMULTIPHASE_TRUE}" && test -z "${MODULE__TESTMULTIPHASE_FALSE}"; then + as_fn_error $? "conditional \"MODULE__TESTMULTIPHASE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__XXTESTFUZZ_TRUE}" && test -z "${MODULE__XXTESTFUZZ_FALSE}"; then + as_fn_error $? "conditional \"MODULE__XXTESTFUZZ\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__XXTESTFUZZ_TRUE}" && test -z "${MODULE__XXTESTFUZZ_FALSE}"; then + as_fn_error $? "conditional \"MODULE__XXTESTFUZZ\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_READLINE_TRUE}" && test -z "${MODULE_READLINE_FALSE}"; then + as_fn_error $? "conditional \"MODULE_READLINE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_READLINE_TRUE}" && test -z "${MODULE_READLINE_FALSE}"; then + as_fn_error $? "conditional \"MODULE_READLINE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__CRYPT_TRUE}" && test -z "${MODULE__CRYPT_FALSE}"; then + as_fn_error $? "conditional \"MODULE__CRYPT\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__CRYPT_TRUE}" && test -z "${MODULE__CRYPT_FALSE}"; then + as_fn_error $? "conditional \"MODULE__CRYPT\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__SSL_TRUE}" && test -z "${MODULE__SSL_FALSE}"; then + as_fn_error $? "conditional \"MODULE__SSL\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__SSL_TRUE}" && test -z "${MODULE__SSL_FALSE}"; then + as_fn_error $? "conditional \"MODULE__SSL\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__HASHLIB_TRUE}" && test -z "${MODULE__HASHLIB_FALSE}"; then + as_fn_error $? "conditional \"MODULE__HASHLIB\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__HASHLIB_TRUE}" && test -z "${MODULE__HASHLIB_FALSE}"; then + as_fn_error $? "conditional \"MODULE__HASHLIB\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__SHA256_TRUE}" && test -z "${MODULE__SHA256_FALSE}"; then + as_fn_error $? "conditional \"MODULE__SHA256\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__SHA256_TRUE}" && test -z "${MODULE__SHA256_FALSE}"; then + as_fn_error $? "conditional \"MODULE__SHA256\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__SHA512_TRUE}" && test -z "${MODULE__SHA512_FALSE}"; then + as_fn_error $? "conditional \"MODULE__SHA512\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__SHA512_TRUE}" && test -z "${MODULE__SHA512_FALSE}"; then + as_fn_error $? "conditional \"MODULE__SHA512\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__MD5_TRUE}" && test -z "${MODULE__MD5_FALSE}"; then + as_fn_error $? "conditional \"MODULE__MD5\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__MD5_TRUE}" && test -z "${MODULE__MD5_FALSE}"; then + as_fn_error $? "conditional \"MODULE__MD5\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__SHA1_TRUE}" && test -z "${MODULE__SHA1_FALSE}"; then + as_fn_error $? "conditional \"MODULE__SHA1\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__SHA1_TRUE}" && test -z "${MODULE__SHA1_FALSE}"; then + as_fn_error $? "conditional \"MODULE__SHA1\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__BLAKE2_TRUE}" && test -z "${MODULE__BLAKE2_FALSE}"; then + as_fn_error $? "conditional \"MODULE__BLAKE2\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__BLAKE2_TRUE}" && test -z "${MODULE__BLAKE2_FALSE}"; then + as_fn_error $? "conditional \"MODULE__BLAKE2\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__SHA3_TRUE}" && test -z "${MODULE__SHA3_FALSE}"; then + as_fn_error $? "conditional \"MODULE__SHA3\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__SHA3_TRUE}" && test -z "${MODULE__SHA3_FALSE}"; then + as_fn_error $? "conditional \"MODULE__SHA3\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__GDBM_TRUE}" && test -z "${MODULE__GDBM_FALSE}"; then + as_fn_error $? "conditional \"MODULE__GDBM\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__GDBM_TRUE}" && test -z "${MODULE__GDBM_FALSE}"; then + as_fn_error $? "conditional \"MODULE__GDBM\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_TERMIOS_TRUE}" && test -z "${MODULE_TERMIOS_FALSE}"; then + as_fn_error $? "conditional \"MODULE_TERMIOS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_TERMIOS_TRUE}" && test -z "${MODULE_TERMIOS_FALSE}"; then + as_fn_error $? "conditional \"MODULE_TERMIOS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_OSSAUDIODEV_TRUE}" && test -z "${MODULE_OSSAUDIODEV_FALSE}"; then + as_fn_error $? "conditional \"MODULE_OSSAUDIODEV\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_OSSAUDIODEV_TRUE}" && test -z "${MODULE_OSSAUDIODEV_FALSE}"; then + as_fn_error $? "conditional \"MODULE_OSSAUDIODEV\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__SCPROXY_TRUE}" && test -z "${MODULE__SCPROXY_FALSE}"; then + as_fn_error $? "conditional \"MODULE__SCPROXY\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__SCPROXY_TRUE}" && test -z "${MODULE__SCPROXY_FALSE}"; then + as_fn_error $? "conditional \"MODULE__SCPROXY\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_ZLIB_TRUE}" && test -z "${MODULE_ZLIB_FALSE}"; then + as_fn_error $? "conditional \"MODULE_ZLIB\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_ZLIB_TRUE}" && test -z "${MODULE_ZLIB_FALSE}"; then + as_fn_error $? "conditional \"MODULE_ZLIB\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_BINASCII_TRUE}" && test -z "${MODULE_BINASCII_FALSE}"; then + as_fn_error $? "conditional \"MODULE_BINASCII\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_BINASCII_TRUE}" && test -z "${MODULE_BINASCII_FALSE}"; then + as_fn_error $? "conditional \"MODULE_BINASCII\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__BZ2_TRUE}" && test -z "${MODULE__BZ2_FALSE}"; then + as_fn_error $? "conditional \"MODULE__BZ2\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__BZ2_TRUE}" && test -z "${MODULE__BZ2_FALSE}"; then + as_fn_error $? "conditional \"MODULE__BZ2\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__LZMA_TRUE}" && test -z "${MODULE__LZMA_FALSE}"; then + as_fn_error $? "conditional \"MODULE__LZMA\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__LZMA_TRUE}" && test -z "${MODULE__LZMA_FALSE}"; then + as_fn_error $? "conditional \"MODULE__LZMA\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__CTYPES_TEST_TRUE}" && test -z "${MODULE__CTYPES_TEST_FALSE}"; then + as_fn_error $? "conditional \"MODULE__CTYPES_TEST\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__CTYPES_TEST_TRUE}" && test -z "${MODULE__CTYPES_TEST_FALSE}"; then + as_fn_error $? "conditional \"MODULE__CTYPES_TEST\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__POSIXSHMEM_TRUE}" && test -z "${MODULE__POSIXSHMEM_FALSE}"; then + as_fn_error $? "conditional \"MODULE__POSIXSHMEM\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__POSIXSHMEM_TRUE}" && test -z "${MODULE__POSIXSHMEM_FALSE}"; then + as_fn_error $? "conditional \"MODULE__POSIXSHMEM\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__TKINTER_TRUE}" && test -z "${MODULE__TKINTER_FALSE}"; then + as_fn_error $? "conditional \"MODULE__TKINTER\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__TKINTER_TRUE}" && test -z "${MODULE__TKINTER_FALSE}"; then + as_fn_error $? "conditional \"MODULE__TKINTER\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__UUID_TRUE}" && test -z "${MODULE__UUID_FALSE}"; then + as_fn_error $? "conditional \"MODULE__UUID\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__UUID_TRUE}" && test -z "${MODULE__UUID_FALSE}"; then + as_fn_error $? "conditional \"MODULE__UUID\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi : "${CONFIG_STATUS=./config.status}" ac_write_fail=0 diff --git a/configure.ac b/configure.ac index f43030e481068e..5a65d42b39e4c5 100644 --- a/configure.ac +++ b/configure.ac @@ -2148,7 +2148,7 @@ dnl assume C99 compilers provide ANSI C headers AC_DEFINE(STDC_HEADERS, 1, [Define to 1 if you have the ANSI C header files.]) # checks for header files -AC_CHECK_HEADERS(asm/types.h crypt.h conio.h direct.h dlfcn.h errno.h \ +AC_CHECK_HEADERS(asm/types.h conio.h direct.h dlfcn.h errno.h \ fcntl.h grp.h \ ieeefp.h io.h langinfo.h libintl.h process.h pthread.h \ sched.h shadow.h signal.h stropts.h termios.h \ @@ -2162,7 +2162,7 @@ sys/times.h sys/types.h sys/uio.h sys/un.h sys/utsname.h sys/wait.h pty.h \ libutil.h sys/resource.h netpacket/packet.h sysexits.h bluetooth.h \ linux/tipc.h linux/random.h spawn.h util.h alloca.h endian.h \ sys/endian.h sys/sysmacros.h linux/memfd.h linux/wait.h sys/memfd.h \ -sys/mman.h sys/eventfd.h) +sys/mman.h sys/eventfd.h linux/soundcard.h sys/soundcard.h) AC_HEADER_DIRENT AC_HEADER_MAJOR @@ -2836,8 +2836,14 @@ AC_CHECK_LIB(sendfile, sendfile) AC_CHECK_LIB(dl, dlopen) # Dynamic linking for SunOS/Solaris and SYSV AC_CHECK_LIB(dld, shl_load) # Dynamic linking for HP-UX -# checks for uuid.h location -AC_CHECK_HEADERS([uuid/uuid.h uuid.h]) +# check for libuuid and uuid/uuid.h from util-linux +AC_CHECK_HEADERS([uuid/uuid.h], [ + save_LIBS=$LIBS + AC_CHECK_LIB([uuid], [uuid_generate_time]) + UUID_CFLAGS= + UUID_LDLAGS=-luuid + LIBS=$save_LIBS +]) AC_CACHE_CHECK([for uuid_generate_time_safe], [ac_cv_lib_uuid_uuid_generate_time_safe], [ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ]], [[ @@ -2851,16 +2857,13 @@ AS_VAR_IF([ac_cv_lib_uuid_uuid_generate_time_safe], [yes], [ AC_DEFINE(HAVE_UUID_GENERATE_TIME_SAFE, 1, [Define if uuid_generate_time_safe() exists.]) ]) -# check for libuuid from util-linux -save_LIBS=$LIBS -AC_CHECK_LIB([uuid], [uuid_generate_time]) -LIBS=$save_LIBS - # AIX provides support for RFC4122 (uuid) in libc.a starting with AIX 6.1 (anno 2007) # FreeBSD and OpenBSD provides support in libc as well. # Little-endian FreeBSD, OpenBSD and NetBSD needs encoding into an octet # stream in big-endian byte-order -AC_CHECK_FUNCS([uuid_create uuid_enc_be]) +AC_CHECK_HEADERS([uuid.h], + [AC_CHECK_FUNCS([uuid_create uuid_enc_be])] +) # 'Real Time' functions on Solaris # posix4 on Solaris 2.6 @@ -3284,22 +3287,27 @@ AC_CHECK_HEADERS([db.h], [ AC_MSG_CHECKING(for --with-dbmliborder) AC_ARG_WITH(dbmliborder, AS_HELP_STRING([--with-dbmliborder=db1:db2:...], [override order to check db backends for dbm; a valid value is a colon separated string with the backend names `ndbm', `gdbm' and `bdb'.]), -[ -if test x$with_dbmliborder = xyes -then -AC_MSG_ERROR([proper usage is --with-dbmliborder=db1:db2:...]) +[], [with_dbmliborder=ndbm:gdbm:bdb]) + +as_save_IFS=$IFS +IFS=: +dbmlibs="" +for db in $with_dbmliborder; do + AS_CASE($db, + [ndbm], [dbmlibs="$dbmlibs ndbm"], + [gdbm], [dbmlibs="$dbmlibs gdbm_compat"], + [bdb], [dbmlibs="$dbmlibs db-5.3 db-5 db"], + [dbmlibs="failed"; break] + ) +done +IFS=$as_save_IFS + +if test "$dbmlibs" = failed; then + AC_MSG_ERROR([proper usage is --with-dbmliborder=db1:db2:...]) else - as_save_IFS=$IFS - IFS=: - for db in $with_dbmliborder; do - if test x$db != xndbm && test x$db != xgdbm && test x$db != xbdb - then - AC_MSG_ERROR([proper usage is --with-dbmliborder=db1:db2:...]) - fi - done - IFS=$as_save_IFS -fi]) -AC_MSG_RESULT($with_dbmliborder) + AC_MSG_RESULT($with_dbmliborder (libs: $dbmlibs)) +fi + # Templates for things AC_DEFINEd more than once. # For a single AC_DEFINE, no template is needed. @@ -3812,7 +3820,7 @@ AC_CHECK_FUNCS(alarm accept4 setitimer getitimer bind_textdomain_codeset chown \ explicit_memset faccessat fchmod fchmodat fchown fchownat \ fdwalk fexecve fdopendir fork fpathconf fstatat ftime ftruncate futimesat \ futimens futimes gai_strerror getentropy \ - getgrgid_r getgrnam_r \ + getgrgid getgrgid_r getgrnam_r \ getgrouplist getgroups getlogin getloadavg getpeername getpgid getpid \ getpriority getresuid getresgid getpwent getpwnam_r getpwuid_r getspnam getspent getsid getwd \ if_nameindex \ @@ -4005,6 +4013,12 @@ AC_CHECK_HEADERS([zlib.h], [ LIBS="$save_LIBS" ]) +dnl binascii has optional dependency on zlib +AS_VAR_IF([ac_cv_lib_z_gzread], [yes], [ + BINASCII_CFLAGS=-DUSE_ZLIB_CRC32 + BINASCII_LDFLAGS=-lz +]) + AC_CHECK_HEADERS([bzlib.h], [ save_LIBS="$LIBS" AC_CHECK_LIB([bz2], [BZ2_bzCompress]) @@ -4071,25 +4085,16 @@ AC_CHECK_FUNCS(setpgrp, []) ) -# We search for both crypt and crypt_r as one or the other may be defined -# This gets us our -lcrypt in LIBS when required on the target platform. -# Save/restore LIBS to avoid linking libpython with libcrypt. -LIBS_SAVE=$LIBS -AC_SEARCH_LIBS(crypt_r, crypt) -LIBS="$LIBS_SAVE" -AC_SEARCH_LIBS(crypt, crypt) - -AC_CHECK_FUNC(crypt_r, - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ -#include -]], [[ -struct crypt_data d; -char *r = crypt_r("", "", &d); -]])], - [AC_DEFINE(HAVE_CRYPT_R, 1, [Define if you have the crypt_r() function.])], - []) -) -LIBS=$LIBS_SAVE +AC_CHECK_HEADERS([crypt.h], [ + LIBS_SAVE=$LIBS + AC_SEARCH_LIBS([crypt], [crypt]) + LIBS="$LIBS_SAVE" + AC_SEARCH_LIBS( + [crypt_r], [crypt], + [AC_DEFINE(HAVE_CRYPT_R, 1, [Define if you have the crypt_r() function.])] + ) + LIBS=$LIBS_SAVE +]) AC_CHECK_FUNCS(clock_gettime, [], [ AC_CHECK_LIB(rt, clock_gettime, [ @@ -5761,7 +5766,7 @@ AC_ARG_WITH(openssl-rpath, [], [with_openssl_rpath=no] ) -AS_CASE($with_openssl_rpath, +AS_CASE([$with_openssl_rpath], [auto|yes],[OPENSSL_RPATH=auto], [no],[OPENSSL_RPATH=], [AS_IF( @@ -5774,7 +5779,6 @@ AC_MSG_RESULT($OPENSSL_RPATH) AC_SUBST([OPENSSL_RPATH]) # check if OpenSSL libraries work as expected -AC_CACHE_CHECK([whether OpenSSL provides required APIs], [ac_cv_working_openssl], [ save_LIBS="$LIBS" save_CFLAGS="$CFLAGS" save_LDFLAGS="$LDFLAGS" @@ -5782,18 +5786,15 @@ LIBS="$LIBS $OPENSSL_LIBS" CFLAGS="$CFLAGS_NODIST $OPENSSL_INCLUDES" LDFLAGS="$LDFLAGS $OPENSSL_LDFLAGS" +AC_CACHE_CHECK([whether OpenSSL provides required ssl module APIs], [ac_cv_working_openssl_ssl], [ AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #include -#include #include - #if OPENSSL_VERSION_NUMBER < 0x10101000L -#error "OpenSSL >= 1.1.1 is required" + #error "OpenSSL >= 1.1.1 is required" #endif - static void keylog_cb(const SSL *ssl, const char *line) {} ]], [[ -/* SSL APIs */ SSL_CTX *ctx = SSL_CTX_new(TLS_client_method()); SSL_CTX_set_keylog_callback(ctx, keylog_cb); SSL *ssl = SSL_new(ctx); @@ -5801,20 +5802,30 @@ X509_VERIFY_PARAM *param = SSL_get0_param(ssl); X509_VERIFY_PARAM_set1_host(param, "python.org", 0); SSL_free(ssl); SSL_CTX_free(ctx); +]] +)], [ac_cv_working_openssl_ssl=yes], [ac_cv_working_openssl_ssl=no]) +]) -/* hashlib APIs */ +AC_CACHE_CHECK([whether OpenSSL provides required hashlib module APIs], [ac_cv_working_openssl_hashlib], [ +AC_LINK_IFELSE([AC_LANG_PROGRAM([[ +#include +#include +#if OPENSSL_VERSION_NUMBER < 0x10101000L +#error "OpenSSL >= 1.1.1 is required" +#endif +]], [[ OBJ_nid2sn(NID_md5); OBJ_nid2sn(NID_sha1); OBJ_nid2sn(NID_sha3_512); OBJ_nid2sn(NID_blake2b512); EVP_PBE_scrypt(NULL, 0, NULL, 0, 2, 8, 1, 0, NULL, 0); -]])], - [ac_cv_working_openssl=yes], - [ac_cv_working_openssl=no]) +]] +)], [ac_cv_working_openssl_hashlib=yes], [ac_cv_working_openssl_hashlib=no]) +]) + LIBS="$save_LIBS" CFLAGS="$save_CFLAGS" LDFLAGS="$save_LDFLAGS" -]) # ssl module default cipher suite string AH_TEMPLATE(PY_SSL_DEFAULT_CIPHERS, @@ -5862,21 +5873,28 @@ AC_ARG_WITH(builtin-hashlib-hashes, [builtin hash modules, md5, sha1, sha256, sha512, sha3 (with shake), blake2]), [ -case "$withval" in - yes) - withval=$default_hashlib_hashes - ;; - no) - withval="" - ;; -esac -AC_MSG_RESULT($withval) -AC_DEFINE_UNQUOTED(PY_BUILTIN_HASHLIB_HASHES, "$withval") -], -[ -AC_MSG_RESULT($default_hashlib_hashes); -AC_DEFINE_UNQUOTED(PY_BUILTIN_HASHLIB_HASHES, "$default_hashlib_hashes") -]) + AS_CASE([$with_builtin_hashlib_hashes], + [yes], [with_builtin_hashlib_hashes=$default_hashlib_hashes], + [no], [with_builtin_hashlib_hashes=""] + ) +], [with_builtin_hashlib_hashes=$default_hashlib_hashes]) + +AC_MSG_RESULT($with_builtin_hashlib_hashes) +AC_DEFINE_UNQUOTED(PY_BUILTIN_HASHLIB_HASHES, "$with_builtin_hashlib_hashes") + +as_save_IFS=$IFS +IFS=, +for builtin_hash in $with_builtin_hashlib_hashes; do + AS_CASE($builtin_hash, + [md5], [with_builtin_md5=yes], + [sha1], [with_builtin_sha1=yes], + [sha256], [with_builtin_sha256=yes], + [sha512], [with_builtin_sha512=yes], + [sha3], [with_builtin_sha3=yes], + [blake2], [with_builtin_blake2=yes] + ) +done +IFS=$as_save_IFS # --with-experimental-isolated-subinterpreters AH_TEMPLATE(EXPERIMENTAL_ISOLATED_SUBINTERPRETERS, @@ -5936,6 +5954,175 @@ else fi AC_SUBST(TEST_MODULES) +# Modules that are not available on some platforms +AS_CASE([$ac_sys_system], + [AIX], [py_stdlib_not_available="_scproxy spwd"], + [VxWorks*], [py_stdlib_not_available="_scproxy _crypt termios grp"], + [Darwin], [py_stdlib_not_available=""], + [py_stdlib_not_available="_scproxy"] +) + +# Check for stdlib extension modules +# PY_STDLIB_MOD([NAME], [TEST], [CFLAGS], [LDFLAGS]) +AC_DEFUN([PY_STDLIB_MOD], [ + AC_MSG_CHECKING([for stdlib extension module $1]) + m4_pushdef([pymod], [PY_MODULE_]m4_toupper([$1])) + m4_pushdef([modcond], [MODULE_]m4_toupper([$1])) + m4_pushdef([modcflags], [MODULE_]m4_toupper([$1])[_CFLAGS]) + m4_pushdef([modldflags], [MODULE_]m4_toupper([$1])[_LDFLAGS]) + dnl echo + dnl echo "modcflags=@modldflags@" + dnl echo "modldflags=@modldflags@" + dnl echo + AS_IF([$2], [ + AC_MSG_RESULT([yes]) + dnl AC_DEFINE([pymod], [1], [Define if stdlib module "$1" is supported and enabled.]) + AC_SUBST(modcflags, ["$3"]) + AC_SUBST(modldflags, ["$4"]) + AM_CONDITIONAL(modcond, [true]) + ], [ + AS_CASE([$py_stdlib_not_available], + [*$1*], [AC_MSG_RESULT([n/a])], + [AC_MSG_RESULT([no])]) + AC_SUBST(modcflags, [""]) + AC_SUBST(modldflags, [""]) + AM_CONDITIONAL(modcond, [false]) + ]) + m4_popdef([pymod]) + m4_popdef([modcond]) + m4_popdef([modcflags]) + m4_popdef([modldflags]) +]) + +# reuses autoconf check values (ac_cv_*): +# * ac_cv_func and ac_cv_header values are set to "yes" when function or header exists +# * ac_cv_search values are set to "none required" or "-lsomelib" when function exists +dnl Modules/Setup +dnl PY_STDLIB_MOD([_collections], [true]) +dnl PY_STDLIB_MOD([_abc], [true]) +dnl PY_STDLIB_MOD([_codecs], [true]) +dnl PY_STDLIB_MOD([_functools], [true]) +dnl PY_STDLIB_MOD([_io], [true]) +dnl PY_STDLIB_MOD([_locale], [true]) +dnl PY_STDLIB_MOD([_operator], [true]) +dnl PY_STDLIB_MOD([_signal], [true]) +dnl PY_STDLIB_MOD([_sre], [true]) +dnl PY_STDLIB_MOD([_stat], [true]) +dnl PY_STDLIB_MOD([_symtable], [true]) +dnl PY_STDLIB_MOD([_thread], [true]) +dnl PY_STDLIB_MOD([_tracemalloc], [true]) +dnl PY_STDLIB_MOD([_weakref], [true]) +dnl PY_STDLIB_MOD([atexit], [true]) +dnl PY_STDLIB_MOD([errno], [true]) +dnl PY_STDLIB_MOD([faulthandler], [true]) +dnl PY_STDLIB_MOD([itertools], [true]) +dnl PY_STDLIB_MOD([posix], [true]) +dnl PY_STDLIB_MOD([pwd], [true]) +dnl PY_STDLIB_MOD([time], [true]) + +dnl same order as setup.py +dnl PY_STDLIB_MOD([_struct], [true]) +dnl PY_STDLIB_MOD([array], [true]) +dnl PY_STDLIB_MOD([_contextvars], [true]) +dnl PY_STDLIB_MOD([math], [true]) +dnl PY_STDLIB_MOD([cmath], [true]) +dnl PY_STDLIB_MOD([time], [true]) +dnl PY_STDLIB_MOD([_datetime], [true]) +dnl PY_STDLIB_MOD([_zoneinfo], [true]) +dnl PY_STDLIB_MOD([_random], [true]) +dnl PY_STDLIB_MOD([_bisect], [true]) +dnl PY_STDLIB_MOD([_heapq], [true]) +dnl PY_STDLIB_MOD([_pickle], [true]) +dnl PY_STDLIB_MOD([_json], [true]) +dnl PY_STDLIB_MOD([_lsprof], [true]) +dnl PY_STDLIB_MOD([unicodedata], [true]) +dnl PY_STDLIB_MOD([_opcode], [true]) +dnl PY_STDLIB_MOD([_asyncio], [true]) +dnl PY_STDLIB_MOD([_abc], [true]) +dnl PY_STDLIB_MOD([_queue], [true]) +dnl PY_STDLIB_MOD([_statistics], [true]) +dnl PY_STDLIB_MOD([_typing], [true]) +dnl PY_STDLIB_MOD([fcntl], [true]) +dnl PY_STDLIB_MOD([pwd], [true]) +PY_STDLIB_MOD([grp], [test "$ac_cv_func_getgrgid" = yes -o "$ac_cv_func_getgrgid_r" = yes]) +PY_STDLIB_MOD([spwd], [test "$ac_cv_func_getspent" = yes]) +dnl PY_STDLIB_MOD([select], [true]) +dnl PY_STDLIB_MOD([mmap], [true]) +dnl PY_STDLIB_MOD([syslog], [true]) +PY_STDLIB_MOD([_xxsubinterpreters], [test "$with_experimental_isolated_subinterpreters" = yes]) +dnl PY_STDLIB_MOD([audioop], [true]) +dnl PY_STDLIB_MOD([_csv], [true]) +dnl PY_STDLIB_MOD([_posixsubprocess], [true]) +PY_STDLIB_MOD([_testcapi], [test "$TEST_MODULES" = yes]) +PY_STDLIB_MOD([_testinternalcapi], [test "$TEST_MODULES" = yes]) +PY_STDLIB_MOD([_testbuffer], [test "$TEST_MODULES" = yes]) +PY_STDLIB_MOD([_testimportmultiple], [test "$TEST_MODULES" = yes]) +PY_STDLIB_MOD([_testmultiphase], [test "$TEST_MODULES" = yes]) +PY_STDLIB_MOD([_xxtestfuzz], [test "$TEST_MODULES" = yes]) +PY_STDLIB_MOD([readline], [test "$py_cv_lib_readline" = yes], [], [$READLINE_LIBS]) +dnl PY_STDLIB_MOD([_curses], [false]) +dnl PY_STDLIB_MOD([_curses_panel], [false]) +PY_STDLIB_MOD([_crypt], + [test "$ac_sys_system" != VxWorks -a \( "$ac_cv_search_crypt_r" != no -o "$ac_cv_search_crypt" != no \)], + [], [-lcrypt]) +dnl PY_STDLIB_MOD([_socket], [true]) +dnl TODO: add OPENSSL_RPATH +PY_STDLIB_MOD([_ssl], + [test "$ac_cv_working_openssl_ssl" = yes], + [$OPENSSL_INCLUDES], [$OPENSSL_LIBS $OPENSSL_LDFLAGS]) +PY_STDLIB_MOD([_hashlib], + [test "$ac_cv_working_openssl_ssl" = yes], + [$OPENSSL_INCLUDES], [$OPENSSL_LIBS $OPENSSL_LDFLAGS]) +PY_STDLIB_MOD([_sha256], [test "$with_builtin_sha256" = yes]) +PY_STDLIB_MOD([_sha512], [test "$with_builtin_sha512" = yes]) +PY_STDLIB_MOD([_md5], [test "$with_builtin_md5" = yes]) +PY_STDLIB_MOD([_sha1], [test "$with_builtin_sha1" = yes]) +PY_STDLIB_MOD([_blake2], [test "$with_builtin_blake2" = yes]) +PY_STDLIB_MOD([_sha3], [test "$with_builtin_sha3" = yes]) +dnl PY_STDLIB_MOD([_dbm], [false]) +PY_STDLIB_MOD([_gdbm], + [test "$ac_cv_lib_gdbm_gdbm_open" = yes], + [$GDBM_CFLAGS], [$GDBM_LDFLAGS]) +dnl PY_STDLIB_MOD([_sqlite3], [false]) +PY_STDLIB_MOD([termios], [test "$ac_sys_system" != VxWorks]) +dnl PY_STDLIB_MOD([resource], [true]) +PY_STDLIB_MOD([ossaudiodev], + [test "$ac_cv_header_linux_soundcard_h" = yes -o "$ac_cv_header_sys_soundcard_h" = yes]) +PY_STDLIB_MOD([_scproxy], + [test "$ac_sys_system" = "Darwin"], + [], [-framework SystemConfiguration -framework CoreFoundation]) +dnl PY_STDLIB_MOD([nis], [false]) +PY_STDLIB_MOD([zlib], + [test "$ac_cv_header_zlib_h" = yes -a "$ac_cv_lib_z_gzread" = yes], + [], [-lz]) +PY_STDLIB_MOD([binascii], [true], [$BINASCII_CFLAGS], [$BINASCII_LDFLAGS]) +PY_STDLIB_MOD([_bz2], + [test "$ac_cv_header_bzlib_h" = yes -a "$ac_cv_lib_bz2_BZ2_bzCompress" = yes], + [], [-lbz2]) +PY_STDLIB_MOD([_lzma], + [test "$ac_cv_header_lzma_h" = yes -a "$ac_cv_lib_lzma_lzma_easy_encoder" = yes], + [], [-llzma]) +dnl PY_STDLIB_MOD([pyexpat], [true]) +dnl PY_STDLIB_MOD([_elementtree], [true]) +dnl PY_STDLIB_MOD([_multibytecodec], [true]) +dnl PY_STDLIB_MOD([_codecs_kr], [true]) +dnl PY_STDLIB_MOD([_codecs_jp], [true]) +dnl PY_STDLIB_MOD([_codecs_cn], [true]) +dnl PY_STDLIB_MOD([_codecs_tw], [true]) +dnl PY_STDLIB_MOD([_codecs_hk], [true]) +dnl PY_STDLIB_MOD([_codecs_iso2022], [true]) +dnl PY_STDLIB_MOD([_decimal], [true]) +dnl PY_STDLIB_MOD([_ctypes], [false]) +PY_STDLIB_MOD([_ctypes_test], [test "$TEST_MODULES" = yes]) +dnl PY_STDLIB_MOD([_multiprocessing], [true]) +dnl shm_open() requires -lrt on some platforms +PY_STDLIB_MOD([_posixshmem], [true], [], [$ac_cv_search_shm_open]) +PY_STDLIB_MOD([_tkinter], [test -n "$TCLTK_LIBS"], [-DWITH_APPINIT=1], [$TCLTK_LIBS]) +PY_STDLIB_MOD([_uuid], + [test "$ac_cv_lib_uuid_uuid_generate_time" = yes -o "$ac_cv_func_uuid_create" = yes], + [$UUID_CFLAGS], [$UUID_LDLAGS]) +dnl PY_STDLIB_MOD([xxlimited], [true]) +dnl PY_STDLIB_MOD([xxlimited_35], [true]) # generate output files AC_CONFIG_FILES(Makefile.pre Misc/python.pc Misc/python-embed.pc Misc/python-config.sh) diff --git a/pyconfig.h.in b/pyconfig.h.in index cbab59b739f31c..a2d6f852b1b2f7 100644 --- a/pyconfig.h.in +++ b/pyconfig.h.in @@ -441,6 +441,9 @@ /* Define to 1 if you have the `getentropy' function. */ #undef HAVE_GETENTROPY +/* Define to 1 if you have the `getgrgid' function. */ +#undef HAVE_GETGRGID + /* Define to 1 if you have the `getgrgid_r' function. */ #undef HAVE_GETGRGID_R @@ -679,6 +682,9 @@ /* Define to 1 if you have the header file. */ #undef HAVE_LINUX_RANDOM_H +/* Define to 1 if you have the header file. */ +#undef HAVE_LINUX_SOUNDCARD_H + /* Define to 1 if you have the header file. */ #undef HAVE_LINUX_TIPC_H @@ -1217,6 +1223,9 @@ /* Define to 1 if you have the header file. */ #undef HAVE_SYS_SOCKET_H +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_SOUNDCARD_H + /* Define to 1 if you have the header file. */ #undef HAVE_SYS_STATVFS_H diff --git a/setup.py b/setup.py index 915169e68630de..6e1819a14b2cff 100644 --- a/setup.py +++ b/setup.py @@ -430,7 +430,9 @@ def __init__(self, dist): if '-j' in os.environ.get('MAKEFLAGS', ''): self.parallel = True - def add(self, ext): + def add(self, ext, *, update_flags=False): + if update_flags: + self.update_extension_flags(ext) self.extensions.append(ext) def set_srcdir(self): @@ -489,6 +491,16 @@ def update_sources_depends(self): # re-compile extensions if a header file has been changed ext.depends.extend(headers) + def update_extension_flags(self, ext): + name = ext.name.upper() + cflags = sysconfig.get_config_var(f"MODULE_{name}_CFLAGS") + if cflags: + ext.extra_compile_args.extend(shlex.split(cflags)) + ldflags = sysconfig.get_config_var(f"MODULE_{name}_LDFLAGS") + if ldflags: + ext.extra_link_args.extend(shlex.split(ldflags)) + return ext + def handle_configured_extensions(self): # The sysconfig variables built by makesetup that list the already # built modules and the disabled modules as configured by the Setup @@ -2107,9 +2119,9 @@ def split_var(name, sep): runtime_library_dirs = [openssl_rpath] openssl_extension_kwargs = dict( - include_dirs=openssl_includes, - library_dirs=openssl_libdirs, - libraries=openssl_libs, + # include_dirs=openssl_includes, + # library_dirs=openssl_libdirs, + # libraries=openssl_libs, runtime_library_dirs=runtime_library_dirs, ) @@ -2134,14 +2146,14 @@ def split_var(name, sep): '_ssl', ['_ssl.c'], **openssl_extension_kwargs - ) + ), update_flags=True ) self.add( Extension( '_hashlib', ['_hashopenssl.c'], **openssl_extension_kwargs, - ) + ), update_flags=True ) def detect_hash_builtins(self): From bcf846921b0faf3f4df732fb466d0331e9a243de Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Fri, 12 Nov 2021 16:18:55 +0100 Subject: [PATCH 2/8] Generate MODULE_BLOCK automatically --- Makefile.pre.in | 42 +-- configure | 906 ++++++++++++++---------------------------------- configure.ac | 45 ++- 3 files changed, 288 insertions(+), 705 deletions(-) diff --git a/Makefile.pre.in b/Makefile.pre.in index 22547bde59ec5d..d823c5f82d83ef 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -208,44 +208,10 @@ OPENSSL_LDFLAGS=@OPENSSL_LDFLAGS@ OPENSSL_RPATH=@OPENSSL_RPATH@ # Module compiler and linker flags -MODULE_READLINE_CFLAGS=@MODULE_READLINE_CFLAGS@ -MODULE_READLINE_LDFLAGS=@MODULE_READLINE_LDFLAGS@ -# MODULE__CURSES_CFLAGS=@MODULE__CURSES_CFLAGS@ -# MODULE__CURSES_LDFLAGS=@MODULE__CURSES_LDFLAGS@ -# MODULE__CURSES_PANEL_CFLAGS=@MODULE__CURSES_PANEL_CFLAGS@ -# MODULE__CURSES_PANEL_LDFLAGS=@MODULE__CURSES_PANEL_LDFLAGS@ -MODULE__CRYPT_CFLAGS=@MODULE__CRYPT_CFLAGS@ -MODULE__CRYPT_LDFLAGS=@MODULE__CRYPT_LDFLAGS@ -MODULE__SSL_CFLAGS=@MODULE__SSL_CFLAGS@ -MODULE__SSL_LDFLAGS=@MODULE__SSL_LDFLAGS@ -MODULE__HASHLIB_CFLAGS=@MODULE__HASHLIB_CFLAGS@ -MODULE__HASHLIB_LDFLAGS=@MODULE__HASHLIB_LDFLAGS@ -# MODULE__DBM_CFLAGS=@MODULE__DBM_CFLAGS@ -# MODULE__DBM_LDFLAGS=@MODULE__DBM_LDFLAGS@ -MODULE__GDBM_CFLAGS=@MODULE__GDBM_CFLAGS@ -MODULE__GDBM_LDFLAGS=@MODULE__GDBM_LDFLAGS@ -# MODULE__SQLITE3_CFLAGS=@MODULE__SQLITE3_CFLAGS@ -# MODULE__SQLITE3_LDFLAGS=@MODULE__SQLITE3_LDFLAGS@ -MODULE__SCPROXY_CFLAGS=@MODULE__SCPROXY_CFLAGS@ -MODULE__SCPROXY_LDFLAGS=@MODULE__SCPROXY_LDFLAG -# MODULE_NIS_CFLAGS=@MODULE_NIS_CFLAGS@ -# MODULE_NIS_LDFLAGS=@MODULE_NIS_LDFLAGS@ -MODULE_ZLIB_CFLAGS=@MODULE_ZLIB_CFLAGS@ -MODULE_ZLIB_LDFLAGS=@MODULE_ZLIB_LDFLAGS@ -MODULE_BINASCII_CFLAGS=@MODULE_BINASCII_CFLAGS@ -MODULE_BINASCII_LDFLAGS=@MODULE_BINASCII_LDFLAGS@ -MODULE__BZ2_CFLAGS=@MODULE__BZ2_CFLAGS@ -MODULE__BZ2_LDFLAGS=@MODULE__BZ2_LDFLAGS@ -MODULE__LZMA_CFLAGS=@MODULE__LZMA_CFLAGS@ -MODULE__LZMA_LDFLAGS=@MODULE__LZMA_LDFLAGS@ -# MODULE__CTYPES_CFLAGS=@MODULE__CTYPES_CFLAGS@ -# MODULE__CTYPES_LDFLAGS=@MODULE__CTYPES_LDFLAGS@ -MODULE__POSIXSHMEM_CFLAGS=@MODULE__POSIXSHMEM_CFLAGS@ -MODULE__POSIXSHMEM_LDFLAGS=@MODULE__POSIXSHMEM_LDFLAGS@ -MODULE__TKINTER_CFLAGS=@MODULE__TKINTER_CFLAGS@ -MODULE__TKINTER_LDFLAGS=@MODULE__TKINTER_LDFLAGS@ -MODULE__UUID_CFLAGS=@MODULE__UUID_CFLAGS@ -MODULE__UUID_LDFLAGS=@MODULE__UUID_LDFLAGS@ +# MODULE_EGG=1 # or "0" for disabled / unavailable module +# MODULE_EGG_CFLAGS= +# MODULE_EGG_LDFLAGS= +@MODULE_BLOCK@ # Default zoneinfo.TZPATH. Added here to expose it in sysconfig.get_config_var TZPATH=@TZPATH@ diff --git a/configure b/configure index d9447c1f2be252..36f429f9df3521 100755 --- a/configure +++ b/configure @@ -623,130 +623,69 @@ ac_includes_default="\ #endif" ac_subst_vars='LTLIBOBJS +MODULE_BLOCK MODULE__UUID_FALSE MODULE__UUID_TRUE -MODULE__UUID_LDFLAGS -MODULE__UUID_CFLAGS MODULE__TKINTER_FALSE MODULE__TKINTER_TRUE -MODULE__TKINTER_LDFLAGS -MODULE__TKINTER_CFLAGS MODULE__POSIXSHMEM_FALSE MODULE__POSIXSHMEM_TRUE -MODULE__POSIXSHMEM_LDFLAGS -MODULE__POSIXSHMEM_CFLAGS MODULE__CTYPES_TEST_FALSE MODULE__CTYPES_TEST_TRUE -MODULE__CTYPES_TEST_LDFLAGS -MODULE__CTYPES_TEST_CFLAGS MODULE__LZMA_FALSE MODULE__LZMA_TRUE -MODULE__LZMA_LDFLAGS -MODULE__LZMA_CFLAGS MODULE__BZ2_FALSE MODULE__BZ2_TRUE -MODULE__BZ2_LDFLAGS -MODULE__BZ2_CFLAGS MODULE_BINASCII_FALSE MODULE_BINASCII_TRUE -MODULE_BINASCII_LDFLAGS -MODULE_BINASCII_CFLAGS MODULE_ZLIB_FALSE MODULE_ZLIB_TRUE -MODULE_ZLIB_LDFLAGS -MODULE_ZLIB_CFLAGS MODULE__SCPROXY_FALSE MODULE__SCPROXY_TRUE -MODULE__SCPROXY_LDFLAGS -MODULE__SCPROXY_CFLAGS MODULE_OSSAUDIODEV_FALSE MODULE_OSSAUDIODEV_TRUE -MODULE_OSSAUDIODEV_LDFLAGS -MODULE_OSSAUDIODEV_CFLAGS MODULE_TERMIOS_FALSE MODULE_TERMIOS_TRUE -MODULE_TERMIOS_LDFLAGS -MODULE_TERMIOS_CFLAGS MODULE__GDBM_FALSE MODULE__GDBM_TRUE -MODULE__GDBM_LDFLAGS -MODULE__GDBM_CFLAGS MODULE__SHA3_FALSE MODULE__SHA3_TRUE -MODULE__SHA3_LDFLAGS -MODULE__SHA3_CFLAGS MODULE__BLAKE2_FALSE MODULE__BLAKE2_TRUE -MODULE__BLAKE2_LDFLAGS -MODULE__BLAKE2_CFLAGS MODULE__SHA1_FALSE MODULE__SHA1_TRUE -MODULE__SHA1_LDFLAGS -MODULE__SHA1_CFLAGS MODULE__MD5_FALSE MODULE__MD5_TRUE -MODULE__MD5_LDFLAGS -MODULE__MD5_CFLAGS MODULE__SHA512_FALSE MODULE__SHA512_TRUE -MODULE__SHA512_LDFLAGS -MODULE__SHA512_CFLAGS MODULE__SHA256_FALSE MODULE__SHA256_TRUE -MODULE__SHA256_LDFLAGS -MODULE__SHA256_CFLAGS MODULE__HASHLIB_FALSE MODULE__HASHLIB_TRUE -MODULE__HASHLIB_LDFLAGS -MODULE__HASHLIB_CFLAGS MODULE__SSL_FALSE MODULE__SSL_TRUE -MODULE__SSL_LDFLAGS -MODULE__SSL_CFLAGS MODULE__CRYPT_FALSE MODULE__CRYPT_TRUE -MODULE__CRYPT_LDFLAGS -MODULE__CRYPT_CFLAGS MODULE_READLINE_FALSE MODULE_READLINE_TRUE -MODULE_READLINE_LDFLAGS -MODULE_READLINE_CFLAGS MODULE__XXTESTFUZZ_FALSE MODULE__XXTESTFUZZ_TRUE -MODULE__XXTESTFUZZ_LDFLAGS -MODULE__XXTESTFUZZ_CFLAGS MODULE__TESTMULTIPHASE_FALSE MODULE__TESTMULTIPHASE_TRUE -MODULE__TESTMULTIPHASE_LDFLAGS -MODULE__TESTMULTIPHASE_CFLAGS MODULE__TESTIMPORTMULTIPLE_FALSE MODULE__TESTIMPORTMULTIPLE_TRUE -MODULE__TESTIMPORTMULTIPLE_LDFLAGS -MODULE__TESTIMPORTMULTIPLE_CFLAGS MODULE__TESTBUFFER_FALSE MODULE__TESTBUFFER_TRUE -MODULE__TESTBUFFER_LDFLAGS -MODULE__TESTBUFFER_CFLAGS MODULE__TESTINTERNALCAPI_FALSE MODULE__TESTINTERNALCAPI_TRUE -MODULE__TESTINTERNALCAPI_LDFLAGS -MODULE__TESTINTERNALCAPI_CFLAGS MODULE__TESTCAPI_FALSE MODULE__TESTCAPI_TRUE -MODULE__TESTCAPI_LDFLAGS -MODULE__TESTCAPI_CFLAGS MODULE__XXSUBINTERPRETERS_FALSE MODULE__XXSUBINTERPRETERS_TRUE -MODULE__XXSUBINTERPRETERS_LDFLAGS -MODULE__XXSUBINTERPRETERS_CFLAGS MODULE_SPWD_FALSE MODULE_SPWD_TRUE -MODULE_SPWD_LDFLAGS -MODULE_SPWD_CFLAGS MODULE_GRP_FALSE MODULE_GRP_TRUE -MODULE_GRP_LDFLAGS -MODULE_GRP_CFLAGS TEST_MODULES LIBRARY_DEPS STATIC_LIBPYTHON @@ -19394,12 +19333,18 @@ case $ac_sys_system in #( VxWorks*) : py_stdlib_not_available="_scproxy _crypt termios grp" ;; #( Darwin) : - py_stdlib_not_available="" ;; #( + py_stdlib_not_available="ossaudiodev spwd" ;; #( *) : py_stdlib_not_available="_scproxy" ;; esac +MODULE_BLOCK= + +# _MODULE_BLOCK_ADD([VAR], [VALUE]) +# internal: adds $1=quote($2) to MODULE_BLOCK + + # Check for stdlib extension modules # PY_STDLIB_MOD([NAME], [TEST], [CFLAGS], [LDFLAGS]) @@ -19411,19 +19356,14 @@ esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module grp" >&5 $as_echo_n "checking for stdlib extension module grp... " >&6; } - - - - if test "$ac_cv_func_getgrgid" = yes -o "$ac_cv_func_getgrgid_r" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE_GRP_CFLAGS="" - - MODULE_GRP_LDFLAGS="" - - if true; then + as_fn_append MODULE_BLOCK "MODULE_GRP=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_GRP_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_GRP_LDFLAGS=$as_nl" + if true; then MODULE_GRP_TRUE= MODULE_GRP_FALSE='#' else @@ -19440,13 +19380,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE_GRP_CFLAGS="" - - MODULE_GRP_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE_GRP=0$as_nl" + if false; then MODULE_GRP_TRUE= MODULE_GRP_FALSE='#' else @@ -19458,25 +19396,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module spwd" >&5 $as_echo_n "checking for stdlib extension module spwd... " >&6; } - - - - if test "$ac_cv_func_getspent" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE_SPWD_CFLAGS="" - - MODULE_SPWD_LDFLAGS="" - - if true; then + as_fn_append MODULE_BLOCK "MODULE_SPWD=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_SPWD_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_SPWD_LDFLAGS=$as_nl" + if true; then MODULE_SPWD_TRUE= MODULE_SPWD_FALSE='#' else @@ -19493,13 +19422,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE_SPWD_CFLAGS="" - - MODULE_SPWD_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE_SPWD=0$as_nl" + if false; then MODULE_SPWD_TRUE= MODULE_SPWD_FALSE='#' else @@ -19511,25 +19438,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _xxsubinterpreters" >&5 $as_echo_n "checking for stdlib extension module _xxsubinterpreters... " >&6; } - - - - if test "$with_experimental_isolated_subinterpreters" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__XXSUBINTERPRETERS_CFLAGS="" - - MODULE__XXSUBINTERPRETERS_LDFLAGS="" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__XXSUBINTERPRETERS=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__XXSUBINTERPRETERS_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__XXSUBINTERPRETERS_LDFLAGS=$as_nl" + if true; then MODULE__XXSUBINTERPRETERS_TRUE= MODULE__XXSUBINTERPRETERS_FALSE='#' else @@ -19546,13 +19464,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__XXSUBINTERPRETERS_CFLAGS="" - - MODULE__XXSUBINTERPRETERS_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__XXSUBINTERPRETERS=0$as_nl" + if false; then MODULE__XXSUBINTERPRETERS_TRUE= MODULE__XXSUBINTERPRETERS_FALSE='#' else @@ -19564,25 +19480,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testcapi" >&5 $as_echo_n "checking for stdlib extension module _testcapi... " >&6; } - - - - if test "$TEST_MODULES" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__TESTCAPI_CFLAGS="" - - MODULE__TESTCAPI_LDFLAGS="" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__TESTCAPI=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTCAPI_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTCAPI_LDFLAGS=$as_nl" + if true; then MODULE__TESTCAPI_TRUE= MODULE__TESTCAPI_FALSE='#' else @@ -19599,13 +19506,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__TESTCAPI_CFLAGS="" - - MODULE__TESTCAPI_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__TESTCAPI=0$as_nl" + if false; then MODULE__TESTCAPI_TRUE= MODULE__TESTCAPI_FALSE='#' else @@ -19617,25 +19522,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testinternalcapi" >&5 $as_echo_n "checking for stdlib extension module _testinternalcapi... " >&6; } - - - - if test "$TEST_MODULES" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__TESTINTERNALCAPI_CFLAGS="" - - MODULE__TESTINTERNALCAPI_LDFLAGS="" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__TESTINTERNALCAPI=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTINTERNALCAPI_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTINTERNALCAPI_LDFLAGS=$as_nl" + if true; then MODULE__TESTINTERNALCAPI_TRUE= MODULE__TESTINTERNALCAPI_FALSE='#' else @@ -19652,13 +19548,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__TESTINTERNALCAPI_CFLAGS="" - - MODULE__TESTINTERNALCAPI_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__TESTINTERNALCAPI=0$as_nl" + if false; then MODULE__TESTINTERNALCAPI_TRUE= MODULE__TESTINTERNALCAPI_FALSE='#' else @@ -19670,25 +19564,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testbuffer" >&5 $as_echo_n "checking for stdlib extension module _testbuffer... " >&6; } - - - - if test "$TEST_MODULES" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__TESTBUFFER_CFLAGS="" - - MODULE__TESTBUFFER_LDFLAGS="" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__TESTBUFFER=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTBUFFER_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTBUFFER_LDFLAGS=$as_nl" + if true; then MODULE__TESTBUFFER_TRUE= MODULE__TESTBUFFER_FALSE='#' else @@ -19705,13 +19590,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__TESTBUFFER_CFLAGS="" - - MODULE__TESTBUFFER_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__TESTBUFFER=0$as_nl" + if false; then MODULE__TESTBUFFER_TRUE= MODULE__TESTBUFFER_FALSE='#' else @@ -19723,25 +19606,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testimportmultiple" >&5 $as_echo_n "checking for stdlib extension module _testimportmultiple... " >&6; } - - - - if test "$TEST_MODULES" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__TESTIMPORTMULTIPLE_CFLAGS="" - - MODULE__TESTIMPORTMULTIPLE_LDFLAGS="" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__TESTIMPORTMULTIPLE=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTIMPORTMULTIPLE_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTIMPORTMULTIPLE_LDFLAGS=$as_nl" + if true; then MODULE__TESTIMPORTMULTIPLE_TRUE= MODULE__TESTIMPORTMULTIPLE_FALSE='#' else @@ -19758,13 +19632,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__TESTIMPORTMULTIPLE_CFLAGS="" - - MODULE__TESTIMPORTMULTIPLE_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__TESTIMPORTMULTIPLE=0$as_nl" + if false; then MODULE__TESTIMPORTMULTIPLE_TRUE= MODULE__TESTIMPORTMULTIPLE_FALSE='#' else @@ -19776,25 +19648,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testmultiphase" >&5 $as_echo_n "checking for stdlib extension module _testmultiphase... " >&6; } - - - - if test "$TEST_MODULES" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__TESTMULTIPHASE_CFLAGS="" - - MODULE__TESTMULTIPHASE_LDFLAGS="" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__TESTMULTIPHASE=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTMULTIPHASE_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTMULTIPHASE_LDFLAGS=$as_nl" + if true; then MODULE__TESTMULTIPHASE_TRUE= MODULE__TESTMULTIPHASE_FALSE='#' else @@ -19811,13 +19674,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__TESTMULTIPHASE_CFLAGS="" - - MODULE__TESTMULTIPHASE_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__TESTMULTIPHASE=0$as_nl" + if false; then MODULE__TESTMULTIPHASE_TRUE= MODULE__TESTMULTIPHASE_FALSE='#' else @@ -19829,25 +19690,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _xxtestfuzz" >&5 $as_echo_n "checking for stdlib extension module _xxtestfuzz... " >&6; } - - - - if test "$TEST_MODULES" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__XXTESTFUZZ_CFLAGS="" - - MODULE__XXTESTFUZZ_LDFLAGS="" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__XXTESTFUZZ=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__XXTESTFUZZ_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__XXTESTFUZZ_LDFLAGS=$as_nl" + if true; then MODULE__XXTESTFUZZ_TRUE= MODULE__XXTESTFUZZ_FALSE='#' else @@ -19864,13 +19716,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__XXTESTFUZZ_CFLAGS="" - - MODULE__XXTESTFUZZ_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__XXTESTFUZZ=0$as_nl" + if false; then MODULE__XXTESTFUZZ_TRUE= MODULE__XXTESTFUZZ_FALSE='#' else @@ -19882,25 +19732,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module readline" >&5 $as_echo_n "checking for stdlib extension module readline... " >&6; } - - - - if test "$py_cv_lib_readline" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE_READLINE_CFLAGS="" - - MODULE_READLINE_LDFLAGS="$READLINE_LIBS" - - if true; then + as_fn_append MODULE_BLOCK "MODULE_READLINE=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_READLINE_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_READLINE_LDFLAGS=$READLINE_LIBS$as_nl" + if true; then MODULE_READLINE_TRUE= MODULE_READLINE_FALSE='#' else @@ -19917,13 +19758,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE_READLINE_CFLAGS="" - - MODULE_READLINE_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE_READLINE=0$as_nl" + if false; then MODULE_READLINE_TRUE= MODULE_READLINE_FALSE='#' else @@ -19935,25 +19774,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _crypt" >&5 $as_echo_n "checking for stdlib extension module _crypt... " >&6; } - - - - if test "$ac_sys_system" != VxWorks -a \( "$ac_cv_search_crypt_r" != no -o "$ac_cv_search_crypt" != no \); then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__CRYPT_CFLAGS="" - - MODULE__CRYPT_LDFLAGS="-lcrypt" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__CRYPT=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CRYPT_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CRYPT_LDFLAGS=-lcrypt$as_nl" + if true; then MODULE__CRYPT_TRUE= MODULE__CRYPT_FALSE='#' else @@ -19970,13 +19800,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__CRYPT_CFLAGS="" - - MODULE__CRYPT_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__CRYPT=0$as_nl" + if false; then MODULE__CRYPT_TRUE= MODULE__CRYPT_FALSE='#' else @@ -19988,25 +19816,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _ssl" >&5 $as_echo_n "checking for stdlib extension module _ssl... " >&6; } - - - - if test "$ac_cv_working_openssl_ssl" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__SSL_CFLAGS="$OPENSSL_INCLUDES" - - MODULE__SSL_LDFLAGS="$OPENSSL_LIBS $OPENSSL_LDFLAGS" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__SSL=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SSL_CFLAGS=$OPENSSL_INCLUDES$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SSL_LDFLAGS=$OPENSSL_LIBS $OPENSSL_LDFLAGS$as_nl" + if true; then MODULE__SSL_TRUE= MODULE__SSL_FALSE='#' else @@ -20023,13 +19842,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__SSL_CFLAGS="" - - MODULE__SSL_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__SSL=0$as_nl" + if false; then MODULE__SSL_TRUE= MODULE__SSL_FALSE='#' else @@ -20041,25 +19858,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _hashlib" >&5 $as_echo_n "checking for stdlib extension module _hashlib... " >&6; } - - - - if test "$ac_cv_working_openssl_ssl" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__HASHLIB_CFLAGS="$OPENSSL_INCLUDES" - - MODULE__HASHLIB_LDFLAGS="$OPENSSL_LIBS $OPENSSL_LDFLAGS" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__HASHLIB=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__HASHLIB_CFLAGS=$OPENSSL_INCLUDES$as_nl" + as_fn_append MODULE_BLOCK "MODULE__HASHLIB_LDFLAGS=$OPENSSL_LIBS $OPENSSL_LDFLAGS$as_nl" + if true; then MODULE__HASHLIB_TRUE= MODULE__HASHLIB_FALSE='#' else @@ -20076,13 +19884,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__HASHLIB_CFLAGS="" - - MODULE__HASHLIB_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__HASHLIB=0$as_nl" + if false; then MODULE__HASHLIB_TRUE= MODULE__HASHLIB_FALSE='#' else @@ -20094,25 +19900,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha256" >&5 $as_echo_n "checking for stdlib extension module _sha256... " >&6; } - - - - if test "$with_builtin_sha256" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__SHA256_CFLAGS="" - - MODULE__SHA256_LDFLAGS="" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__SHA256=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA256_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA256_LDFLAGS=$as_nl" + if true; then MODULE__SHA256_TRUE= MODULE__SHA256_FALSE='#' else @@ -20129,13 +19926,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__SHA256_CFLAGS="" - - MODULE__SHA256_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__SHA256=0$as_nl" + if false; then MODULE__SHA256_TRUE= MODULE__SHA256_FALSE='#' else @@ -20147,25 +19942,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha512" >&5 $as_echo_n "checking for stdlib extension module _sha512... " >&6; } - - - - if test "$with_builtin_sha512" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__SHA512_CFLAGS="" - - MODULE__SHA512_LDFLAGS="" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__SHA512=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA512_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA512_LDFLAGS=$as_nl" + if true; then MODULE__SHA512_TRUE= MODULE__SHA512_FALSE='#' else @@ -20182,13 +19968,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__SHA512_CFLAGS="" - - MODULE__SHA512_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__SHA512=0$as_nl" + if false; then MODULE__SHA512_TRUE= MODULE__SHA512_FALSE='#' else @@ -20200,25 +19984,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _md5" >&5 $as_echo_n "checking for stdlib extension module _md5... " >&6; } - - - - if test "$with_builtin_md5" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__MD5_CFLAGS="" - - MODULE__MD5_LDFLAGS="" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__MD5=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__MD5_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__MD5_LDFLAGS=$as_nl" + if true; then MODULE__MD5_TRUE= MODULE__MD5_FALSE='#' else @@ -20235,13 +20010,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__MD5_CFLAGS="" - - MODULE__MD5_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__MD5=0$as_nl" + if false; then MODULE__MD5_TRUE= MODULE__MD5_FALSE='#' else @@ -20253,25 +20026,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha1" >&5 $as_echo_n "checking for stdlib extension module _sha1... " >&6; } - - - - if test "$with_builtin_sha1" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__SHA1_CFLAGS="" - - MODULE__SHA1_LDFLAGS="" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__SHA1=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA1_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA1_LDFLAGS=$as_nl" + if true; then MODULE__SHA1_TRUE= MODULE__SHA1_FALSE='#' else @@ -20288,13 +20052,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__SHA1_CFLAGS="" - - MODULE__SHA1_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__SHA1=0$as_nl" + if false; then MODULE__SHA1_TRUE= MODULE__SHA1_FALSE='#' else @@ -20306,25 +20068,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _blake2" >&5 $as_echo_n "checking for stdlib extension module _blake2... " >&6; } - - - - if test "$with_builtin_blake2" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__BLAKE2_CFLAGS="" - - MODULE__BLAKE2_LDFLAGS="" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__BLAKE2=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__BLAKE2_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__BLAKE2_LDFLAGS=$as_nl" + if true; then MODULE__BLAKE2_TRUE= MODULE__BLAKE2_FALSE='#' else @@ -20341,13 +20094,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__BLAKE2_CFLAGS="" - - MODULE__BLAKE2_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__BLAKE2=0$as_nl" + if false; then MODULE__BLAKE2_TRUE= MODULE__BLAKE2_FALSE='#' else @@ -20359,25 +20110,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha3" >&5 $as_echo_n "checking for stdlib extension module _sha3... " >&6; } - - - - if test "$with_builtin_sha3" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__SHA3_CFLAGS="" - - MODULE__SHA3_LDFLAGS="" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__SHA3=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA3_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA3_LDFLAGS=$as_nl" + if true; then MODULE__SHA3_TRUE= MODULE__SHA3_FALSE='#' else @@ -20394,13 +20136,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__SHA3_CFLAGS="" - - MODULE__SHA3_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__SHA3=0$as_nl" + if false; then MODULE__SHA3_TRUE= MODULE__SHA3_FALSE='#' else @@ -20412,25 +20152,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _gdbm" >&5 $as_echo_n "checking for stdlib extension module _gdbm... " >&6; } - - - - if test "$ac_cv_lib_gdbm_gdbm_open" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__GDBM_CFLAGS="$GDBM_CFLAGS" - - MODULE__GDBM_LDFLAGS="$GDBM_LDFLAGS" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__GDBM=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__GDBM_CFLAGS=$GDBM_CFLAGS$as_nl" + as_fn_append MODULE_BLOCK "MODULE__GDBM_LDFLAGS=$GDBM_LDFLAGS$as_nl" + if true; then MODULE__GDBM_TRUE= MODULE__GDBM_FALSE='#' else @@ -20447,13 +20178,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__GDBM_CFLAGS="" - - MODULE__GDBM_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__GDBM=0$as_nl" + if false; then MODULE__GDBM_TRUE= MODULE__GDBM_FALSE='#' else @@ -20465,25 +20194,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module termios" >&5 $as_echo_n "checking for stdlib extension module termios... " >&6; } - - - - if test "$ac_sys_system" != VxWorks; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE_TERMIOS_CFLAGS="" - - MODULE_TERMIOS_LDFLAGS="" - - if true; then + as_fn_append MODULE_BLOCK "MODULE_TERMIOS=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_TERMIOS_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_TERMIOS_LDFLAGS=$as_nl" + if true; then MODULE_TERMIOS_TRUE= MODULE_TERMIOS_FALSE='#' else @@ -20500,13 +20220,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE_TERMIOS_CFLAGS="" - - MODULE_TERMIOS_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE_TERMIOS=0$as_nl" + if false; then MODULE_TERMIOS_TRUE= MODULE_TERMIOS_FALSE='#' else @@ -20518,25 +20236,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module ossaudiodev" >&5 $as_echo_n "checking for stdlib extension module ossaudiodev... " >&6; } - - - - if test "$ac_cv_header_linux_soundcard_h" = yes -o "$ac_cv_header_sys_soundcard_h" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE_OSSAUDIODEV_CFLAGS="" - - MODULE_OSSAUDIODEV_LDFLAGS="" - - if true; then + as_fn_append MODULE_BLOCK "MODULE_OSSAUDIODEV=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_OSSAUDIODEV_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_OSSAUDIODEV_LDFLAGS=$as_nl" + if true; then MODULE_OSSAUDIODEV_TRUE= MODULE_OSSAUDIODEV_FALSE='#' else @@ -20553,13 +20262,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE_OSSAUDIODEV_CFLAGS="" - - MODULE_OSSAUDIODEV_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE_OSSAUDIODEV=0$as_nl" + if false; then MODULE_OSSAUDIODEV_TRUE= MODULE_OSSAUDIODEV_FALSE='#' else @@ -20571,25 +20278,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _scproxy" >&5 $as_echo_n "checking for stdlib extension module _scproxy... " >&6; } - - - - if test "$ac_sys_system" = "Darwin"; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__SCPROXY_CFLAGS="" - - MODULE__SCPROXY_LDFLAGS="-framework SystemConfiguration -framework CoreFoundation" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__SCPROXY=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SCPROXY_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SCPROXY_LDFLAGS=-framework SystemConfiguration -framework CoreFoundation$as_nl" + if true; then MODULE__SCPROXY_TRUE= MODULE__SCPROXY_FALSE='#' else @@ -20606,13 +20304,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__SCPROXY_CFLAGS="" - - MODULE__SCPROXY_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__SCPROXY=0$as_nl" + if false; then MODULE__SCPROXY_TRUE= MODULE__SCPROXY_FALSE='#' else @@ -20624,25 +20320,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module zlib" >&5 $as_echo_n "checking for stdlib extension module zlib... " >&6; } - - - - if test "$ac_cv_header_zlib_h" = yes -a "$ac_cv_lib_z_gzread" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE_ZLIB_CFLAGS="" - - MODULE_ZLIB_LDFLAGS="-lz" - - if true; then + as_fn_append MODULE_BLOCK "MODULE_ZLIB=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_ZLIB_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_ZLIB_LDFLAGS=-lz$as_nl" + if true; then MODULE_ZLIB_TRUE= MODULE_ZLIB_FALSE='#' else @@ -20659,13 +20346,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE_ZLIB_CFLAGS="" - - MODULE_ZLIB_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE_ZLIB=0$as_nl" + if false; then MODULE_ZLIB_TRUE= MODULE_ZLIB_FALSE='#' else @@ -20677,25 +20362,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module binascii" >&5 $as_echo_n "checking for stdlib extension module binascii... " >&6; } - - - - if true; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE_BINASCII_CFLAGS="$BINASCII_CFLAGS" - - MODULE_BINASCII_LDFLAGS="$BINASCII_LDFLAGS" - - if true; then + as_fn_append MODULE_BLOCK "MODULE_BINASCII=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_BINASCII_CFLAGS=$BINASCII_CFLAGS$as_nl" + as_fn_append MODULE_BLOCK "MODULE_BINASCII_LDFLAGS=$BINASCII_LDFLAGS$as_nl" + if true; then MODULE_BINASCII_TRUE= MODULE_BINASCII_FALSE='#' else @@ -20712,13 +20388,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE_BINASCII_CFLAGS="" - - MODULE_BINASCII_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE_BINASCII=0$as_nl" + if false; then MODULE_BINASCII_TRUE= MODULE_BINASCII_FALSE='#' else @@ -20730,25 +20404,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _bz2" >&5 $as_echo_n "checking for stdlib extension module _bz2... " >&6; } - - - - if test "$ac_cv_header_bzlib_h" = yes -a "$ac_cv_lib_bz2_BZ2_bzCompress" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__BZ2_CFLAGS="" - - MODULE__BZ2_LDFLAGS="-lbz2" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__BZ2=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__BZ2_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__BZ2_LDFLAGS=-lbz2$as_nl" + if true; then MODULE__BZ2_TRUE= MODULE__BZ2_FALSE='#' else @@ -20765,13 +20430,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__BZ2_CFLAGS="" - - MODULE__BZ2_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__BZ2=0$as_nl" + if false; then MODULE__BZ2_TRUE= MODULE__BZ2_FALSE='#' else @@ -20783,25 +20446,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _lzma" >&5 $as_echo_n "checking for stdlib extension module _lzma... " >&6; } - - - - if test "$ac_cv_header_lzma_h" = yes -a "$ac_cv_lib_lzma_lzma_easy_encoder" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__LZMA_CFLAGS="" - - MODULE__LZMA_LDFLAGS="-llzma" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__LZMA=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__LZMA_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__LZMA_LDFLAGS=-llzma$as_nl" + if true; then MODULE__LZMA_TRUE= MODULE__LZMA_FALSE='#' else @@ -20818,13 +20472,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__LZMA_CFLAGS="" - - MODULE__LZMA_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__LZMA=0$as_nl" + if false; then MODULE__LZMA_TRUE= MODULE__LZMA_FALSE='#' else @@ -20836,25 +20488,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _ctypes_test" >&5 $as_echo_n "checking for stdlib extension module _ctypes_test... " >&6; } - - - - if test "$TEST_MODULES" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__CTYPES_TEST_CFLAGS="" - - MODULE__CTYPES_TEST_LDFLAGS="" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST_LDFLAGS=$as_nl" + if true; then MODULE__CTYPES_TEST_TRUE= MODULE__CTYPES_TEST_FALSE='#' else @@ -20871,13 +20514,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__CTYPES_TEST_CFLAGS="" - - MODULE__CTYPES_TEST_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST=0$as_nl" + if false; then MODULE__CTYPES_TEST_TRUE= MODULE__CTYPES_TEST_FALSE='#' else @@ -20889,25 +20530,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _posixshmem" >&5 $as_echo_n "checking for stdlib extension module _posixshmem... " >&6; } - - - - if true; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__POSIXSHMEM_CFLAGS="" - - MODULE__POSIXSHMEM_LDFLAGS="$ac_cv_search_shm_open" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__POSIXSHMEM=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__POSIXSHMEM_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__POSIXSHMEM_LDFLAGS=$ac_cv_search_shm_open$as_nl" + if true; then MODULE__POSIXSHMEM_TRUE= MODULE__POSIXSHMEM_FALSE='#' else @@ -20924,13 +20556,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__POSIXSHMEM_CFLAGS="" - - MODULE__POSIXSHMEM_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__POSIXSHMEM=0$as_nl" + if false; then MODULE__POSIXSHMEM_TRUE= MODULE__POSIXSHMEM_FALSE='#' else @@ -20942,25 +20572,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _tkinter" >&5 $as_echo_n "checking for stdlib extension module _tkinter... " >&6; } - - - - if test -n "$TCLTK_LIBS"; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__TKINTER_CFLAGS="-DWITH_APPINIT=1" - - MODULE__TKINTER_LDFLAGS="$TCLTK_LIBS" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__TKINTER=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TKINTER_CFLAGS=-DWITH_APPINIT=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TKINTER_LDFLAGS=$TCLTK_LIBS$as_nl" + if true; then MODULE__TKINTER_TRUE= MODULE__TKINTER_FALSE='#' else @@ -20977,13 +20598,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__TKINTER_CFLAGS="" - - MODULE__TKINTER_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__TKINTER=0$as_nl" + if false; then MODULE__TKINTER_TRUE= MODULE__TKINTER_FALSE='#' else @@ -20995,25 +20614,16 @@ fi fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _uuid" >&5 $as_echo_n "checking for stdlib extension module _uuid... " >&6; } - - - - if test "$ac_cv_lib_uuid_uuid_generate_time" = yes -o "$ac_cv_func_uuid_create" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - MODULE__UUID_CFLAGS="$UUID_CFLAGS" - - MODULE__UUID_LDFLAGS="$UUID_LDLAGS" - - if true; then + as_fn_append MODULE_BLOCK "MODULE__UUID=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__UUID_CFLAGS=$UUID_CFLAGS$as_nl" + as_fn_append MODULE_BLOCK "MODULE__UUID_LDFLAGS=$UUID_LDLAGS$as_nl" + if true; then MODULE__UUID_TRUE= MODULE__UUID_FALSE='#' else @@ -21030,13 +20640,11 @@ else $as_echo "n/a" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } ;; +$as_echo "no" >&6; } + ;; esac - MODULE__UUID_CFLAGS="" - - MODULE__UUID_LDFLAGS="" - - if false; then + as_fn_append MODULE_BLOCK "MODULE__UUID=0$as_nl" + if false; then MODULE__UUID_TRUE= MODULE__UUID_FALSE='#' else @@ -21049,7 +20657,7 @@ fi - +# substitute multiline block, must come after last PY_STDLIB_MOD() # generate output files diff --git a/configure.ac b/configure.ac index 5a65d42b39e4c5..b68010440e97d8 100644 --- a/configure.ac +++ b/configure.ac @@ -5958,40 +5958,45 @@ AC_SUBST(TEST_MODULES) AS_CASE([$ac_sys_system], [AIX], [py_stdlib_not_available="_scproxy spwd"], [VxWorks*], [py_stdlib_not_available="_scproxy _crypt termios grp"], - [Darwin], [py_stdlib_not_available=""], + [Darwin], [py_stdlib_not_available="ossaudiodev spwd"], [py_stdlib_not_available="_scproxy"] ) +MODULE_BLOCK= + +# _MODULE_BLOCK_ADD([VAR], [VALUE]) +# internal: adds $1=quote($2) to MODULE_BLOCK +AC_DEFUN([_MODULE_BLOCK_ADD], [AS_VAR_APPEND([MODULE_BLOCK], ["$1=_AS_QUOTE([$2])$as_nl"])]) + # Check for stdlib extension modules # PY_STDLIB_MOD([NAME], [TEST], [CFLAGS], [LDFLAGS]) AC_DEFUN([PY_STDLIB_MOD], [ AC_MSG_CHECKING([for stdlib extension module $1]) - m4_pushdef([pymod], [PY_MODULE_]m4_toupper([$1])) - m4_pushdef([modcond], [MODULE_]m4_toupper([$1])) - m4_pushdef([modcflags], [MODULE_]m4_toupper([$1])[_CFLAGS]) - m4_pushdef([modldflags], [MODULE_]m4_toupper([$1])[_LDFLAGS]) - dnl echo - dnl echo "modcflags=@modldflags@" - dnl echo "modldflags=@modldflags@" - dnl echo + dnl m4_pushdef([pymod], [PY_MODULE_]m4_toupper([$1])) + m4_pushdef([modcond], [MODULE_]m4_toupper([$1]))dnl + m4_pushdef([modcflags], [MODULE_]m4_toupper([$1])[_CFLAGS])dnl + m4_pushdef([modldflags], [MODULE_]m4_toupper([$1])[_LDFLAGS])dnl AS_IF([$2], [ AC_MSG_RESULT([yes]) + _MODULE_BLOCK_ADD(modcond, [1]) + _MODULE_BLOCK_ADD(modcflags, [$3]) + _MODULE_BLOCK_ADD(modldflags, [$4]) dnl AC_DEFINE([pymod], [1], [Define if stdlib module "$1" is supported and enabled.]) - AC_SUBST(modcflags, ["$3"]) - AC_SUBST(modldflags, ["$4"]) AM_CONDITIONAL(modcond, [true]) ], [ AS_CASE([$py_stdlib_not_available], [*$1*], [AC_MSG_RESULT([n/a])], - [AC_MSG_RESULT([no])]) - AC_SUBST(modcflags, [""]) - AC_SUBST(modldflags, [""]) + [AC_MSG_RESULT([no])] + ) + _MODULE_BLOCK_ADD(modcond, [0]) + dnl _MODULE_BLOCK_ADD(modcflags, []) + dnl _MODULE_BLOCK_ADD(modldflags, []) AM_CONDITIONAL(modcond, [false]) ]) - m4_popdef([pymod]) - m4_popdef([modcond]) - m4_popdef([modcflags]) - m4_popdef([modldflags]) + dnl m4_popdef([pymod]) + m4_popdef([modcond])dnl + m4_popdef([modcflags])dnl + m4_popdef([modldflags])dnl ]) # reuses autoconf check values (ac_cv_*): @@ -6124,6 +6129,10 @@ PY_STDLIB_MOD([_uuid], dnl PY_STDLIB_MOD([xxlimited], [true]) dnl PY_STDLIB_MOD([xxlimited_35], [true]) + +# substitute multiline block, must come after last PY_STDLIB_MOD() +AC_SUBST([MODULE_BLOCK]) + # generate output files AC_CONFIG_FILES(Makefile.pre Misc/python.pc Misc/python-embed.pc Misc/python-config.sh) AC_CONFIG_FILES([Modules/ld_so_aix], [chmod +x Modules/ld_so_aix]) From 7b0d162044f76ab25d6c930e6b21db2bb46e99c8 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Fri, 12 Nov 2021 17:05:01 +0100 Subject: [PATCH 3/8] Generate block for simple and static modules --- Modules/Setup | 16 +- configure | 2574 ++++++++++++++++++++++++++++++++++++++++--------- configure.ac | 176 ++-- 3 files changed, 2224 insertions(+), 542 deletions(-) diff --git a/Modules/Setup b/Modules/Setup index 0075a566ad392c..435517de071525 100644 --- a/Modules/Setup +++ b/Modules/Setup @@ -162,7 +162,7 @@ time timemodule.c #_heapq _heapqmodule.c #_json _json.c #_lsprof _lsprof.c rotatingtree.c -#_multiprocessing -I$(srcdir)/Modules/_multiprocessing _multiprocessing/multiprocessing.c _multiprocessing/semaphore.c +#_multiprocessing _multiprocessing/multiprocessing.c _multiprocessing/semaphore.c #_opcode _opcode.c #_pickle _pickle.c #_queue _queuemodule.c @@ -205,7 +205,7 @@ time timemodule.c # Modules with some UNIX dependencies #_posixsubprocess _posixsubprocess.c -#_posixshmem -I$(srcdir)/Modules/_multiprocessing _multiprocessing/posixshmem.c +#_posixshmem _multiprocessing/posixshmem.c #fcntl fcntlmodule.c #grp grpmodule.c #ossaudiodev ossaudiodev.c @@ -217,17 +217,17 @@ time timemodule.c # Modules with UNIX dependencies that require external libraries #_crypt _cryptmodule.c -#nis nismodule.c -I/usr/include/tirpc -lnsl -ltirpc +#nis nismodule.c # Modules that require external libraries. #_bz2 _bz2module.c -#_ctypes _ctypes/_ctypes.c _ctypes/callbacks.c _ctypes/callproc.c _ctypes/stgdict.c _ctypes/cfield.c -ldl -lffi -DHAVE_FFI_PREP_CIF_VAR -DHAVE_FFI_PREP_CLOSURE_LOC -DHAVE_FFI_CLOSURE_ALLOC +#_ctypes _ctypes/_ctypes.c _ctypes/callbacks.c _ctypes/callproc.c _ctypes/stgdict.c _ctypes/cfield.c # The _dbm module supports NDBM, GDBM with compat module, and Berkeley DB. #_dbm _dbmmodule.c -lgdbm_compat -DUSE_GDBM_COMPAT #_gdbm _gdbmmodule.c #_lzma _lzmamodule.c -#_sqlite3 _sqlite/connection.c _sqlite/cursor.c _sqlite/microprotocols.c _sqlite/module.c _sqlite/prepare_protocol.c _sqlite/row.c _sqlite/statement.c _sqlite/util.c -lsqlite3 +#_sqlite3 _sqlite/connection.c _sqlite/cursor.c _sqlite/microprotocols.c _sqlite/module.c _sqlite/prepare_protocol.c _sqlite/row.c _sqlite/statement.c _sqlite/util.c #_uuid _uuidmodule.c #zlib zlibmodule.c @@ -291,11 +291,11 @@ time timemodule.c # -lX11 # Some system have -lcurses -#_curses -lncurses -lncursesw -ltermcap _cursesmodule.c -#_curses_panel -lpanel -lncurses _curses_panel.c +#_curses _cursesmodule.c +#_curses_panel _curses_panel.c # macOS specific modules -# _scproxy _scproxy.c -framework SystemConfiguration -framework CoreFoundation +# _scproxy _scproxy.c # Examples diff --git a/configure b/configure index 36f429f9df3521..e62457f955902c 100755 --- a/configure +++ b/configure @@ -624,14 +624,42 @@ ac_includes_default="\ ac_subst_vars='LTLIBOBJS MODULE_BLOCK +MODULE_XXLIMITED_35_FALSE +MODULE_XXLIMITED_35_TRUE +MODULE_XXLIMITED_FALSE +MODULE_XXLIMITED_TRUE MODULE__UUID_FALSE MODULE__UUID_TRUE MODULE__TKINTER_FALSE MODULE__TKINTER_TRUE MODULE__POSIXSHMEM_FALSE MODULE__POSIXSHMEM_TRUE +MODULE__MULTIPROCESSING_FALSE +MODULE__MULTIPROCESSING_TRUE MODULE__CTYPES_TEST_FALSE MODULE__CTYPES_TEST_TRUE +MODULE__CTYPES_FALSE +MODULE__CTYPES_TRUE +MODULE__DECIMAL_FALSE +MODULE__DECIMAL_TRUE +MODULE__CODECS_ISO2022_FALSE +MODULE__CODECS_ISO2022_TRUE +MODULE__CODECS_HK_FALSE +MODULE__CODECS_HK_TRUE +MODULE__CODECS_TW_FALSE +MODULE__CODECS_TW_TRUE +MODULE__CODECS_CN_FALSE +MODULE__CODECS_CN_TRUE +MODULE__CODECS_JP_FALSE +MODULE__CODECS_JP_TRUE +MODULE__CODECS_KR_FALSE +MODULE__CODECS_KR_TRUE +MODULE__MULTIBYTECODEC_FALSE +MODULE__MULTIBYTECODEC_TRUE +MODULE__ELEMENTTREE_FALSE +MODULE__ELEMENTTREE_TRUE +MODULE_PYEXPAT_FALSE +MODULE_PYEXPAT_TRUE MODULE__LZMA_FALSE MODULE__LZMA_TRUE MODULE__BZ2_FALSE @@ -640,14 +668,22 @@ MODULE_BINASCII_FALSE MODULE_BINASCII_TRUE MODULE_ZLIB_FALSE MODULE_ZLIB_TRUE +MODULE_NIS_FALSE +MODULE_NIS_TRUE MODULE__SCPROXY_FALSE MODULE__SCPROXY_TRUE MODULE_OSSAUDIODEV_FALSE MODULE_OSSAUDIODEV_TRUE +MODULE_RESOURCE_FALSE +MODULE_RESOURCE_TRUE MODULE_TERMIOS_FALSE MODULE_TERMIOS_TRUE +MODULE__SQLITE3_FALSE +MODULE__SQLITE3_TRUE MODULE__GDBM_FALSE MODULE__GDBM_TRUE +MODULE__DBM_FALSE +MODULE__DBM_TRUE MODULE__SHA3_FALSE MODULE__SHA3_TRUE MODULE__BLAKE2_FALSE @@ -664,8 +700,14 @@ MODULE__HASHLIB_FALSE MODULE__HASHLIB_TRUE MODULE__SSL_FALSE MODULE__SSL_TRUE +MODULE__SOCKET_FALSE +MODULE__SOCKET_TRUE MODULE__CRYPT_FALSE MODULE__CRYPT_TRUE +MODULE__CURSES_PANEL_FALSE +MODULE__CURSES_PANEL_TRUE +MODULE__CURSES_FALSE +MODULE__CURSES_TRUE MODULE_READLINE_FALSE MODULE_READLINE_TRUE MODULE__XXTESTFUZZ_FALSE @@ -680,12 +722,106 @@ MODULE__TESTINTERNALCAPI_FALSE MODULE__TESTINTERNALCAPI_TRUE MODULE__TESTCAPI_FALSE MODULE__TESTCAPI_TRUE +MODULE__POSIXSUBPROCESS_FALSE +MODULE__POSIXSUBPROCESS_TRUE +MODULE__CSV_FALSE +MODULE__CSV_TRUE +MODULE_AUDIOOP_FALSE +MODULE_AUDIOOP_TRUE MODULE__XXSUBINTERPRETERS_FALSE MODULE__XXSUBINTERPRETERS_TRUE +MODULE_SYSLOG_FALSE +MODULE_SYSLOG_TRUE +MODULE_MMAP_FALSE +MODULE_MMAP_TRUE +MODULE_SELECT_FALSE +MODULE_SELECT_TRUE MODULE_SPWD_FALSE MODULE_SPWD_TRUE MODULE_GRP_FALSE MODULE_GRP_TRUE +MODULE_FCNTL_FALSE +MODULE_FCNTL_TRUE +MODULE__TYPING_FALSE +MODULE__TYPING_TRUE +MODULE__STATISTICS_FALSE +MODULE__STATISTICS_TRUE +MODULE__QUEUE_FALSE +MODULE__QUEUE_TRUE +MODULE__ASYNCIO_FALSE +MODULE__ASYNCIO_TRUE +MODULE__OPCODE_FALSE +MODULE__OPCODE_TRUE +MODULE_UNICODEDATA_FALSE +MODULE_UNICODEDATA_TRUE +MODULE__LSPROF_FALSE +MODULE__LSPROF_TRUE +MODULE__JSON_FALSE +MODULE__JSON_TRUE +MODULE__PICKLE_FALSE +MODULE__PICKLE_TRUE +MODULE__HEAPQ_FALSE +MODULE__HEAPQ_TRUE +MODULE__BISECT_FALSE +MODULE__BISECT_TRUE +MODULE__RANDOM_FALSE +MODULE__RANDOM_TRUE +MODULE__ZONEINFO_FALSE +MODULE__ZONEINFO_TRUE +MODULE__DATETIME_FALSE +MODULE__DATETIME_TRUE +MODULE_CMATH_FALSE +MODULE_CMATH_TRUE +MODULE_MATH_FALSE +MODULE_MATH_TRUE +MODULE__CONTEXTVARS_FALSE +MODULE__CONTEXTVARS_TRUE +MODULE_ARRAY_FALSE +MODULE_ARRAY_TRUE +MODULE__STRUCT_FALSE +MODULE__STRUCT_TRUE +MODULE_TIME_FALSE +MODULE_TIME_TRUE +MODULE_PWD_FALSE +MODULE_PWD_TRUE +MODULE_POSIX_FALSE +MODULE_POSIX_TRUE +MODULE_ITERTOOLS_FALSE +MODULE_ITERTOOLS_TRUE +MODULE_FAULTHANDLER_FALSE +MODULE_FAULTHANDLER_TRUE +MODULE_ERRNO_FALSE +MODULE_ERRNO_TRUE +MODULE_ATEXIT_FALSE +MODULE_ATEXIT_TRUE +MODULE__WEAKREF_FALSE +MODULE__WEAKREF_TRUE +MODULE__TRACEMALLOC_FALSE +MODULE__TRACEMALLOC_TRUE +MODULE__THREAD_FALSE +MODULE__THREAD_TRUE +MODULE__SYMTABLE_FALSE +MODULE__SYMTABLE_TRUE +MODULE__STAT_FALSE +MODULE__STAT_TRUE +MODULE__SRE_FALSE +MODULE__SRE_TRUE +MODULE__SIGNAL_FALSE +MODULE__SIGNAL_TRUE +MODULE__OPERATOR_FALSE +MODULE__OPERATOR_TRUE +MODULE__LOCALE_FALSE +MODULE__LOCALE_TRUE +MODULE__IO_FALSE +MODULE__IO_TRUE +MODULE__FUNCTOOLS_FALSE +MODULE__FUNCTOOLS_TRUE +MODULE__CODECS_FALSE +MODULE__CODECS_TRUE +MODULE__ABC_FALSE +MODULE__ABC_TRUE +MODULE__COLLECTIONS_FALSE +MODULE__COLLECTIONS_TRUE TEST_MODULES LIBRARY_DEPS STATIC_LIBPYTHON @@ -19349,33 +19485,1085 @@ MODULE_BLOCK= # PY_STDLIB_MOD([NAME], [TEST], [CFLAGS], [LDFLAGS]) +# Define simple, always enabled stdlib extension module +# PY_STDLIB_MOD_SIMPLE([NAME], [LDFLAGS]) + +# This is what autoupdate's m4 run will expand. It fires +# the warning (with _au_warn_XXX), outputs it into the +# updated configure.ac (with AC_DIAGNOSE), and then outputs +# the replacement expansion. + + +# This is an auxiliary macro that is also run when +# autoupdate runs m4. It simply calls m4_warning, but +# we need a wrapper so that each warning is emitted only +# once. We break the quoting in m4_warning's argument in +# order to expand this macro's arguments, not AU_DEFUN's. + + +# Finally, this is the expansion that is picked up by +# autoconf. It tells the user to run autoupdate, and +# then outputs the replacement expansion. We do not care +# about autoupdate's warning because that contains +# information on what to do *after* running autoupdate. + + # reuses autoconf check values (ac_cv_*): # * ac_cv_func and ac_cv_header values are set to "yes" when function or header exists # * ac_cv_search values are set to "none required" or "-lsomelib" when function exists + as_fn_append MODULE_BLOCK "MODULE__COLLECTIONS=1$as_nl" + if true; then + MODULE__COLLECTIONS_TRUE= + MODULE__COLLECTIONS_FALSE='#' +else + MODULE__COLLECTIONS_TRUE='#' + MODULE__COLLECTIONS_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__ABC=1$as_nl" + if true; then + MODULE__ABC_TRUE= + MODULE__ABC_FALSE='#' +else + MODULE__ABC_TRUE='#' + MODULE__ABC_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__CODECS=1$as_nl" + if true; then + MODULE__CODECS_TRUE= + MODULE__CODECS_FALSE='#' +else + MODULE__CODECS_TRUE='#' + MODULE__CODECS_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__FUNCTOOLS=1$as_nl" + if true; then + MODULE__FUNCTOOLS_TRUE= + MODULE__FUNCTOOLS_FALSE='#' +else + MODULE__FUNCTOOLS_TRUE='#' + MODULE__FUNCTOOLS_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__IO=1$as_nl" + if true; then + MODULE__IO_TRUE= + MODULE__IO_FALSE='#' +else + MODULE__IO_TRUE='#' + MODULE__IO_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__LOCALE=1$as_nl" + if true; then + MODULE__LOCALE_TRUE= + MODULE__LOCALE_FALSE='#' +else + MODULE__LOCALE_TRUE='#' + MODULE__LOCALE_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__OPERATOR=1$as_nl" + if true; then + MODULE__OPERATOR_TRUE= + MODULE__OPERATOR_FALSE='#' +else + MODULE__OPERATOR_TRUE='#' + MODULE__OPERATOR_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__SIGNAL=1$as_nl" + if true; then + MODULE__SIGNAL_TRUE= + MODULE__SIGNAL_FALSE='#' +else + MODULE__SIGNAL_TRUE='#' + MODULE__SIGNAL_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__SRE=1$as_nl" + if true; then + MODULE__SRE_TRUE= + MODULE__SRE_FALSE='#' +else + MODULE__SRE_TRUE='#' + MODULE__SRE_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__STAT=1$as_nl" + if true; then + MODULE__STAT_TRUE= + MODULE__STAT_FALSE='#' +else + MODULE__STAT_TRUE='#' + MODULE__STAT_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__SYMTABLE=1$as_nl" + if true; then + MODULE__SYMTABLE_TRUE= + MODULE__SYMTABLE_FALSE='#' +else + MODULE__SYMTABLE_TRUE='#' + MODULE__SYMTABLE_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__THREAD=1$as_nl" + if true; then + MODULE__THREAD_TRUE= + MODULE__THREAD_FALSE='#' +else + MODULE__THREAD_TRUE='#' + MODULE__THREAD_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__TRACEMALLOC=1$as_nl" + if true; then + MODULE__TRACEMALLOC_TRUE= + MODULE__TRACEMALLOC_FALSE='#' +else + MODULE__TRACEMALLOC_TRUE='#' + MODULE__TRACEMALLOC_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__WEAKREF=1$as_nl" + if true; then + MODULE__WEAKREF_TRUE= + MODULE__WEAKREF_FALSE='#' +else + MODULE__WEAKREF_TRUE='#' + MODULE__WEAKREF_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE_ATEXIT=1$as_nl" + if true; then + MODULE_ATEXIT_TRUE= + MODULE_ATEXIT_FALSE='#' +else + MODULE_ATEXIT_TRUE='#' + MODULE_ATEXIT_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE_ERRNO=1$as_nl" + if true; then + MODULE_ERRNO_TRUE= + MODULE_ERRNO_FALSE='#' +else + MODULE_ERRNO_TRUE='#' + MODULE_ERRNO_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE_FAULTHANDLER=1$as_nl" + if true; then + MODULE_FAULTHANDLER_TRUE= + MODULE_FAULTHANDLER_FALSE='#' +else + MODULE_FAULTHANDLER_TRUE='#' + MODULE_FAULTHANDLER_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE_ITERTOOLS=1$as_nl" + if true; then + MODULE_ITERTOOLS_TRUE= + MODULE_ITERTOOLS_FALSE='#' +else + MODULE_ITERTOOLS_TRUE='#' + MODULE_ITERTOOLS_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE_POSIX=1$as_nl" + if true; then + MODULE_POSIX_TRUE= + MODULE_POSIX_FALSE='#' +else + MODULE_POSIX_TRUE='#' + MODULE_POSIX_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE_PWD=1$as_nl" + if true; then + MODULE_PWD_TRUE= + MODULE_PWD_FALSE='#' +else + MODULE_PWD_TRUE='#' + MODULE_PWD_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE_TIME=1$as_nl" + if true; then + MODULE_TIME_TRUE= + MODULE_TIME_FALSE='#' +else + MODULE_TIME_TRUE='#' + MODULE_TIME_FALSE= +fi + + + + + + as_fn_append MODULE_BLOCK "MODULE__STRUCT=1$as_nl" + if true; then + MODULE__STRUCT_TRUE= + MODULE__STRUCT_FALSE='#' +else + MODULE__STRUCT_TRUE='#' + MODULE__STRUCT_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE_ARRAY=1$as_nl" + if true; then + MODULE_ARRAY_TRUE= + MODULE_ARRAY_FALSE='#' +else + MODULE_ARRAY_TRUE='#' + MODULE_ARRAY_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__CONTEXTVARS=1$as_nl" + if true; then + MODULE__CONTEXTVARS_TRUE= + MODULE__CONTEXTVARS_FALSE='#' +else + MODULE__CONTEXTVARS_TRUE='#' + MODULE__CONTEXTVARS_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE_MATH=1$as_nl" + if true; then + MODULE_MATH_TRUE= + MODULE_MATH_FALSE='#' +else + MODULE_MATH_TRUE='#' + MODULE_MATH_FALSE= +fi + + + as_fn_append MODULE_BLOCK "MODULE_MATH_LDFLAGS=-lm$as_nl" + + + + as_fn_append MODULE_BLOCK "MODULE_CMATH=1$as_nl" + if true; then + MODULE_CMATH_TRUE= + MODULE_CMATH_FALSE='#' +else + MODULE_CMATH_TRUE='#' + MODULE_CMATH_FALSE= +fi + + + as_fn_append MODULE_BLOCK "MODULE_CMATH_LDFLAGS=-lm$as_nl" + + + + as_fn_append MODULE_BLOCK "MODULE_TIME=1$as_nl" + if true; then + MODULE_TIME_TRUE= + MODULE_TIME_FALSE='#' +else + MODULE_TIME_TRUE='#' + MODULE_TIME_FALSE= +fi + + + as_fn_append MODULE_BLOCK "MODULE_TIME_LDFLAGS=$TIMEMODULE_LIB$as_nl" + + + + as_fn_append MODULE_BLOCK "MODULE__DATETIME=1$as_nl" + if true; then + MODULE__DATETIME_TRUE= + MODULE__DATETIME_FALSE='#' +else + MODULE__DATETIME_TRUE='#' + MODULE__DATETIME_FALSE= +fi + + + as_fn_append MODULE_BLOCK "MODULE__DATETIME_LDFLAGS=$TIMEMODULE_LIB$as_nl" + + + + as_fn_append MODULE_BLOCK "MODULE__ZONEINFO=1$as_nl" + if true; then + MODULE__ZONEINFO_TRUE= + MODULE__ZONEINFO_FALSE='#' +else + MODULE__ZONEINFO_TRUE='#' + MODULE__ZONEINFO_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__RANDOM=1$as_nl" + if true; then + MODULE__RANDOM_TRUE= + MODULE__RANDOM_FALSE='#' +else + MODULE__RANDOM_TRUE='#' + MODULE__RANDOM_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__BISECT=1$as_nl" + if true; then + MODULE__BISECT_TRUE= + MODULE__BISECT_FALSE='#' +else + MODULE__BISECT_TRUE='#' + MODULE__BISECT_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__HEAPQ=1$as_nl" + if true; then + MODULE__HEAPQ_TRUE= + MODULE__HEAPQ_FALSE='#' +else + MODULE__HEAPQ_TRUE='#' + MODULE__HEAPQ_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__PICKLE=1$as_nl" + if true; then + MODULE__PICKLE_TRUE= + MODULE__PICKLE_FALSE='#' +else + MODULE__PICKLE_TRUE='#' + MODULE__PICKLE_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__JSON=1$as_nl" + if true; then + MODULE__JSON_TRUE= + MODULE__JSON_FALSE='#' +else + MODULE__JSON_TRUE='#' + MODULE__JSON_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__LSPROF=1$as_nl" + if true; then + MODULE__LSPROF_TRUE= + MODULE__LSPROF_FALSE='#' +else + MODULE__LSPROF_TRUE='#' + MODULE__LSPROF_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE_UNICODEDATA=1$as_nl" + if true; then + MODULE_UNICODEDATA_TRUE= + MODULE_UNICODEDATA_FALSE='#' +else + MODULE_UNICODEDATA_TRUE='#' + MODULE_UNICODEDATA_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__OPCODE=1$as_nl" + if true; then + MODULE__OPCODE_TRUE= + MODULE__OPCODE_FALSE='#' +else + MODULE__OPCODE_TRUE='#' + MODULE__OPCODE_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__ASYNCIO=1$as_nl" + if true; then + MODULE__ASYNCIO_TRUE= + MODULE__ASYNCIO_FALSE='#' +else + MODULE__ASYNCIO_TRUE='#' + MODULE__ASYNCIO_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__ABC=1$as_nl" + if true; then + MODULE__ABC_TRUE= + MODULE__ABC_FALSE='#' +else + MODULE__ABC_TRUE='#' + MODULE__ABC_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__QUEUE=1$as_nl" + if true; then + MODULE__QUEUE_TRUE= + MODULE__QUEUE_FALSE='#' +else + MODULE__QUEUE_TRUE='#' + MODULE__QUEUE_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__STATISTICS=1$as_nl" + if true; then + MODULE__STATISTICS_TRUE= + MODULE__STATISTICS_FALSE='#' +else + MODULE__STATISTICS_TRUE='#' + MODULE__STATISTICS_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__TYPING=1$as_nl" + if true; then + MODULE__TYPING_TRUE= + MODULE__TYPING_FALSE='#' +else + MODULE__TYPING_TRUE='#' + MODULE__TYPING_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE_FCNTL=1$as_nl" + if true; then + MODULE_FCNTL_TRUE= + MODULE_FCNTL_FALSE='#' +else + MODULE_FCNTL_TRUE='#' + MODULE_FCNTL_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE_PWD=1$as_nl" + if true; then + MODULE_PWD_TRUE= + MODULE_PWD_FALSE='#' +else + MODULE_PWD_TRUE='#' + MODULE_PWD_FALSE= +fi + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module grp" >&5 +$as_echo_n "checking for stdlib extension module grp... " >&6; } + if test "$ac_cv_func_getgrgid" = yes -o "$ac_cv_func_getgrgid_r" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + as_fn_append MODULE_BLOCK "MODULE_GRP=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_GRP_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_GRP_LDFLAGS=$as_nl" + if true; then + MODULE_GRP_TRUE= + MODULE_GRP_FALSE='#' +else + MODULE_GRP_TRUE='#' + MODULE_GRP_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *grp*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + ;; +esac + as_fn_append MODULE_BLOCK "MODULE_GRP=0$as_nl" + if false; then + MODULE_GRP_TRUE= + MODULE_GRP_FALSE='#' +else + MODULE_GRP_TRUE='#' + MODULE_GRP_FALSE= +fi + + +fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module spwd" >&5 +$as_echo_n "checking for stdlib extension module spwd... " >&6; } + if test "$ac_cv_func_getspent" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + as_fn_append MODULE_BLOCK "MODULE_SPWD=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_SPWD_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_SPWD_LDFLAGS=$as_nl" + if true; then + MODULE_SPWD_TRUE= + MODULE_SPWD_FALSE='#' +else + MODULE_SPWD_TRUE='#' + MODULE_SPWD_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *spwd*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + ;; +esac + as_fn_append MODULE_BLOCK "MODULE_SPWD=0$as_nl" + if false; then + MODULE_SPWD_TRUE= + MODULE_SPWD_FALSE='#' +else + MODULE_SPWD_TRUE='#' + MODULE_SPWD_FALSE= +fi + + +fi + + + as_fn_append MODULE_BLOCK "MODULE_SELECT=1$as_nl" + if true; then + MODULE_SELECT_TRUE= + MODULE_SELECT_FALSE='#' +else + MODULE_SELECT_TRUE='#' + MODULE_SELECT_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE_MMAP=1$as_nl" + if true; then + MODULE_MMAP_TRUE= + MODULE_MMAP_FALSE='#' +else + MODULE_MMAP_TRUE='#' + MODULE_MMAP_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE_SYSLOG=1$as_nl" + if true; then + MODULE_SYSLOG_TRUE= + MODULE_SYSLOG_FALSE='#' +else + MODULE_SYSLOG_TRUE='#' + MODULE_SYSLOG_FALSE= +fi + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _xxsubinterpreters" >&5 +$as_echo_n "checking for stdlib extension module _xxsubinterpreters... " >&6; } + if test "$with_experimental_isolated_subinterpreters" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + as_fn_append MODULE_BLOCK "MODULE__XXSUBINTERPRETERS=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__XXSUBINTERPRETERS_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__XXSUBINTERPRETERS_LDFLAGS=$as_nl" + if true; then + MODULE__XXSUBINTERPRETERS_TRUE= + MODULE__XXSUBINTERPRETERS_FALSE='#' +else + MODULE__XXSUBINTERPRETERS_TRUE='#' + MODULE__XXSUBINTERPRETERS_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_xxsubinterpreters*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__XXSUBINTERPRETERS=0$as_nl" + if false; then + MODULE__XXSUBINTERPRETERS_TRUE= + MODULE__XXSUBINTERPRETERS_FALSE='#' +else + MODULE__XXSUBINTERPRETERS_TRUE='#' + MODULE__XXSUBINTERPRETERS_FALSE= +fi + + +fi + + + as_fn_append MODULE_BLOCK "MODULE_AUDIOOP=1$as_nl" + if true; then + MODULE_AUDIOOP_TRUE= + MODULE_AUDIOOP_FALSE='#' +else + MODULE_AUDIOOP_TRUE='#' + MODULE_AUDIOOP_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__CSV=1$as_nl" + if true; then + MODULE__CSV_TRUE= + MODULE__CSV_FALSE='#' +else + MODULE__CSV_TRUE='#' + MODULE__CSV_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__POSIXSUBPROCESS=1$as_nl" + if true; then + MODULE__POSIXSUBPROCESS_TRUE= + MODULE__POSIXSUBPROCESS_FALSE='#' +else + MODULE__POSIXSUBPROCESS_TRUE='#' + MODULE__POSIXSUBPROCESS_FALSE= +fi + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testcapi" >&5 +$as_echo_n "checking for stdlib extension module _testcapi... " >&6; } + if test "$TEST_MODULES" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + as_fn_append MODULE_BLOCK "MODULE__TESTCAPI=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTCAPI_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTCAPI_LDFLAGS=$as_nl" + if true; then + MODULE__TESTCAPI_TRUE= + MODULE__TESTCAPI_FALSE='#' +else + MODULE__TESTCAPI_TRUE='#' + MODULE__TESTCAPI_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_testcapi*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__TESTCAPI=0$as_nl" + if false; then + MODULE__TESTCAPI_TRUE= + MODULE__TESTCAPI_FALSE='#' +else + MODULE__TESTCAPI_TRUE='#' + MODULE__TESTCAPI_FALSE= +fi + + +fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testinternalcapi" >&5 +$as_echo_n "checking for stdlib extension module _testinternalcapi... " >&6; } + if test "$TEST_MODULES" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + as_fn_append MODULE_BLOCK "MODULE__TESTINTERNALCAPI=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTINTERNALCAPI_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTINTERNALCAPI_LDFLAGS=$as_nl" + if true; then + MODULE__TESTINTERNALCAPI_TRUE= + MODULE__TESTINTERNALCAPI_FALSE='#' +else + MODULE__TESTINTERNALCAPI_TRUE='#' + MODULE__TESTINTERNALCAPI_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_testinternalcapi*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__TESTINTERNALCAPI=0$as_nl" + if false; then + MODULE__TESTINTERNALCAPI_TRUE= + MODULE__TESTINTERNALCAPI_FALSE='#' +else + MODULE__TESTINTERNALCAPI_TRUE='#' + MODULE__TESTINTERNALCAPI_FALSE= +fi + + +fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testbuffer" >&5 +$as_echo_n "checking for stdlib extension module _testbuffer... " >&6; } + if test "$TEST_MODULES" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + as_fn_append MODULE_BLOCK "MODULE__TESTBUFFER=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTBUFFER_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTBUFFER_LDFLAGS=$as_nl" + if true; then + MODULE__TESTBUFFER_TRUE= + MODULE__TESTBUFFER_FALSE='#' +else + MODULE__TESTBUFFER_TRUE='#' + MODULE__TESTBUFFER_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_testbuffer*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__TESTBUFFER=0$as_nl" + if false; then + MODULE__TESTBUFFER_TRUE= + MODULE__TESTBUFFER_FALSE='#' +else + MODULE__TESTBUFFER_TRUE='#' + MODULE__TESTBUFFER_FALSE= +fi + + +fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testimportmultiple" >&5 +$as_echo_n "checking for stdlib extension module _testimportmultiple... " >&6; } + if test "$TEST_MODULES" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + as_fn_append MODULE_BLOCK "MODULE__TESTIMPORTMULTIPLE=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTIMPORTMULTIPLE_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTIMPORTMULTIPLE_LDFLAGS=$as_nl" + if true; then + MODULE__TESTIMPORTMULTIPLE_TRUE= + MODULE__TESTIMPORTMULTIPLE_FALSE='#' +else + MODULE__TESTIMPORTMULTIPLE_TRUE='#' + MODULE__TESTIMPORTMULTIPLE_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_testimportmultiple*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__TESTIMPORTMULTIPLE=0$as_nl" + if false; then + MODULE__TESTIMPORTMULTIPLE_TRUE= + MODULE__TESTIMPORTMULTIPLE_FALSE='#' +else + MODULE__TESTIMPORTMULTIPLE_TRUE='#' + MODULE__TESTIMPORTMULTIPLE_FALSE= +fi + + +fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testmultiphase" >&5 +$as_echo_n "checking for stdlib extension module _testmultiphase... " >&6; } + if test "$TEST_MODULES" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + as_fn_append MODULE_BLOCK "MODULE__TESTMULTIPHASE=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTMULTIPHASE_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TESTMULTIPHASE_LDFLAGS=$as_nl" + if true; then + MODULE__TESTMULTIPHASE_TRUE= + MODULE__TESTMULTIPHASE_FALSE='#' +else + MODULE__TESTMULTIPHASE_TRUE='#' + MODULE__TESTMULTIPHASE_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_testmultiphase*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__TESTMULTIPHASE=0$as_nl" + if false; then + MODULE__TESTMULTIPHASE_TRUE= + MODULE__TESTMULTIPHASE_FALSE='#' +else + MODULE__TESTMULTIPHASE_TRUE='#' + MODULE__TESTMULTIPHASE_FALSE= +fi + + +fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _xxtestfuzz" >&5 +$as_echo_n "checking for stdlib extension module _xxtestfuzz... " >&6; } + if test "$TEST_MODULES" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + as_fn_append MODULE_BLOCK "MODULE__XXTESTFUZZ=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__XXTESTFUZZ_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__XXTESTFUZZ_LDFLAGS=$as_nl" + if true; then + MODULE__XXTESTFUZZ_TRUE= + MODULE__XXTESTFUZZ_FALSE='#' +else + MODULE__XXTESTFUZZ_TRUE='#' + MODULE__XXTESTFUZZ_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_xxtestfuzz*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__XXTESTFUZZ=0$as_nl" + if false; then + MODULE__XXTESTFUZZ_TRUE= + MODULE__XXTESTFUZZ_FALSE='#' +else + MODULE__XXTESTFUZZ_TRUE='#' + MODULE__XXTESTFUZZ_FALSE= +fi + + +fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module readline" >&5 +$as_echo_n "checking for stdlib extension module readline... " >&6; } + if test "$py_cv_lib_readline" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + as_fn_append MODULE_BLOCK "MODULE_READLINE=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_READLINE_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_READLINE_LDFLAGS=$READLINE_LIBS$as_nl" + if true; then + MODULE_READLINE_TRUE= + MODULE_READLINE_FALSE='#' +else + MODULE_READLINE_TRUE='#' + MODULE_READLINE_FALSE= +fi + - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module grp" >&5 -$as_echo_n "checking for stdlib extension module grp... " >&6; } - if test "$ac_cv_func_getgrgid" = yes -o "$ac_cv_func_getgrgid_r" = yes; then : +else + + case $py_stdlib_not_available in #( + *readline*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + ;; +esac + as_fn_append MODULE_BLOCK "MODULE_READLINE=0$as_nl" + if false; then + MODULE_READLINE_TRUE= + MODULE_READLINE_FALSE='#' +else + MODULE_READLINE_TRUE='#' + MODULE_READLINE_FALSE= +fi + + +fi + +# TODO: detect curses + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _curses" >&5 +$as_echo_n "checking for stdlib extension module _curses... " >&6; } + if true; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE_GRP=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE_GRP_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE_GRP_LDFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CURSES=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CURSES_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CURSES_LDFLAGS=-lncurses -lncursesw -ltermcap$as_nl" if true; then - MODULE_GRP_TRUE= - MODULE_GRP_FALSE='#' + MODULE__CURSES_TRUE= + MODULE__CURSES_FALSE='#' else - MODULE_GRP_TRUE='#' - MODULE_GRP_FALSE= + MODULE__CURSES_TRUE='#' + MODULE__CURSES_FALSE= fi else case $py_stdlib_not_available in #( - *grp*) : + *_curses*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -19383,41 +20571,41 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE_GRP=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CURSES=0$as_nl" if false; then - MODULE_GRP_TRUE= - MODULE_GRP_FALSE='#' + MODULE__CURSES_TRUE= + MODULE__CURSES_FALSE='#' else - MODULE_GRP_TRUE='#' - MODULE_GRP_FALSE= + MODULE__CURSES_TRUE='#' + MODULE__CURSES_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module spwd" >&5 -$as_echo_n "checking for stdlib extension module spwd... " >&6; } - if test "$ac_cv_func_getspent" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _curses_panel" >&5 +$as_echo_n "checking for stdlib extension module _curses_panel... " >&6; } + if true; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE_SPWD=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE_SPWD_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE_SPWD_LDFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CURSES_PANEL=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CURSES_PANEL_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CURSES_PANEL_LDFLAGS=-lpanel -lncurses$as_nl" if true; then - MODULE_SPWD_TRUE= - MODULE_SPWD_FALSE='#' + MODULE__CURSES_PANEL_TRUE= + MODULE__CURSES_PANEL_FALSE='#' else - MODULE_SPWD_TRUE='#' - MODULE_SPWD_FALSE= + MODULE__CURSES_PANEL_TRUE='#' + MODULE__CURSES_PANEL_FALSE= fi else case $py_stdlib_not_available in #( - *spwd*) : + *_curses_panel*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -19425,41 +20613,41 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE_SPWD=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CURSES_PANEL=0$as_nl" if false; then - MODULE_SPWD_TRUE= - MODULE_SPWD_FALSE='#' + MODULE__CURSES_PANEL_TRUE= + MODULE__CURSES_PANEL_FALSE='#' else - MODULE_SPWD_TRUE='#' - MODULE_SPWD_FALSE= + MODULE__CURSES_PANEL_TRUE='#' + MODULE__CURSES_PANEL_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _xxsubinterpreters" >&5 -$as_echo_n "checking for stdlib extension module _xxsubinterpreters... " >&6; } - if test "$with_experimental_isolated_subinterpreters" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _crypt" >&5 +$as_echo_n "checking for stdlib extension module _crypt... " >&6; } + if test "$ac_sys_system" != VxWorks -a \( "$ac_cv_search_crypt_r" != no -o "$ac_cv_search_crypt" != no \); then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__XXSUBINTERPRETERS=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__XXSUBINTERPRETERS_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__XXSUBINTERPRETERS_LDFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CRYPT=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CRYPT_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CRYPT_LDFLAGS=-lcrypt$as_nl" if true; then - MODULE__XXSUBINTERPRETERS_TRUE= - MODULE__XXSUBINTERPRETERS_FALSE='#' + MODULE__CRYPT_TRUE= + MODULE__CRYPT_FALSE='#' else - MODULE__XXSUBINTERPRETERS_TRUE='#' - MODULE__XXSUBINTERPRETERS_FALSE= + MODULE__CRYPT_TRUE='#' + MODULE__CRYPT_FALSE= fi else case $py_stdlib_not_available in #( - *_xxsubinterpreters*) : + *_crypt*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -19467,41 +20655,54 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__XXSUBINTERPRETERS=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CRYPT=0$as_nl" if false; then - MODULE__XXSUBINTERPRETERS_TRUE= - MODULE__XXSUBINTERPRETERS_FALSE='#' + MODULE__CRYPT_TRUE= + MODULE__CRYPT_FALSE='#' else - MODULE__XXSUBINTERPRETERS_TRUE='#' - MODULE__XXSUBINTERPRETERS_FALSE= + MODULE__CRYPT_TRUE='#' + MODULE__CRYPT_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testcapi" >&5 -$as_echo_n "checking for stdlib extension module _testcapi... " >&6; } - if test "$TEST_MODULES" = yes; then : + as_fn_append MODULE_BLOCK "MODULE__SOCKET=1$as_nl" + if true; then + MODULE__SOCKET_TRUE= + MODULE__SOCKET_FALSE='#' +else + MODULE__SOCKET_TRUE='#' + MODULE__SOCKET_FALSE= +fi + + + +# TODO: add OPENSSL_RPATH + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _ssl" >&5 +$as_echo_n "checking for stdlib extension module _ssl... " >&6; } + if test "$ac_cv_working_openssl_ssl" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__TESTCAPI=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__TESTCAPI_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__TESTCAPI_LDFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SSL=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SSL_CFLAGS=$OPENSSL_INCLUDES$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SSL_LDFLAGS=$OPENSSL_LIBS $OPENSSL_LDFLAGS$as_nl" if true; then - MODULE__TESTCAPI_TRUE= - MODULE__TESTCAPI_FALSE='#' + MODULE__SSL_TRUE= + MODULE__SSL_FALSE='#' else - MODULE__TESTCAPI_TRUE='#' - MODULE__TESTCAPI_FALSE= + MODULE__SSL_TRUE='#' + MODULE__SSL_FALSE= fi else case $py_stdlib_not_available in #( - *_testcapi*) : + *_ssl*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -19509,41 +20710,41 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__TESTCAPI=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SSL=0$as_nl" if false; then - MODULE__TESTCAPI_TRUE= - MODULE__TESTCAPI_FALSE='#' + MODULE__SSL_TRUE= + MODULE__SSL_FALSE='#' else - MODULE__TESTCAPI_TRUE='#' - MODULE__TESTCAPI_FALSE= + MODULE__SSL_TRUE='#' + MODULE__SSL_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testinternalcapi" >&5 -$as_echo_n "checking for stdlib extension module _testinternalcapi... " >&6; } - if test "$TEST_MODULES" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _hashlib" >&5 +$as_echo_n "checking for stdlib extension module _hashlib... " >&6; } + if test "$ac_cv_working_openssl_ssl" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__TESTINTERNALCAPI=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__TESTINTERNALCAPI_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__TESTINTERNALCAPI_LDFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__HASHLIB=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__HASHLIB_CFLAGS=$OPENSSL_INCLUDES$as_nl" + as_fn_append MODULE_BLOCK "MODULE__HASHLIB_LDFLAGS=$OPENSSL_LIBS $OPENSSL_LDFLAGS$as_nl" if true; then - MODULE__TESTINTERNALCAPI_TRUE= - MODULE__TESTINTERNALCAPI_FALSE='#' + MODULE__HASHLIB_TRUE= + MODULE__HASHLIB_FALSE='#' else - MODULE__TESTINTERNALCAPI_TRUE='#' - MODULE__TESTINTERNALCAPI_FALSE= + MODULE__HASHLIB_TRUE='#' + MODULE__HASHLIB_FALSE= fi else case $py_stdlib_not_available in #( - *_testinternalcapi*) : + *_hashlib*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -19551,41 +20752,41 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__TESTINTERNALCAPI=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__HASHLIB=0$as_nl" if false; then - MODULE__TESTINTERNALCAPI_TRUE= - MODULE__TESTINTERNALCAPI_FALSE='#' + MODULE__HASHLIB_TRUE= + MODULE__HASHLIB_FALSE='#' else - MODULE__TESTINTERNALCAPI_TRUE='#' - MODULE__TESTINTERNALCAPI_FALSE= + MODULE__HASHLIB_TRUE='#' + MODULE__HASHLIB_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testbuffer" >&5 -$as_echo_n "checking for stdlib extension module _testbuffer... " >&6; } - if test "$TEST_MODULES" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha256" >&5 +$as_echo_n "checking for stdlib extension module _sha256... " >&6; } + if test "$with_builtin_sha256" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__TESTBUFFER=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__TESTBUFFER_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__TESTBUFFER_LDFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA256=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA256_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA256_LDFLAGS=$as_nl" if true; then - MODULE__TESTBUFFER_TRUE= - MODULE__TESTBUFFER_FALSE='#' + MODULE__SHA256_TRUE= + MODULE__SHA256_FALSE='#' else - MODULE__TESTBUFFER_TRUE='#' - MODULE__TESTBUFFER_FALSE= + MODULE__SHA256_TRUE='#' + MODULE__SHA256_FALSE= fi else case $py_stdlib_not_available in #( - *_testbuffer*) : + *_sha256*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -19593,41 +20794,83 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__TESTBUFFER=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA256=0$as_nl" if false; then - MODULE__TESTBUFFER_TRUE= - MODULE__TESTBUFFER_FALSE='#' + MODULE__SHA256_TRUE= + MODULE__SHA256_FALSE='#' else - MODULE__TESTBUFFER_TRUE='#' - MODULE__TESTBUFFER_FALSE= + MODULE__SHA256_TRUE='#' + MODULE__SHA256_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testimportmultiple" >&5 -$as_echo_n "checking for stdlib extension module _testimportmultiple... " >&6; } - if test "$TEST_MODULES" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha512" >&5 +$as_echo_n "checking for stdlib extension module _sha512... " >&6; } + if test "$with_builtin_sha512" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__TESTIMPORTMULTIPLE=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__TESTIMPORTMULTIPLE_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__TESTIMPORTMULTIPLE_LDFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA512=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA512_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA512_LDFLAGS=$as_nl" if true; then - MODULE__TESTIMPORTMULTIPLE_TRUE= - MODULE__TESTIMPORTMULTIPLE_FALSE='#' + MODULE__SHA512_TRUE= + MODULE__SHA512_FALSE='#' else - MODULE__TESTIMPORTMULTIPLE_TRUE='#' - MODULE__TESTIMPORTMULTIPLE_FALSE= + MODULE__SHA512_TRUE='#' + MODULE__SHA512_FALSE= +fi + + +else + + case $py_stdlib_not_available in #( + *_sha512*) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 +$as_echo "n/a" >&6; } ;; #( + *) : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__SHA512=0$as_nl" + if false; then + MODULE__SHA512_TRUE= + MODULE__SHA512_FALSE='#' +else + MODULE__SHA512_TRUE='#' + MODULE__SHA512_FALSE= +fi + + +fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _md5" >&5 +$as_echo_n "checking for stdlib extension module _md5... " >&6; } + if test "$with_builtin_md5" = yes; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + as_fn_append MODULE_BLOCK "MODULE__MD5=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__MD5_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__MD5_LDFLAGS=$as_nl" + if true; then + MODULE__MD5_TRUE= + MODULE__MD5_FALSE='#' +else + MODULE__MD5_TRUE='#' + MODULE__MD5_FALSE= fi else case $py_stdlib_not_available in #( - *_testimportmultiple*) : + *_md5*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -19635,41 +20878,41 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__TESTIMPORTMULTIPLE=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__MD5=0$as_nl" if false; then - MODULE__TESTIMPORTMULTIPLE_TRUE= - MODULE__TESTIMPORTMULTIPLE_FALSE='#' + MODULE__MD5_TRUE= + MODULE__MD5_FALSE='#' else - MODULE__TESTIMPORTMULTIPLE_TRUE='#' - MODULE__TESTIMPORTMULTIPLE_FALSE= + MODULE__MD5_TRUE='#' + MODULE__MD5_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testmultiphase" >&5 -$as_echo_n "checking for stdlib extension module _testmultiphase... " >&6; } - if test "$TEST_MODULES" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha1" >&5 +$as_echo_n "checking for stdlib extension module _sha1... " >&6; } + if test "$with_builtin_sha1" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__TESTMULTIPHASE=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__TESTMULTIPHASE_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__TESTMULTIPHASE_LDFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA1=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA1_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA1_LDFLAGS=$as_nl" if true; then - MODULE__TESTMULTIPHASE_TRUE= - MODULE__TESTMULTIPHASE_FALSE='#' + MODULE__SHA1_TRUE= + MODULE__SHA1_FALSE='#' else - MODULE__TESTMULTIPHASE_TRUE='#' - MODULE__TESTMULTIPHASE_FALSE= + MODULE__SHA1_TRUE='#' + MODULE__SHA1_FALSE= fi else case $py_stdlib_not_available in #( - *_testmultiphase*) : + *_sha1*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -19677,41 +20920,41 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__TESTMULTIPHASE=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA1=0$as_nl" if false; then - MODULE__TESTMULTIPHASE_TRUE= - MODULE__TESTMULTIPHASE_FALSE='#' + MODULE__SHA1_TRUE= + MODULE__SHA1_FALSE='#' else - MODULE__TESTMULTIPHASE_TRUE='#' - MODULE__TESTMULTIPHASE_FALSE= + MODULE__SHA1_TRUE='#' + MODULE__SHA1_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _xxtestfuzz" >&5 -$as_echo_n "checking for stdlib extension module _xxtestfuzz... " >&6; } - if test "$TEST_MODULES" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _blake2" >&5 +$as_echo_n "checking for stdlib extension module _blake2... " >&6; } + if test "$with_builtin_blake2" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__XXTESTFUZZ=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__XXTESTFUZZ_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__XXTESTFUZZ_LDFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__BLAKE2=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__BLAKE2_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__BLAKE2_LDFLAGS=$as_nl" if true; then - MODULE__XXTESTFUZZ_TRUE= - MODULE__XXTESTFUZZ_FALSE='#' + MODULE__BLAKE2_TRUE= + MODULE__BLAKE2_FALSE='#' else - MODULE__XXTESTFUZZ_TRUE='#' - MODULE__XXTESTFUZZ_FALSE= + MODULE__BLAKE2_TRUE='#' + MODULE__BLAKE2_FALSE= fi else case $py_stdlib_not_available in #( - *_xxtestfuzz*) : + *_blake2*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -19719,41 +20962,41 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__XXTESTFUZZ=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__BLAKE2=0$as_nl" if false; then - MODULE__XXTESTFUZZ_TRUE= - MODULE__XXTESTFUZZ_FALSE='#' + MODULE__BLAKE2_TRUE= + MODULE__BLAKE2_FALSE='#' else - MODULE__XXTESTFUZZ_TRUE='#' - MODULE__XXTESTFUZZ_FALSE= + MODULE__BLAKE2_TRUE='#' + MODULE__BLAKE2_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module readline" >&5 -$as_echo_n "checking for stdlib extension module readline... " >&6; } - if test "$py_cv_lib_readline" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha3" >&5 +$as_echo_n "checking for stdlib extension module _sha3... " >&6; } + if test "$with_builtin_sha3" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE_READLINE=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE_READLINE_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE_READLINE_LDFLAGS=$READLINE_LIBS$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA3=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA3_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA3_LDFLAGS=$as_nl" if true; then - MODULE_READLINE_TRUE= - MODULE_READLINE_FALSE='#' + MODULE__SHA3_TRUE= + MODULE__SHA3_FALSE='#' else - MODULE_READLINE_TRUE='#' - MODULE_READLINE_FALSE= + MODULE__SHA3_TRUE='#' + MODULE__SHA3_FALSE= fi else case $py_stdlib_not_available in #( - *readline*) : + *_sha3*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -19761,41 +21004,42 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE_READLINE=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SHA3=0$as_nl" if false; then - MODULE_READLINE_TRUE= - MODULE_READLINE_FALSE='#' + MODULE__SHA3_TRUE= + MODULE__SHA3_FALSE='#' else - MODULE_READLINE_TRUE='#' - MODULE_READLINE_FALSE= + MODULE__SHA3_TRUE='#' + MODULE__SHA3_FALSE= fi fi +# TODO: select dbm library - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _crypt" >&5 -$as_echo_n "checking for stdlib extension module _crypt... " >&6; } - if test "$ac_sys_system" != VxWorks -a \( "$ac_cv_search_crypt_r" != no -o "$ac_cv_search_crypt" != no \); then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _dbm" >&5 +$as_echo_n "checking for stdlib extension module _dbm... " >&6; } + if true; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__CRYPT=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__CRYPT_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__CRYPT_LDFLAGS=-lcrypt$as_nl" + as_fn_append MODULE_BLOCK "MODULE__DBM=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__DBM_CFLAGS=-DUSE_GDBM_COMPAT$as_nl" + as_fn_append MODULE_BLOCK "MODULE__DBM_LDFLAGS=-lgdbm_compat$as_nl" if true; then - MODULE__CRYPT_TRUE= - MODULE__CRYPT_FALSE='#' + MODULE__DBM_TRUE= + MODULE__DBM_FALSE='#' else - MODULE__CRYPT_TRUE='#' - MODULE__CRYPT_FALSE= + MODULE__DBM_TRUE='#' + MODULE__DBM_FALSE= fi else case $py_stdlib_not_available in #( - *_crypt*) : + *_dbm*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -19803,41 +21047,41 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__CRYPT=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__DBM=0$as_nl" if false; then - MODULE__CRYPT_TRUE= - MODULE__CRYPT_FALSE='#' + MODULE__DBM_TRUE= + MODULE__DBM_FALSE='#' else - MODULE__CRYPT_TRUE='#' - MODULE__CRYPT_FALSE= + MODULE__DBM_TRUE='#' + MODULE__DBM_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _ssl" >&5 -$as_echo_n "checking for stdlib extension module _ssl... " >&6; } - if test "$ac_cv_working_openssl_ssl" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _gdbm" >&5 +$as_echo_n "checking for stdlib extension module _gdbm... " >&6; } + if test "$ac_cv_lib_gdbm_gdbm_open" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__SSL=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__SSL_CFLAGS=$OPENSSL_INCLUDES$as_nl" - as_fn_append MODULE_BLOCK "MODULE__SSL_LDFLAGS=$OPENSSL_LIBS $OPENSSL_LDFLAGS$as_nl" + as_fn_append MODULE_BLOCK "MODULE__GDBM=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__GDBM_CFLAGS=$GDBM_CFLAGS$as_nl" + as_fn_append MODULE_BLOCK "MODULE__GDBM_LDFLAGS=$GDBM_LDFLAGS$as_nl" if true; then - MODULE__SSL_TRUE= - MODULE__SSL_FALSE='#' + MODULE__GDBM_TRUE= + MODULE__GDBM_FALSE='#' else - MODULE__SSL_TRUE='#' - MODULE__SSL_FALSE= + MODULE__GDBM_TRUE='#' + MODULE__GDBM_FALSE= fi else case $py_stdlib_not_available in #( - *_ssl*) : + *_gdbm*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -19845,41 +21089,42 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__SSL=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__GDBM=0$as_nl" if false; then - MODULE__SSL_TRUE= - MODULE__SSL_FALSE='#' + MODULE__GDBM_TRUE= + MODULE__GDBM_FALSE='#' else - MODULE__SSL_TRUE='#' - MODULE__SSL_FALSE= + MODULE__GDBM_TRUE='#' + MODULE__GDBM_FALSE= fi fi +# TODO: detect sqlite - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _hashlib" >&5 -$as_echo_n "checking for stdlib extension module _hashlib... " >&6; } - if test "$ac_cv_working_openssl_ssl" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sqlite3" >&5 +$as_echo_n "checking for stdlib extension module _sqlite3... " >&6; } + if true; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__HASHLIB=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__HASHLIB_CFLAGS=$OPENSSL_INCLUDES$as_nl" - as_fn_append MODULE_BLOCK "MODULE__HASHLIB_LDFLAGS=$OPENSSL_LIBS $OPENSSL_LDFLAGS$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SQLITE3=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SQLITE3_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SQLITE3_LDFLAGS=-lsqlite3$as_nl" if true; then - MODULE__HASHLIB_TRUE= - MODULE__HASHLIB_FALSE='#' + MODULE__SQLITE3_TRUE= + MODULE__SQLITE3_FALSE='#' else - MODULE__HASHLIB_TRUE='#' - MODULE__HASHLIB_FALSE= + MODULE__SQLITE3_TRUE='#' + MODULE__SQLITE3_FALSE= fi else case $py_stdlib_not_available in #( - *_hashlib*) : + *_sqlite3*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -19887,41 +21132,41 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__HASHLIB=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SQLITE3=0$as_nl" if false; then - MODULE__HASHLIB_TRUE= - MODULE__HASHLIB_FALSE='#' + MODULE__SQLITE3_TRUE= + MODULE__SQLITE3_FALSE='#' else - MODULE__HASHLIB_TRUE='#' - MODULE__HASHLIB_FALSE= + MODULE__SQLITE3_TRUE='#' + MODULE__SQLITE3_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha256" >&5 -$as_echo_n "checking for stdlib extension module _sha256... " >&6; } - if test "$with_builtin_sha256" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module termios" >&5 +$as_echo_n "checking for stdlib extension module termios... " >&6; } + if test "$ac_sys_system" != VxWorks; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__SHA256=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__SHA256_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__SHA256_LDFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_TERMIOS=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_TERMIOS_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_TERMIOS_LDFLAGS=$as_nl" if true; then - MODULE__SHA256_TRUE= - MODULE__SHA256_FALSE='#' + MODULE_TERMIOS_TRUE= + MODULE_TERMIOS_FALSE='#' else - MODULE__SHA256_TRUE='#' - MODULE__SHA256_FALSE= + MODULE_TERMIOS_TRUE='#' + MODULE_TERMIOS_FALSE= fi else case $py_stdlib_not_available in #( - *_sha256*) : + *termios*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -19929,41 +21174,53 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__SHA256=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE_TERMIOS=0$as_nl" if false; then - MODULE__SHA256_TRUE= - MODULE__SHA256_FALSE='#' + MODULE_TERMIOS_TRUE= + MODULE_TERMIOS_FALSE='#' else - MODULE__SHA256_TRUE='#' - MODULE__SHA256_FALSE= + MODULE_TERMIOS_TRUE='#' + MODULE_TERMIOS_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha512" >&5 -$as_echo_n "checking for stdlib extension module _sha512... " >&6; } - if test "$with_builtin_sha512" = yes; then : + as_fn_append MODULE_BLOCK "MODULE_RESOURCE=1$as_nl" + if true; then + MODULE_RESOURCE_TRUE= + MODULE_RESOURCE_FALSE='#' +else + MODULE_RESOURCE_TRUE='#' + MODULE_RESOURCE_FALSE= +fi + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module ossaudiodev" >&5 +$as_echo_n "checking for stdlib extension module ossaudiodev... " >&6; } + if test "$ac_cv_header_linux_soundcard_h" = yes -o "$ac_cv_header_sys_soundcard_h" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__SHA512=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__SHA512_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__SHA512_LDFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_OSSAUDIODEV=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_OSSAUDIODEV_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_OSSAUDIODEV_LDFLAGS=$as_nl" if true; then - MODULE__SHA512_TRUE= - MODULE__SHA512_FALSE='#' + MODULE_OSSAUDIODEV_TRUE= + MODULE_OSSAUDIODEV_FALSE='#' else - MODULE__SHA512_TRUE='#' - MODULE__SHA512_FALSE= + MODULE_OSSAUDIODEV_TRUE='#' + MODULE_OSSAUDIODEV_FALSE= fi else case $py_stdlib_not_available in #( - *_sha512*) : + *ossaudiodev*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -19971,41 +21228,41 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__SHA512=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE_OSSAUDIODEV=0$as_nl" if false; then - MODULE__SHA512_TRUE= - MODULE__SHA512_FALSE='#' + MODULE_OSSAUDIODEV_TRUE= + MODULE_OSSAUDIODEV_FALSE='#' else - MODULE__SHA512_TRUE='#' - MODULE__SHA512_FALSE= + MODULE_OSSAUDIODEV_TRUE='#' + MODULE_OSSAUDIODEV_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _md5" >&5 -$as_echo_n "checking for stdlib extension module _md5... " >&6; } - if test "$with_builtin_md5" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _scproxy" >&5 +$as_echo_n "checking for stdlib extension module _scproxy... " >&6; } + if test "$ac_sys_system" = "Darwin"; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__MD5=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__MD5_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__MD5_LDFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SCPROXY=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SCPROXY_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SCPROXY_LDFLAGS=-framework SystemConfiguration -framework CoreFoundation$as_nl" if true; then - MODULE__MD5_TRUE= - MODULE__MD5_FALSE='#' + MODULE__SCPROXY_TRUE= + MODULE__SCPROXY_FALSE='#' else - MODULE__MD5_TRUE='#' - MODULE__MD5_FALSE= + MODULE__SCPROXY_TRUE='#' + MODULE__SCPROXY_FALSE= fi else case $py_stdlib_not_available in #( - *_md5*) : + *_scproxy*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -20013,41 +21270,42 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__MD5=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SCPROXY=0$as_nl" if false; then - MODULE__MD5_TRUE= - MODULE__MD5_FALSE='#' + MODULE__SCPROXY_TRUE= + MODULE__SCPROXY_FALSE='#' else - MODULE__MD5_TRUE='#' - MODULE__MD5_FALSE= + MODULE__SCPROXY_TRUE='#' + MODULE__SCPROXY_FALSE= fi fi +# TODO: detect nsl and tirpc - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha1" >&5 -$as_echo_n "checking for stdlib extension module _sha1... " >&6; } - if test "$with_builtin_sha1" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module nis" >&5 +$as_echo_n "checking for stdlib extension module nis... " >&6; } + if true; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__SHA1=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__SHA1_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__SHA1_LDFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_NIS=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_NIS_CFLAGS=-I/usr/include/tirpc$as_nl" + as_fn_append MODULE_BLOCK "MODULE_NIS_LDFLAGS=-lnsl -ltirpc$as_nl" if true; then - MODULE__SHA1_TRUE= - MODULE__SHA1_FALSE='#' + MODULE_NIS_TRUE= + MODULE_NIS_FALSE='#' else - MODULE__SHA1_TRUE='#' - MODULE__SHA1_FALSE= + MODULE_NIS_TRUE='#' + MODULE_NIS_FALSE= fi else case $py_stdlib_not_available in #( - *_sha1*) : + *nis*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -20055,41 +21313,41 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__SHA1=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE_NIS=0$as_nl" if false; then - MODULE__SHA1_TRUE= - MODULE__SHA1_FALSE='#' + MODULE_NIS_TRUE= + MODULE_NIS_FALSE='#' else - MODULE__SHA1_TRUE='#' - MODULE__SHA1_FALSE= + MODULE_NIS_TRUE='#' + MODULE_NIS_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _blake2" >&5 -$as_echo_n "checking for stdlib extension module _blake2... " >&6; } - if test "$with_builtin_blake2" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module zlib" >&5 +$as_echo_n "checking for stdlib extension module zlib... " >&6; } + if test "$ac_cv_header_zlib_h" = yes -a "$ac_cv_lib_z_gzread" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__BLAKE2=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__BLAKE2_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__BLAKE2_LDFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_ZLIB=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_ZLIB_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_ZLIB_LDFLAGS=-lz$as_nl" if true; then - MODULE__BLAKE2_TRUE= - MODULE__BLAKE2_FALSE='#' + MODULE_ZLIB_TRUE= + MODULE_ZLIB_FALSE='#' else - MODULE__BLAKE2_TRUE='#' - MODULE__BLAKE2_FALSE= + MODULE_ZLIB_TRUE='#' + MODULE_ZLIB_FALSE= fi else case $py_stdlib_not_available in #( - *_blake2*) : + *zlib*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -20097,41 +21355,41 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__BLAKE2=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE_ZLIB=0$as_nl" if false; then - MODULE__BLAKE2_TRUE= - MODULE__BLAKE2_FALSE='#' + MODULE_ZLIB_TRUE= + MODULE_ZLIB_FALSE='#' else - MODULE__BLAKE2_TRUE='#' - MODULE__BLAKE2_FALSE= + MODULE_ZLIB_TRUE='#' + MODULE_ZLIB_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha3" >&5 -$as_echo_n "checking for stdlib extension module _sha3... " >&6; } - if test "$with_builtin_sha3" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module binascii" >&5 +$as_echo_n "checking for stdlib extension module binascii... " >&6; } + if true; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__SHA3=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__SHA3_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__SHA3_LDFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_BINASCII=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_BINASCII_CFLAGS=$BINASCII_CFLAGS$as_nl" + as_fn_append MODULE_BLOCK "MODULE_BINASCII_LDFLAGS=$BINASCII_LDFLAGS$as_nl" if true; then - MODULE__SHA3_TRUE= - MODULE__SHA3_FALSE='#' + MODULE_BINASCII_TRUE= + MODULE_BINASCII_FALSE='#' else - MODULE__SHA3_TRUE='#' - MODULE__SHA3_FALSE= + MODULE_BINASCII_TRUE='#' + MODULE_BINASCII_FALSE= fi else case $py_stdlib_not_available in #( - *_sha3*) : + *binascii*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -20139,41 +21397,41 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__SHA3=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE_BINASCII=0$as_nl" if false; then - MODULE__SHA3_TRUE= - MODULE__SHA3_FALSE='#' + MODULE_BINASCII_TRUE= + MODULE_BINASCII_FALSE='#' else - MODULE__SHA3_TRUE='#' - MODULE__SHA3_FALSE= + MODULE_BINASCII_TRUE='#' + MODULE_BINASCII_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _gdbm" >&5 -$as_echo_n "checking for stdlib extension module _gdbm... " >&6; } - if test "$ac_cv_lib_gdbm_gdbm_open" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _bz2" >&5 +$as_echo_n "checking for stdlib extension module _bz2... " >&6; } + if test "$ac_cv_header_bzlib_h" = yes -a "$ac_cv_lib_bz2_BZ2_bzCompress" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__GDBM=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__GDBM_CFLAGS=$GDBM_CFLAGS$as_nl" - as_fn_append MODULE_BLOCK "MODULE__GDBM_LDFLAGS=$GDBM_LDFLAGS$as_nl" + as_fn_append MODULE_BLOCK "MODULE__BZ2=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__BZ2_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__BZ2_LDFLAGS=-lbz2$as_nl" if true; then - MODULE__GDBM_TRUE= - MODULE__GDBM_FALSE='#' + MODULE__BZ2_TRUE= + MODULE__BZ2_FALSE='#' else - MODULE__GDBM_TRUE='#' - MODULE__GDBM_FALSE= + MODULE__BZ2_TRUE='#' + MODULE__BZ2_FALSE= fi else case $py_stdlib_not_available in #( - *_gdbm*) : + *_bz2*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -20181,41 +21439,41 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__GDBM=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__BZ2=0$as_nl" if false; then - MODULE__GDBM_TRUE= - MODULE__GDBM_FALSE='#' + MODULE__BZ2_TRUE= + MODULE__BZ2_FALSE='#' else - MODULE__GDBM_TRUE='#' - MODULE__GDBM_FALSE= + MODULE__BZ2_TRUE='#' + MODULE__BZ2_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module termios" >&5 -$as_echo_n "checking for stdlib extension module termios... " >&6; } - if test "$ac_sys_system" != VxWorks; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _lzma" >&5 +$as_echo_n "checking for stdlib extension module _lzma... " >&6; } + if test "$ac_cv_header_lzma_h" = yes -a "$ac_cv_lib_lzma_lzma_easy_encoder" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE_TERMIOS=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE_TERMIOS_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE_TERMIOS_LDFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__LZMA=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__LZMA_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__LZMA_LDFLAGS=-llzma$as_nl" if true; then - MODULE_TERMIOS_TRUE= - MODULE_TERMIOS_FALSE='#' + MODULE__LZMA_TRUE= + MODULE__LZMA_FALSE='#' else - MODULE_TERMIOS_TRUE='#' - MODULE_TERMIOS_FALSE= + MODULE__LZMA_TRUE='#' + MODULE__LZMA_FALSE= fi else case $py_stdlib_not_available in #( - *termios*) : + *_lzma*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -20223,41 +21481,42 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE_TERMIOS=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__LZMA=0$as_nl" if false; then - MODULE_TERMIOS_TRUE= - MODULE_TERMIOS_FALSE='#' + MODULE__LZMA_TRUE= + MODULE__LZMA_FALSE='#' else - MODULE_TERMIOS_TRUE='#' - MODULE_TERMIOS_FALSE= + MODULE__LZMA_TRUE='#' + MODULE__LZMA_FALSE= fi fi +# TODO: handle external libexpat - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module ossaudiodev" >&5 -$as_echo_n "checking for stdlib extension module ossaudiodev... " >&6; } - if test "$ac_cv_header_linux_soundcard_h" = yes -o "$ac_cv_header_sys_soundcard_h" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module pyexpat" >&5 +$as_echo_n "checking for stdlib extension module pyexpat... " >&6; } + if true; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE_OSSAUDIODEV=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE_OSSAUDIODEV_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE_OSSAUDIODEV_LDFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_PYEXPAT=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_PYEXPAT_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_PYEXPAT_LDFLAGS=-lm$as_nl" if true; then - MODULE_OSSAUDIODEV_TRUE= - MODULE_OSSAUDIODEV_FALSE='#' + MODULE_PYEXPAT_TRUE= + MODULE_PYEXPAT_FALSE='#' else - MODULE_OSSAUDIODEV_TRUE='#' - MODULE_OSSAUDIODEV_FALSE= + MODULE_PYEXPAT_TRUE='#' + MODULE_PYEXPAT_FALSE= fi else case $py_stdlib_not_available in #( - *ossaudiodev*) : + *pyexpat*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -20265,41 +21524,41 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE_OSSAUDIODEV=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE_PYEXPAT=0$as_nl" if false; then - MODULE_OSSAUDIODEV_TRUE= - MODULE_OSSAUDIODEV_FALSE='#' + MODULE_PYEXPAT_TRUE= + MODULE_PYEXPAT_FALSE='#' else - MODULE_OSSAUDIODEV_TRUE='#' - MODULE_OSSAUDIODEV_FALSE= + MODULE_PYEXPAT_TRUE='#' + MODULE_PYEXPAT_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _scproxy" >&5 -$as_echo_n "checking for stdlib extension module _scproxy... " >&6; } - if test "$ac_sys_system" = "Darwin"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _elementtree" >&5 +$as_echo_n "checking for stdlib extension module _elementtree... " >&6; } + if true; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__SCPROXY=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__SCPROXY_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__SCPROXY_LDFLAGS=-framework SystemConfiguration -framework CoreFoundation$as_nl" + as_fn_append MODULE_BLOCK "MODULE__ELEMENTTREE=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__ELEMENTTREE_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__ELEMENTTREE_LDFLAGS=$as_nl" if true; then - MODULE__SCPROXY_TRUE= - MODULE__SCPROXY_FALSE='#' + MODULE__ELEMENTTREE_TRUE= + MODULE__ELEMENTTREE_FALSE='#' else - MODULE__SCPROXY_TRUE='#' - MODULE__SCPROXY_FALSE= + MODULE__ELEMENTTREE_TRUE='#' + MODULE__ELEMENTTREE_FALSE= fi else case $py_stdlib_not_available in #( - *_scproxy*) : + *_elementtree*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -20307,83 +21566,127 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__SCPROXY=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__ELEMENTTREE=0$as_nl" if false; then - MODULE__SCPROXY_TRUE= - MODULE__SCPROXY_FALSE='#' + MODULE__ELEMENTTREE_TRUE= + MODULE__ELEMENTTREE_FALSE='#' else - MODULE__SCPROXY_TRUE='#' - MODULE__SCPROXY_FALSE= + MODULE__ELEMENTTREE_TRUE='#' + MODULE__ELEMENTTREE_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module zlib" >&5 -$as_echo_n "checking for stdlib extension module zlib... " >&6; } - if test "$ac_cv_header_zlib_h" = yes -a "$ac_cv_lib_z_gzread" = yes; then : + as_fn_append MODULE_BLOCK "MODULE__MULTIBYTECODEC=1$as_nl" + if true; then + MODULE__MULTIBYTECODEC_TRUE= + MODULE__MULTIBYTECODEC_FALSE='#' +else + MODULE__MULTIBYTECODEC_TRUE='#' + MODULE__MULTIBYTECODEC_FALSE= +fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE_ZLIB=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE_ZLIB_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE_ZLIB_LDFLAGS=-lz$as_nl" - if true; then - MODULE_ZLIB_TRUE= - MODULE_ZLIB_FALSE='#' + + + + as_fn_append MODULE_BLOCK "MODULE__CODECS_KR=1$as_nl" + if true; then + MODULE__CODECS_KR_TRUE= + MODULE__CODECS_KR_FALSE='#' else - MODULE_ZLIB_TRUE='#' - MODULE_ZLIB_FALSE= + MODULE__CODECS_KR_TRUE='#' + MODULE__CODECS_KR_FALSE= fi + + + as_fn_append MODULE_BLOCK "MODULE__CODECS_JP=1$as_nl" + if true; then + MODULE__CODECS_JP_TRUE= + MODULE__CODECS_JP_FALSE='#' else + MODULE__CODECS_JP_TRUE='#' + MODULE__CODECS_JP_FALSE= +fi - case $py_stdlib_not_available in #( - *zlib*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE_ZLIB=0$as_nl" - if false; then - MODULE_ZLIB_TRUE= - MODULE_ZLIB_FALSE='#' + + + + as_fn_append MODULE_BLOCK "MODULE__CODECS_CN=1$as_nl" + if true; then + MODULE__CODECS_CN_TRUE= + MODULE__CODECS_CN_FALSE='#' else - MODULE_ZLIB_TRUE='#' - MODULE_ZLIB_FALSE= + MODULE__CODECS_CN_TRUE='#' + MODULE__CODECS_CN_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__CODECS_TW=1$as_nl" + if true; then + MODULE__CODECS_TW_TRUE= + MODULE__CODECS_TW_FALSE='#' +else + MODULE__CODECS_TW_TRUE='#' + MODULE__CODECS_TW_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE__CODECS_HK=1$as_nl" + if true; then + MODULE__CODECS_HK_TRUE= + MODULE__CODECS_HK_FALSE='#' +else + MODULE__CODECS_HK_TRUE='#' + MODULE__CODECS_HK_FALSE= fi + + + as_fn_append MODULE_BLOCK "MODULE__CODECS_ISO2022=1$as_nl" + if true; then + MODULE__CODECS_ISO2022_TRUE= + MODULE__CODECS_ISO2022_FALSE='#' +else + MODULE__CODECS_ISO2022_TRUE='#' + MODULE__CODECS_ISO2022_FALSE= fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module binascii" >&5 -$as_echo_n "checking for stdlib extension module binascii... " >&6; } + +# TODO: handle external libmpdec +# UNIVERSAL: let mpdecimal.h detect settings + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _decimal" >&5 +$as_echo_n "checking for stdlib extension module _decimal... " >&6; } if true; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE_BINASCII=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE_BINASCII_CFLAGS=$BINASCII_CFLAGS$as_nl" - as_fn_append MODULE_BLOCK "MODULE_BINASCII_LDFLAGS=$BINASCII_LDFLAGS$as_nl" + as_fn_append MODULE_BLOCK "MODULE__DECIMAL=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__DECIMAL_CFLAGS=-DUNIVERSAL -I\$(srcdir)/Modules/_decimal/libmpdec$as_nl" + as_fn_append MODULE_BLOCK "MODULE__DECIMAL_LDFLAGS=-lm$as_nl" if true; then - MODULE_BINASCII_TRUE= - MODULE_BINASCII_FALSE='#' + MODULE__DECIMAL_TRUE= + MODULE__DECIMAL_FALSE='#' else - MODULE_BINASCII_TRUE='#' - MODULE_BINASCII_FALSE= + MODULE__DECIMAL_TRUE='#' + MODULE__DECIMAL_FALSE= fi else case $py_stdlib_not_available in #( - *binascii*) : + *_decimal*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -20391,41 +21694,42 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE_BINASCII=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__DECIMAL=0$as_nl" if false; then - MODULE_BINASCII_TRUE= - MODULE_BINASCII_FALSE='#' + MODULE__DECIMAL_TRUE= + MODULE__DECIMAL_FALSE='#' else - MODULE_BINASCII_TRUE='#' - MODULE_BINASCII_FALSE= + MODULE__DECIMAL_TRUE='#' + MODULE__DECIMAL_FALSE= fi fi +# TODO: handle ffi dependency - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _bz2" >&5 -$as_echo_n "checking for stdlib extension module _bz2... " >&6; } - if test "$ac_cv_header_bzlib_h" = yes -a "$ac_cv_lib_bz2_BZ2_bzCompress" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _ctypes" >&5 +$as_echo_n "checking for stdlib extension module _ctypes... " >&6; } + if true; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__BZ2=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__BZ2_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__BZ2_LDFLAGS=-lbz2$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CTYPES=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CTYPES_CFLAGS=-DHAVE_FFI_PREP_CIF_VAR -DHAVE_FFI_PREP_CLOSURE_LOC -DHAVE_FFI_CLOSURE_ALLOC$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CTYPES_LDFLAGS=-ldl -lffi$as_nl" if true; then - MODULE__BZ2_TRUE= - MODULE__BZ2_FALSE='#' + MODULE__CTYPES_TRUE= + MODULE__CTYPES_FALSE='#' else - MODULE__BZ2_TRUE='#' - MODULE__BZ2_FALSE= + MODULE__CTYPES_TRUE='#' + MODULE__CTYPES_FALSE= fi else case $py_stdlib_not_available in #( - *_bz2*) : + *_ctypes*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -20433,41 +21737,41 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__BZ2=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CTYPES=0$as_nl" if false; then - MODULE__BZ2_TRUE= - MODULE__BZ2_FALSE='#' + MODULE__CTYPES_TRUE= + MODULE__CTYPES_FALSE='#' else - MODULE__BZ2_TRUE='#' - MODULE__BZ2_FALSE= + MODULE__CTYPES_TRUE='#' + MODULE__CTYPES_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _lzma" >&5 -$as_echo_n "checking for stdlib extension module _lzma... " >&6; } - if test "$ac_cv_header_lzma_h" = yes -a "$ac_cv_lib_lzma_lzma_easy_encoder" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _ctypes_test" >&5 +$as_echo_n "checking for stdlib extension module _ctypes_test... " >&6; } + if test "$TEST_MODULES" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__LZMA=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__LZMA_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__LZMA_LDFLAGS=-llzma$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST_LDFLAGS=$as_nl" if true; then - MODULE__LZMA_TRUE= - MODULE__LZMA_FALSE='#' + MODULE__CTYPES_TEST_TRUE= + MODULE__CTYPES_TEST_FALSE='#' else - MODULE__LZMA_TRUE='#' - MODULE__LZMA_FALSE= + MODULE__CTYPES_TEST_TRUE='#' + MODULE__CTYPES_TEST_FALSE= fi else case $py_stdlib_not_available in #( - *_lzma*) : + *_ctypes_test*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -20475,41 +21779,41 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__LZMA=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST=0$as_nl" if false; then - MODULE__LZMA_TRUE= - MODULE__LZMA_FALSE='#' + MODULE__CTYPES_TEST_TRUE= + MODULE__CTYPES_TEST_FALSE='#' else - MODULE__LZMA_TRUE='#' - MODULE__LZMA_FALSE= + MODULE__CTYPES_TEST_TRUE='#' + MODULE__CTYPES_TEST_FALSE= fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _ctypes_test" >&5 -$as_echo_n "checking for stdlib extension module _ctypes_test... " >&6; } - if test "$TEST_MODULES" = yes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _multiprocessing" >&5 +$as_echo_n "checking for stdlib extension module _multiprocessing... " >&6; } + if true; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST_LDFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__MULTIPROCESSING=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__MULTIPROCESSING_CFLAGS=-I\$(srcdir)/Modules/_multiprocessing$as_nl" + as_fn_append MODULE_BLOCK "MODULE__MULTIPROCESSING_LDFLAGS=$ac_cv_search_shm_open$as_nl" if true; then - MODULE__CTYPES_TEST_TRUE= - MODULE__CTYPES_TEST_FALSE='#' + MODULE__MULTIPROCESSING_TRUE= + MODULE__MULTIPROCESSING_FALSE='#' else - MODULE__CTYPES_TEST_TRUE='#' - MODULE__CTYPES_TEST_FALSE= + MODULE__MULTIPROCESSING_TRUE='#' + MODULE__MULTIPROCESSING_FALSE= fi else case $py_stdlib_not_available in #( - *_ctypes_test*) : + *_multiprocessing*) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 $as_echo "n/a" >&6; } ;; #( *) : @@ -20517,13 +21821,13 @@ $as_echo "n/a" >&6; } ;; #( $as_echo "no" >&6; } ;; esac - as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST=0$as_nl" + as_fn_append MODULE_BLOCK "MODULE__MULTIPROCESSING=0$as_nl" if false; then - MODULE__CTYPES_TEST_TRUE= - MODULE__CTYPES_TEST_FALSE='#' + MODULE__MULTIPROCESSING_TRUE= + MODULE__MULTIPROCESSING_FALSE='#' else - MODULE__CTYPES_TEST_TRUE='#' - MODULE__CTYPES_TEST_FALSE= + MODULE__MULTIPROCESSING_TRUE='#' + MODULE__MULTIPROCESSING_FALSE= fi @@ -20532,12 +21836,12 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _posixshmem" >&5 $as_echo_n "checking for stdlib extension module _posixshmem... " >&6; } - if true; then : + if test "$ac_cv_func_shm_open" = yes -a "ac_cv_func_shm_unlink" = yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } as_fn_append MODULE_BLOCK "MODULE__POSIXSHMEM=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__POSIXSHMEM_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__POSIXSHMEM_CFLAGS=-I\$(srcdir)/Modules/_multiprocessing$as_nl" as_fn_append MODULE_BLOCK "MODULE__POSIXSHMEM_LDFLAGS=$ac_cv_search_shm_open$as_nl" if true; then MODULE__POSIXSHMEM_TRUE= @@ -20656,6 +21960,30 @@ fi fi + as_fn_append MODULE_BLOCK "MODULE_XXLIMITED=1$as_nl" + if true; then + MODULE_XXLIMITED_TRUE= + MODULE_XXLIMITED_FALSE='#' +else + MODULE_XXLIMITED_TRUE='#' + MODULE_XXLIMITED_FALSE= +fi + + + + + as_fn_append MODULE_BLOCK "MODULE_XXLIMITED_35=1$as_nl" + if true; then + MODULE_XXLIMITED_35_TRUE= + MODULE_XXLIMITED_35_FALSE='#' +else + MODULE_XXLIMITED_35_TRUE='#' + MODULE_XXLIMITED_35_FALSE= +fi + + + + # substitute multiline block, must come after last PY_STDLIB_MOD() @@ -20775,6 +22103,182 @@ LTLIBOBJS=$ac_ltlibobjs +if test -z "${MODULE__COLLECTIONS_TRUE}" && test -z "${MODULE__COLLECTIONS_FALSE}"; then + as_fn_error $? "conditional \"MODULE__COLLECTIONS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__ABC_TRUE}" && test -z "${MODULE__ABC_FALSE}"; then + as_fn_error $? "conditional \"MODULE__ABC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__CODECS_TRUE}" && test -z "${MODULE__CODECS_FALSE}"; then + as_fn_error $? "conditional \"MODULE__CODECS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__FUNCTOOLS_TRUE}" && test -z "${MODULE__FUNCTOOLS_FALSE}"; then + as_fn_error $? "conditional \"MODULE__FUNCTOOLS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__IO_TRUE}" && test -z "${MODULE__IO_FALSE}"; then + as_fn_error $? "conditional \"MODULE__IO\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__LOCALE_TRUE}" && test -z "${MODULE__LOCALE_FALSE}"; then + as_fn_error $? "conditional \"MODULE__LOCALE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__OPERATOR_TRUE}" && test -z "${MODULE__OPERATOR_FALSE}"; then + as_fn_error $? "conditional \"MODULE__OPERATOR\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__SIGNAL_TRUE}" && test -z "${MODULE__SIGNAL_FALSE}"; then + as_fn_error $? "conditional \"MODULE__SIGNAL\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__SRE_TRUE}" && test -z "${MODULE__SRE_FALSE}"; then + as_fn_error $? "conditional \"MODULE__SRE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__STAT_TRUE}" && test -z "${MODULE__STAT_FALSE}"; then + as_fn_error $? "conditional \"MODULE__STAT\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__SYMTABLE_TRUE}" && test -z "${MODULE__SYMTABLE_FALSE}"; then + as_fn_error $? "conditional \"MODULE__SYMTABLE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__THREAD_TRUE}" && test -z "${MODULE__THREAD_FALSE}"; then + as_fn_error $? "conditional \"MODULE__THREAD\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__TRACEMALLOC_TRUE}" && test -z "${MODULE__TRACEMALLOC_FALSE}"; then + as_fn_error $? "conditional \"MODULE__TRACEMALLOC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__WEAKREF_TRUE}" && test -z "${MODULE__WEAKREF_FALSE}"; then + as_fn_error $? "conditional \"MODULE__WEAKREF\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_ATEXIT_TRUE}" && test -z "${MODULE_ATEXIT_FALSE}"; then + as_fn_error $? "conditional \"MODULE_ATEXIT\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_ERRNO_TRUE}" && test -z "${MODULE_ERRNO_FALSE}"; then + as_fn_error $? "conditional \"MODULE_ERRNO\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_FAULTHANDLER_TRUE}" && test -z "${MODULE_FAULTHANDLER_FALSE}"; then + as_fn_error $? "conditional \"MODULE_FAULTHANDLER\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_ITERTOOLS_TRUE}" && test -z "${MODULE_ITERTOOLS_FALSE}"; then + as_fn_error $? "conditional \"MODULE_ITERTOOLS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_POSIX_TRUE}" && test -z "${MODULE_POSIX_FALSE}"; then + as_fn_error $? "conditional \"MODULE_POSIX\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_PWD_TRUE}" && test -z "${MODULE_PWD_FALSE}"; then + as_fn_error $? "conditional \"MODULE_PWD\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_TIME_TRUE}" && test -z "${MODULE_TIME_FALSE}"; then + as_fn_error $? "conditional \"MODULE_TIME\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__STRUCT_TRUE}" && test -z "${MODULE__STRUCT_FALSE}"; then + as_fn_error $? "conditional \"MODULE__STRUCT\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_ARRAY_TRUE}" && test -z "${MODULE_ARRAY_FALSE}"; then + as_fn_error $? "conditional \"MODULE_ARRAY\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__CONTEXTVARS_TRUE}" && test -z "${MODULE__CONTEXTVARS_FALSE}"; then + as_fn_error $? "conditional \"MODULE__CONTEXTVARS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_MATH_TRUE}" && test -z "${MODULE_MATH_FALSE}"; then + as_fn_error $? "conditional \"MODULE_MATH\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_CMATH_TRUE}" && test -z "${MODULE_CMATH_FALSE}"; then + as_fn_error $? "conditional \"MODULE_CMATH\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_TIME_TRUE}" && test -z "${MODULE_TIME_FALSE}"; then + as_fn_error $? "conditional \"MODULE_TIME\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__DATETIME_TRUE}" && test -z "${MODULE__DATETIME_FALSE}"; then + as_fn_error $? "conditional \"MODULE__DATETIME\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__ZONEINFO_TRUE}" && test -z "${MODULE__ZONEINFO_FALSE}"; then + as_fn_error $? "conditional \"MODULE__ZONEINFO\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__RANDOM_TRUE}" && test -z "${MODULE__RANDOM_FALSE}"; then + as_fn_error $? "conditional \"MODULE__RANDOM\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__BISECT_TRUE}" && test -z "${MODULE__BISECT_FALSE}"; then + as_fn_error $? "conditional \"MODULE__BISECT\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__HEAPQ_TRUE}" && test -z "${MODULE__HEAPQ_FALSE}"; then + as_fn_error $? "conditional \"MODULE__HEAPQ\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__PICKLE_TRUE}" && test -z "${MODULE__PICKLE_FALSE}"; then + as_fn_error $? "conditional \"MODULE__PICKLE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__JSON_TRUE}" && test -z "${MODULE__JSON_FALSE}"; then + as_fn_error $? "conditional \"MODULE__JSON\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__LSPROF_TRUE}" && test -z "${MODULE__LSPROF_FALSE}"; then + as_fn_error $? "conditional \"MODULE__LSPROF\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_UNICODEDATA_TRUE}" && test -z "${MODULE_UNICODEDATA_FALSE}"; then + as_fn_error $? "conditional \"MODULE_UNICODEDATA\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__OPCODE_TRUE}" && test -z "${MODULE__OPCODE_FALSE}"; then + as_fn_error $? "conditional \"MODULE__OPCODE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__ASYNCIO_TRUE}" && test -z "${MODULE__ASYNCIO_FALSE}"; then + as_fn_error $? "conditional \"MODULE__ASYNCIO\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__ABC_TRUE}" && test -z "${MODULE__ABC_FALSE}"; then + as_fn_error $? "conditional \"MODULE__ABC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__QUEUE_TRUE}" && test -z "${MODULE__QUEUE_FALSE}"; then + as_fn_error $? "conditional \"MODULE__QUEUE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__STATISTICS_TRUE}" && test -z "${MODULE__STATISTICS_FALSE}"; then + as_fn_error $? "conditional \"MODULE__STATISTICS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__TYPING_TRUE}" && test -z "${MODULE__TYPING_FALSE}"; then + as_fn_error $? "conditional \"MODULE__TYPING\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_FCNTL_TRUE}" && test -z "${MODULE_FCNTL_FALSE}"; then + as_fn_error $? "conditional \"MODULE_FCNTL\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_PWD_TRUE}" && test -z "${MODULE_PWD_FALSE}"; then + as_fn_error $? "conditional \"MODULE_PWD\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${MODULE_GRP_TRUE}" && test -z "${MODULE_GRP_FALSE}"; then as_fn_error $? "conditional \"MODULE_GRP\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -20791,6 +22295,18 @@ if test -z "${MODULE_SPWD_TRUE}" && test -z "${MODULE_SPWD_FALSE}"; then as_fn_error $? "conditional \"MODULE_SPWD\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${MODULE_SELECT_TRUE}" && test -z "${MODULE_SELECT_FALSE}"; then + as_fn_error $? "conditional \"MODULE_SELECT\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_MMAP_TRUE}" && test -z "${MODULE_MMAP_FALSE}"; then + as_fn_error $? "conditional \"MODULE_MMAP\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_SYSLOG_TRUE}" && test -z "${MODULE_SYSLOG_FALSE}"; then + as_fn_error $? "conditional \"MODULE_SYSLOG\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${MODULE__XXSUBINTERPRETERS_TRUE}" && test -z "${MODULE__XXSUBINTERPRETERS_FALSE}"; then as_fn_error $? "conditional \"MODULE__XXSUBINTERPRETERS\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -20799,6 +22315,18 @@ if test -z "${MODULE__XXSUBINTERPRETERS_TRUE}" && test -z "${MODULE__XXSUBINTERP as_fn_error $? "conditional \"MODULE__XXSUBINTERPRETERS\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${MODULE_AUDIOOP_TRUE}" && test -z "${MODULE_AUDIOOP_FALSE}"; then + as_fn_error $? "conditional \"MODULE_AUDIOOP\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__CSV_TRUE}" && test -z "${MODULE__CSV_FALSE}"; then + as_fn_error $? "conditional \"MODULE__CSV\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__POSIXSUBPROCESS_TRUE}" && test -z "${MODULE__POSIXSUBPROCESS_FALSE}"; then + as_fn_error $? "conditional \"MODULE__POSIXSUBPROCESS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${MODULE__TESTCAPI_TRUE}" && test -z "${MODULE__TESTCAPI_FALSE}"; then as_fn_error $? "conditional \"MODULE__TESTCAPI\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -20855,6 +22383,22 @@ if test -z "${MODULE_READLINE_TRUE}" && test -z "${MODULE_READLINE_FALSE}"; then as_fn_error $? "conditional \"MODULE_READLINE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${MODULE__CURSES_TRUE}" && test -z "${MODULE__CURSES_FALSE}"; then + as_fn_error $? "conditional \"MODULE__CURSES\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__CURSES_TRUE}" && test -z "${MODULE__CURSES_FALSE}"; then + as_fn_error $? "conditional \"MODULE__CURSES\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__CURSES_PANEL_TRUE}" && test -z "${MODULE__CURSES_PANEL_FALSE}"; then + as_fn_error $? "conditional \"MODULE__CURSES_PANEL\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__CURSES_PANEL_TRUE}" && test -z "${MODULE__CURSES_PANEL_FALSE}"; then + as_fn_error $? "conditional \"MODULE__CURSES_PANEL\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${MODULE__CRYPT_TRUE}" && test -z "${MODULE__CRYPT_FALSE}"; then as_fn_error $? "conditional \"MODULE__CRYPT\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -20863,6 +22407,10 @@ if test -z "${MODULE__CRYPT_TRUE}" && test -z "${MODULE__CRYPT_FALSE}"; then as_fn_error $? "conditional \"MODULE__CRYPT\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${MODULE__SOCKET_TRUE}" && test -z "${MODULE__SOCKET_FALSE}"; then + as_fn_error $? "conditional \"MODULE__SOCKET\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${MODULE__SSL_TRUE}" && test -z "${MODULE__SSL_FALSE}"; then as_fn_error $? "conditional \"MODULE__SSL\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -20927,6 +22475,14 @@ if test -z "${MODULE__SHA3_TRUE}" && test -z "${MODULE__SHA3_FALSE}"; then as_fn_error $? "conditional \"MODULE__SHA3\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${MODULE__DBM_TRUE}" && test -z "${MODULE__DBM_FALSE}"; then + as_fn_error $? "conditional \"MODULE__DBM\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__DBM_TRUE}" && test -z "${MODULE__DBM_FALSE}"; then + as_fn_error $? "conditional \"MODULE__DBM\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${MODULE__GDBM_TRUE}" && test -z "${MODULE__GDBM_FALSE}"; then as_fn_error $? "conditional \"MODULE__GDBM\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -20935,6 +22491,14 @@ if test -z "${MODULE__GDBM_TRUE}" && test -z "${MODULE__GDBM_FALSE}"; then as_fn_error $? "conditional \"MODULE__GDBM\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${MODULE__SQLITE3_TRUE}" && test -z "${MODULE__SQLITE3_FALSE}"; then + as_fn_error $? "conditional \"MODULE__SQLITE3\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__SQLITE3_TRUE}" && test -z "${MODULE__SQLITE3_FALSE}"; then + as_fn_error $? "conditional \"MODULE__SQLITE3\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${MODULE_TERMIOS_TRUE}" && test -z "${MODULE_TERMIOS_FALSE}"; then as_fn_error $? "conditional \"MODULE_TERMIOS\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -20943,6 +22507,10 @@ if test -z "${MODULE_TERMIOS_TRUE}" && test -z "${MODULE_TERMIOS_FALSE}"; then as_fn_error $? "conditional \"MODULE_TERMIOS\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${MODULE_RESOURCE_TRUE}" && test -z "${MODULE_RESOURCE_FALSE}"; then + as_fn_error $? "conditional \"MODULE_RESOURCE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${MODULE_OSSAUDIODEV_TRUE}" && test -z "${MODULE_OSSAUDIODEV_FALSE}"; then as_fn_error $? "conditional \"MODULE_OSSAUDIODEV\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -20959,6 +22527,14 @@ if test -z "${MODULE__SCPROXY_TRUE}" && test -z "${MODULE__SCPROXY_FALSE}"; then as_fn_error $? "conditional \"MODULE__SCPROXY\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${MODULE_NIS_TRUE}" && test -z "${MODULE_NIS_FALSE}"; then + as_fn_error $? "conditional \"MODULE_NIS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_NIS_TRUE}" && test -z "${MODULE_NIS_FALSE}"; then + as_fn_error $? "conditional \"MODULE_NIS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${MODULE_ZLIB_TRUE}" && test -z "${MODULE_ZLIB_FALSE}"; then as_fn_error $? "conditional \"MODULE_ZLIB\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -20991,6 +22567,66 @@ if test -z "${MODULE__LZMA_TRUE}" && test -z "${MODULE__LZMA_FALSE}"; then as_fn_error $? "conditional \"MODULE__LZMA\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${MODULE_PYEXPAT_TRUE}" && test -z "${MODULE_PYEXPAT_FALSE}"; then + as_fn_error $? "conditional \"MODULE_PYEXPAT\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_PYEXPAT_TRUE}" && test -z "${MODULE_PYEXPAT_FALSE}"; then + as_fn_error $? "conditional \"MODULE_PYEXPAT\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__ELEMENTTREE_TRUE}" && test -z "${MODULE__ELEMENTTREE_FALSE}"; then + as_fn_error $? "conditional \"MODULE__ELEMENTTREE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__ELEMENTTREE_TRUE}" && test -z "${MODULE__ELEMENTTREE_FALSE}"; then + as_fn_error $? "conditional \"MODULE__ELEMENTTREE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__MULTIBYTECODEC_TRUE}" && test -z "${MODULE__MULTIBYTECODEC_FALSE}"; then + as_fn_error $? "conditional \"MODULE__MULTIBYTECODEC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__CODECS_KR_TRUE}" && test -z "${MODULE__CODECS_KR_FALSE}"; then + as_fn_error $? "conditional \"MODULE__CODECS_KR\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__CODECS_JP_TRUE}" && test -z "${MODULE__CODECS_JP_FALSE}"; then + as_fn_error $? "conditional \"MODULE__CODECS_JP\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__CODECS_CN_TRUE}" && test -z "${MODULE__CODECS_CN_FALSE}"; then + as_fn_error $? "conditional \"MODULE__CODECS_CN\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__CODECS_TW_TRUE}" && test -z "${MODULE__CODECS_TW_FALSE}"; then + as_fn_error $? "conditional \"MODULE__CODECS_TW\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__CODECS_HK_TRUE}" && test -z "${MODULE__CODECS_HK_FALSE}"; then + as_fn_error $? "conditional \"MODULE__CODECS_HK\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__CODECS_ISO2022_TRUE}" && test -z "${MODULE__CODECS_ISO2022_FALSE}"; then + as_fn_error $? "conditional \"MODULE__CODECS_ISO2022\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__DECIMAL_TRUE}" && test -z "${MODULE__DECIMAL_FALSE}"; then + as_fn_error $? "conditional \"MODULE__DECIMAL\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__DECIMAL_TRUE}" && test -z "${MODULE__DECIMAL_FALSE}"; then + as_fn_error $? "conditional \"MODULE__DECIMAL\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__CTYPES_TRUE}" && test -z "${MODULE__CTYPES_FALSE}"; then + as_fn_error $? "conditional \"MODULE__CTYPES\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__CTYPES_TRUE}" && test -z "${MODULE__CTYPES_FALSE}"; then + as_fn_error $? "conditional \"MODULE__CTYPES\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${MODULE__CTYPES_TEST_TRUE}" && test -z "${MODULE__CTYPES_TEST_FALSE}"; then as_fn_error $? "conditional \"MODULE__CTYPES_TEST\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -20999,6 +22635,14 @@ if test -z "${MODULE__CTYPES_TEST_TRUE}" && test -z "${MODULE__CTYPES_TEST_FALSE as_fn_error $? "conditional \"MODULE__CTYPES_TEST\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${MODULE__MULTIPROCESSING_TRUE}" && test -z "${MODULE__MULTIPROCESSING_FALSE}"; then + as_fn_error $? "conditional \"MODULE__MULTIPROCESSING\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE__MULTIPROCESSING_TRUE}" && test -z "${MODULE__MULTIPROCESSING_FALSE}"; then + as_fn_error $? "conditional \"MODULE__MULTIPROCESSING\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${MODULE__POSIXSHMEM_TRUE}" && test -z "${MODULE__POSIXSHMEM_FALSE}"; then as_fn_error $? "conditional \"MODULE__POSIXSHMEM\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -21023,6 +22667,14 @@ if test -z "${MODULE__UUID_TRUE}" && test -z "${MODULE__UUID_FALSE}"; then as_fn_error $? "conditional \"MODULE__UUID\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${MODULE_XXLIMITED_TRUE}" && test -z "${MODULE_XXLIMITED_FALSE}"; then + as_fn_error $? "conditional \"MODULE_XXLIMITED\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_XXLIMITED_35_TRUE}" && test -z "${MODULE_XXLIMITED_35_FALSE}"; then + as_fn_error $? "conditional \"MODULE_XXLIMITED_35\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi : "${CONFIG_STATUS=./config.status}" ac_write_fail=0 diff --git a/configure.ac b/configure.ac index b68010440e97d8..3707507e6a0b60 100644 --- a/configure.ac +++ b/configure.ac @@ -5999,65 +5999,78 @@ AC_DEFUN([PY_STDLIB_MOD], [ m4_popdef([modldflags])dnl ]) +# Define simple, always enabled stdlib extension module +# PY_STDLIB_MOD_SIMPLE([NAME], [LDFLAGS]) +AC_DEFUN([PY_STDLIB_MOD_SIMPLE], [ + m4_pushdef([modcond], [MODULE_]m4_toupper([$1]))dnl + _MODULE_BLOCK_ADD(modcond, [1]) + AM_CONDITIONAL(modcond, [true]) + m4_ifval([$2], [ + _MODULE_BLOCK_ADD([MODULE_]m4_toupper([$1])[_LDFLAGS], [$2]) + ]) + m4_popdef([modcond])dnl +]) +AU_ALIAS([PY_STDLIB_MOD_STATIC], [PY_STDLIB_MOD_SIMPLE]) + # reuses autoconf check values (ac_cv_*): # * ac_cv_func and ac_cv_header values are set to "yes" when function or header exists # * ac_cv_search values are set to "none required" or "-lsomelib" when function exists dnl Modules/Setup -dnl PY_STDLIB_MOD([_collections], [true]) -dnl PY_STDLIB_MOD([_abc], [true]) -dnl PY_STDLIB_MOD([_codecs], [true]) -dnl PY_STDLIB_MOD([_functools], [true]) -dnl PY_STDLIB_MOD([_io], [true]) -dnl PY_STDLIB_MOD([_locale], [true]) -dnl PY_STDLIB_MOD([_operator], [true]) -dnl PY_STDLIB_MOD([_signal], [true]) -dnl PY_STDLIB_MOD([_sre], [true]) -dnl PY_STDLIB_MOD([_stat], [true]) -dnl PY_STDLIB_MOD([_symtable], [true]) -dnl PY_STDLIB_MOD([_thread], [true]) -dnl PY_STDLIB_MOD([_tracemalloc], [true]) -dnl PY_STDLIB_MOD([_weakref], [true]) -dnl PY_STDLIB_MOD([atexit], [true]) -dnl PY_STDLIB_MOD([errno], [true]) -dnl PY_STDLIB_MOD([faulthandler], [true]) -dnl PY_STDLIB_MOD([itertools], [true]) -dnl PY_STDLIB_MOD([posix], [true]) -dnl PY_STDLIB_MOD([pwd], [true]) -dnl PY_STDLIB_MOD([time], [true]) +PY_STDLIB_MOD_STATIC([_collections]) +PY_STDLIB_MOD_STATIC([_abc]) +PY_STDLIB_MOD_STATIC([_codecs]) +PY_STDLIB_MOD_STATIC([_functools]) +PY_STDLIB_MOD_STATIC([_io]) +PY_STDLIB_MOD_STATIC([_locale]) +PY_STDLIB_MOD_STATIC([_operator]) +PY_STDLIB_MOD_STATIC([_signal]) +PY_STDLIB_MOD_STATIC([_sre]) +PY_STDLIB_MOD_STATIC([_stat]) +PY_STDLIB_MOD_STATIC([_symtable]) +PY_STDLIB_MOD_STATIC([_thread]) +PY_STDLIB_MOD_STATIC([_tracemalloc]) +PY_STDLIB_MOD_STATIC([_weakref]) +PY_STDLIB_MOD_STATIC([atexit]) +PY_STDLIB_MOD_STATIC([errno]) +PY_STDLIB_MOD_STATIC([faulthandler]) +PY_STDLIB_MOD_STATIC([itertools]) +PY_STDLIB_MOD_STATIC([posix]) +PY_STDLIB_MOD_STATIC([pwd]) +PY_STDLIB_MOD_STATIC([time]) dnl same order as setup.py -dnl PY_STDLIB_MOD([_struct], [true]) -dnl PY_STDLIB_MOD([array], [true]) -dnl PY_STDLIB_MOD([_contextvars], [true]) -dnl PY_STDLIB_MOD([math], [true]) -dnl PY_STDLIB_MOD([cmath], [true]) -dnl PY_STDLIB_MOD([time], [true]) -dnl PY_STDLIB_MOD([_datetime], [true]) -dnl PY_STDLIB_MOD([_zoneinfo], [true]) -dnl PY_STDLIB_MOD([_random], [true]) -dnl PY_STDLIB_MOD([_bisect], [true]) -dnl PY_STDLIB_MOD([_heapq], [true]) -dnl PY_STDLIB_MOD([_pickle], [true]) -dnl PY_STDLIB_MOD([_json], [true]) -dnl PY_STDLIB_MOD([_lsprof], [true]) -dnl PY_STDLIB_MOD([unicodedata], [true]) -dnl PY_STDLIB_MOD([_opcode], [true]) -dnl PY_STDLIB_MOD([_asyncio], [true]) -dnl PY_STDLIB_MOD([_abc], [true]) -dnl PY_STDLIB_MOD([_queue], [true]) -dnl PY_STDLIB_MOD([_statistics], [true]) -dnl PY_STDLIB_MOD([_typing], [true]) -dnl PY_STDLIB_MOD([fcntl], [true]) -dnl PY_STDLIB_MOD([pwd], [true]) +PY_STDLIB_MOD_SIMPLE([_struct]) +PY_STDLIB_MOD_SIMPLE([array]) +PY_STDLIB_MOD_SIMPLE([_contextvars]) +PY_STDLIB_MOD_SIMPLE([math], [-lm]) +PY_STDLIB_MOD_SIMPLE([cmath], [-lm]) +PY_STDLIB_MOD_SIMPLE([time], [$TIMEMODULE_LIB]) +PY_STDLIB_MOD_SIMPLE([_datetime], [$TIMEMODULE_LIB]) +PY_STDLIB_MOD_SIMPLE([_zoneinfo]) +PY_STDLIB_MOD_SIMPLE([_random]) +PY_STDLIB_MOD_SIMPLE([_bisect]) +PY_STDLIB_MOD_SIMPLE([_heapq]) +PY_STDLIB_MOD_SIMPLE([_pickle]) +PY_STDLIB_MOD_SIMPLE([_json]) +PY_STDLIB_MOD_SIMPLE([_lsprof]) +PY_STDLIB_MOD_SIMPLE([unicodedata]) +PY_STDLIB_MOD_SIMPLE([_opcode]) +PY_STDLIB_MOD_SIMPLE([_asyncio]) +PY_STDLIB_MOD_SIMPLE([_abc]) +PY_STDLIB_MOD_SIMPLE([_queue]) +PY_STDLIB_MOD_SIMPLE([_statistics]) +PY_STDLIB_MOD_SIMPLE([_typing]) +PY_STDLIB_MOD_SIMPLE([fcntl]) +PY_STDLIB_MOD_SIMPLE([pwd]) PY_STDLIB_MOD([grp], [test "$ac_cv_func_getgrgid" = yes -o "$ac_cv_func_getgrgid_r" = yes]) PY_STDLIB_MOD([spwd], [test "$ac_cv_func_getspent" = yes]) -dnl PY_STDLIB_MOD([select], [true]) -dnl PY_STDLIB_MOD([mmap], [true]) -dnl PY_STDLIB_MOD([syslog], [true]) +PY_STDLIB_MOD_SIMPLE([select]) +PY_STDLIB_MOD_SIMPLE([mmap]) +PY_STDLIB_MOD_SIMPLE([syslog]) PY_STDLIB_MOD([_xxsubinterpreters], [test "$with_experimental_isolated_subinterpreters" = yes]) -dnl PY_STDLIB_MOD([audioop], [true]) -dnl PY_STDLIB_MOD([_csv], [true]) -dnl PY_STDLIB_MOD([_posixsubprocess], [true]) +PY_STDLIB_MOD_SIMPLE([audioop]) +PY_STDLIB_MOD_SIMPLE([_csv]) +PY_STDLIB_MOD_SIMPLE([_posixsubprocess]) PY_STDLIB_MOD([_testcapi], [test "$TEST_MODULES" = yes]) PY_STDLIB_MOD([_testinternalcapi], [test "$TEST_MODULES" = yes]) PY_STDLIB_MOD([_testbuffer], [test "$TEST_MODULES" = yes]) @@ -6065,13 +6078,14 @@ PY_STDLIB_MOD([_testimportmultiple], [test "$TEST_MODULES" = yes]) PY_STDLIB_MOD([_testmultiphase], [test "$TEST_MODULES" = yes]) PY_STDLIB_MOD([_xxtestfuzz], [test "$TEST_MODULES" = yes]) PY_STDLIB_MOD([readline], [test "$py_cv_lib_readline" = yes], [], [$READLINE_LIBS]) -dnl PY_STDLIB_MOD([_curses], [false]) -dnl PY_STDLIB_MOD([_curses_panel], [false]) +# TODO: detect curses +PY_STDLIB_MOD([_curses], [true], [], [-lncurses -lncursesw -ltermcap]) +PY_STDLIB_MOD([_curses_panel], [true], [], [-lpanel -lncurses]) PY_STDLIB_MOD([_crypt], [test "$ac_sys_system" != VxWorks -a \( "$ac_cv_search_crypt_r" != no -o "$ac_cv_search_crypt" != no \)], [], [-lcrypt]) -dnl PY_STDLIB_MOD([_socket], [true]) -dnl TODO: add OPENSSL_RPATH +PY_STDLIB_MOD_SIMPLE([_socket]) +# TODO: add OPENSSL_RPATH PY_STDLIB_MOD([_ssl], [test "$ac_cv_working_openssl_ssl" = yes], [$OPENSSL_INCLUDES], [$OPENSSL_LIBS $OPENSSL_LDFLAGS]) @@ -6084,19 +6098,22 @@ PY_STDLIB_MOD([_md5], [test "$with_builtin_md5" = yes]) PY_STDLIB_MOD([_sha1], [test "$with_builtin_sha1" = yes]) PY_STDLIB_MOD([_blake2], [test "$with_builtin_blake2" = yes]) PY_STDLIB_MOD([_sha3], [test "$with_builtin_sha3" = yes]) -dnl PY_STDLIB_MOD([_dbm], [false]) +# TODO: select dbm library +PY_STDLIB_MOD([_dbm], [true], [-DUSE_GDBM_COMPAT], [-lgdbm_compat]) PY_STDLIB_MOD([_gdbm], [test "$ac_cv_lib_gdbm_gdbm_open" = yes], [$GDBM_CFLAGS], [$GDBM_LDFLAGS]) -dnl PY_STDLIB_MOD([_sqlite3], [false]) +# TODO: detect sqlite +PY_STDLIB_MOD([_sqlite3], [true], [], [-lsqlite3]) PY_STDLIB_MOD([termios], [test "$ac_sys_system" != VxWorks]) -dnl PY_STDLIB_MOD([resource], [true]) +PY_STDLIB_MOD_SIMPLE([resource]) PY_STDLIB_MOD([ossaudiodev], [test "$ac_cv_header_linux_soundcard_h" = yes -o "$ac_cv_header_sys_soundcard_h" = yes]) PY_STDLIB_MOD([_scproxy], [test "$ac_sys_system" = "Darwin"], [], [-framework SystemConfiguration -framework CoreFoundation]) -dnl PY_STDLIB_MOD([nis], [false]) +# TODO: detect nsl and tirpc +PY_STDLIB_MOD([nis], [true], [-I/usr/include/tirpc], [-lnsl -ltirpc]) PY_STDLIB_MOD([zlib], [test "$ac_cv_header_zlib_h" = yes -a "$ac_cv_lib_z_gzread" = yes], [], [-lz]) @@ -6107,27 +6124,40 @@ PY_STDLIB_MOD([_bz2], PY_STDLIB_MOD([_lzma], [test "$ac_cv_header_lzma_h" = yes -a "$ac_cv_lib_lzma_lzma_easy_encoder" = yes], [], [-llzma]) -dnl PY_STDLIB_MOD([pyexpat], [true]) -dnl PY_STDLIB_MOD([_elementtree], [true]) -dnl PY_STDLIB_MOD([_multibytecodec], [true]) -dnl PY_STDLIB_MOD([_codecs_kr], [true]) -dnl PY_STDLIB_MOD([_codecs_jp], [true]) -dnl PY_STDLIB_MOD([_codecs_cn], [true]) -dnl PY_STDLIB_MOD([_codecs_tw], [true]) -dnl PY_STDLIB_MOD([_codecs_hk], [true]) -dnl PY_STDLIB_MOD([_codecs_iso2022], [true]) -dnl PY_STDLIB_MOD([_decimal], [true]) -dnl PY_STDLIB_MOD([_ctypes], [false]) +# TODO: handle external libexpat +PY_STDLIB_MOD([pyexpat], [true], [], [-lm]) +PY_STDLIB_MOD([_elementtree], [true], [], []) +PY_STDLIB_MOD_SIMPLE([_multibytecodec]) +PY_STDLIB_MOD_SIMPLE([_codecs_kr]) +PY_STDLIB_MOD_SIMPLE([_codecs_jp]) +PY_STDLIB_MOD_SIMPLE([_codecs_cn]) +PY_STDLIB_MOD_SIMPLE([_codecs_tw]) +PY_STDLIB_MOD_SIMPLE([_codecs_hk]) +PY_STDLIB_MOD_SIMPLE([_codecs_iso2022]) +# TODO: handle external libmpdec +# UNIVERSAL: let mpdecimal.h detect settings +PY_STDLIB_MOD([_decimal], + [true], + [-DUNIVERSAL -I\$(srcdir)/Modules/_decimal/libmpdec], [-lm]) +# TODO: handle ffi dependency +PY_STDLIB_MOD([_ctypes], + [true], + [-DHAVE_FFI_PREP_CIF_VAR -DHAVE_FFI_PREP_CLOSURE_LOC -DHAVE_FFI_CLOSURE_ALLOC], + [-ldl -lffi]) PY_STDLIB_MOD([_ctypes_test], [test "$TEST_MODULES" = yes]) -dnl PY_STDLIB_MOD([_multiprocessing], [true]) +PY_STDLIB_MOD([_multiprocessing], + [true], + [-I\$(srcdir)/Modules/_multiprocessing], [$ac_cv_search_shm_open]) dnl shm_open() requires -lrt on some platforms -PY_STDLIB_MOD([_posixshmem], [true], [], [$ac_cv_search_shm_open]) +PY_STDLIB_MOD([_posixshmem], + [test "$ac_cv_func_shm_open" = yes -a "ac_cv_func_shm_unlink" = yes], + [-I\$(srcdir)/Modules/_multiprocessing], [$ac_cv_search_shm_open]) PY_STDLIB_MOD([_tkinter], [test -n "$TCLTK_LIBS"], [-DWITH_APPINIT=1], [$TCLTK_LIBS]) PY_STDLIB_MOD([_uuid], [test "$ac_cv_lib_uuid_uuid_generate_time" = yes -o "$ac_cv_func_uuid_create" = yes], [$UUID_CFLAGS], [$UUID_LDLAGS]) -dnl PY_STDLIB_MOD([xxlimited], [true]) -dnl PY_STDLIB_MOD([xxlimited_35], [true]) +PY_STDLIB_MOD_SIMPLE([xxlimited]) +PY_STDLIB_MOD_SIMPLE([xxlimited_35]) # substitute multiline block, must come after last PY_STDLIB_MOD() From 513ff4361f0452c4848a8d74a4cdb8a7f320d5cc Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Sun, 14 Nov 2021 14:41:17 +0100 Subject: [PATCH 4/8] Split enabled/supported flags --- Makefile.pre.in | 9 +- configure | 1653 ++++++++++++++++++++++++++--------------------- configure.ac | 125 ++-- 3 files changed, 999 insertions(+), 788 deletions(-) diff --git a/Makefile.pre.in b/Makefile.pre.in index d823c5f82d83ef..798a2000dab662 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -208,7 +208,7 @@ OPENSSL_LDFLAGS=@OPENSSL_LDFLAGS@ OPENSSL_RPATH=@OPENSSL_RPATH@ # Module compiler and linker flags -# MODULE_EGG=1 # or "0" for disabled / unavailable module +# MODULE_EGG=yes # yes, missing, disabled, n/a # MODULE_EGG_CFLAGS= # MODULE_EGG_LDFLAGS= @MODULE_BLOCK@ @@ -289,6 +289,9 @@ COVERAGE_INFO= $(abs_builddir)/coverage.info COVERAGE_REPORT=$(abs_builddir)/lcov-report COVERAGE_REPORT_OPTIONS=--no-branch-coverage --title "CPython lcov report" +# Internal static libraries +LIBMPDEC_A= Modules/_decimal/libmpdec/libmpdec.a +LIBEXPAT_A= Modules/expat/libexpat.a # === Definitions added by makesetup === @@ -541,8 +544,6 @@ LIBMPDEC_HEADERS= \ $(srcdir)/Modules/_decimal/libmpdec/typearith.h \ $(srcdir)/Modules/_decimal/libmpdec/umodarith.h -LIBMPDEC_A= Modules/_decimal/libmpdec/libmpdec.a - ########################################################################## # pyexpat's expat library @@ -568,8 +569,6 @@ LIBEXPAT_HEADERS= \ Modules/expat/xmltok.h \ Modules/expat/xmltok_impl.h -LIBEXPAT_A= Modules/expat/libexpat.a - ######################################################################### # Rules diff --git a/configure b/configure index e62457f955902c..11d682b2341565 100755 --- a/configure +++ b/configure @@ -19481,8 +19481,6 @@ MODULE_BLOCK= # internal: adds $1=quote($2) to MODULE_BLOCK -# Check for stdlib extension modules -# PY_STDLIB_MOD([NAME], [TEST], [CFLAGS], [LDFLAGS]) # Define simple, always enabled stdlib extension module @@ -19512,7 +19510,7 @@ MODULE_BLOCK= # * ac_cv_func and ac_cv_header values are set to "yes" when function or header exists # * ac_cv_search values are set to "none required" or "-lsomelib" when function exists - as_fn_append MODULE_BLOCK "MODULE__COLLECTIONS=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__COLLECTIONS=yes$as_nl" if true; then MODULE__COLLECTIONS_TRUE= MODULE__COLLECTIONS_FALSE='#' @@ -19524,7 +19522,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__ABC=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__ABC=yes$as_nl" if true; then MODULE__ABC_TRUE= MODULE__ABC_FALSE='#' @@ -19536,7 +19534,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__CODECS=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CODECS=yes$as_nl" if true; then MODULE__CODECS_TRUE= MODULE__CODECS_FALSE='#' @@ -19548,7 +19546,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__FUNCTOOLS=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__FUNCTOOLS=yes$as_nl" if true; then MODULE__FUNCTOOLS_TRUE= MODULE__FUNCTOOLS_FALSE='#' @@ -19560,7 +19558,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__IO=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__IO=yes$as_nl" if true; then MODULE__IO_TRUE= MODULE__IO_FALSE='#' @@ -19572,7 +19570,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__LOCALE=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__LOCALE=yes$as_nl" if true; then MODULE__LOCALE_TRUE= MODULE__LOCALE_FALSE='#' @@ -19584,7 +19582,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__OPERATOR=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__OPERATOR=yes$as_nl" if true; then MODULE__OPERATOR_TRUE= MODULE__OPERATOR_FALSE='#' @@ -19596,7 +19594,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__SIGNAL=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SIGNAL=yes$as_nl" if true; then MODULE__SIGNAL_TRUE= MODULE__SIGNAL_FALSE='#' @@ -19608,7 +19606,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__SRE=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SRE=yes$as_nl" if true; then MODULE__SRE_TRUE= MODULE__SRE_FALSE='#' @@ -19620,7 +19618,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__STAT=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__STAT=yes$as_nl" if true; then MODULE__STAT_TRUE= MODULE__STAT_FALSE='#' @@ -19632,7 +19630,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__SYMTABLE=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SYMTABLE=yes$as_nl" if true; then MODULE__SYMTABLE_TRUE= MODULE__SYMTABLE_FALSE='#' @@ -19644,7 +19642,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__THREAD=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__THREAD=yes$as_nl" if true; then MODULE__THREAD_TRUE= MODULE__THREAD_FALSE='#' @@ -19656,7 +19654,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__TRACEMALLOC=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TRACEMALLOC=yes$as_nl" if true; then MODULE__TRACEMALLOC_TRUE= MODULE__TRACEMALLOC_FALSE='#' @@ -19668,7 +19666,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__WEAKREF=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__WEAKREF=yes$as_nl" if true; then MODULE__WEAKREF_TRUE= MODULE__WEAKREF_FALSE='#' @@ -19680,7 +19678,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE_ATEXIT=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_ATEXIT=yes$as_nl" if true; then MODULE_ATEXIT_TRUE= MODULE_ATEXIT_FALSE='#' @@ -19692,7 +19690,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE_ERRNO=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_ERRNO=yes$as_nl" if true; then MODULE_ERRNO_TRUE= MODULE_ERRNO_FALSE='#' @@ -19704,7 +19702,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE_FAULTHANDLER=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_FAULTHANDLER=yes$as_nl" if true; then MODULE_FAULTHANDLER_TRUE= MODULE_FAULTHANDLER_FALSE='#' @@ -19716,7 +19714,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE_ITERTOOLS=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_ITERTOOLS=yes$as_nl" if true; then MODULE_ITERTOOLS_TRUE= MODULE_ITERTOOLS_FALSE='#' @@ -19728,7 +19726,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE_POSIX=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_POSIX=yes$as_nl" if true; then MODULE_POSIX_TRUE= MODULE_POSIX_FALSE='#' @@ -19740,7 +19738,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE_PWD=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_PWD=yes$as_nl" if true; then MODULE_PWD_TRUE= MODULE_PWD_FALSE='#' @@ -19752,7 +19750,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE_TIME=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_TIME=yes$as_nl" if true; then MODULE_TIME_TRUE= MODULE_TIME_FALSE='#' @@ -19765,7 +19763,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__STRUCT=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__STRUCT=yes$as_nl" if true; then MODULE__STRUCT_TRUE= MODULE__STRUCT_FALSE='#' @@ -19777,7 +19775,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE_ARRAY=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_ARRAY=yes$as_nl" if true; then MODULE_ARRAY_TRUE= MODULE_ARRAY_FALSE='#' @@ -19789,7 +19787,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__CONTEXTVARS=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CONTEXTVARS=yes$as_nl" if true; then MODULE__CONTEXTVARS_TRUE= MODULE__CONTEXTVARS_FALSE='#' @@ -19801,7 +19799,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE_MATH=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_MATH=yes$as_nl" if true; then MODULE_MATH_TRUE= MODULE_MATH_FALSE='#' @@ -19815,7 +19813,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE_CMATH=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_CMATH=yes$as_nl" if true; then MODULE_CMATH_TRUE= MODULE_CMATH_FALSE='#' @@ -19829,7 +19827,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE_TIME=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_TIME=yes$as_nl" if true; then MODULE_TIME_TRUE= MODULE_TIME_FALSE='#' @@ -19843,7 +19841,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__DATETIME=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__DATETIME=yes$as_nl" if true; then MODULE__DATETIME_TRUE= MODULE__DATETIME_FALSE='#' @@ -19857,7 +19855,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__ZONEINFO=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__ZONEINFO=yes$as_nl" if true; then MODULE__ZONEINFO_TRUE= MODULE__ZONEINFO_FALSE='#' @@ -19869,7 +19867,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__RANDOM=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__RANDOM=yes$as_nl" if true; then MODULE__RANDOM_TRUE= MODULE__RANDOM_FALSE='#' @@ -19881,7 +19879,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__BISECT=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__BISECT=yes$as_nl" if true; then MODULE__BISECT_TRUE= MODULE__BISECT_FALSE='#' @@ -19893,7 +19891,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__HEAPQ=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__HEAPQ=yes$as_nl" if true; then MODULE__HEAPQ_TRUE= MODULE__HEAPQ_FALSE='#' @@ -19905,7 +19903,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__PICKLE=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__PICKLE=yes$as_nl" if true; then MODULE__PICKLE_TRUE= MODULE__PICKLE_FALSE='#' @@ -19917,7 +19915,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__JSON=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__JSON=yes$as_nl" if true; then MODULE__JSON_TRUE= MODULE__JSON_FALSE='#' @@ -19929,7 +19927,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__LSPROF=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__LSPROF=yes$as_nl" if true; then MODULE__LSPROF_TRUE= MODULE__LSPROF_FALSE='#' @@ -19941,7 +19939,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE_UNICODEDATA=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_UNICODEDATA=yes$as_nl" if true; then MODULE_UNICODEDATA_TRUE= MODULE_UNICODEDATA_FALSE='#' @@ -19953,7 +19951,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__OPCODE=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__OPCODE=yes$as_nl" if true; then MODULE__OPCODE_TRUE= MODULE__OPCODE_FALSE='#' @@ -19965,7 +19963,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__ASYNCIO=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__ASYNCIO=yes$as_nl" if true; then MODULE__ASYNCIO_TRUE= MODULE__ASYNCIO_FALSE='#' @@ -19977,7 +19975,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__ABC=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__ABC=yes$as_nl" if true; then MODULE__ABC_TRUE= MODULE__ABC_FALSE='#' @@ -19989,7 +19987,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__QUEUE=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__QUEUE=yes$as_nl" if true; then MODULE__QUEUE_TRUE= MODULE__QUEUE_FALSE='#' @@ -20001,7 +19999,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__STATISTICS=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__STATISTICS=yes$as_nl" if true; then MODULE__STATISTICS_TRUE= MODULE__STATISTICS_FALSE='#' @@ -20013,7 +20011,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__TYPING=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__TYPING=yes$as_nl" if true; then MODULE__TYPING_TRUE= MODULE__TYPING_FALSE='#' @@ -20025,7 +20023,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE_FCNTL=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_FCNTL=yes$as_nl" if true; then MODULE_FCNTL_TRUE= MODULE_FCNTL_FALSE='#' @@ -20037,7 +20035,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE_PWD=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_PWD=yes$as_nl" if true; then MODULE_PWD_TRUE= MODULE_PWD_FALSE='#' @@ -20051,14 +20049,27 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module grp" >&5 $as_echo_n "checking for stdlib extension module grp... " >&6; } - if test "$ac_cv_func_getgrgid" = yes -o "$ac_cv_func_getgrgid_r" = yes; then : + case $py_stdlib_not_available in #( + *grp*) : + py_cv_module_grp=n/a ;; #( + *) : + if true; then : + if test "$ac_cv_func_getgrgid" = yes -o "$ac_cv_func_getgrgid_r" = yes; then : + py_cv_module_grp=yes +else + py_cv_module_grp=missing +fi +else + py_cv_module_grp=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE_GRP=$py_cv_module_grp$as_nl" + if test "x$py_cv_module_grp" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE_GRP=1$as_nl" as_fn_append MODULE_BLOCK "MODULE_GRP_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE_GRP_LDFLAGS=$as_nl" - if true; then + if true; then MODULE_GRP_TRUE= MODULE_GRP_FALSE='#' else @@ -20069,17 +20080,7 @@ fi else - case $py_stdlib_not_available in #( - *grp*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE_GRP=0$as_nl" - if false; then + if false; then MODULE_GRP_TRUE= MODULE_GRP_FALSE='#' else @@ -20089,18 +20090,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module_grp" >&5 +$as_echo "$py_cv_module_grp" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module spwd" >&5 $as_echo_n "checking for stdlib extension module spwd... " >&6; } - if test "$ac_cv_func_getspent" = yes; then : + case $py_stdlib_not_available in #( + *spwd*) : + py_cv_module_spwd=n/a ;; #( + *) : + if true; then : + if test "$ac_cv_func_getspent" = yes; then : + py_cv_module_spwd=yes +else + py_cv_module_spwd=missing +fi +else + py_cv_module_spwd=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE_SPWD=$py_cv_module_spwd$as_nl" + if test "x$py_cv_module_spwd" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE_SPWD=1$as_nl" as_fn_append MODULE_BLOCK "MODULE_SPWD_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE_SPWD_LDFLAGS=$as_nl" - if true; then + if true; then MODULE_SPWD_TRUE= MODULE_SPWD_FALSE='#' else @@ -20111,17 +20127,7 @@ fi else - case $py_stdlib_not_available in #( - *spwd*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE_SPWD=0$as_nl" - if false; then + if false; then MODULE_SPWD_TRUE= MODULE_SPWD_FALSE='#' else @@ -20131,9 +20137,11 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module_spwd" >&5 +$as_echo "$py_cv_module_spwd" >&6; } - as_fn_append MODULE_BLOCK "MODULE_SELECT=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_SELECT=yes$as_nl" if true; then MODULE_SELECT_TRUE= MODULE_SELECT_FALSE='#' @@ -20145,7 +20153,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE_MMAP=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_MMAP=yes$as_nl" if true; then MODULE_MMAP_TRUE= MODULE_MMAP_FALSE='#' @@ -20157,7 +20165,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE_SYSLOG=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_SYSLOG=yes$as_nl" if true; then MODULE_SYSLOG_TRUE= MODULE_SYSLOG_FALSE='#' @@ -20171,14 +20179,27 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _xxsubinterpreters" >&5 $as_echo_n "checking for stdlib extension module _xxsubinterpreters... " >&6; } - if test "$with_experimental_isolated_subinterpreters" = yes; then : + case $py_stdlib_not_available in #( + *_xxsubinterpreters*) : + py_cv_module__xxsubinterpreters=n/a ;; #( + *) : + if test "$with_experimental_isolated_subinterpreters" = yes; then : + if true; then : + py_cv_module__xxsubinterpreters=yes +else + py_cv_module__xxsubinterpreters=missing +fi +else + py_cv_module__xxsubinterpreters=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__XXSUBINTERPRETERS=$py_cv_module__xxsubinterpreters$as_nl" + if test "x$py_cv_module__xxsubinterpreters" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__XXSUBINTERPRETERS=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__XXSUBINTERPRETERS_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__XXSUBINTERPRETERS_LDFLAGS=$as_nl" - if true; then + if true; then MODULE__XXSUBINTERPRETERS_TRUE= MODULE__XXSUBINTERPRETERS_FALSE='#' else @@ -20189,17 +20210,7 @@ fi else - case $py_stdlib_not_available in #( - *_xxsubinterpreters*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__XXSUBINTERPRETERS=0$as_nl" - if false; then + if false; then MODULE__XXSUBINTERPRETERS_TRUE= MODULE__XXSUBINTERPRETERS_FALSE='#' else @@ -20209,9 +20220,11 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__xxsubinterpreters" >&5 +$as_echo "$py_cv_module__xxsubinterpreters" >&6; } - as_fn_append MODULE_BLOCK "MODULE_AUDIOOP=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_AUDIOOP=yes$as_nl" if true; then MODULE_AUDIOOP_TRUE= MODULE_AUDIOOP_FALSE='#' @@ -20223,7 +20236,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__CSV=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CSV=yes$as_nl" if true; then MODULE__CSV_TRUE= MODULE__CSV_FALSE='#' @@ -20235,7 +20248,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__POSIXSUBPROCESS=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__POSIXSUBPROCESS=yes$as_nl" if true; then MODULE__POSIXSUBPROCESS_TRUE= MODULE__POSIXSUBPROCESS_FALSE='#' @@ -20249,14 +20262,27 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testcapi" >&5 $as_echo_n "checking for stdlib extension module _testcapi... " >&6; } - if test "$TEST_MODULES" = yes; then : + case $py_stdlib_not_available in #( + *_testcapi*) : + py_cv_module__testcapi=n/a ;; #( + *) : + if test "$TEST_MODULES" = yes; then : + if true; then : + py_cv_module__testcapi=yes +else + py_cv_module__testcapi=missing +fi +else + py_cv_module__testcapi=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__TESTCAPI=$py_cv_module__testcapi$as_nl" + if test "x$py_cv_module__testcapi" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__TESTCAPI=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__TESTCAPI_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__TESTCAPI_LDFLAGS=$as_nl" - if true; then + if true; then MODULE__TESTCAPI_TRUE= MODULE__TESTCAPI_FALSE='#' else @@ -20267,17 +20293,7 @@ fi else - case $py_stdlib_not_available in #( - *_testcapi*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__TESTCAPI=0$as_nl" - if false; then + if false; then MODULE__TESTCAPI_TRUE= MODULE__TESTCAPI_FALSE='#' else @@ -20287,18 +20303,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__testcapi" >&5 +$as_echo "$py_cv_module__testcapi" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testinternalcapi" >&5 $as_echo_n "checking for stdlib extension module _testinternalcapi... " >&6; } - if test "$TEST_MODULES" = yes; then : + case $py_stdlib_not_available in #( + *_testinternalcapi*) : + py_cv_module__testinternalcapi=n/a ;; #( + *) : + if test "$TEST_MODULES" = yes; then : + if true; then : + py_cv_module__testinternalcapi=yes +else + py_cv_module__testinternalcapi=missing +fi +else + py_cv_module__testinternalcapi=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__TESTINTERNALCAPI=$py_cv_module__testinternalcapi$as_nl" + if test "x$py_cv_module__testinternalcapi" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__TESTINTERNALCAPI=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__TESTINTERNALCAPI_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__TESTINTERNALCAPI_LDFLAGS=$as_nl" - if true; then + if true; then MODULE__TESTINTERNALCAPI_TRUE= MODULE__TESTINTERNALCAPI_FALSE='#' else @@ -20309,17 +20340,7 @@ fi else - case $py_stdlib_not_available in #( - *_testinternalcapi*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__TESTINTERNALCAPI=0$as_nl" - if false; then + if false; then MODULE__TESTINTERNALCAPI_TRUE= MODULE__TESTINTERNALCAPI_FALSE='#' else @@ -20329,18 +20350,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__testinternalcapi" >&5 +$as_echo "$py_cv_module__testinternalcapi" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testbuffer" >&5 $as_echo_n "checking for stdlib extension module _testbuffer... " >&6; } - if test "$TEST_MODULES" = yes; then : + case $py_stdlib_not_available in #( + *_testbuffer*) : + py_cv_module__testbuffer=n/a ;; #( + *) : + if test "$TEST_MODULES" = yes; then : + if true; then : + py_cv_module__testbuffer=yes +else + py_cv_module__testbuffer=missing +fi +else + py_cv_module__testbuffer=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__TESTBUFFER=$py_cv_module__testbuffer$as_nl" + if test "x$py_cv_module__testbuffer" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__TESTBUFFER=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__TESTBUFFER_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__TESTBUFFER_LDFLAGS=$as_nl" - if true; then + if true; then MODULE__TESTBUFFER_TRUE= MODULE__TESTBUFFER_FALSE='#' else @@ -20351,17 +20387,7 @@ fi else - case $py_stdlib_not_available in #( - *_testbuffer*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__TESTBUFFER=0$as_nl" - if false; then + if false; then MODULE__TESTBUFFER_TRUE= MODULE__TESTBUFFER_FALSE='#' else @@ -20371,18 +20397,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__testbuffer" >&5 +$as_echo "$py_cv_module__testbuffer" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testimportmultiple" >&5 $as_echo_n "checking for stdlib extension module _testimportmultiple... " >&6; } - if test "$TEST_MODULES" = yes; then : + case $py_stdlib_not_available in #( + *_testimportmultiple*) : + py_cv_module__testimportmultiple=n/a ;; #( + *) : + if test "$TEST_MODULES" = yes; then : + if true; then : + py_cv_module__testimportmultiple=yes +else + py_cv_module__testimportmultiple=missing +fi +else + py_cv_module__testimportmultiple=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__TESTIMPORTMULTIPLE=$py_cv_module__testimportmultiple$as_nl" + if test "x$py_cv_module__testimportmultiple" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__TESTIMPORTMULTIPLE=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__TESTIMPORTMULTIPLE_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__TESTIMPORTMULTIPLE_LDFLAGS=$as_nl" - if true; then + if true; then MODULE__TESTIMPORTMULTIPLE_TRUE= MODULE__TESTIMPORTMULTIPLE_FALSE='#' else @@ -20393,17 +20434,7 @@ fi else - case $py_stdlib_not_available in #( - *_testimportmultiple*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__TESTIMPORTMULTIPLE=0$as_nl" - if false; then + if false; then MODULE__TESTIMPORTMULTIPLE_TRUE= MODULE__TESTIMPORTMULTIPLE_FALSE='#' else @@ -20413,18 +20444,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__testimportmultiple" >&5 +$as_echo "$py_cv_module__testimportmultiple" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _testmultiphase" >&5 $as_echo_n "checking for stdlib extension module _testmultiphase... " >&6; } - if test "$TEST_MODULES" = yes; then : + case $py_stdlib_not_available in #( + *_testmultiphase*) : + py_cv_module__testmultiphase=n/a ;; #( + *) : + if test "$TEST_MODULES" = yes; then : + if true; then : + py_cv_module__testmultiphase=yes +else + py_cv_module__testmultiphase=missing +fi +else + py_cv_module__testmultiphase=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__TESTMULTIPHASE=$py_cv_module__testmultiphase$as_nl" + if test "x$py_cv_module__testmultiphase" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__TESTMULTIPHASE=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__TESTMULTIPHASE_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__TESTMULTIPHASE_LDFLAGS=$as_nl" - if true; then + if true; then MODULE__TESTMULTIPHASE_TRUE= MODULE__TESTMULTIPHASE_FALSE='#' else @@ -20435,17 +20481,7 @@ fi else - case $py_stdlib_not_available in #( - *_testmultiphase*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__TESTMULTIPHASE=0$as_nl" - if false; then + if false; then MODULE__TESTMULTIPHASE_TRUE= MODULE__TESTMULTIPHASE_FALSE='#' else @@ -20455,18 +20491,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__testmultiphase" >&5 +$as_echo "$py_cv_module__testmultiphase" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _xxtestfuzz" >&5 $as_echo_n "checking for stdlib extension module _xxtestfuzz... " >&6; } - if test "$TEST_MODULES" = yes; then : + case $py_stdlib_not_available in #( + *_xxtestfuzz*) : + py_cv_module__xxtestfuzz=n/a ;; #( + *) : + if test "$TEST_MODULES" = yes; then : + if true; then : + py_cv_module__xxtestfuzz=yes +else + py_cv_module__xxtestfuzz=missing +fi +else + py_cv_module__xxtestfuzz=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__XXTESTFUZZ=$py_cv_module__xxtestfuzz$as_nl" + if test "x$py_cv_module__xxtestfuzz" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__XXTESTFUZZ=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__XXTESTFUZZ_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__XXTESTFUZZ_LDFLAGS=$as_nl" - if true; then + if true; then MODULE__XXTESTFUZZ_TRUE= MODULE__XXTESTFUZZ_FALSE='#' else @@ -20477,17 +20528,7 @@ fi else - case $py_stdlib_not_available in #( - *_xxtestfuzz*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__XXTESTFUZZ=0$as_nl" - if false; then + if false; then MODULE__XXTESTFUZZ_TRUE= MODULE__XXTESTFUZZ_FALSE='#' else @@ -20497,18 +20538,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__xxtestfuzz" >&5 +$as_echo "$py_cv_module__xxtestfuzz" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module readline" >&5 $as_echo_n "checking for stdlib extension module readline... " >&6; } - if test "$py_cv_lib_readline" = yes; then : + case $py_stdlib_not_available in #( + *readline*) : + py_cv_module_readline=n/a ;; #( + *) : + if true; then : + if test "$py_cv_lib_readline" = yes; then : + py_cv_module_readline=yes +else + py_cv_module_readline=missing +fi +else + py_cv_module_readline=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE_READLINE=$py_cv_module_readline$as_nl" + if test "x$py_cv_module_readline" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE_READLINE=1$as_nl" as_fn_append MODULE_BLOCK "MODULE_READLINE_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE_READLINE_LDFLAGS=$READLINE_LIBS$as_nl" - if true; then + if true; then MODULE_READLINE_TRUE= MODULE_READLINE_FALSE='#' else @@ -20519,17 +20575,7 @@ fi else - case $py_stdlib_not_available in #( - *readline*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE_READLINE=0$as_nl" - if false; then + if false; then MODULE_READLINE_TRUE= MODULE_READLINE_FALSE='#' else @@ -20539,19 +20585,34 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module_readline" >&5 +$as_echo "$py_cv_module_readline" >&6; } # TODO: detect curses { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _curses" >&5 $as_echo_n "checking for stdlib extension module _curses... " >&6; } - if true; then : + case $py_stdlib_not_available in #( + *_curses*) : + py_cv_module__curses=n/a ;; #( + *) : + if true; then : + if true; then : + py_cv_module__curses=yes +else + py_cv_module__curses=missing +fi +else + py_cv_module__curses=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__CURSES=$py_cv_module__curses$as_nl" + if test "x$py_cv_module__curses" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__CURSES=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__CURSES_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__CURSES_LDFLAGS=-lncurses -lncursesw -ltermcap$as_nl" - if true; then + if true; then MODULE__CURSES_TRUE= MODULE__CURSES_FALSE='#' else @@ -20562,17 +20623,7 @@ fi else - case $py_stdlib_not_available in #( - *_curses*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__CURSES=0$as_nl" - if false; then + if false; then MODULE__CURSES_TRUE= MODULE__CURSES_FALSE='#' else @@ -20582,18 +20633,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__curses" >&5 +$as_echo "$py_cv_module__curses" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _curses_panel" >&5 $as_echo_n "checking for stdlib extension module _curses_panel... " >&6; } - if true; then : + case $py_stdlib_not_available in #( + *_curses_panel*) : + py_cv_module__curses_panel=n/a ;; #( + *) : + if true; then : + if true; then : + py_cv_module__curses_panel=yes +else + py_cv_module__curses_panel=missing +fi +else + py_cv_module__curses_panel=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__CURSES_PANEL=$py_cv_module__curses_panel$as_nl" + if test "x$py_cv_module__curses_panel" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__CURSES_PANEL=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__CURSES_PANEL_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__CURSES_PANEL_LDFLAGS=-lpanel -lncurses$as_nl" - if true; then + if true; then MODULE__CURSES_PANEL_TRUE= MODULE__CURSES_PANEL_FALSE='#' else @@ -20604,17 +20670,7 @@ fi else - case $py_stdlib_not_available in #( - *_curses_panel*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__CURSES_PANEL=0$as_nl" - if false; then + if false; then MODULE__CURSES_PANEL_TRUE= MODULE__CURSES_PANEL_FALSE='#' else @@ -20624,18 +20680,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__curses_panel" >&5 +$as_echo "$py_cv_module__curses_panel" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _crypt" >&5 $as_echo_n "checking for stdlib extension module _crypt... " >&6; } - if test "$ac_sys_system" != VxWorks -a \( "$ac_cv_search_crypt_r" != no -o "$ac_cv_search_crypt" != no \); then : + case $py_stdlib_not_available in #( + *_crypt*) : + py_cv_module__crypt=n/a ;; #( + *) : + if test "$ac_sys_system" != VxWorks; then : + if test "$ac_cv_search_crypt_r" != no -o "$ac_cv_search_crypt" != no; then : + py_cv_module__crypt=yes +else + py_cv_module__crypt=missing +fi +else + py_cv_module__crypt=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__CRYPT=$py_cv_module__crypt$as_nl" + if test "x$py_cv_module__crypt" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__CRYPT=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__CRYPT_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__CRYPT_LDFLAGS=-lcrypt$as_nl" - if true; then + if true; then MODULE__CRYPT_TRUE= MODULE__CRYPT_FALSE='#' else @@ -20646,17 +20717,7 @@ fi else - case $py_stdlib_not_available in #( - *_crypt*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__CRYPT=0$as_nl" - if false; then + if false; then MODULE__CRYPT_TRUE= MODULE__CRYPT_FALSE='#' else @@ -20666,9 +20727,11 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__crypt" >&5 +$as_echo "$py_cv_module__crypt" >&6; } - as_fn_append MODULE_BLOCK "MODULE__SOCKET=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__SOCKET=yes$as_nl" if true; then MODULE__SOCKET_TRUE= MODULE__SOCKET_FALSE='#' @@ -20683,14 +20746,27 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _ssl" >&5 $as_echo_n "checking for stdlib extension module _ssl... " >&6; } - if test "$ac_cv_working_openssl_ssl" = yes; then : + case $py_stdlib_not_available in #( + *_ssl*) : + py_cv_module__ssl=n/a ;; #( + *) : + if true; then : + if test "$ac_cv_working_openssl_ssl" = yes; then : + py_cv_module__ssl=yes +else + py_cv_module__ssl=missing +fi +else + py_cv_module__ssl=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__SSL=$py_cv_module__ssl$as_nl" + if test "x$py_cv_module__ssl" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__SSL=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__SSL_CFLAGS=$OPENSSL_INCLUDES$as_nl" as_fn_append MODULE_BLOCK "MODULE__SSL_LDFLAGS=$OPENSSL_LIBS $OPENSSL_LDFLAGS$as_nl" - if true; then + if true; then MODULE__SSL_TRUE= MODULE__SSL_FALSE='#' else @@ -20701,17 +20777,7 @@ fi else - case $py_stdlib_not_available in #( - *_ssl*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__SSL=0$as_nl" - if false; then + if false; then MODULE__SSL_TRUE= MODULE__SSL_FALSE='#' else @@ -20721,18 +20787,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__ssl" >&5 +$as_echo "$py_cv_module__ssl" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _hashlib" >&5 $as_echo_n "checking for stdlib extension module _hashlib... " >&6; } - if test "$ac_cv_working_openssl_ssl" = yes; then : + case $py_stdlib_not_available in #( + *_hashlib*) : + py_cv_module__hashlib=n/a ;; #( + *) : + if true; then : + if test "$ac_cv_working_openssl_ssl" = yes; then : + py_cv_module__hashlib=yes +else + py_cv_module__hashlib=missing +fi +else + py_cv_module__hashlib=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__HASHLIB=$py_cv_module__hashlib$as_nl" + if test "x$py_cv_module__hashlib" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__HASHLIB=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__HASHLIB_CFLAGS=$OPENSSL_INCLUDES$as_nl" as_fn_append MODULE_BLOCK "MODULE__HASHLIB_LDFLAGS=$OPENSSL_LIBS $OPENSSL_LDFLAGS$as_nl" - if true; then + if true; then MODULE__HASHLIB_TRUE= MODULE__HASHLIB_FALSE='#' else @@ -20743,17 +20824,7 @@ fi else - case $py_stdlib_not_available in #( - *_hashlib*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__HASHLIB=0$as_nl" - if false; then + if false; then MODULE__HASHLIB_TRUE= MODULE__HASHLIB_FALSE='#' else @@ -20763,18 +20834,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__hashlib" >&5 +$as_echo "$py_cv_module__hashlib" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha256" >&5 $as_echo_n "checking for stdlib extension module _sha256... " >&6; } - if test "$with_builtin_sha256" = yes; then : + case $py_stdlib_not_available in #( + *_sha256*) : + py_cv_module__sha256=n/a ;; #( + *) : + if test "$with_builtin_sha256" = yes; then : + if true; then : + py_cv_module__sha256=yes +else + py_cv_module__sha256=missing +fi +else + py_cv_module__sha256=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__SHA256=$py_cv_module__sha256$as_nl" + if test "x$py_cv_module__sha256" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__SHA256=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__SHA256_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__SHA256_LDFLAGS=$as_nl" - if true; then + if true; then MODULE__SHA256_TRUE= MODULE__SHA256_FALSE='#' else @@ -20785,17 +20871,7 @@ fi else - case $py_stdlib_not_available in #( - *_sha256*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__SHA256=0$as_nl" - if false; then + if false; then MODULE__SHA256_TRUE= MODULE__SHA256_FALSE='#' else @@ -20805,18 +20881,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__sha256" >&5 +$as_echo "$py_cv_module__sha256" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha512" >&5 $as_echo_n "checking for stdlib extension module _sha512... " >&6; } - if test "$with_builtin_sha512" = yes; then : + case $py_stdlib_not_available in #( + *_sha512*) : + py_cv_module__sha512=n/a ;; #( + *) : + if test "$with_builtin_sha512" = yes; then : + if true; then : + py_cv_module__sha512=yes +else + py_cv_module__sha512=missing +fi +else + py_cv_module__sha512=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__SHA512=$py_cv_module__sha512$as_nl" + if test "x$py_cv_module__sha512" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__SHA512=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__SHA512_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__SHA512_LDFLAGS=$as_nl" - if true; then + if true; then MODULE__SHA512_TRUE= MODULE__SHA512_FALSE='#' else @@ -20827,17 +20918,7 @@ fi else - case $py_stdlib_not_available in #( - *_sha512*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__SHA512=0$as_nl" - if false; then + if false; then MODULE__SHA512_TRUE= MODULE__SHA512_FALSE='#' else @@ -20847,18 +20928,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__sha512" >&5 +$as_echo "$py_cv_module__sha512" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _md5" >&5 $as_echo_n "checking for stdlib extension module _md5... " >&6; } - if test "$with_builtin_md5" = yes; then : + case $py_stdlib_not_available in #( + *_md5*) : + py_cv_module__md5=n/a ;; #( + *) : + if test "$with_builtin_md5" = yes; then : + if true; then : + py_cv_module__md5=yes +else + py_cv_module__md5=missing +fi +else + py_cv_module__md5=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__MD5=$py_cv_module__md5$as_nl" + if test "x$py_cv_module__md5" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__MD5=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__MD5_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__MD5_LDFLAGS=$as_nl" - if true; then + if true; then MODULE__MD5_TRUE= MODULE__MD5_FALSE='#' else @@ -20869,17 +20965,7 @@ fi else - case $py_stdlib_not_available in #( - *_md5*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__MD5=0$as_nl" - if false; then + if false; then MODULE__MD5_TRUE= MODULE__MD5_FALSE='#' else @@ -20889,18 +20975,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__md5" >&5 +$as_echo "$py_cv_module__md5" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha1" >&5 $as_echo_n "checking for stdlib extension module _sha1... " >&6; } - if test "$with_builtin_sha1" = yes; then : + case $py_stdlib_not_available in #( + *_sha1*) : + py_cv_module__sha1=n/a ;; #( + *) : + if test "$with_builtin_sha1" = yes; then : + if true; then : + py_cv_module__sha1=yes +else + py_cv_module__sha1=missing +fi +else + py_cv_module__sha1=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__SHA1=$py_cv_module__sha1$as_nl" + if test "x$py_cv_module__sha1" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__SHA1=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__SHA1_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__SHA1_LDFLAGS=$as_nl" - if true; then + if true; then MODULE__SHA1_TRUE= MODULE__SHA1_FALSE='#' else @@ -20911,17 +21012,7 @@ fi else - case $py_stdlib_not_available in #( - *_sha1*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__SHA1=0$as_nl" - if false; then + if false; then MODULE__SHA1_TRUE= MODULE__SHA1_FALSE='#' else @@ -20931,18 +21022,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__sha1" >&5 +$as_echo "$py_cv_module__sha1" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _blake2" >&5 $as_echo_n "checking for stdlib extension module _blake2... " >&6; } - if test "$with_builtin_blake2" = yes; then : + case $py_stdlib_not_available in #( + *_blake2*) : + py_cv_module__blake2=n/a ;; #( + *) : + if test "$with_builtin_blake2" = yes; then : + if true; then : + py_cv_module__blake2=yes +else + py_cv_module__blake2=missing +fi +else + py_cv_module__blake2=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__BLAKE2=$py_cv_module__blake2$as_nl" + if test "x$py_cv_module__blake2" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__BLAKE2=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__BLAKE2_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__BLAKE2_LDFLAGS=$as_nl" - if true; then + if true; then MODULE__BLAKE2_TRUE= MODULE__BLAKE2_FALSE='#' else @@ -20953,17 +21059,7 @@ fi else - case $py_stdlib_not_available in #( - *_blake2*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__BLAKE2=0$as_nl" - if false; then + if false; then MODULE__BLAKE2_TRUE= MODULE__BLAKE2_FALSE='#' else @@ -20973,18 +21069,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__blake2" >&5 +$as_echo "$py_cv_module__blake2" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sha3" >&5 $as_echo_n "checking for stdlib extension module _sha3... " >&6; } - if test "$with_builtin_sha3" = yes; then : + case $py_stdlib_not_available in #( + *_sha3*) : + py_cv_module__sha3=n/a ;; #( + *) : + if test "$with_builtin_sha3" = yes; then : + if true; then : + py_cv_module__sha3=yes +else + py_cv_module__sha3=missing +fi +else + py_cv_module__sha3=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__SHA3=$py_cv_module__sha3$as_nl" + if test "x$py_cv_module__sha3" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__SHA3=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__SHA3_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__SHA3_LDFLAGS=$as_nl" - if true; then + if true; then MODULE__SHA3_TRUE= MODULE__SHA3_FALSE='#' else @@ -20995,17 +21106,7 @@ fi else - case $py_stdlib_not_available in #( - *_sha3*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__SHA3=0$as_nl" - if false; then + if false; then MODULE__SHA3_TRUE= MODULE__SHA3_FALSE='#' else @@ -21015,19 +21116,34 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__sha3" >&5 +$as_echo "$py_cv_module__sha3" >&6; } # TODO: select dbm library { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _dbm" >&5 $as_echo_n "checking for stdlib extension module _dbm... " >&6; } - if true; then : + case $py_stdlib_not_available in #( + *_dbm*) : + py_cv_module__dbm=n/a ;; #( + *) : + if true; then : + if true; then : + py_cv_module__dbm=yes +else + py_cv_module__dbm=missing +fi +else + py_cv_module__dbm=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__DBM=$py_cv_module__dbm$as_nl" + if test "x$py_cv_module__dbm" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__DBM=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__DBM_CFLAGS=-DUSE_GDBM_COMPAT$as_nl" as_fn_append MODULE_BLOCK "MODULE__DBM_LDFLAGS=-lgdbm_compat$as_nl" - if true; then + if true; then MODULE__DBM_TRUE= MODULE__DBM_FALSE='#' else @@ -21038,17 +21154,7 @@ fi else - case $py_stdlib_not_available in #( - *_dbm*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__DBM=0$as_nl" - if false; then + if false; then MODULE__DBM_TRUE= MODULE__DBM_FALSE='#' else @@ -21058,18 +21164,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__dbm" >&5 +$as_echo "$py_cv_module__dbm" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _gdbm" >&5 $as_echo_n "checking for stdlib extension module _gdbm... " >&6; } - if test "$ac_cv_lib_gdbm_gdbm_open" = yes; then : + case $py_stdlib_not_available in #( + *_gdbm*) : + py_cv_module__gdbm=n/a ;; #( + *) : + if true; then : + if test "$ac_cv_lib_gdbm_gdbm_open" = yes; then : + py_cv_module__gdbm=yes +else + py_cv_module__gdbm=missing +fi +else + py_cv_module__gdbm=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__GDBM=$py_cv_module__gdbm$as_nl" + if test "x$py_cv_module__gdbm" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__GDBM=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__GDBM_CFLAGS=$GDBM_CFLAGS$as_nl" as_fn_append MODULE_BLOCK "MODULE__GDBM_LDFLAGS=$GDBM_LDFLAGS$as_nl" - if true; then + if true; then MODULE__GDBM_TRUE= MODULE__GDBM_FALSE='#' else @@ -21080,17 +21201,7 @@ fi else - case $py_stdlib_not_available in #( - *_gdbm*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__GDBM=0$as_nl" - if false; then + if false; then MODULE__GDBM_TRUE= MODULE__GDBM_FALSE='#' else @@ -21100,19 +21211,34 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__gdbm" >&5 +$as_echo "$py_cv_module__gdbm" >&6; } # TODO: detect sqlite { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sqlite3" >&5 $as_echo_n "checking for stdlib extension module _sqlite3... " >&6; } - if true; then : + case $py_stdlib_not_available in #( + *_sqlite3*) : + py_cv_module__sqlite3=n/a ;; #( + *) : + if true; then : + if true; then : + py_cv_module__sqlite3=yes +else + py_cv_module__sqlite3=missing +fi +else + py_cv_module__sqlite3=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__SQLITE3=$py_cv_module__sqlite3$as_nl" + if test "x$py_cv_module__sqlite3" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__SQLITE3=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__SQLITE3_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__SQLITE3_LDFLAGS=-lsqlite3$as_nl" - if true; then + if true; then MODULE__SQLITE3_TRUE= MODULE__SQLITE3_FALSE='#' else @@ -21123,17 +21249,7 @@ fi else - case $py_stdlib_not_available in #( - *_sqlite3*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__SQLITE3=0$as_nl" - if false; then + if false; then MODULE__SQLITE3_TRUE= MODULE__SQLITE3_FALSE='#' else @@ -21143,18 +21259,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__sqlite3" >&5 +$as_echo "$py_cv_module__sqlite3" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module termios" >&5 $as_echo_n "checking for stdlib extension module termios... " >&6; } - if test "$ac_sys_system" != VxWorks; then : + case $py_stdlib_not_available in #( + *termios*) : + py_cv_module_termios=n/a ;; #( + *) : + if test "$ac_sys_system" != VxWorks; then : + if true; then : + py_cv_module_termios=yes +else + py_cv_module_termios=missing +fi +else + py_cv_module_termios=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE_TERMIOS=$py_cv_module_termios$as_nl" + if test "x$py_cv_module_termios" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE_TERMIOS=1$as_nl" as_fn_append MODULE_BLOCK "MODULE_TERMIOS_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE_TERMIOS_LDFLAGS=$as_nl" - if true; then + if true; then MODULE_TERMIOS_TRUE= MODULE_TERMIOS_FALSE='#' else @@ -21165,17 +21296,7 @@ fi else - case $py_stdlib_not_available in #( - *termios*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE_TERMIOS=0$as_nl" - if false; then + if false; then MODULE_TERMIOS_TRUE= MODULE_TERMIOS_FALSE='#' else @@ -21185,9 +21306,11 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module_termios" >&5 +$as_echo "$py_cv_module_termios" >&6; } - as_fn_append MODULE_BLOCK "MODULE_RESOURCE=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_RESOURCE=yes$as_nl" if true; then MODULE_RESOURCE_TRUE= MODULE_RESOURCE_FALSE='#' @@ -21201,14 +21324,27 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module ossaudiodev" >&5 $as_echo_n "checking for stdlib extension module ossaudiodev... " >&6; } - if test "$ac_cv_header_linux_soundcard_h" = yes -o "$ac_cv_header_sys_soundcard_h" = yes; then : + case $py_stdlib_not_available in #( + *ossaudiodev*) : + py_cv_module_ossaudiodev=n/a ;; #( + *) : + if true; then : + if test "$ac_cv_header_linux_soundcard_h" = yes -o "$ac_cv_header_sys_soundcard_h" = yes; then : + py_cv_module_ossaudiodev=yes +else + py_cv_module_ossaudiodev=missing +fi +else + py_cv_module_ossaudiodev=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE_OSSAUDIODEV=$py_cv_module_ossaudiodev$as_nl" + if test "x$py_cv_module_ossaudiodev" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE_OSSAUDIODEV=1$as_nl" as_fn_append MODULE_BLOCK "MODULE_OSSAUDIODEV_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE_OSSAUDIODEV_LDFLAGS=$as_nl" - if true; then + if true; then MODULE_OSSAUDIODEV_TRUE= MODULE_OSSAUDIODEV_FALSE='#' else @@ -21219,17 +21355,7 @@ fi else - case $py_stdlib_not_available in #( - *ossaudiodev*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE_OSSAUDIODEV=0$as_nl" - if false; then + if false; then MODULE_OSSAUDIODEV_TRUE= MODULE_OSSAUDIODEV_FALSE='#' else @@ -21239,18 +21365,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module_ossaudiodev" >&5 +$as_echo "$py_cv_module_ossaudiodev" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _scproxy" >&5 $as_echo_n "checking for stdlib extension module _scproxy... " >&6; } - if test "$ac_sys_system" = "Darwin"; then : + case $py_stdlib_not_available in #( + *_scproxy*) : + py_cv_module__scproxy=n/a ;; #( + *) : + if test "$ac_sys_system" = "Darwin"; then : + if true; then : + py_cv_module__scproxy=yes +else + py_cv_module__scproxy=missing +fi +else + py_cv_module__scproxy=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__SCPROXY=$py_cv_module__scproxy$as_nl" + if test "x$py_cv_module__scproxy" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__SCPROXY=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__SCPROXY_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__SCPROXY_LDFLAGS=-framework SystemConfiguration -framework CoreFoundation$as_nl" - if true; then + if true; then MODULE__SCPROXY_TRUE= MODULE__SCPROXY_FALSE='#' else @@ -21261,17 +21402,7 @@ fi else - case $py_stdlib_not_available in #( - *_scproxy*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__SCPROXY=0$as_nl" - if false; then + if false; then MODULE__SCPROXY_TRUE= MODULE__SCPROXY_FALSE='#' else @@ -21281,19 +21412,34 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__scproxy" >&5 +$as_echo "$py_cv_module__scproxy" >&6; } # TODO: detect nsl and tirpc { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module nis" >&5 $as_echo_n "checking for stdlib extension module nis... " >&6; } - if true; then : + case $py_stdlib_not_available in #( + *nis*) : + py_cv_module_nis=n/a ;; #( + *) : + if true; then : + if true; then : + py_cv_module_nis=yes +else + py_cv_module_nis=missing +fi +else + py_cv_module_nis=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE_NIS=$py_cv_module_nis$as_nl" + if test "x$py_cv_module_nis" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE_NIS=1$as_nl" as_fn_append MODULE_BLOCK "MODULE_NIS_CFLAGS=-I/usr/include/tirpc$as_nl" as_fn_append MODULE_BLOCK "MODULE_NIS_LDFLAGS=-lnsl -ltirpc$as_nl" - if true; then + if true; then MODULE_NIS_TRUE= MODULE_NIS_FALSE='#' else @@ -21304,17 +21450,7 @@ fi else - case $py_stdlib_not_available in #( - *nis*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE_NIS=0$as_nl" - if false; then + if false; then MODULE_NIS_TRUE= MODULE_NIS_FALSE='#' else @@ -21324,18 +21460,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module_nis" >&5 +$as_echo "$py_cv_module_nis" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module zlib" >&5 $as_echo_n "checking for stdlib extension module zlib... " >&6; } - if test "$ac_cv_header_zlib_h" = yes -a "$ac_cv_lib_z_gzread" = yes; then : + case $py_stdlib_not_available in #( + *zlib*) : + py_cv_module_zlib=n/a ;; #( + *) : + if true; then : + if test "$ac_cv_header_zlib_h" = yes -a "$ac_cv_lib_z_gzread" = yes; then : + py_cv_module_zlib=yes +else + py_cv_module_zlib=missing +fi +else + py_cv_module_zlib=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE_ZLIB=$py_cv_module_zlib$as_nl" + if test "x$py_cv_module_zlib" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE_ZLIB=1$as_nl" as_fn_append MODULE_BLOCK "MODULE_ZLIB_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE_ZLIB_LDFLAGS=-lz$as_nl" - if true; then + if true; then MODULE_ZLIB_TRUE= MODULE_ZLIB_FALSE='#' else @@ -21346,17 +21497,7 @@ fi else - case $py_stdlib_not_available in #( - *zlib*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE_ZLIB=0$as_nl" - if false; then + if false; then MODULE_ZLIB_TRUE= MODULE_ZLIB_FALSE='#' else @@ -21366,18 +21507,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module_zlib" >&5 +$as_echo "$py_cv_module_zlib" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module binascii" >&5 $as_echo_n "checking for stdlib extension module binascii... " >&6; } - if true; then : + case $py_stdlib_not_available in #( + *binascii*) : + py_cv_module_binascii=n/a ;; #( + *) : + if true; then : + if true; then : + py_cv_module_binascii=yes +else + py_cv_module_binascii=missing +fi +else + py_cv_module_binascii=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE_BINASCII=$py_cv_module_binascii$as_nl" + if test "x$py_cv_module_binascii" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE_BINASCII=1$as_nl" as_fn_append MODULE_BLOCK "MODULE_BINASCII_CFLAGS=$BINASCII_CFLAGS$as_nl" as_fn_append MODULE_BLOCK "MODULE_BINASCII_LDFLAGS=$BINASCII_LDFLAGS$as_nl" - if true; then + if true; then MODULE_BINASCII_TRUE= MODULE_BINASCII_FALSE='#' else @@ -21388,17 +21544,7 @@ fi else - case $py_stdlib_not_available in #( - *binascii*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE_BINASCII=0$as_nl" - if false; then + if false; then MODULE_BINASCII_TRUE= MODULE_BINASCII_FALSE='#' else @@ -21408,18 +21554,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module_binascii" >&5 +$as_echo "$py_cv_module_binascii" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _bz2" >&5 $as_echo_n "checking for stdlib extension module _bz2... " >&6; } - if test "$ac_cv_header_bzlib_h" = yes -a "$ac_cv_lib_bz2_BZ2_bzCompress" = yes; then : + case $py_stdlib_not_available in #( + *_bz2*) : + py_cv_module__bz2=n/a ;; #( + *) : + if true; then : + if test "$ac_cv_header_bzlib_h" = yes -a "$ac_cv_lib_bz2_BZ2_bzCompress" = yes; then : + py_cv_module__bz2=yes +else + py_cv_module__bz2=missing +fi +else + py_cv_module__bz2=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__BZ2=$py_cv_module__bz2$as_nl" + if test "x$py_cv_module__bz2" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__BZ2=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__BZ2_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__BZ2_LDFLAGS=-lbz2$as_nl" - if true; then + if true; then MODULE__BZ2_TRUE= MODULE__BZ2_FALSE='#' else @@ -21430,17 +21591,7 @@ fi else - case $py_stdlib_not_available in #( - *_bz2*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__BZ2=0$as_nl" - if false; then + if false; then MODULE__BZ2_TRUE= MODULE__BZ2_FALSE='#' else @@ -21450,18 +21601,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__bz2" >&5 +$as_echo "$py_cv_module__bz2" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _lzma" >&5 $as_echo_n "checking for stdlib extension module _lzma... " >&6; } - if test "$ac_cv_header_lzma_h" = yes -a "$ac_cv_lib_lzma_lzma_easy_encoder" = yes; then : + case $py_stdlib_not_available in #( + *_lzma*) : + py_cv_module__lzma=n/a ;; #( + *) : + if true; then : + if test "$ac_cv_header_lzma_h" = yes -a "$ac_cv_lib_lzma_lzma_easy_encoder" = yes; then : + py_cv_module__lzma=yes +else + py_cv_module__lzma=missing +fi +else + py_cv_module__lzma=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__LZMA=$py_cv_module__lzma$as_nl" + if test "x$py_cv_module__lzma" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__LZMA=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__LZMA_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__LZMA_LDFLAGS=-llzma$as_nl" - if true; then + if true; then MODULE__LZMA_TRUE= MODULE__LZMA_FALSE='#' else @@ -21472,17 +21638,7 @@ fi else - case $py_stdlib_not_available in #( - *_lzma*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__LZMA=0$as_nl" - if false; then + if false; then MODULE__LZMA_TRUE= MODULE__LZMA_FALSE='#' else @@ -21492,19 +21648,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__lzma" >&5 +$as_echo "$py_cv_module__lzma" >&6; } -# TODO: handle external libexpat { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module pyexpat" >&5 $as_echo_n "checking for stdlib extension module pyexpat... " >&6; } - if true; then : + case $py_stdlib_not_available in #( + *pyexpat*) : + py_cv_module_pyexpat=n/a ;; #( + *) : + if true; then : + if true; then : + py_cv_module_pyexpat=yes +else + py_cv_module_pyexpat=missing +fi +else + py_cv_module_pyexpat=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE_PYEXPAT=$py_cv_module_pyexpat$as_nl" + if test "x$py_cv_module_pyexpat" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE_PYEXPAT=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE_PYEXPAT_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE_PYEXPAT_LDFLAGS=-lm$as_nl" - if true; then + as_fn_append MODULE_BLOCK "MODULE_PYEXPAT_CFLAGS=$LIBEXPAT_CFLAGS$as_nl" + as_fn_append MODULE_BLOCK "MODULE_PYEXPAT_LDFLAGS=$LIBEXPAT_LDFLAGS$as_nl" + if true; then MODULE_PYEXPAT_TRUE= MODULE_PYEXPAT_FALSE='#' else @@ -21515,17 +21685,7 @@ fi else - case $py_stdlib_not_available in #( - *pyexpat*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE_PYEXPAT=0$as_nl" - if false; then + if false; then MODULE_PYEXPAT_TRUE= MODULE_PYEXPAT_FALSE='#' else @@ -21535,18 +21695,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module_pyexpat" >&5 +$as_echo "$py_cv_module_pyexpat" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _elementtree" >&5 $as_echo_n "checking for stdlib extension module _elementtree... " >&6; } - if true; then : + case $py_stdlib_not_available in #( + *_elementtree*) : + py_cv_module__elementtree=n/a ;; #( + *) : + if true; then : + if true; then : + py_cv_module__elementtree=yes +else + py_cv_module__elementtree=missing +fi +else + py_cv_module__elementtree=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__ELEMENTTREE=$py_cv_module__elementtree$as_nl" + if test "x$py_cv_module__elementtree" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__ELEMENTTREE=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__ELEMENTTREE_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__ELEMENTTREE_CFLAGS=$LIBEXPAT_CFLAGS$as_nl" as_fn_append MODULE_BLOCK "MODULE__ELEMENTTREE_LDFLAGS=$as_nl" - if true; then + if true; then MODULE__ELEMENTTREE_TRUE= MODULE__ELEMENTTREE_FALSE='#' else @@ -21557,17 +21732,7 @@ fi else - case $py_stdlib_not_available in #( - *_elementtree*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__ELEMENTTREE=0$as_nl" - if false; then + if false; then MODULE__ELEMENTTREE_TRUE= MODULE__ELEMENTTREE_FALSE='#' else @@ -21577,9 +21742,11 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__elementtree" >&5 +$as_echo "$py_cv_module__elementtree" >&6; } - as_fn_append MODULE_BLOCK "MODULE__MULTIBYTECODEC=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__MULTIBYTECODEC=yes$as_nl" if true; then MODULE__MULTIBYTECODEC_TRUE= MODULE__MULTIBYTECODEC_FALSE='#' @@ -21591,7 +21758,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__CODECS_KR=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CODECS_KR=yes$as_nl" if true; then MODULE__CODECS_KR_TRUE= MODULE__CODECS_KR_FALSE='#' @@ -21603,7 +21770,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__CODECS_JP=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CODECS_JP=yes$as_nl" if true; then MODULE__CODECS_JP_TRUE= MODULE__CODECS_JP_FALSE='#' @@ -21615,7 +21782,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__CODECS_CN=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CODECS_CN=yes$as_nl" if true; then MODULE__CODECS_CN_TRUE= MODULE__CODECS_CN_FALSE='#' @@ -21627,7 +21794,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__CODECS_TW=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CODECS_TW=yes$as_nl" if true; then MODULE__CODECS_TW_TRUE= MODULE__CODECS_TW_FALSE='#' @@ -21639,7 +21806,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__CODECS_HK=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CODECS_HK=yes$as_nl" if true; then MODULE__CODECS_HK_TRUE= MODULE__CODECS_HK_FALSE='#' @@ -21651,7 +21818,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE__CODECS_ISO2022=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CODECS_ISO2022=yes$as_nl" if true; then MODULE__CODECS_ISO2022_TRUE= MODULE__CODECS_ISO2022_FALSE='#' @@ -21667,14 +21834,27 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _decimal" >&5 $as_echo_n "checking for stdlib extension module _decimal... " >&6; } - if true; then : + case $py_stdlib_not_available in #( + *_decimal*) : + py_cv_module__decimal=n/a ;; #( + *) : + if true; then : + if true; then : + py_cv_module__decimal=yes +else + py_cv_module__decimal=missing +fi +else + py_cv_module__decimal=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__DECIMAL=$py_cv_module__decimal$as_nl" + if test "x$py_cv_module__decimal" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__DECIMAL=1$as_nl" - as_fn_append MODULE_BLOCK "MODULE__DECIMAL_CFLAGS=-DUNIVERSAL -I\$(srcdir)/Modules/_decimal/libmpdec$as_nl" - as_fn_append MODULE_BLOCK "MODULE__DECIMAL_LDFLAGS=-lm$as_nl" - if true; then + as_fn_append MODULE_BLOCK "MODULE__DECIMAL_CFLAGS=$LIBMPDEC_CFLAGS$as_nl" + as_fn_append MODULE_BLOCK "MODULE__DECIMAL_LDFLAGS=$LIBMPDEC_LDFLAGS$as_nl" + if true; then MODULE__DECIMAL_TRUE= MODULE__DECIMAL_FALSE='#' else @@ -21685,17 +21865,7 @@ fi else - case $py_stdlib_not_available in #( - *_decimal*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__DECIMAL=0$as_nl" - if false; then + if false; then MODULE__DECIMAL_TRUE= MODULE__DECIMAL_FALSE='#' else @@ -21705,19 +21875,34 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__decimal" >&5 +$as_echo "$py_cv_module__decimal" >&6; } # TODO: handle ffi dependency { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _ctypes" >&5 $as_echo_n "checking for stdlib extension module _ctypes... " >&6; } - if true; then : + case $py_stdlib_not_available in #( + *_ctypes*) : + py_cv_module__ctypes=n/a ;; #( + *) : + if true; then : + if true; then : + py_cv_module__ctypes=yes +else + py_cv_module__ctypes=missing +fi +else + py_cv_module__ctypes=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__CTYPES=$py_cv_module__ctypes$as_nl" + if test "x$py_cv_module__ctypes" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__CTYPES=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__CTYPES_CFLAGS=-DHAVE_FFI_PREP_CIF_VAR -DHAVE_FFI_PREP_CLOSURE_LOC -DHAVE_FFI_CLOSURE_ALLOC$as_nl" as_fn_append MODULE_BLOCK "MODULE__CTYPES_LDFLAGS=-ldl -lffi$as_nl" - if true; then + if true; then MODULE__CTYPES_TRUE= MODULE__CTYPES_FALSE='#' else @@ -21728,17 +21913,7 @@ fi else - case $py_stdlib_not_available in #( - *_ctypes*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__CTYPES=0$as_nl" - if false; then + if false; then MODULE__CTYPES_TRUE= MODULE__CTYPES_FALSE='#' else @@ -21748,18 +21923,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__ctypes" >&5 +$as_echo "$py_cv_module__ctypes" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _ctypes_test" >&5 $as_echo_n "checking for stdlib extension module _ctypes_test... " >&6; } - if test "$TEST_MODULES" = yes; then : + case $py_stdlib_not_available in #( + *_ctypes_test*) : + py_cv_module__ctypes_test=n/a ;; #( + *) : + if test "$TEST_MODULES" = yes; then : + if true; then : + py_cv_module__ctypes_test=yes +else + py_cv_module__ctypes_test=missing +fi +else + py_cv_module__ctypes_test=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST=$py_cv_module__ctypes_test$as_nl" + if test "x$py_cv_module__ctypes_test" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST_CFLAGS=$as_nl" as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST_LDFLAGS=$as_nl" - if true; then + if true; then MODULE__CTYPES_TEST_TRUE= MODULE__CTYPES_TEST_FALSE='#' else @@ -21770,17 +21960,7 @@ fi else - case $py_stdlib_not_available in #( - *_ctypes_test*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST=0$as_nl" - if false; then + if false; then MODULE__CTYPES_TEST_TRUE= MODULE__CTYPES_TEST_FALSE='#' else @@ -21790,18 +21970,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__ctypes_test" >&5 +$as_echo "$py_cv_module__ctypes_test" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _multiprocessing" >&5 $as_echo_n "checking for stdlib extension module _multiprocessing... " >&6; } - if true; then : + case $py_stdlib_not_available in #( + *_multiprocessing*) : + py_cv_module__multiprocessing=n/a ;; #( + *) : + if true; then : + if true; then : + py_cv_module__multiprocessing=yes +else + py_cv_module__multiprocessing=missing +fi +else + py_cv_module__multiprocessing=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__MULTIPROCESSING=$py_cv_module__multiprocessing$as_nl" + if test "x$py_cv_module__multiprocessing" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__MULTIPROCESSING=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__MULTIPROCESSING_CFLAGS=-I\$(srcdir)/Modules/_multiprocessing$as_nl" as_fn_append MODULE_BLOCK "MODULE__MULTIPROCESSING_LDFLAGS=$ac_cv_search_shm_open$as_nl" - if true; then + if true; then MODULE__MULTIPROCESSING_TRUE= MODULE__MULTIPROCESSING_FALSE='#' else @@ -21812,17 +22007,7 @@ fi else - case $py_stdlib_not_available in #( - *_multiprocessing*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__MULTIPROCESSING=0$as_nl" - if false; then + if false; then MODULE__MULTIPROCESSING_TRUE= MODULE__MULTIPROCESSING_FALSE='#' else @@ -21832,18 +22017,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__multiprocessing" >&5 +$as_echo "$py_cv_module__multiprocessing" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _posixshmem" >&5 $as_echo_n "checking for stdlib extension module _posixshmem... " >&6; } - if test "$ac_cv_func_shm_open" = yes -a "ac_cv_func_shm_unlink" = yes; then : + case $py_stdlib_not_available in #( + *_posixshmem*) : + py_cv_module__posixshmem=n/a ;; #( + *) : + if true; then : + if test "$ac_cv_func_shm_open" = yes -a "$ac_cv_func_shm_unlink" = yes; then : + py_cv_module__posixshmem=yes +else + py_cv_module__posixshmem=missing +fi +else + py_cv_module__posixshmem=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__POSIXSHMEM=$py_cv_module__posixshmem$as_nl" + if test "x$py_cv_module__posixshmem" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__POSIXSHMEM=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__POSIXSHMEM_CFLAGS=-I\$(srcdir)/Modules/_multiprocessing$as_nl" as_fn_append MODULE_BLOCK "MODULE__POSIXSHMEM_LDFLAGS=$ac_cv_search_shm_open$as_nl" - if true; then + if true; then MODULE__POSIXSHMEM_TRUE= MODULE__POSIXSHMEM_FALSE='#' else @@ -21854,17 +22054,7 @@ fi else - case $py_stdlib_not_available in #( - *_posixshmem*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__POSIXSHMEM=0$as_nl" - if false; then + if false; then MODULE__POSIXSHMEM_TRUE= MODULE__POSIXSHMEM_FALSE='#' else @@ -21874,18 +22064,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__posixshmem" >&5 +$as_echo "$py_cv_module__posixshmem" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _tkinter" >&5 $as_echo_n "checking for stdlib extension module _tkinter... " >&6; } - if test -n "$TCLTK_LIBS"; then : + case $py_stdlib_not_available in #( + *_tkinter*) : + py_cv_module__tkinter=n/a ;; #( + *) : + if true; then : + if test -n "$TCLTK_LIBS"; then : + py_cv_module__tkinter=yes +else + py_cv_module__tkinter=missing +fi +else + py_cv_module__tkinter=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__TKINTER=$py_cv_module__tkinter$as_nl" + if test "x$py_cv_module__tkinter" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__TKINTER=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__TKINTER_CFLAGS=-DWITH_APPINIT=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__TKINTER_LDFLAGS=$TCLTK_LIBS$as_nl" - if true; then + if true; then MODULE__TKINTER_TRUE= MODULE__TKINTER_FALSE='#' else @@ -21896,17 +22101,7 @@ fi else - case $py_stdlib_not_available in #( - *_tkinter*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__TKINTER=0$as_nl" - if false; then + if false; then MODULE__TKINTER_TRUE= MODULE__TKINTER_FALSE='#' else @@ -21916,18 +22111,33 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__tkinter" >&5 +$as_echo "$py_cv_module__tkinter" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _uuid" >&5 $as_echo_n "checking for stdlib extension module _uuid... " >&6; } - if test "$ac_cv_lib_uuid_uuid_generate_time" = yes -o "$ac_cv_func_uuid_create" = yes; then : + case $py_stdlib_not_available in #( + *_uuid*) : + py_cv_module__uuid=n/a ;; #( + *) : + if true; then : + if test "$ac_cv_lib_uuid_uuid_generate_time" = yes -o "$ac_cv_func_uuid_create" = yes; then : + py_cv_module__uuid=yes +else + py_cv_module__uuid=missing +fi +else + py_cv_module__uuid=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE__UUID=$py_cv_module__uuid$as_nl" + if test "x$py_cv_module__uuid" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - as_fn_append MODULE_BLOCK "MODULE__UUID=1$as_nl" as_fn_append MODULE_BLOCK "MODULE__UUID_CFLAGS=$UUID_CFLAGS$as_nl" as_fn_append MODULE_BLOCK "MODULE__UUID_LDFLAGS=$UUID_LDLAGS$as_nl" - if true; then + if true; then MODULE__UUID_TRUE= MODULE__UUID_FALSE='#' else @@ -21938,17 +22148,7 @@ fi else - case $py_stdlib_not_available in #( - *_uuid*) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: n/a" >&5 -$as_echo "n/a" >&6; } ;; #( - *) : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__UUID=0$as_nl" - if false; then + if false; then MODULE__UUID_TRUE= MODULE__UUID_FALSE='#' else @@ -21958,9 +22158,11 @@ fi fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__uuid" >&5 +$as_echo "$py_cv_module__uuid" >&6; } - as_fn_append MODULE_BLOCK "MODULE_XXLIMITED=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_XXLIMITED=yes$as_nl" if true; then MODULE_XXLIMITED_TRUE= MODULE_XXLIMITED_FALSE='#' @@ -21972,7 +22174,7 @@ fi - as_fn_append MODULE_BLOCK "MODULE_XXLIMITED_35=1$as_nl" + as_fn_append MODULE_BLOCK "MODULE_XXLIMITED_35=yes$as_nl" if true; then MODULE_XXLIMITED_35_TRUE= MODULE_XXLIMITED_35_FALSE='#' @@ -21984,7 +22186,6 @@ fi - # substitute multiline block, must come after last PY_STDLIB_MOD() diff --git a/configure.ac b/configure.ac index 3707507e6a0b60..6d0d5eff2fbdd7 100644 --- a/configure.ac +++ b/configure.ac @@ -5968,42 +5968,40 @@ MODULE_BLOCK= # internal: adds $1=quote($2) to MODULE_BLOCK AC_DEFUN([_MODULE_BLOCK_ADD], [AS_VAR_APPEND([MODULE_BLOCK], ["$1=_AS_QUOTE([$2])$as_nl"])]) -# Check for stdlib extension modules -# PY_STDLIB_MOD([NAME], [TEST], [CFLAGS], [LDFLAGS]) +dnl Check for stdlib extension modules +dnl PY_STDLIB_MOD([NAME], [ENABLED-TEST], [SUPPORTED-TEST], [CFLAGS], [LDFLAGS]) +dnl sets MODULE_$NAME based on $py_stdlib_not_available, ENABLED-TEST, +dnl and SUPPORTED_TEST: +dnl n/a: $NAME in $py_stdlib_not_available (not available on platform) +dnl yes: enabled and supported +dnl missing: enabled and not supported +dnl disabled: not enabled AC_DEFUN([PY_STDLIB_MOD], [ AC_MSG_CHECKING([for stdlib extension module $1]) - dnl m4_pushdef([pymod], [PY_MODULE_]m4_toupper([$1])) m4_pushdef([modcond], [MODULE_]m4_toupper([$1]))dnl - m4_pushdef([modcflags], [MODULE_]m4_toupper([$1])[_CFLAGS])dnl - m4_pushdef([modldflags], [MODULE_]m4_toupper([$1])[_LDFLAGS])dnl - AS_IF([$2], [ - AC_MSG_RESULT([yes]) - _MODULE_BLOCK_ADD(modcond, [1]) - _MODULE_BLOCK_ADD(modcflags, [$3]) - _MODULE_BLOCK_ADD(modldflags, [$4]) - dnl AC_DEFINE([pymod], [1], [Define if stdlib module "$1" is supported and enabled.]) + m4_pushdef([modstate], [py_cv_module_$1])dnl + AS_CASE([$py_stdlib_not_available], + [*$1*], [modstate=n/a], + [AS_IF([$2], [AS_IF([$3], [modstate=yes], [modstate=missing])], [modstate=disabled]) + ]) + _MODULE_BLOCK_ADD(modcond, [$modstate]) + AS_VAR_IF([modstate], [yes], [ + _MODULE_BLOCK_ADD([MODULE_]m4_toupper([$1])[_CFLAGS], [$4]) + _MODULE_BLOCK_ADD([MODULE_]m4_toupper([$1])[_LDFLAGS], [$5]) AM_CONDITIONAL(modcond, [true]) ], [ - AS_CASE([$py_stdlib_not_available], - [*$1*], [AC_MSG_RESULT([n/a])], - [AC_MSG_RESULT([no])] - ) - _MODULE_BLOCK_ADD(modcond, [0]) - dnl _MODULE_BLOCK_ADD(modcflags, []) - dnl _MODULE_BLOCK_ADD(modldflags, []) AM_CONDITIONAL(modcond, [false]) ]) - dnl m4_popdef([pymod]) + AC_MSG_RESULT([$modstate]) m4_popdef([modcond])dnl - m4_popdef([modcflags])dnl - m4_popdef([modldflags])dnl + m4_popdef([modstate])dnl ]) # Define simple, always enabled stdlib extension module # PY_STDLIB_MOD_SIMPLE([NAME], [LDFLAGS]) AC_DEFUN([PY_STDLIB_MOD_SIMPLE], [ m4_pushdef([modcond], [MODULE_]m4_toupper([$1]))dnl - _MODULE_BLOCK_ADD(modcond, [1]) + _MODULE_BLOCK_ADD(modcond, [yes]) AM_CONDITIONAL(modcond, [true]) m4_ifval([$2], [ _MODULE_BLOCK_ADD([MODULE_]m4_toupper([$1])[_LDFLAGS], [$2]) @@ -6062,71 +6060,80 @@ PY_STDLIB_MOD_SIMPLE([_statistics]) PY_STDLIB_MOD_SIMPLE([_typing]) PY_STDLIB_MOD_SIMPLE([fcntl]) PY_STDLIB_MOD_SIMPLE([pwd]) -PY_STDLIB_MOD([grp], [test "$ac_cv_func_getgrgid" = yes -o "$ac_cv_func_getgrgid_r" = yes]) -PY_STDLIB_MOD([spwd], [test "$ac_cv_func_getspent" = yes]) +PY_STDLIB_MOD([grp], [true], [test "$ac_cv_func_getgrgid" = yes -o "$ac_cv_func_getgrgid_r" = yes]) +PY_STDLIB_MOD([spwd], [true], [test "$ac_cv_func_getspent" = yes]) PY_STDLIB_MOD_SIMPLE([select]) PY_STDLIB_MOD_SIMPLE([mmap]) PY_STDLIB_MOD_SIMPLE([syslog]) -PY_STDLIB_MOD([_xxsubinterpreters], [test "$with_experimental_isolated_subinterpreters" = yes]) +PY_STDLIB_MOD([_xxsubinterpreters], [test "$with_experimental_isolated_subinterpreters" = yes], [true]) PY_STDLIB_MOD_SIMPLE([audioop]) PY_STDLIB_MOD_SIMPLE([_csv]) PY_STDLIB_MOD_SIMPLE([_posixsubprocess]) -PY_STDLIB_MOD([_testcapi], [test "$TEST_MODULES" = yes]) -PY_STDLIB_MOD([_testinternalcapi], [test "$TEST_MODULES" = yes]) -PY_STDLIB_MOD([_testbuffer], [test "$TEST_MODULES" = yes]) -PY_STDLIB_MOD([_testimportmultiple], [test "$TEST_MODULES" = yes]) -PY_STDLIB_MOD([_testmultiphase], [test "$TEST_MODULES" = yes]) -PY_STDLIB_MOD([_xxtestfuzz], [test "$TEST_MODULES" = yes]) -PY_STDLIB_MOD([readline], [test "$py_cv_lib_readline" = yes], [], [$READLINE_LIBS]) +PY_STDLIB_MOD([_testcapi], [test "$TEST_MODULES" = yes], [true]) +PY_STDLIB_MOD([_testinternalcapi], [test "$TEST_MODULES" = yes], [true]) +PY_STDLIB_MOD([_testbuffer], [test "$TEST_MODULES" = yes], [true]) +PY_STDLIB_MOD([_testimportmultiple], [test "$TEST_MODULES" = yes], [true]) +PY_STDLIB_MOD([_testmultiphase], [test "$TEST_MODULES" = yes], [true]) +PY_STDLIB_MOD([_xxtestfuzz], [test "$TEST_MODULES" = yes], [true]) +PY_STDLIB_MOD([readline], [true], [test "$py_cv_lib_readline" = yes], [], [$READLINE_LIBS]) # TODO: detect curses -PY_STDLIB_MOD([_curses], [true], [], [-lncurses -lncursesw -ltermcap]) -PY_STDLIB_MOD([_curses_panel], [true], [], [-lpanel -lncurses]) +PY_STDLIB_MOD([_curses], [true], [true], [], [-lncurses -lncursesw -ltermcap]) +PY_STDLIB_MOD([_curses_panel], [true], [true], [], [-lpanel -lncurses]) PY_STDLIB_MOD([_crypt], - [test "$ac_sys_system" != VxWorks -a \( "$ac_cv_search_crypt_r" != no -o "$ac_cv_search_crypt" != no \)], + [test "$ac_sys_system" != VxWorks], + [test "$ac_cv_search_crypt_r" != no -o "$ac_cv_search_crypt" != no], [], [-lcrypt]) PY_STDLIB_MOD_SIMPLE([_socket]) # TODO: add OPENSSL_RPATH PY_STDLIB_MOD([_ssl], + [true], [test "$ac_cv_working_openssl_ssl" = yes], [$OPENSSL_INCLUDES], [$OPENSSL_LIBS $OPENSSL_LDFLAGS]) PY_STDLIB_MOD([_hashlib], + [true], [test "$ac_cv_working_openssl_ssl" = yes], [$OPENSSL_INCLUDES], [$OPENSSL_LIBS $OPENSSL_LDFLAGS]) -PY_STDLIB_MOD([_sha256], [test "$with_builtin_sha256" = yes]) -PY_STDLIB_MOD([_sha512], [test "$with_builtin_sha512" = yes]) -PY_STDLIB_MOD([_md5], [test "$with_builtin_md5" = yes]) -PY_STDLIB_MOD([_sha1], [test "$with_builtin_sha1" = yes]) -PY_STDLIB_MOD([_blake2], [test "$with_builtin_blake2" = yes]) -PY_STDLIB_MOD([_sha3], [test "$with_builtin_sha3" = yes]) +PY_STDLIB_MOD([_sha256], [test "$with_builtin_sha256" = yes], [true]) +PY_STDLIB_MOD([_sha512], [test "$with_builtin_sha512" = yes], [true]) +PY_STDLIB_MOD([_md5], [test "$with_builtin_md5" = yes], [true]) +PY_STDLIB_MOD([_sha1], [test "$with_builtin_sha1" = yes], [true]) +PY_STDLIB_MOD([_blake2], [test "$with_builtin_blake2" = yes], [true]) +PY_STDLIB_MOD([_sha3], [test "$with_builtin_sha3" = yes], [true]) # TODO: select dbm library -PY_STDLIB_MOD([_dbm], [true], [-DUSE_GDBM_COMPAT], [-lgdbm_compat]) +PY_STDLIB_MOD([_dbm], [true], [true], [-DUSE_GDBM_COMPAT], [-lgdbm_compat]) PY_STDLIB_MOD([_gdbm], + [true], [test "$ac_cv_lib_gdbm_gdbm_open" = yes], [$GDBM_CFLAGS], [$GDBM_LDFLAGS]) # TODO: detect sqlite -PY_STDLIB_MOD([_sqlite3], [true], [], [-lsqlite3]) -PY_STDLIB_MOD([termios], [test "$ac_sys_system" != VxWorks]) +PY_STDLIB_MOD([_sqlite3], [true], [true], [], [-lsqlite3]) +PY_STDLIB_MOD([termios], [test "$ac_sys_system" != VxWorks], [true]) PY_STDLIB_MOD_SIMPLE([resource]) PY_STDLIB_MOD([ossaudiodev], + [true], [test "$ac_cv_header_linux_soundcard_h" = yes -o "$ac_cv_header_sys_soundcard_h" = yes]) PY_STDLIB_MOD([_scproxy], [test "$ac_sys_system" = "Darwin"], + [true], [], [-framework SystemConfiguration -framework CoreFoundation]) # TODO: detect nsl and tirpc -PY_STDLIB_MOD([nis], [true], [-I/usr/include/tirpc], [-lnsl -ltirpc]) +PY_STDLIB_MOD([nis], [true], [true], [-I/usr/include/tirpc], [-lnsl -ltirpc]) PY_STDLIB_MOD([zlib], + [true], [test "$ac_cv_header_zlib_h" = yes -a "$ac_cv_lib_z_gzread" = yes], [], [-lz]) -PY_STDLIB_MOD([binascii], [true], [$BINASCII_CFLAGS], [$BINASCII_LDFLAGS]) +PY_STDLIB_MOD([binascii], [true], [true], [$BINASCII_CFLAGS], [$BINASCII_LDFLAGS]) PY_STDLIB_MOD([_bz2], + [true], [test "$ac_cv_header_bzlib_h" = yes -a "$ac_cv_lib_bz2_BZ2_bzCompress" = yes], [], [-lbz2]) PY_STDLIB_MOD([_lzma], + [true], [test "$ac_cv_header_lzma_h" = yes -a "$ac_cv_lib_lzma_lzma_easy_encoder" = yes], [], [-llzma]) -# TODO: handle external libexpat -PY_STDLIB_MOD([pyexpat], [true], [], [-lm]) -PY_STDLIB_MOD([_elementtree], [true], [], []) +dnl _elementtree loads libexpat via CAPI hook in pyexpat +PY_STDLIB_MOD([pyexpat], [true], [true], [$LIBEXPAT_CFLAGS], [$LIBEXPAT_LDFLAGS]) +PY_STDLIB_MOD([_elementtree], [true], [true], [$LIBEXPAT_CFLAGS], []) PY_STDLIB_MOD_SIMPLE([_multibytecodec]) PY_STDLIB_MOD_SIMPLE([_codecs_kr]) PY_STDLIB_MOD_SIMPLE([_codecs_jp]) @@ -6137,29 +6144,33 @@ PY_STDLIB_MOD_SIMPLE([_codecs_iso2022]) # TODO: handle external libmpdec # UNIVERSAL: let mpdecimal.h detect settings PY_STDLIB_MOD([_decimal], - [true], - [-DUNIVERSAL -I\$(srcdir)/Modules/_decimal/libmpdec], [-lm]) + [true], [true], + [$LIBMPDEC_CFLAGS], [$LIBMPDEC_LDFLAGS]) # TODO: handle ffi dependency PY_STDLIB_MOD([_ctypes], - [true], + [true], [true], [-DHAVE_FFI_PREP_CIF_VAR -DHAVE_FFI_PREP_CLOSURE_LOC -DHAVE_FFI_CLOSURE_ALLOC], [-ldl -lffi]) -PY_STDLIB_MOD([_ctypes_test], [test "$TEST_MODULES" = yes]) +PY_STDLIB_MOD([_ctypes_test], [test "$TEST_MODULES" = yes], [true]) PY_STDLIB_MOD([_multiprocessing], - [true], + [true], [true], [-I\$(srcdir)/Modules/_multiprocessing], [$ac_cv_search_shm_open]) dnl shm_open() requires -lrt on some platforms PY_STDLIB_MOD([_posixshmem], - [test "$ac_cv_func_shm_open" = yes -a "ac_cv_func_shm_unlink" = yes], + [true], + [test "$ac_cv_func_shm_open" = yes -a "$ac_cv_func_shm_unlink" = yes], [-I\$(srcdir)/Modules/_multiprocessing], [$ac_cv_search_shm_open]) -PY_STDLIB_MOD([_tkinter], [test -n "$TCLTK_LIBS"], [-DWITH_APPINIT=1], [$TCLTK_LIBS]) +PY_STDLIB_MOD([_tkinter], + [true], + [test -n "$TCLTK_LIBS"], + [-DWITH_APPINIT=1], [$TCLTK_LIBS]) PY_STDLIB_MOD([_uuid], + [true], [test "$ac_cv_lib_uuid_uuid_generate_time" = yes -o "$ac_cv_func_uuid_create" = yes], [$UUID_CFLAGS], [$UUID_LDLAGS]) PY_STDLIB_MOD_SIMPLE([xxlimited]) PY_STDLIB_MOD_SIMPLE([xxlimited_35]) - # substitute multiline block, must come after last PY_STDLIB_MOD() AC_SUBST([MODULE_BLOCK]) From 836eb43947146a706f2e4965fc0060c2cf53e5cf Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Sun, 14 Nov 2021 14:41:35 +0100 Subject: [PATCH 5/8] Use CFLAGS, LDFLAGS, and DEPS from Makefile --- setup.py | 183 +++++++++++++++++++++++-------------------------------- 1 file changed, 77 insertions(+), 106 deletions(-) diff --git a/setup.py b/setup.py index 6e1819a14b2cff..49c7c36778463d 100644 --- a/setup.py +++ b/setup.py @@ -364,57 +364,6 @@ def find_module_file(module, dirlist): return os.path.abspath(os.path.join(dirs[0], module)) -def parse_cflags(flags): - """Parse a string with compiler flags (-I, -D, -U, extra) - - Distutils appends extra args to the compiler arguments. Some flags like - -I must appear earlier. Otherwise the pre-processor picks up files - from system inclue directories. - """ - include_dirs = [] - define_macros = [] - undef_macros = [] - extra_compile_args = [] - if flags is not None: - # shlex.split(None) reads from stdin - for token in shlex.split(flags): - switch = token[0:2] - value = token[2:] - if switch == '-I': - include_dirs.append(value) - elif switch == '-D': - key, _, val = value.partition("=") - if not val: - val = None - define_macros.append((key, val)) - elif switch == '-U': - undef_macros.append(value) - else: - extra_compile_args.append(token) - - return include_dirs, define_macros, undef_macros, extra_compile_args - - -def parse_ldflags(flags): - """Parse a string with linker flags (-L, -l, extra)""" - library_dirs = [] - libraries = [] - extra_link_args = [] - if flags is not None: - # shlex.split(None) reads from stdin - for token in shlex.split(flags): - switch = token[0:2] - value = token[2:] - if switch == '-L': - library_dirs.append(value) - elif switch == '-l': - libraries.append(value) - else: - extra_link_args.append(token) - - return library_dirs, libraries, extra_link_args - - class PyBuildExt(build_ext): def __init__(self, dist): @@ -430,10 +379,17 @@ def __init__(self, dist): if '-j' in os.environ.get('MAKEFLAGS', ''): self.parallel = True - def add(self, ext, *, update_flags=False): - if update_flags: - self.update_extension_flags(ext) - self.extensions.append(ext) + def add(self, ext, *, update_flags=True): + state = sysconfig.get_config_var(f"MODULE_{ext.name.upper()}") + if state == "yes": + if update_flags: + self.update_extension_flags(ext) + self.extensions.append(ext) + elif state == "disabled": + self.disabled_configure.append(ext.name) + elif state == "missing": + self.missing.append(ext.name) + # state in {"n/a", None} def set_srcdir(self): self.srcdir = sysconfig.get_config_var('srcdir') @@ -478,27 +434,66 @@ def update_sources_depends(self): for ext in self.extensions: ext.sources = [ find_module_file(filename, moddirlist) for filename in ext.sources ] - # Update dependencies from Makefile - makedeps = sysconfig.get_config_var(f"MODULE_{ext.name.upper()}_DEPS") - if makedeps: + if ext.depends is not None: + ext.depends = [find_module_file(filename, moddirlist) + for filename in ext.depends] + else: + ext.depends = [] + # Update dependencies from Makefile, file path have correct prefix + deps = sysconfig.get_config_var(f"MODULE_{ext.name.upper()}_DEPS") + if deps: # remove backslashes from line break continuations - ext.depends.extend( - dep for dep in makedeps.split() if dep != "\\" - ) - ext.depends = [ - find_module_file(filename, moddirlist) for filename in ext.depends - ] + deps = deps.replace("\\ ", " ") + ext.depends.extend(shlex.split(deps)) # re-compile extensions if a header file has been changed ext.depends.extend(headers) + def is_extension_enabled(self, ext): + upper_name = ext.name.upper() + return sysconfig.get_config_var(f"MODULE_{upper_name}") == 1 + def update_extension_flags(self, ext): - name = ext.name.upper() - cflags = sysconfig.get_config_var(f"MODULE_{name}_CFLAGS") + """Update extension flags with module CFLAGS and LDFLAGS + + Reads MODULE_{name}_CFLAGS and _LDFLAGS + + Distutils appends extra args to the compiler arguments. Some flags like + -I must appear earlier. Otherwise the pre-processor picks up files + from system inclue directories. + """ + upper_name = ext.name.upper() + + # Parse compiler flags (-I, -D, -U, extra) + cflags = sysconfig.get_config_var(f"MODULE_{upper_name}_CFLAGS") if cflags: - ext.extra_compile_args.extend(shlex.split(cflags)) - ldflags = sysconfig.get_config_var(f"MODULE_{name}_LDFLAGS") + for token in shlex.split(cflags): + switch = token[0:2] + value = token[2:] + if switch == '-I': + ext.include_dirs.append(value) + elif switch == '-D': + key, _, val = value.partition("=") + if not val: + val = None + ext.define_macros.append((key, val)) + elif switch == '-U': + ext.undef_macros.append(value) + else: + ext.extra_compile_args.append(token) + + # Parse linker flags (-L, -l, extra) + ldflags = sysconfig.get_config_var(f"MODULE_{upper_name}_LDFLAGS") if ldflags: - ext.extra_link_args.extend(shlex.split(ldflags)) + for token in shlex.split(ldflags): + switch = token[0:2] + value = token[2:] + if switch == '-L': + ext.library_dirs.append(value) + elif switch == '-l': + ext.libraries.append(value) + else: + ext.extra_link_args.append(token) + return ext def handle_configured_extensions(self): @@ -1539,32 +1534,20 @@ def detect_expat_elementtree(self): # # More information on Expat can be found at www.libexpat.org. # - cflags = parse_cflags(sysconfig.get_config_var("EXPAT_CFLAGS")) - include_dirs, define_macros, undef_macros, extra_compile_args = cflags - # ldflags includes either system libexpat or full path to - # our static libexpat.a. - ldflags = parse_ldflags(sysconfig.get_config_var("EXPAT_LDFLAGS")) - library_dirs, libraries, extra_link_args = ldflags + expat_depends = [] + libexpat_a = sysconfig.get_config_var("LIBEXPAT_A") + if libexpat_a: + expat_depends.append(libexpat_a) self.add(Extension('pyexpat', - include_dirs=include_dirs, - define_macros=define_macros, - undef_macros=undef_macros, - extra_compile_args=extra_compile_args, - library_dirs=library_dirs, - libraries=libraries, - extra_link_args=extra_link_args, - sources=['pyexpat.c'])) + sources=['pyexpat.c'], + depends=expat_depends)) # Fredrik Lundh's cElementTree module. Note that this also # uses expat (via the CAPI hook in pyexpat). self.add(Extension('_elementtree', - include_dirs=include_dirs, - define_macros=define_macros, - undef_macros=undef_macros, - extra_compile_args=extra_compile_args, - # no EXPAT_LDFLAGS - sources=['_elementtree.c'])) + sources=['_elementtree.c'], + depends=['pyexpat.c', *expat_depends])) def detect_multibytecodecs(self): # Hye-Shik Chang's CJKCodecs modules. @@ -2060,24 +2043,12 @@ def detect_decimal(self): # Stefan Krah's _decimal module sources = ['_decimal/_decimal.c'] - cflags = parse_cflags(sysconfig.get_config_var("DECIMAL_CFLAGS")) - include_dirs, define_macros, undef_macros, extra_compile_args = cflags - # ldflags includes either system libmpdec or full path to - # our static libmpdec.a. - ldflags = parse_ldflags(sysconfig.get_config_var("DECIMAL_LDFLAGS")) - library_dirs, libraries, extra_link_args = ldflags - + define_macros = [] # Uncomment for extra functionality: #define_macros.append(('EXTRA_FUNCTIONALITY', 1)) self.add(Extension('_decimal', - include_dirs=include_dirs, - define_macros=define_macros, - undef_macros=undef_macros, - extra_compile_args=extra_compile_args, - library_dirs=library_dirs, - libraries=libraries, - extra_link_args=extra_link_args, - sources=sources)) + sources=sources, + define_macros=define_macros)) def detect_openssl_hashlib(self): # Detect SSL support for the socket module (via _ssl) @@ -2146,14 +2117,14 @@ def split_var(name, sep): '_ssl', ['_ssl.c'], **openssl_extension_kwargs - ), update_flags=True + ) ) self.add( Extension( '_hashlib', ['_hashopenssl.c'], **openssl_extension_kwargs, - ), update_flags=True + ) ) def detect_hash_builtins(self): From c4311ada066b2963448e83ec18d3830aee6a9169 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mon, 15 Nov 2021 08:56:26 +0100 Subject: [PATCH 6/8] Comment out some modules that are not ported yet --- configure | 485 +++------------------------------------------------ configure.ac | 47 ++--- 2 files changed, 51 insertions(+), 481 deletions(-) diff --git a/configure b/configure index 11d682b2341565..ce592b9d81b95f 100755 --- a/configure +++ b/configure @@ -638,8 +638,6 @@ MODULE__MULTIPROCESSING_FALSE MODULE__MULTIPROCESSING_TRUE MODULE__CTYPES_TEST_FALSE MODULE__CTYPES_TEST_TRUE -MODULE__CTYPES_FALSE -MODULE__CTYPES_TRUE MODULE__DECIMAL_FALSE MODULE__DECIMAL_TRUE MODULE__CODECS_ISO2022_FALSE @@ -668,8 +666,6 @@ MODULE_BINASCII_FALSE MODULE_BINASCII_TRUE MODULE_ZLIB_FALSE MODULE_ZLIB_TRUE -MODULE_NIS_FALSE -MODULE_NIS_TRUE MODULE__SCPROXY_FALSE MODULE__SCPROXY_TRUE MODULE_OSSAUDIODEV_FALSE @@ -678,12 +674,6 @@ MODULE_RESOURCE_FALSE MODULE_RESOURCE_TRUE MODULE_TERMIOS_FALSE MODULE_TERMIOS_TRUE -MODULE__SQLITE3_FALSE -MODULE__SQLITE3_TRUE -MODULE__GDBM_FALSE -MODULE__GDBM_TRUE -MODULE__DBM_FALSE -MODULE__DBM_TRUE MODULE__SHA3_FALSE MODULE__SHA3_TRUE MODULE__BLAKE2_FALSE @@ -702,12 +692,6 @@ MODULE__SSL_FALSE MODULE__SSL_TRUE MODULE__SOCKET_FALSE MODULE__SOCKET_TRUE -MODULE__CRYPT_FALSE -MODULE__CRYPT_TRUE -MODULE__CURSES_PANEL_FALSE -MODULE__CURSES_PANEL_TRUE -MODULE__CURSES_FALSE -MODULE__CURSES_TRUE MODULE_READLINE_FALSE MODULE_READLINE_TRUE MODULE__XXTESTFUZZ_FALSE @@ -19462,7 +19446,6 @@ $as_echo "no" >&6; } fi -# Modules that are not available on some platforms case $ac_sys_system in #( AIX) : py_stdlib_not_available="_scproxy spwd" ;; #( @@ -19470,6 +19453,10 @@ case $ac_sys_system in #( py_stdlib_not_available="_scproxy _crypt termios grp" ;; #( Darwin) : py_stdlib_not_available="ossaudiodev spwd" ;; #( + CYGWIN*) : + py_stdlib_not_available="_scproxy nis" ;; #( + QNX*) : + py_stdlib_not_available="_scproxy nis" ;; #( *) : py_stdlib_not_available="_scproxy" ;; @@ -20589,147 +20576,13 @@ fi $as_echo "$py_cv_module_readline" >&6; } # TODO: detect curses - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _curses" >&5 -$as_echo_n "checking for stdlib extension module _curses... " >&6; } - case $py_stdlib_not_available in #( - *_curses*) : - py_cv_module__curses=n/a ;; #( - *) : - if true; then : - if true; then : - py_cv_module__curses=yes -else - py_cv_module__curses=missing -fi -else - py_cv_module__curses=disabled -fi - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__CURSES=$py_cv_module__curses$as_nl" - if test "x$py_cv_module__curses" = xyes; then : - - as_fn_append MODULE_BLOCK "MODULE__CURSES_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__CURSES_LDFLAGS=-lncurses -lncursesw -ltermcap$as_nl" - if true; then - MODULE__CURSES_TRUE= - MODULE__CURSES_FALSE='#' -else - MODULE__CURSES_TRUE='#' - MODULE__CURSES_FALSE= -fi - - -else - - if false; then - MODULE__CURSES_TRUE= - MODULE__CURSES_FALSE='#' -else - MODULE__CURSES_TRUE='#' - MODULE__CURSES_FALSE= -fi - - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__curses" >&5 -$as_echo "$py_cv_module__curses" >&6; } - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _curses_panel" >&5 -$as_echo_n "checking for stdlib extension module _curses_panel... " >&6; } - case $py_stdlib_not_available in #( - *_curses_panel*) : - py_cv_module__curses_panel=n/a ;; #( - *) : - if true; then : - if true; then : - py_cv_module__curses_panel=yes -else - py_cv_module__curses_panel=missing -fi -else - py_cv_module__curses_panel=disabled -fi - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__CURSES_PANEL=$py_cv_module__curses_panel$as_nl" - if test "x$py_cv_module__curses_panel" = xyes; then : - - as_fn_append MODULE_BLOCK "MODULE__CURSES_PANEL_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__CURSES_PANEL_LDFLAGS=-lpanel -lncurses$as_nl" - if true; then - MODULE__CURSES_PANEL_TRUE= - MODULE__CURSES_PANEL_FALSE='#' -else - MODULE__CURSES_PANEL_TRUE='#' - MODULE__CURSES_PANEL_FALSE= -fi - - -else - - if false; then - MODULE__CURSES_PANEL_TRUE= - MODULE__CURSES_PANEL_FALSE='#' -else - MODULE__CURSES_PANEL_TRUE='#' - MODULE__CURSES_PANEL_FALSE= -fi - - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__curses_panel" >&5 -$as_echo "$py_cv_module__curses_panel" >&6; } - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _crypt" >&5 -$as_echo_n "checking for stdlib extension module _crypt... " >&6; } - case $py_stdlib_not_available in #( - *_crypt*) : - py_cv_module__crypt=n/a ;; #( - *) : - if test "$ac_sys_system" != VxWorks; then : - if test "$ac_cv_search_crypt_r" != no -o "$ac_cv_search_crypt" != no; then : - py_cv_module__crypt=yes -else - py_cv_module__crypt=missing -fi -else - py_cv_module__crypt=disabled -fi - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__CRYPT=$py_cv_module__crypt$as_nl" - if test "x$py_cv_module__crypt" = xyes; then : - - as_fn_append MODULE_BLOCK "MODULE__CRYPT_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__CRYPT_LDFLAGS=-lcrypt$as_nl" - if true; then - MODULE__CRYPT_TRUE= - MODULE__CRYPT_FALSE='#' -else - MODULE__CRYPT_TRUE='#' - MODULE__CRYPT_FALSE= -fi - - -else - - if false; then - MODULE__CRYPT_TRUE= - MODULE__CRYPT_FALSE='#' -else - MODULE__CRYPT_TRUE='#' - MODULE__CRYPT_FALSE= -fi - - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__crypt" >&5 -$as_echo "$py_cv_module__crypt" >&6; } - +#PY_STDLIB_MOD([_curses], [true], [true], [], [-lncurses -lncursesw -ltermcap]) +#PY_STDLIB_MOD([_curses_panel], [true], [true], [], [-lpanel -lncurses]) +# TODO detect presence of libcrypt +#PY_STDLIB_MOD([_crypt], +# [test "$ac_sys_system" != VxWorks], +# [test "$ac_cv_search_crypt_r" != no -o "$ac_cv_search_crypt" != no], +# [], [-lcrypt]) as_fn_append MODULE_BLOCK "MODULE__SOCKET=yes$as_nl" if true; then @@ -21120,148 +20973,14 @@ fi $as_echo "$py_cv_module__sha3" >&6; } # TODO: select dbm library - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _dbm" >&5 -$as_echo_n "checking for stdlib extension module _dbm... " >&6; } - case $py_stdlib_not_available in #( - *_dbm*) : - py_cv_module__dbm=n/a ;; #( - *) : - if true; then : - if true; then : - py_cv_module__dbm=yes -else - py_cv_module__dbm=missing -fi -else - py_cv_module__dbm=disabled -fi - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__DBM=$py_cv_module__dbm$as_nl" - if test "x$py_cv_module__dbm" = xyes; then : - - as_fn_append MODULE_BLOCK "MODULE__DBM_CFLAGS=-DUSE_GDBM_COMPAT$as_nl" - as_fn_append MODULE_BLOCK "MODULE__DBM_LDFLAGS=-lgdbm_compat$as_nl" - if true; then - MODULE__DBM_TRUE= - MODULE__DBM_FALSE='#' -else - MODULE__DBM_TRUE='#' - MODULE__DBM_FALSE= -fi - - -else - - if false; then - MODULE__DBM_TRUE= - MODULE__DBM_FALSE='#' -else - MODULE__DBM_TRUE='#' - MODULE__DBM_FALSE= -fi - - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__dbm" >&5 -$as_echo "$py_cv_module__dbm" >&6; } - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _gdbm" >&5 -$as_echo_n "checking for stdlib extension module _gdbm... " >&6; } - case $py_stdlib_not_available in #( - *_gdbm*) : - py_cv_module__gdbm=n/a ;; #( - *) : - if true; then : - if test "$ac_cv_lib_gdbm_gdbm_open" = yes; then : - py_cv_module__gdbm=yes -else - py_cv_module__gdbm=missing -fi -else - py_cv_module__gdbm=disabled -fi - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__GDBM=$py_cv_module__gdbm$as_nl" - if test "x$py_cv_module__gdbm" = xyes; then : - - as_fn_append MODULE_BLOCK "MODULE__GDBM_CFLAGS=$GDBM_CFLAGS$as_nl" - as_fn_append MODULE_BLOCK "MODULE__GDBM_LDFLAGS=$GDBM_LDFLAGS$as_nl" - if true; then - MODULE__GDBM_TRUE= - MODULE__GDBM_FALSE='#' -else - MODULE__GDBM_TRUE='#' - MODULE__GDBM_FALSE= -fi - - -else - - if false; then - MODULE__GDBM_TRUE= - MODULE__GDBM_FALSE='#' -else - MODULE__GDBM_TRUE='#' - MODULE__GDBM_FALSE= -fi - - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__gdbm" >&5 -$as_echo "$py_cv_module__gdbm" >&6; } - +#PY_STDLIB_MOD([_dbm], [true], [true], [-DUSE_GDBM_COMPAT], [-lgdbm_compat]) +# TODO: only build gdbm when it is listed on libdbmorder +#PY_STDLIB_MOD([_gdbm], +# [true], +# [test "$ac_cv_lib_gdbm_gdbm_open" = yes], +# [$GDBM_CFLAGS], [$GDBM_LDFLAGS]) # TODO: detect sqlite - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _sqlite3" >&5 -$as_echo_n "checking for stdlib extension module _sqlite3... " >&6; } - case $py_stdlib_not_available in #( - *_sqlite3*) : - py_cv_module__sqlite3=n/a ;; #( - *) : - if true; then : - if true; then : - py_cv_module__sqlite3=yes -else - py_cv_module__sqlite3=missing -fi -else - py_cv_module__sqlite3=disabled -fi - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__SQLITE3=$py_cv_module__sqlite3$as_nl" - if test "x$py_cv_module__sqlite3" = xyes; then : - - as_fn_append MODULE_BLOCK "MODULE__SQLITE3_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__SQLITE3_LDFLAGS=-lsqlite3$as_nl" - if true; then - MODULE__SQLITE3_TRUE= - MODULE__SQLITE3_FALSE='#' -else - MODULE__SQLITE3_TRUE='#' - MODULE__SQLITE3_FALSE= -fi - - -else - - if false; then - MODULE__SQLITE3_TRUE= - MODULE__SQLITE3_FALSE='#' -else - MODULE__SQLITE3_TRUE='#' - MODULE__SQLITE3_FALSE= -fi - - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__sqlite3" >&5 -$as_echo "$py_cv_module__sqlite3" >&6; } - +#PY_STDLIB_MOD([_sqlite3], [true], [true], [], [-lsqlite3]) { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module termios" >&5 $as_echo_n "checking for stdlib extension module termios... " >&6; } @@ -21416,53 +21135,7 @@ fi $as_echo "$py_cv_module__scproxy" >&6; } # TODO: detect nsl and tirpc - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module nis" >&5 -$as_echo_n "checking for stdlib extension module nis... " >&6; } - case $py_stdlib_not_available in #( - *nis*) : - py_cv_module_nis=n/a ;; #( - *) : - if true; then : - if true; then : - py_cv_module_nis=yes -else - py_cv_module_nis=missing -fi -else - py_cv_module_nis=disabled -fi - ;; -esac - as_fn_append MODULE_BLOCK "MODULE_NIS=$py_cv_module_nis$as_nl" - if test "x$py_cv_module_nis" = xyes; then : - - as_fn_append MODULE_BLOCK "MODULE_NIS_CFLAGS=-I/usr/include/tirpc$as_nl" - as_fn_append MODULE_BLOCK "MODULE_NIS_LDFLAGS=-lnsl -ltirpc$as_nl" - if true; then - MODULE_NIS_TRUE= - MODULE_NIS_FALSE='#' -else - MODULE_NIS_TRUE='#' - MODULE_NIS_FALSE= -fi - - -else - - if false; then - MODULE_NIS_TRUE= - MODULE_NIS_FALSE='#' -else - MODULE_NIS_TRUE='#' - MODULE_NIS_FALSE= -fi - - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module_nis" >&5 -$as_echo "$py_cv_module_nis" >&6; } - +#PY_STDLIB_MOD([nis], [true], [true], [-I/usr/include/tirpc], [-lnsl -ltirpc]) { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module zlib" >&5 $as_echo_n "checking for stdlib extension module zlib... " >&6; } @@ -21829,8 +21502,6 @@ fi -# TODO: handle external libmpdec -# UNIVERSAL: let mpdecimal.h detect settings { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _decimal" >&5 $as_echo_n "checking for stdlib extension module _decimal... " >&6; } @@ -21879,53 +21550,10 @@ fi $as_echo "$py_cv_module__decimal" >&6; } # TODO: handle ffi dependency - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _ctypes" >&5 -$as_echo_n "checking for stdlib extension module _ctypes... " >&6; } - case $py_stdlib_not_available in #( - *_ctypes*) : - py_cv_module__ctypes=n/a ;; #( - *) : - if true; then : - if true; then : - py_cv_module__ctypes=yes -else - py_cv_module__ctypes=missing -fi -else - py_cv_module__ctypes=disabled -fi - ;; -esac - as_fn_append MODULE_BLOCK "MODULE__CTYPES=$py_cv_module__ctypes$as_nl" - if test "x$py_cv_module__ctypes" = xyes; then : - - as_fn_append MODULE_BLOCK "MODULE__CTYPES_CFLAGS=-DHAVE_FFI_PREP_CIF_VAR -DHAVE_FFI_PREP_CLOSURE_LOC -DHAVE_FFI_CLOSURE_ALLOC$as_nl" - as_fn_append MODULE_BLOCK "MODULE__CTYPES_LDFLAGS=-ldl -lffi$as_nl" - if true; then - MODULE__CTYPES_TRUE= - MODULE__CTYPES_FALSE='#' -else - MODULE__CTYPES_TRUE='#' - MODULE__CTYPES_FALSE= -fi - - -else - - if false; then - MODULE__CTYPES_TRUE= - MODULE__CTYPES_FALSE='#' -else - MODULE__CTYPES_TRUE='#' - MODULE__CTYPES_FALSE= -fi - - -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__ctypes" >&5 -$as_echo "$py_cv_module__ctypes" >&6; } - +#PY_STDLIB_MOD([_ctypes], +# [true], [true], +# [-DHAVE_FFI_PREP_CIF_VAR -DHAVE_FFI_PREP_CLOSURE_LOC -DHAVE_FFI_CLOSURE_ALLOC], +# [-ldl -lffi]) { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _ctypes_test" >&5 $as_echo_n "checking for stdlib extension module _ctypes_test... " >&6; } @@ -21948,7 +21576,7 @@ esac if test "x$py_cv_module__ctypes_test" = xyes; then : as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST_CFLAGS=$as_nl" - as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST_LDFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE__CTYPES_TEST_LDFLAGS=-lm$as_nl" if true; then MODULE__CTYPES_TEST_TRUE= MODULE__CTYPES_TEST_FALSE='#' @@ -21973,6 +21601,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module__ctypes_test" >&5 $as_echo "$py_cv_module__ctypes_test" >&6; } +# TODO: include _multiprocessing/semaphore.c conditional { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module _multiprocessing" >&5 $as_echo_n "checking for stdlib extension module _multiprocessing... " >&6; } @@ -22584,30 +22213,6 @@ if test -z "${MODULE_READLINE_TRUE}" && test -z "${MODULE_READLINE_FALSE}"; then as_fn_error $? "conditional \"MODULE_READLINE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${MODULE__CURSES_TRUE}" && test -z "${MODULE__CURSES_FALSE}"; then - as_fn_error $? "conditional \"MODULE__CURSES\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${MODULE__CURSES_TRUE}" && test -z "${MODULE__CURSES_FALSE}"; then - as_fn_error $? "conditional \"MODULE__CURSES\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${MODULE__CURSES_PANEL_TRUE}" && test -z "${MODULE__CURSES_PANEL_FALSE}"; then - as_fn_error $? "conditional \"MODULE__CURSES_PANEL\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${MODULE__CURSES_PANEL_TRUE}" && test -z "${MODULE__CURSES_PANEL_FALSE}"; then - as_fn_error $? "conditional \"MODULE__CURSES_PANEL\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${MODULE__CRYPT_TRUE}" && test -z "${MODULE__CRYPT_FALSE}"; then - as_fn_error $? "conditional \"MODULE__CRYPT\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${MODULE__CRYPT_TRUE}" && test -z "${MODULE__CRYPT_FALSE}"; then - as_fn_error $? "conditional \"MODULE__CRYPT\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${MODULE__SOCKET_TRUE}" && test -z "${MODULE__SOCKET_FALSE}"; then as_fn_error $? "conditional \"MODULE__SOCKET\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -22676,30 +22281,6 @@ if test -z "${MODULE__SHA3_TRUE}" && test -z "${MODULE__SHA3_FALSE}"; then as_fn_error $? "conditional \"MODULE__SHA3\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${MODULE__DBM_TRUE}" && test -z "${MODULE__DBM_FALSE}"; then - as_fn_error $? "conditional \"MODULE__DBM\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${MODULE__DBM_TRUE}" && test -z "${MODULE__DBM_FALSE}"; then - as_fn_error $? "conditional \"MODULE__DBM\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${MODULE__GDBM_TRUE}" && test -z "${MODULE__GDBM_FALSE}"; then - as_fn_error $? "conditional \"MODULE__GDBM\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${MODULE__GDBM_TRUE}" && test -z "${MODULE__GDBM_FALSE}"; then - as_fn_error $? "conditional \"MODULE__GDBM\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${MODULE__SQLITE3_TRUE}" && test -z "${MODULE__SQLITE3_FALSE}"; then - as_fn_error $? "conditional \"MODULE__SQLITE3\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${MODULE__SQLITE3_TRUE}" && test -z "${MODULE__SQLITE3_FALSE}"; then - as_fn_error $? "conditional \"MODULE__SQLITE3\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${MODULE_TERMIOS_TRUE}" && test -z "${MODULE_TERMIOS_FALSE}"; then as_fn_error $? "conditional \"MODULE_TERMIOS\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -22728,14 +22309,6 @@ if test -z "${MODULE__SCPROXY_TRUE}" && test -z "${MODULE__SCPROXY_FALSE}"; then as_fn_error $? "conditional \"MODULE__SCPROXY\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${MODULE_NIS_TRUE}" && test -z "${MODULE_NIS_FALSE}"; then - as_fn_error $? "conditional \"MODULE_NIS\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${MODULE_NIS_TRUE}" && test -z "${MODULE_NIS_FALSE}"; then - as_fn_error $? "conditional \"MODULE_NIS\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${MODULE_ZLIB_TRUE}" && test -z "${MODULE_ZLIB_FALSE}"; then as_fn_error $? "conditional \"MODULE_ZLIB\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -22820,14 +22393,6 @@ if test -z "${MODULE__DECIMAL_TRUE}" && test -z "${MODULE__DECIMAL_FALSE}"; then as_fn_error $? "conditional \"MODULE__DECIMAL\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${MODULE__CTYPES_TRUE}" && test -z "${MODULE__CTYPES_FALSE}"; then - as_fn_error $? "conditional \"MODULE__CTYPES\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${MODULE__CTYPES_TRUE}" && test -z "${MODULE__CTYPES_FALSE}"; then - as_fn_error $? "conditional \"MODULE__CTYPES\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${MODULE__CTYPES_TEST_TRUE}" && test -z "${MODULE__CTYPES_TEST_FALSE}"; then as_fn_error $? "conditional \"MODULE__CTYPES_TEST\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 diff --git a/configure.ac b/configure.ac index 6d0d5eff2fbdd7..372ea59b6ad0a3 100644 --- a/configure.ac +++ b/configure.ac @@ -5954,11 +5954,15 @@ else fi AC_SUBST(TEST_MODULES) -# Modules that are not available on some platforms +dnl Modules that are not available on some platforms +dnl AIX has shadow passwords, but access is not via getspent() +dnl VxWorks does not provide crypt() function AS_CASE([$ac_sys_system], [AIX], [py_stdlib_not_available="_scproxy spwd"], [VxWorks*], [py_stdlib_not_available="_scproxy _crypt termios grp"], [Darwin], [py_stdlib_not_available="ossaudiodev spwd"], + [CYGWIN*], [py_stdlib_not_available="_scproxy nis"], + [QNX*], [py_stdlib_not_available="_scproxy nis"], [py_stdlib_not_available="_scproxy"] ) @@ -6077,12 +6081,13 @@ PY_STDLIB_MOD([_testmultiphase], [test "$TEST_MODULES" = yes], [true]) PY_STDLIB_MOD([_xxtestfuzz], [test "$TEST_MODULES" = yes], [true]) PY_STDLIB_MOD([readline], [true], [test "$py_cv_lib_readline" = yes], [], [$READLINE_LIBS]) # TODO: detect curses -PY_STDLIB_MOD([_curses], [true], [true], [], [-lncurses -lncursesw -ltermcap]) -PY_STDLIB_MOD([_curses_panel], [true], [true], [], [-lpanel -lncurses]) -PY_STDLIB_MOD([_crypt], - [test "$ac_sys_system" != VxWorks], - [test "$ac_cv_search_crypt_r" != no -o "$ac_cv_search_crypt" != no], - [], [-lcrypt]) +#PY_STDLIB_MOD([_curses], [true], [true], [], [-lncurses -lncursesw -ltermcap]) +#PY_STDLIB_MOD([_curses_panel], [true], [true], [], [-lpanel -lncurses]) +# TODO detect presence of libcrypt +#PY_STDLIB_MOD([_crypt], +# [test "$ac_sys_system" != VxWorks], +# [test "$ac_cv_search_crypt_r" != no -o "$ac_cv_search_crypt" != no], +# [], [-lcrypt]) PY_STDLIB_MOD_SIMPLE([_socket]) # TODO: add OPENSSL_RPATH PY_STDLIB_MOD([_ssl], @@ -6100,13 +6105,14 @@ PY_STDLIB_MOD([_sha1], [test "$with_builtin_sha1" = yes], [true]) PY_STDLIB_MOD([_blake2], [test "$with_builtin_blake2" = yes], [true]) PY_STDLIB_MOD([_sha3], [test "$with_builtin_sha3" = yes], [true]) # TODO: select dbm library -PY_STDLIB_MOD([_dbm], [true], [true], [-DUSE_GDBM_COMPAT], [-lgdbm_compat]) -PY_STDLIB_MOD([_gdbm], - [true], - [test "$ac_cv_lib_gdbm_gdbm_open" = yes], - [$GDBM_CFLAGS], [$GDBM_LDFLAGS]) +#PY_STDLIB_MOD([_dbm], [true], [true], [-DUSE_GDBM_COMPAT], [-lgdbm_compat]) +# TODO: only build gdbm when it is listed on libdbmorder +#PY_STDLIB_MOD([_gdbm], +# [true], +# [test "$ac_cv_lib_gdbm_gdbm_open" = yes], +# [$GDBM_CFLAGS], [$GDBM_LDFLAGS]) # TODO: detect sqlite -PY_STDLIB_MOD([_sqlite3], [true], [true], [], [-lsqlite3]) +#PY_STDLIB_MOD([_sqlite3], [true], [true], [], [-lsqlite3]) PY_STDLIB_MOD([termios], [test "$ac_sys_system" != VxWorks], [true]) PY_STDLIB_MOD_SIMPLE([resource]) PY_STDLIB_MOD([ossaudiodev], @@ -6117,7 +6123,7 @@ PY_STDLIB_MOD([_scproxy], [true], [], [-framework SystemConfiguration -framework CoreFoundation]) # TODO: detect nsl and tirpc -PY_STDLIB_MOD([nis], [true], [true], [-I/usr/include/tirpc], [-lnsl -ltirpc]) +#PY_STDLIB_MOD([nis], [true], [true], [-I/usr/include/tirpc], [-lnsl -ltirpc]) PY_STDLIB_MOD([zlib], [true], [test "$ac_cv_header_zlib_h" = yes -a "$ac_cv_lib_z_gzread" = yes], @@ -6141,17 +6147,16 @@ PY_STDLIB_MOD_SIMPLE([_codecs_cn]) PY_STDLIB_MOD_SIMPLE([_codecs_tw]) PY_STDLIB_MOD_SIMPLE([_codecs_hk]) PY_STDLIB_MOD_SIMPLE([_codecs_iso2022]) -# TODO: handle external libmpdec -# UNIVERSAL: let mpdecimal.h detect settings PY_STDLIB_MOD([_decimal], [true], [true], [$LIBMPDEC_CFLAGS], [$LIBMPDEC_LDFLAGS]) # TODO: handle ffi dependency -PY_STDLIB_MOD([_ctypes], - [true], [true], - [-DHAVE_FFI_PREP_CIF_VAR -DHAVE_FFI_PREP_CLOSURE_LOC -DHAVE_FFI_CLOSURE_ALLOC], - [-ldl -lffi]) -PY_STDLIB_MOD([_ctypes_test], [test "$TEST_MODULES" = yes], [true]) +#PY_STDLIB_MOD([_ctypes], +# [true], [true], +# [-DHAVE_FFI_PREP_CIF_VAR -DHAVE_FFI_PREP_CLOSURE_LOC -DHAVE_FFI_CLOSURE_ALLOC], +# [-ldl -lffi]) +PY_STDLIB_MOD([_ctypes_test], [test "$TEST_MODULES" = yes], [true], [], [-lm]) +# TODO: include _multiprocessing/semaphore.c conditional PY_STDLIB_MOD([_multiprocessing], [true], [true], [-I\$(srcdir)/Modules/_multiprocessing], [$ac_cv_search_shm_open]) From 61f31c17dc327a12ddb35430e9daa78653f5f5fc Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mon, 15 Nov 2021 09:01:39 +0100 Subject: [PATCH 7/8] Simplify setup.py even more --- setup.py | 144 ++++++++++++++----------------------------------------- 1 file changed, 35 insertions(+), 109 deletions(-) diff --git a/setup.py b/setup.py index 49c7c36778463d..afb77ab4aa28a4 100644 --- a/setup.py +++ b/setup.py @@ -389,7 +389,12 @@ def add(self, ext, *, update_flags=True): self.disabled_configure.append(ext.name) elif state == "missing": self.missing.append(ext.name) - # state in {"n/a", None} + elif state == "n/a": + # not available on current platform + pass + else: + # not migrated yet. + self.extensions.append(ext) def set_srcdir(self): self.srcdir = sysconfig.get_config_var('srcdir') @@ -458,12 +463,11 @@ def update_extension_flags(self, ext): Reads MODULE_{name}_CFLAGS and _LDFLAGS Distutils appends extra args to the compiler arguments. Some flags like - -I must appear earlier. Otherwise the pre-processor picks up files + -I must appear earlier, otherwise the pre-processor picks up files from system inclue directories. """ upper_name = ext.name.upper() - - # Parse compiler flags (-I, -D, -U, extra) + # Parse compiler flags (-I, -D, -U, extra args) cflags = sysconfig.get_config_var(f"MODULE_{upper_name}_CFLAGS") if cflags: for token in shlex.split(cflags): @@ -481,7 +485,7 @@ def update_extension_flags(self, ext): else: ext.extra_compile_args.append(token) - # Parse linker flags (-L, -l, extra) + # Parse linker flags (-L, -l, extra objects, extra args) ldflags = sysconfig.get_config_var(f"MODULE_{upper_name}_LDFLAGS") if ldflags: for token in shlex.split(ldflags): @@ -491,6 +495,11 @@ def update_extension_flags(self, ext): ext.library_dirs.append(value) elif switch == '-l': ext.libraries.append(value) + elif ( + not token.startswith('-') and + token.endswith(('.a', '.o', '.so', '.sl', '.dylib')) + ): + ext.extra_objects.append(token) else: ext.extra_link_args.append(token) @@ -1047,16 +1056,9 @@ def detect_simple_extensions(self): # pwd(3) self.add(Extension('pwd', ['pwdmodule.c'])) # grp(3) - if not VXWORKS: - self.add(Extension('grp', ['grpmodule.c'])) + self.add(Extension('grp', ['grpmodule.c'])) # spwd, shadow passwords - if (self.config_h_vars.get('HAVE_GETSPNAM', False) or - self.config_h_vars.get('HAVE_GETSPENT', False)): - self.add(Extension('spwd', ['spwdmodule.c'])) - # AIX has shadow passwords, but access is not via getspent(), etc. - # module support is not expected so it not 'missing' - elif not AIX: - self.missing.append('spwd') + self.add(Extension('spwd', ['spwdmodule.c'])) # select(2); not on ancient System V self.add(Extension('select', ['selectmodule.c'])) @@ -1465,62 +1467,28 @@ def detect_sqlite(self): self.missing.append('_sqlite3') def detect_platform_specific_exts(self): - # Unix-only modules - if not MS_WINDOWS: - if not VXWORKS: - # Steen Lumholt's termios module - self.add(Extension('termios', ['termios.c'])) - # Jeremy Hylton's rlimit interface - self.add(Extension('resource', ['resource.c'])) - else: - self.missing.extend(['resource', 'termios']) - - # Platform-specific libraries - if HOST_PLATFORM.startswith(('linux', 'freebsd', 'gnukfreebsd')): - self.add(Extension('ossaudiodev', ['ossaudiodev.c'])) - elif not AIX: - self.missing.append('ossaudiodev') - - if MACOS: - self.add(Extension('_scproxy', ['_scproxy.c'], - extra_link_args=[ - '-framework', 'SystemConfiguration', - '-framework', 'CoreFoundation'])) + # Steen Lumholt's termios module + self.add(Extension('termios', ['termios.c'])) + # Jeremy Hylton's rlimit interface + self.add(Extension('resource', ['resource.c'])) + # needs sys/soundcard.h + self.add(Extension('ossaudiodev', ['ossaudiodev.c'])) + # macOS-only + self.add(Extension('_scproxy', ['_scproxy.c'])) def detect_compress_exts(self): # Andrew Kuchling's zlib module. - have_zlib = sysconfig.get_config_var("HAVE_LIBZ") - if have_zlib: - self.add(Extension('zlib', ['zlibmodule.c'], - libraries=['z'])) - else: - self.missing.append('zlib') + self.add(Extension('zlib', ['zlibmodule.c'])) # Helper module for various ascii-encoders. Uses zlib for an optimized # crc32 if we have it. Otherwise binascii uses its own. - if have_zlib: - define_macros = [('USE_ZLIB_CRC32', None)] - libraries = ['z'] - else: - define_macros = None - libraries = [] - self.add(Extension('binascii', ['binascii.c'], - define_macros=define_macros, - libraries=libraries)) + self.add(Extension('binascii', ['binascii.c'])) # Gustavo Niemeyer's bz2 module. - if sysconfig.get_config_var("HAVE_LIBBZ2"): - self.add(Extension('_bz2', ['_bz2module.c'], - libraries=['bz2'])) - else: - self.missing.append('_bz2') + self.add(Extension('_bz2', ['_bz2module.c'])) # LZMA compression support. - if sysconfig.get_config_var("HAVE_LIBLZMA"): - self.add(Extension('_lzma', ['_lzmamodule.c'], - libraries=['lzma'])) - else: - self.missing.append('_lzma') + self.add(Extension('_lzma', ['_lzmamodule.c'])) def detect_expat_elementtree(self): # Interface to the Expat XML parser @@ -1534,20 +1502,13 @@ def detect_expat_elementtree(self): # # More information on Expat can be found at www.libexpat.org. # - expat_depends = [] - libexpat_a = sysconfig.get_config_var("LIBEXPAT_A") - if libexpat_a: - expat_depends.append(libexpat_a) - self.add(Extension('pyexpat', - sources=['pyexpat.c'], - depends=expat_depends)) + sources=['pyexpat.c'])) # Fredrik Lundh's cElementTree module. Note that this also # uses expat (via the CAPI hook in pyexpat). self.add(Extension('_elementtree', - sources=['_elementtree.c'], - depends=['pyexpat.c', *expat_depends])) + sources=['_elementtree.c'])) def detect_multibytecodecs(self): # Hye-Shik Chang's CJKCodecs modules. @@ -1570,42 +1531,18 @@ def detect_multiprocessing(self): self.add(Extension('_multiprocessing', multiprocessing_srcs, include_dirs=["Modules/_multiprocessing"])) - if (not MS_WINDOWS and - sysconfig.get_config_var('HAVE_SHM_OPEN') and - sysconfig.get_config_var('HAVE_SHM_UNLINK')): - posixshmem_srcs = ['_multiprocessing/posixshmem.c'] - libs = [] - if sysconfig.get_config_var('SHM_NEEDS_LIBRT'): - # need to link with librt to get shm_open() - libs.append('rt') - self.add(Extension('_posixshmem', posixshmem_srcs, - define_macros={}, - libraries=libs, - include_dirs=["Modules/_multiprocessing"])) - else: - self.missing.append('_posixshmem') + self.add(Extension('_posixshmem', ['_multiprocessing/posixshmem.c'])) def detect_uuid(self): # Build the _uuid module if possible - uuid_h = sysconfig.get_config_var("HAVE_UUID_H") - uuid_uuid_h = sysconfig.get_config_var("HAVE_UUID_UUID_H") - if uuid_h or uuid_uuid_h: - if sysconfig.get_config_var("HAVE_LIBUUID"): - uuid_libs = ["uuid"] - else: - uuid_libs = [] - self.add(Extension('_uuid', ['_uuidmodule.c'], - libraries=uuid_libs)) - else: - self.missing.append('_uuid') + self.add(Extension('_uuid', ['_uuidmodule.c'])) def detect_modules(self): self.configure_compiler() self.init_inc_lib_dirs() self.detect_simple_extensions() - if TEST_EXTENSIONS: - self.detect_test_extensions() + self.detect_test_extensions() self.detect_readline_curses() self.detect_crypt() self.detect_socket() @@ -1984,11 +1921,8 @@ def detect_ctypes(self): libraries=[], sources=sources) self.add(ext) - if TEST_EXTENSIONS: - # function my_sqrt() needs libm for sqrt() - self.add(Extension('_ctypes_test', - sources=['_ctypes/_ctypes_test.c'], - libraries=['m'])) + self.add(Extension('_ctypes_test', + sources=['_ctypes/_ctypes_test.c'])) ffi_inc = sysconfig.get_config_var("LIBFFI_INCLUDEDIR") ffi_lib = None @@ -2074,14 +2008,6 @@ def split_var(name, sep): self.missing.extend(['_ssl', '_hashlib']) return None, None - # Find OpenSSL includes - ssl_incs = find_file( - 'openssl/ssl.h', self.inc_dirs, openssl_includes - ) - if ssl_incs is None: - self.missing.extend(['_ssl', '_hashlib']) - return None, None - if openssl_rpath == 'auto': runtime_library_dirs = openssl_libdirs[:] elif not openssl_rpath: From d8ab7c88309e5ec87de5498d87f98e06edb43dee Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mon, 15 Nov 2021 16:04:26 +0100 Subject: [PATCH 8/8] Add Setup.stdlib --- .gitignore | 1 + Modules/Setup.stdlib.in | 190 ++++++++++++++++++++++++++++++++++++++++ configure | 94 ++++++++++++++++++-- configure.ac | 14 ++- 4 files changed, 289 insertions(+), 10 deletions(-) create mode 100644 Modules/Setup.stdlib.in diff --git a/.gitignore b/.gitignore index e261d6c9971358..0831c58d367489 100644 --- a/.gitignore +++ b/.gitignore @@ -76,6 +76,7 @@ Misc/python-embed.pc Misc/python-config.sh Modules/Setup.config Modules/Setup.local +Modules/Setup.stdlib Modules/config.c Modules/ld_so_aix Programs/_freeze_module diff --git a/Modules/Setup.stdlib.in b/Modules/Setup.stdlib.in new file mode 100644 index 00000000000000..7d898ae090fde0 --- /dev/null +++ b/Modules/Setup.stdlib.in @@ -0,0 +1,190 @@ +# -*- makefile -*- +*shared* + +# Modules that should always be present (POSIX and Windows): + +@MODULE__ASYNCIO_TRUE@_asyncio _asynciomodule.c +@MODULE__BISECT_TRUE@_bisect _bisectmodule.c +@MODULE__CONTEXTVARS_TRUE@_contextvars _contextvarsmodule.c +@MODULE__CSV_TRUE@_csv _csv.c +# datetime needs -lrt for clock_gettime() on some platforms +@MODULE__DATETIME_TRUE@_datetime _datetimemodule.c +# _decimal needs libmpdec +@MODULE__DECIMAL_TRUE@_decimal _decimal/_decimal.c +@MODULE__HEAPQ_TRUE@_heapq _heapqmodule.c +@MODULE__JSON_TRUE@_json _json.c +@MODULE__LSPROF_TRUE@_lsprof _lsprof.c rotatingtree.c +# -I$(srcdir)/Modules/_multiprocessing +@MODULE__MULTIPROCESSING_TRUE@_multiprocessing _multiprocessing/multiprocessing.c _multiprocessing/semaphore.c +@MODULE__OPCODE_TRUE@_opcode _opcode.c +@MODULE__PICKLE_TRUE@_pickle _pickle.c +@MODULE__QUEUE_TRUE@_queue _queuemodule.c +@MODULE__RANDOM_TRUE@_random _randommodule.c +@MODULE__SOCKET_TRUE@_socket socketmodule.c +@MODULE__STATISTICS_TRUE@_statistics _statisticsmodule.c +@MODULE__STRUCT_TRUE@_struct _struct.c +@MODULE__TYPING_TRUE@_typing _typingmodule.c +@MODULE__ZONEINFO_TRUE@_zoneinfo _zoneinfo.c +@MODULE_ARRAY_TRUE@array arraymodule.c +@MODULE_AUDIOOP_TRUE@audioop audioop.c +@MODULE_BINASCII_TRUE@binascii binascii.c +@MODULE_CMATH_TRUE@cmath cmathmodule.c +@MODULE_MATH_TRUE@math mathmodule.c +@MODULE_MMAP_TRUE@mmap mmapmodule.c +@MODULE_SELECT_TRUE@select selectmodule.c + +# XML +# pyexpat module uses libexpat +@MODULE_PYEXPAT_TRUE@pyexpat pyexpat.c +# _elementtree module must not be linked with libexpat. It uses libexpat via +# CAPI hook in pyexpat +@MODULE__ELEMENTTREE_TRUE@_elementtree _elementtree.c + +# hashing builtins, can be disabled with --with-builtin-hashlib-hashes +@MODULE__BLAKE2_TRUE@_blake2 _blake2/blake2module.c _blake2/blake2b_impl.c _blake2/blake2s_impl.c +@MODULE__MD5_TRUE@_md5 md5module.c +@MODULE__SHA1_TRUE@_sha1 sha1module.c +@MODULE__SHA256_TRUE@_sha256 sha256module.c +@MODULE__SHA512_TRUE@_sha512 sha512module.c +@MODULE__SHA3_TRUE@_sha3 _sha3/sha3module.c + +# text encodings and unicode +@MODULE__CODECS_CN_TRUE@_codecs_cn cjkcodecs/_codecs_cn.c +@MODULE__CODECS_HK_TRUE@_codecs_hk cjkcodecs/_codecs_hk.c +@MODULE__CODECS_ISO2022_TRUE@_codecs_iso2022 cjkcodecs/_codecs_iso2022.c +@MODULE__CODECS_JP_TRUE@_codecs_jp cjkcodecs/_codecs_jp.c +@MODULE__CODECS_KR_TRUE@_codecs_kr cjkcodecs/_codecs_kr.c +@MODULE__CODECS_TW_TRUE@_codecs_tw cjkcodecs/_codecs_tw.c +@MODULE__MULTIBYTECODEC_TRUE@_multibytecodec cjkcodecs/multibytecodec.c +@MODULE_UNICODEDATA_TRUE@unicodedata unicodedata.c + +# Modules with some UNIX dependencies + +@MODULE__POSIXSUBPROCESS_TRUE@_posixsubprocess _posixsubprocess.c +# -I$(srcdir)/Modules/_multiprocessing -lrt +@MODULE__POSIXSHMEM_TRUE@_posixshmem _multiprocessing/posixshmem.c +# May need libbsd on AIX and BSD platforms +@MODULE_FCNTL_TRUE@fcntl fcntlmodule.c +# grp is not supported on VxWorks +@MODULE_GRP_TRUE@grp grpmodule.c +# needs sys/soundcard.h (Linux, FreeBSD) +@MODULE_OSSAUDIODEV_TRUE@ossaudiodev ossaudiodev.c +@MODULE_RESOURCE_TRUE@resource resource.c +# needs getspnam(), not supported on AIX, macOS +@MODULE_SPWD_TRUE@spwd spwdmodule.c +@MODULE_SYSLOG_TRUE@syslog syslogmodule.c +@MODULE_TERMIOS_TRUE@termios termios.c + +# Modules with UNIX dependencies that require external libraries + +# -lcrypt +#@MODULE__CRYPT_TRUE@_crypt _cryptmodule.c +# -I/usr/include/tirpc -lnsl -ltirpc +#@MODULE_NIS_TRUE@nis nismodule.c -I/usr/include/tirpc -lnsl -ltirpc + +# Modules that require external libraries. + +# compression libraries +# -lbz2 +@MODULE__BZ2_TRUE@_bz2 _bz2module.c +# -llzma +@MODULE__LZMA_TRUE@_lzma _lzmamodule.c +# -lz +@MODULE_ZLIB_TRUE@zlib zlibmodule.c + +# _uuid module requires -luuid on Linux +# BSD has uuid_create() in libc. +@MODULE__UUID_TRUE@_uuid _uuidmodule.c + +#@MODULE__CTYPES_TRUE@_ctypes _ctypes/_ctypes.c _ctypes/callbacks.c _ctypes/callproc.c _ctypes/stgdict.c _ctypes/cfield.c -ldl -lffi -DHAVE_FFI_PREP_CIF_VAR -DHAVE_FFI_PREP_CLOSURE_LOC -DHAVE_FFI_CLOSURE_ALLOC +# The _dbm module supports NDBM, GDBM with compat module, and Berkeley DB. +#@MODULE__DBM_TRUE@_dbm _dbmmodule.c -lgdbm_compat -DUSE_GDBM_COMPAT +#@MODULE__GDBM_TRUE@_gdbm _gdbmmodule.c -lgdbm +#@MODULE__SQLITE3_TRUE@_sqlite3 _sqlite/connection.c _sqlite/cursor.c _sqlite/microprotocols.c _sqlite/module.c _sqlite/prepare_protocol.c _sqlite/row.c _sqlite/statement.c _sqlite/util.c -lsqlite3 + +# Needs -lreadline -or -leditline. +# The readline module also supports libeditline (-leditline). +# Some systems may require -ltermcap or -ltermlib. +@MODULE_READLINE_TRUE@readline readline.c + +# OpenSSL bindings +# need libssl and libcrypto +@MODULE__SSL_TRUE@_ssl _ssl.c +@MODULE__HASHLIB_TRUE@_hashlib _hashopenssl.c + +# To statically link OpenSSL: +# _ssl _ssl.c $(OPENSSL_INCLUDES) $(OPENSSL_LDFLAGS) \ +# -l:libssl.a -Wl,--exclude-libs,libssl.a \ +# -l:libcrypto.a -Wl,--exclude-libs,libcrypto.a +# _hashlib _hashopenssl.c $(OPENSSL_INCLUDES) $(OPENSSL_LDFLAGS) \ +# -l:libcrypto.a -Wl,--exclude-libs,libcrypto.a + +# The _tkinter module. +# +# The command for _tkinter is long and site specific. Please +# uncomment and/or edit those parts as indicated. If you don't have a +# specific extension (e.g. Tix or BLT), leave the corresponding line +# commented out. (Leave the trailing backslashes in! If you +# experience strange errors, you may want to join all uncommented +# lines and remove the backslashes -- the backslash interpretation is +# done by the shell's "read" command and it may not be implemented on +# every system. + +# *** Always uncomment this (leave the leading underscore in!): +@MODULE__TKINTER_TRUE@_tkinter _tkinter.c tkappinit.c -DWITH_APPINIT $(TCLTK_INCLUDES) $(TCLTK_LIBS) \ +# *** Uncomment and edit to reflect where your Tcl/Tk libraries are: +# -L/usr/local/lib \ +# *** Uncomment and edit to reflect where your Tcl/Tk headers are: +# -I/usr/local/include \ +# *** Uncomment and edit to reflect where your X11 header files are: +# -I/usr/X11R6/include \ +# *** Or uncomment this for Solaris: +# -I/usr/openwin/include \ +# *** Uncomment and edit for Tix extension only: +# -DWITH_TIX -ltix8.1.8.2 \ +# *** Uncomment and edit for BLT extension only: +# -DWITH_BLT -I/usr/local/blt/blt8.0-unoff/include -lBLT8.0 \ +# *** Uncomment and edit for PIL (TkImaging) extension only: +# (See http://www.pythonware.com/products/pil/ for more info) +# -DWITH_PIL -I../Extensions/Imaging/libImaging tkImaging.c \ +# *** Uncomment and edit for TOGL extension only: +# -DWITH_TOGL togl.c \ +# *** Uncomment and edit to reflect where your X11 libraries are: +# -L/usr/X11R6/lib \ +# *** Or uncomment this for Solaris: +# -L/usr/openwin/lib \ +# *** Uncomment these for TOGL extension only: +# -lGL -lGLU -lXext -lXmu \ +# *** Uncomment for AIX: +# -lld \ +# *** Always uncomment this; X11 libraries to link with: +# -lX11 + +# Some system have -lcurses +#@MODULE__CURSES_TRUE@_curses -lncurses -lncursesw -ltermcap _cursesmodule.c +#@MODULE__CURSES_PANEL_TRUE@_curses_panel -lpanel -lncurses _curses_panel.c + +# macOS specific modules +# -framework SystemConfiguration -framework CoreFoundation +@MODULE__SCPROXY_TRUE@_scproxy _scproxy.c + +# Examples + +#@MODULE_XX_TRUE@xx xxmodule.c +@MODULE_XXLIMITED_TRUE@xxlimited xxlimited.c +@MODULE_XXLIMITED_35_TRUE@xxlimited_35 xxlimited_35.c + +# Testing + +@MODULE__XXSUBINTERPRETERS_TRUE@_xxsubinterpreters _xxsubinterpretersmodule.c +@MODULE__XXTESTFUZZ_TRUE@_xxtestfuzz _xxtestfuzz/_xxtestfuzz.c _xxtestfuzz/fuzzer.c +@MODULE__TESTBUFFER_TRUE@_testbuffer _testbuffer.c +@MODULE__TESTINTERNALCAPI_TRUE@_testinternalcapi _testinternalcapi.c + +# Some testing modules MUST be built as shared libraries. + +#*shared* +@MODULE__CTYPES_TEST_TRUE@_ctypes_test _ctypes/_ctypes_test.c +@MODULE__TESTCAPI_TRUE@_testcapi _testcapimodule.c +@MODULE__TESTIMPORTMULTIPLE_TRUE@_testimportmultiple _testimportmultiple.c +@MODULE__TESTMULTIPHASE_TRUE@_testmultiphase _testmultiphase.c diff --git a/configure b/configure index ce592b9d81b95f..87c88927a06670 100755 --- a/configure +++ b/configure @@ -18899,6 +18899,7 @@ if test "$ac_cv_search_shm_open" = "-lrt"; then $as_echo "#define SHM_NEEDS_LIBRT 1" >>confdefs.h + SHM_OPEN_LIB="-lrt" fi for ac_header in sys/mman.h do : @@ -21624,7 +21625,7 @@ esac if test "x$py_cv_module__multiprocessing" = xyes; then : as_fn_append MODULE_BLOCK "MODULE__MULTIPROCESSING_CFLAGS=-I\$(srcdir)/Modules/_multiprocessing$as_nl" - as_fn_append MODULE_BLOCK "MODULE__MULTIPROCESSING_LDFLAGS=$ac_cv_search_shm_open$as_nl" + as_fn_append MODULE_BLOCK "MODULE__MULTIPROCESSING_LDFLAGS=$SHM_OPEN_LIB$as_nl" if true; then MODULE__MULTIPROCESSING_TRUE= MODULE__MULTIPROCESSING_FALSE='#' @@ -21671,7 +21672,7 @@ esac if test "x$py_cv_module__posixshmem" = xyes; then : as_fn_append MODULE_BLOCK "MODULE__POSIXSHMEM_CFLAGS=-I\$(srcdir)/Modules/_multiprocessing$as_nl" - as_fn_append MODULE_BLOCK "MODULE__POSIXSHMEM_LDFLAGS=$ac_cv_search_shm_open$as_nl" + as_fn_append MODULE_BLOCK "MODULE__POSIXSHMEM_LDFLAGS=$SHM_OPEN_LIB$as_nl" if true; then MODULE__POSIXSHMEM_TRUE= MODULE__POSIXSHMEM_FALSE='#' @@ -21791,8 +21792,29 @@ fi $as_echo "$py_cv_module__uuid" >&6; } - as_fn_append MODULE_BLOCK "MODULE_XXLIMITED=yes$as_nl" - if true; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module xxlimited" >&5 +$as_echo_n "checking for stdlib extension module xxlimited... " >&6; } + case $py_stdlib_not_available in #( + *xxlimited*) : + py_cv_module_xxlimited=n/a ;; #( + *) : + if test "$with_trace_refs" != "yes"; then : + if true; then : + py_cv_module_xxlimited=yes +else + py_cv_module_xxlimited=missing +fi +else + py_cv_module_xxlimited=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE_XXLIMITED=$py_cv_module_xxlimited$as_nl" + if test "x$py_cv_module_xxlimited" = xyes; then : + + as_fn_append MODULE_BLOCK "MODULE_XXLIMITED_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_XXLIMITED_LDFLAGS=$as_nl" + if true; then MODULE_XXLIMITED_TRUE= MODULE_XXLIMITED_FALSE='#' else @@ -21801,10 +21823,56 @@ else fi +else + if false; then + MODULE_XXLIMITED_TRUE= + MODULE_XXLIMITED_FALSE='#' +else + MODULE_XXLIMITED_TRUE='#' + MODULE_XXLIMITED_FALSE= +fi - as_fn_append MODULE_BLOCK "MODULE_XXLIMITED_35=yes$as_nl" - if true; then + +fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module_xxlimited" >&5 +$as_echo "$py_cv_module_xxlimited" >&6; } + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdlib extension module xxlimited_35" >&5 +$as_echo_n "checking for stdlib extension module xxlimited_35... " >&6; } + case $py_stdlib_not_available in #( + *xxlimited_35*) : + py_cv_module_xxlimited_35=n/a ;; #( + *) : + if test "$with_trace_refs" != "yes"; then : + if true; then : + py_cv_module_xxlimited_35=yes +else + py_cv_module_xxlimited_35=missing +fi +else + py_cv_module_xxlimited_35=disabled +fi + ;; +esac + as_fn_append MODULE_BLOCK "MODULE_XXLIMITED_35=$py_cv_module_xxlimited_35$as_nl" + if test "x$py_cv_module_xxlimited_35" = xyes; then : + + as_fn_append MODULE_BLOCK "MODULE_XXLIMITED_35_CFLAGS=$as_nl" + as_fn_append MODULE_BLOCK "MODULE_XXLIMITED_35_LDFLAGS=$as_nl" + if true; then + MODULE_XXLIMITED_35_TRUE= + MODULE_XXLIMITED_35_FALSE='#' +else + MODULE_XXLIMITED_35_TRUE='#' + MODULE_XXLIMITED_35_FALSE= +fi + + +else + + if false; then MODULE_XXLIMITED_35_TRUE= MODULE_XXLIMITED_35_FALSE='#' else @@ -21813,6 +21881,9 @@ else fi +fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $py_cv_module_xxlimited_35" >&5 +$as_echo "$py_cv_module_xxlimited_35" >&6; } # substitute multiline block, must come after last PY_STDLIB_MOD() @@ -21821,6 +21892,8 @@ fi # generate output files ac_config_files="$ac_config_files Makefile.pre Misc/python.pc Misc/python-embed.pc Misc/python-config.sh" +ac_config_files="$ac_config_files Modules/Setup.stdlib" + ac_config_files="$ac_config_files Modules/ld_so_aix" cat >confcache <<\_ACEOF @@ -22437,6 +22510,14 @@ if test -z "${MODULE_XXLIMITED_TRUE}" && test -z "${MODULE_XXLIMITED_FALSE}"; th as_fn_error $? "conditional \"MODULE_XXLIMITED\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${MODULE_XXLIMITED_TRUE}" && test -z "${MODULE_XXLIMITED_FALSE}"; then + as_fn_error $? "conditional \"MODULE_XXLIMITED\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MODULE_XXLIMITED_35_TRUE}" && test -z "${MODULE_XXLIMITED_35_FALSE}"; then + as_fn_error $? "conditional \"MODULE_XXLIMITED_35\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${MODULE_XXLIMITED_35_TRUE}" && test -z "${MODULE_XXLIMITED_35_FALSE}"; then as_fn_error $? "conditional \"MODULE_XXLIMITED_35\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -23032,6 +23113,7 @@ do "Misc/python.pc") CONFIG_FILES="$CONFIG_FILES Misc/python.pc" ;; "Misc/python-embed.pc") CONFIG_FILES="$CONFIG_FILES Misc/python-embed.pc" ;; "Misc/python-config.sh") CONFIG_FILES="$CONFIG_FILES Misc/python-config.sh" ;; + "Modules/Setup.stdlib") CONFIG_FILES="$CONFIG_FILES Modules/Setup.stdlib" ;; "Modules/ld_so_aix") CONFIG_FILES="$CONFIG_FILES Modules/ld_so_aix" ;; *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; diff --git a/configure.ac b/configure.ac index 372ea59b6ad0a3..a2b9d0db8fc911 100644 --- a/configure.ac +++ b/configure.ac @@ -5735,6 +5735,7 @@ AC_SEARCH_LIBS(shm_open, rt) if test "$ac_cv_search_shm_open" = "-lrt"; then AC_DEFINE(SHM_NEEDS_LIBRT, 1, [Define to 1 if you must link with -lrt for shm_open().]) + SHM_OPEN_LIB="-lrt" fi AC_CHECK_HEADERS(sys/mman.h) # temporarily override ac_includes_default for AC_CHECK_FUNCS below @@ -5963,6 +5964,7 @@ AS_CASE([$ac_sys_system], [Darwin], [py_stdlib_not_available="ossaudiodev spwd"], [CYGWIN*], [py_stdlib_not_available="_scproxy nis"], [QNX*], [py_stdlib_not_available="_scproxy nis"], + [FreeBSD*], [py_stdlib_not_available="_scproxy spwd"], [py_stdlib_not_available="_scproxy"] ) @@ -6159,12 +6161,13 @@ PY_STDLIB_MOD([_ctypes_test], [test "$TEST_MODULES" = yes], [true], [], [-lm]) # TODO: include _multiprocessing/semaphore.c conditional PY_STDLIB_MOD([_multiprocessing], [true], [true], - [-I\$(srcdir)/Modules/_multiprocessing], [$ac_cv_search_shm_open]) + [-I\$(srcdir)/Modules/_multiprocessing], [$SHM_OPEN_LIB]) dnl shm_open() requires -lrt on some platforms PY_STDLIB_MOD([_posixshmem], [true], [test "$ac_cv_func_shm_open" = yes -a "$ac_cv_func_shm_unlink" = yes], - [-I\$(srcdir)/Modules/_multiprocessing], [$ac_cv_search_shm_open]) + [-I\$(srcdir)/Modules/_multiprocessing], [$SHM_OPEN_LIB]) +dnl TODO: check for libX11 and libBLT PY_STDLIB_MOD([_tkinter], [true], [test -n "$TCLTK_LIBS"], @@ -6173,14 +6176,17 @@ PY_STDLIB_MOD([_uuid], [true], [test "$ac_cv_lib_uuid_uuid_generate_time" = yes -o "$ac_cv_func_uuid_create" = yes], [$UUID_CFLAGS], [$UUID_LDLAGS]) -PY_STDLIB_MOD_SIMPLE([xxlimited]) -PY_STDLIB_MOD_SIMPLE([xxlimited_35]) +dnl PY_STDLIB_MOD_SIMPLE([xx]) +dnl The limited C API is not compatible with the Py_TRACE_REFS macro. +PY_STDLIB_MOD([xxlimited], [test "$with_trace_refs" != "yes"], [true]) +PY_STDLIB_MOD([xxlimited_35], [test "$with_trace_refs" != "yes"], [true]) # substitute multiline block, must come after last PY_STDLIB_MOD() AC_SUBST([MODULE_BLOCK]) # generate output files AC_CONFIG_FILES(Makefile.pre Misc/python.pc Misc/python-embed.pc Misc/python-config.sh) +AC_CONFIG_FILES([Modules/Setup.stdlib]) AC_CONFIG_FILES([Modules/ld_so_aix], [chmod +x Modules/ld_so_aix]) AC_OUTPUT