Skip to content

Commit

Permalink
bpo-40280: Emscripten systems use .wasm suffix by default
Browse files Browse the repository at this point in the history
  • Loading branch information
tiran committed Nov 29, 2021
1 parent f7a62f2 commit d5bcfa6
Show file tree
Hide file tree
Showing 4 changed files with 43 additions and 16 deletions.
6 changes: 5 additions & 1 deletion Doc/using/configure.rst
Original file line number Diff line number Diff line change
Expand Up @@ -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>

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Emscripten platform now uses ``.wasm`` suffix by default.
28 changes: 22 additions & 6 deletions configure
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down Expand Up @@ -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
Expand Down
24 changes: 15 additions & 9 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down

0 comments on commit d5bcfa6

Please sign in to comment.