[Python-checkins] bpo-40280: Add wasm32-emscripten and wasm32-wasi SOABI (GH-32095)

miss-islington webhook-mailer at python.org
Thu Mar 24 17:09:47 EDT 2022


https://github.com/python/cpython/commit/8a0a9e5b1928fab7d9819c8d6498ef5c0b9383af
commit: 8a0a9e5b1928fab7d9819c8d6498ef5c0b9383af
branch: main
author: Christian Heimes <christian at python.org>
committer: miss-islington <31488909+miss-islington at users.noreply.github.com>
date: 2022-03-24T14:09:42-07:00
summary:

bpo-40280: Add wasm32-emscripten and wasm32-wasi SOABI (GH-32095)



Shared extension on Emscripten now have suffix
``.cpython-311-wasm32-emscripten.so`` (JS loader) and
``.cpython-311-wasm32-emscripten.wasm`` (WebAssembly code).

files:
A Misc/NEWS.d/next/Build/2022-03-24-12-12-35.bpo-40280.eAQWrM.rst
M configure
M configure.ac

diff --git a/Misc/NEWS.d/next/Build/2022-03-24-12-12-35.bpo-40280.eAQWrM.rst b/Misc/NEWS.d/next/Build/2022-03-24-12-12-35.bpo-40280.eAQWrM.rst
new file mode 100644
index 0000000000000..7c7dc6d24fae4
--- /dev/null
+++ b/Misc/NEWS.d/next/Build/2022-03-24-12-12-35.bpo-40280.eAQWrM.rst
@@ -0,0 +1,2 @@
+Add SOABI ``wasm32-emscripten`` for Emscripten and ``wasm32-wasi`` for WASI
+on 32bit WASM as well as ``wasm64`` counter parts.
diff --git a/configure b/configure
index 128e36a80062a..00f5c7ba4cc72 100755
--- a/configure
+++ b/configure
@@ -6084,6 +6084,22 @@ cat > conftest.c <<EOF
         darwin
 #elif defined(__VXWORKS__)
         vxworks
+#elif defined(__wasm32__)
+#  if defined(__EMSCRIPTEN__)
+	wasm32-emscripten
+#  elif defined(__wasi__)
+	wasm32-wasi
+#  else
+#    error unknown wasm32 platform
+#  endif
+#elif defined(__wasm64__)
+#  if defined(__EMSCRIPTEN)
+	wasm64-emscripten
+#  elif defined(__wasi__)
+	wasm64-wasi
+#  else
+#    error unknown wasm64 platform
+#  endif
 #else
 # error unknown platform triplet
 #endif
diff --git a/configure.ac b/configure.ac
index 6fd95f7704ace..094866136dda7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -973,6 +973,22 @@ cat > conftest.c <<EOF
         darwin
 #elif defined(__VXWORKS__)
         vxworks
+#elif defined(__wasm32__)
+#  if defined(__EMSCRIPTEN__)
+	wasm32-emscripten
+#  elif defined(__wasi__)
+	wasm32-wasi
+#  else
+#    error unknown wasm32 platform
+#  endif
+#elif defined(__wasm64__)
+#  if defined(__EMSCRIPTEN)
+	wasm64-emscripten
+#  elif defined(__wasi__)
+	wasm64-wasi
+#  else
+#    error unknown wasm64 platform
+#  endif
 #else
 # error unknown platform triplet
 #endif



More information about the Python-checkins mailing list