[Python-checkins] bpo-40280: Emscripten systems use .wasm suffix by default (GH-29842)

tiran webhook-mailer at python.org
Mon Nov 29 10:02:04 EST 2021


https://github.com/python/cpython/commit/6ac3c8a3140c17bd71ba98dfc5250c371101e77c
commit: 6ac3c8a3140c17bd71ba98dfc5250c371101e77c
branch: main
author: Christian Heimes <christian at python.org>
committer: tiran <christian at python.org>
date: 2021-11-29T16:01:55+01:00
summary:

bpo-40280: Emscripten systems use .wasm suffix by default (GH-29842)

files:
A Misc/NEWS.d/next/Build/2021-11-29-14-37-29.bpo-40280.UlTMR8.rst
M Doc/using/configure.rst
M configure
M configure.ac

diff --git a/Doc/using/configure.rst b/Doc/using/configure.rst
index f00766dfc4f76..c6aa4af73f4d3 100644
--- a/Doc/using/configure.rst
+++ b/Doc/using/configure.rst
@@ -53,7 +53,11 @@ General Options
    Set the Python executable suffix to *SUFFIX*.
 
    The default suffix is ``.exe`` on Windows and macOS (``python.exe``
-   executable), and an empty string on other platforms (``python`` executable).
+   executable), ``.wasm`` on Emscripten (``python.wasm`` executable), and
+   an empty string on other platforms (``python`` executable).
+
+   .. versionchanged:: 3.11
+      The default suffix on Emscripten platform is ``.wasm``.
 
 .. cmdoption:: --with-tzpath=<list of absolute paths separated by pathsep>
 
diff --git a/Misc/NEWS.d/next/Build/2021-11-29-14-37-29.bpo-40280.UlTMR8.rst b/Misc/NEWS.d/next/Build/2021-11-29-14-37-29.bpo-40280.UlTMR8.rst
new file mode 100644
index 0000000000000..d3ac7b37af8a7
--- /dev/null
+++ b/Misc/NEWS.d/next/Build/2021-11-29-14-37-29.bpo-40280.UlTMR8.rst
@@ -0,0 +1 @@
+Emscripten platform now uses ``.wasm`` suffix by default.
diff --git a/configure b/configure
index c675923131df9..12c8d108b6528 100755
--- a/configure
+++ b/configure
@@ -1738,7 +1738,8 @@ Optional Packages:
   --with-cxx-main[=COMPILER]
                           compile main() and link Python executable with C++
                           compiler specified in COMPILER (default is $CXX)
-  --with-suffix=SUFFIX    set executable suffix to SUFFIX (default is '.exe')
+  --with-suffix=SUFFIX    set executable suffix to SUFFIX (default is empty,
+                          yes is mapped to '.exe')
   --with-pydebug          build with Py_DEBUG defined (default is no)
   --with-trace-refs       enable tracing references for debugging purpose
                           (default is no)
@@ -6136,11 +6137,26 @@ $as_echo_n "checking for --with-suffix... " >&6; }
 # Check whether --with-suffix was given.
 if test "${with_suffix+set}" = set; then :
   withval=$with_suffix;
-	case $withval in
-	no)	EXEEXT=;;
-	yes)	EXEEXT=.exe;;
-	*)	EXEEXT=$withval;;
-	esac
+	case $with_suffix in #(
+  no) :
+    EXEEXT= ;; #(
+  yes) :
+    EXEEXT=.exe ;; #(
+  *) :
+    EXEEXT=$with_suffix
+   ;;
+esac
+
+else
+
+  case $ac_sys_system in #(
+  Emscripten) :
+    EXEEXT=.wasm ;; #(
+  *) :
+    EXEEXT=
+   ;;
+esac
+
 fi
 
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $EXEEXT" >&5
diff --git a/configure.ac b/configure.ac
index 7b80c2d8923f6..5c89b9c241d74 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1018,16 +1018,22 @@ atheos*|Linux*/1*)
    exit 1;;
 esac
 
-AC_MSG_CHECKING(for --with-suffix)
-AC_ARG_WITH(suffix,
-            AS_HELP_STRING([--with-suffix=SUFFIX], [set executable suffix to SUFFIX (default is '.exe')]),
+AC_MSG_CHECKING([for --with-suffix])
+AC_ARG_WITH([suffix],
+            [AS_HELP_STRING([--with-suffix=SUFFIX], [set executable suffix to SUFFIX (default is empty, yes is mapped to '.exe')])],
 [
-	case $withval in
-	no)	EXEEXT=;;
-	yes)	EXEEXT=.exe;;
-	*)	EXEEXT=$withval;;
-	esac])
-AC_MSG_RESULT($EXEEXT)
+	AS_CASE([$with_suffix],
+    [no], [EXEEXT=],
+    [yes], [EXEEXT=.exe],
+    [EXEEXT=$with_suffix]
+  )
+], [
+  AS_CASE([$ac_sys_system],
+    [Emscripten], [EXEEXT=.wasm],
+    [EXEEXT=]
+  )
+])
+AC_MSG_RESULT([$EXEEXT])
 
 # Test whether we're running on a non-case-sensitive system, in which
 # case we give a warning if no ext is given



More information about the Python-checkins mailing list