]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
bpo-40280: Use Setup.stdlib static for wasm builds (GH-29784)
authorChristian Heimes <christian@python.org>
Fri, 26 Nov 2021 07:26:49 +0000 (09:26 +0200)
committerGitHub <noreply@github.com>
Fri, 26 Nov 2021 07:26:49 +0000 (08:26 +0100)
``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``.

Modules/Setup.stdlib.in
configure
configure.ac

index eadd1619a3b380d87f6a3e82f5f50b400fe6e5db..03295400f638c3a6bfbd08a70f187358df184538 100644 (file)
@@ -22,8 +22,8 @@
 
 
 # Build modules statically or as shared extensions
-*shared*
-# *static*
+# *shared* / *static*
+*@MODULE_BUILDTYPE@*
 
 
 ############################################################################
index 944e97ccf992936315ecaf2ecec52dcfdb28a4ca..1aaa13abd68161d49dd9cde426200c61dc26382f 100755 (executable)
--- 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=
 
index 2140e3e43db82325ed654f6ff0e9b034b94fc672..7963f9ccaf80a5e69b616f4573fcf53c48367ae8 100644 (file)
@@ -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"])])