Mailing List Archive

bpo-40280: Use Setup.stdlib static for wasm builds (GH-29784)
https://github.com/python/cpython/commit/ee1e2c604c8a66a407116d9c3e589ab0b9580c54
commit: ee1e2c604c8a66a407116d9c3e589ab0b9580c54
branch: main
author: Christian Heimes <christian@python.org>
committer: tiran <christian@python.org>
date: 2021-11-26T08:26:49+01:00
summary:

bpo-40280: Use Setup.stdlib static for wasm builds (GH-29784)

``Modules/Setup.stdlib`` contains ``Setup`` lines for all stdlib extension modules for which ``configure`` has detected their dependencies. The file is not used yet and still under development. To use the file, do ``ln -sfr Modules/Setup.stdlib Modules/Setup.local``.

files:
M Modules/Setup.stdlib.in
M configure
M configure.ac

diff --git a/Modules/Setup.stdlib.in b/Modules/Setup.stdlib.in
index eadd1619a3b38..03295400f638c 100644
--- a/Modules/Setup.stdlib.in
+++ b/Modules/Setup.stdlib.in
@@ -22,8 +22,8 @@


# Build modules statically or as shared extensions
-*shared*
-# *static*
+# *shared* / *static*
+*@MODULE_BUILDTYPE@*


############################################################################
diff --git a/configure b/configure
index 944e97ccf9929..1aaa13abd6816 100755
--- a/configure
+++ b/configure
@@ -770,6 +770,7 @@ MODULE_TIME_FALSE
MODULE_TIME_TRUE
MODULE__IO_FALSE
MODULE__IO_TRUE
+MODULE_BUILDTYPE
TEST_MODULES
LIBRARY_DEPS
STATIC_LIBPYTHON
@@ -21012,6 +21013,15 @@ case $ac_sys_system in #(
;;
esac

+case $host_cpu in #(
+ wasm32|wasm64) :
+ MODULE_BUILDTYPE=static ;; #(
+ *) :
+ MODULE_BUILDTYPE=${MODULE_BUILDTYPE:-shared}
+ ;;
+esac
+
+

MODULE_BLOCK=

diff --git a/configure.ac b/configure.ac
index 2140e3e43db82..7963f9ccaf80a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -6185,6 +6185,13 @@ AS_CASE([$ac_sys_system],
[py_stdlib_not_available="_scproxy"]
)

+dnl Default value for Modules/Setup.stdlib build type
+AS_CASE([$host_cpu],
+ [wasm32|wasm64], [MODULE_BUILDTYPE=static],
+ [MODULE_BUILDTYPE=${MODULE_BUILDTYPE:-shared}]
+)
+AC_SUBST([MODULE_BUILDTYPE])
+
dnl _MODULE_BLOCK_ADD([VAR], [VALUE])
dnl internal: adds $1=quote($2) to MODULE_BLOCK
AC_DEFUN([_MODULE_BLOCK_ADD], [AS_VAR_APPEND([MODULE_BLOCK], ["$1=_AS_QUOTE([$2])$as_nl"])])

_______________________________________________
Python-checkins mailing list
Python-checkins@python.org
https://mail.python.org/mailman/listinfo/python-checkins