summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Heimes <christian@python.org>2021-12-04 14:14:48 (GMT)
committerGitHub <noreply@github.com>2021-12-04 14:14:48 (GMT)
commit64be8d369b7e3878078dbef466804ae8be49c1cf (patch)
tree1c4b4b4f2582e1b26460ddee9f48947df919e99d
parent4045392e0e3446362841b3336497cb6eeccfcd23 (diff)
downloadcpython-64be8d369b7e3878078dbef466804ae8be49c1cf.zip
cpython-64be8d369b7e3878078dbef466804ae8be49c1cf.tar.gz
cpython-64be8d369b7e3878078dbef466804ae8be49c1cf.tar.bz2
bpo-45847: Update whatsnew and add place holder entries for missing extensions (GH-29914)
-rw-r--r--Doc/whatsnew/3.11.rst13
-rw-r--r--Modules/Setup.stdlib.in12
-rw-r--r--configure.ac5
3 files changed, 23 insertions, 7 deletions
diff --git a/Doc/whatsnew/3.11.rst b/Doc/whatsnew/3.11.rst
index c498225..10dc309 100644
--- a/Doc/whatsnew/3.11.rst
+++ b/Doc/whatsnew/3.11.rst
@@ -583,13 +583,12 @@ Build Changes
(Contributed by Brett Cannon and Christian Heimes in :issue:`45548`,
:issue:`45570`, :issue:`45571`, and :issue:`43974`.)
-* The build dependencies for :mod:`zlib`, :mod:`bz2`, and :mod:`lzma` are now
- detected by :program:`configure`.
- (Contributed by Christian Heimes in :issue:`45763`.)
-
-* Build dependencies for :mod:`dbm` are now detected by :program:`configure`.
- ``libdb`` 3.x and 4.x are no longer supported.
- (Contributed by Christian Heimes in :issue:`45747`.)
+* Build dependencies, compiler flags, and linker flags for most stdlib
+ extension modules are now detected by :program:`configure`. libffi, libnsl,
+ libsqlite3, zlib, bzip2, liblzma, libcrypt, and uuid flags are detected by
+ ``pkg-config`` (when available).
+ (Contributed by Christian Heimes and Erlend Egeberg Aasland in
+ :issue:`bpo-45847`, :issue:`45747`, and :issue:`45763`.)
* CPython now has experimental support for cross compiling to WebAssembly
platform ``wasm32-emscripten``. The effort is inspired by previous work
diff --git a/Modules/Setup.stdlib.in b/Modules/Setup.stdlib.in
index ff92db3..eaf624d8 100644
--- a/Modules/Setup.stdlib.in
+++ b/Modules/Setup.stdlib.in
@@ -68,9 +68,13 @@
# dbm/gdbm
# dbm needs either libndbm, libgdbm_compat, or libdb 5.x
+#@MODULE__DBM_TRUE@_dbm _dbmmodule.c
# gdbm module needs -lgdbm
@MODULE__GDBM_TRUE@_gdbm _gdbmmodule.c
+# needs -lreadline or -leditline, sometimes termcap, termlib, or tinfo
+#@MODULE_READLINE_TRUE@readline readline.c
+
# hashing builtins, can be disabled with --without-builtin-hashlib-hashes
@MODULE__MD5_TRUE@_md5 md5module.c
@MODULE__SHA1_TRUE@_sha1 sha1module.c
@@ -134,6 +138,11 @@
# needs -lffi and -ldl
@MODULE__CTYPES_TRUE@_ctypes _ctypes/_ctypes.c _ctypes/callbacks.c _ctypes/callproc.c _ctypes/stgdict.c _ctypes/cfield.c
+# needs -lncurses, -lncursesw or -lcurses, sometimes -ltermcap
+#@MODULE__CURSES_TRUE@_curses _cursesmodule.c
+# needs -lncurses and -lpanel
+#@MODULE__CURSES_PANEL_TRUE@_curses_panel _curses_panel.c
+
@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
# needs -lssl and -lcrypt
@@ -141,6 +150,9 @@
# needs -lcrypt
@MODULE__HASHLIB_TRUE@_hashlib _hashopenssl.c
+# needs -ltk, -ltcl, and sometimes -lX11
+#@MODULE__TKINTER_TRUE@_tkinter _tkinter.c tkappinit.c
+
# Linux: -luuid, BSD/AIX: libc's uuid_create()
@MODULE__UUID_TRUE@_uuid _uuidmodule.c
diff --git a/configure.ac b/configure.ac
index 40dc6f4..39890fe 100644
--- a/configure.ac
+++ b/configure.ac
@@ -6480,17 +6480,22 @@ PY_STDLIB_MOD([_crypt],
PY_STDLIB_MOD([_ctypes],
[], [test "$have_libffi" = yes],
[$LIBFFI_CFLAGS], [$LIBFFI_LIBS])
+dnl PY_STDLIB_MOD([_curses], [], [], [], [])
+dnl PY_STDLIB_MOD([_curses_panel], [], [], [], [])
PY_STDLIB_MOD([_decimal], [], [], [$LIBMPDEC_CFLAGS], [$LIBMPDEC_LDFLAGS])
+dnl PY_STDLIB_MOD([_dbm], [], [], [], [])
PY_STDLIB_MOD([_gdbm],
[test "$have_gdbm_dbmliborder" = yes], [test "$have_gdbm" = yes],
[$GDBM_CFLAGS], [$GDBM_LIBS])
PY_STDLIB_MOD([nis],
[], [test "$have_nis" = yes -a "$ac_cv_header_rpc_rpc_h" = yes],
[$LIBNSL_CFLAGS], [$LIBNSL_LIBS])
+dnl PY_STDLIB_MOD([readline], [], [], [], [])
PY_STDLIB_MOD([_sqlite3],
[test "$have_sqlite3" = "yes"],
[test "$have_supported_sqlite3" = "yes"],
[$LIBSQLITE3_CFLAGS], [$LIBSQLITE3_LIBS])
+dnl PY_STDLIB_MOD([_tkinter], [], [], [], [])
PY_STDLIB_MOD([_uuid],
[], [test "$have_uuid" = "yes"],
[$LIBUUID_CFLAGS], [$LIBUUID_LIBS])