diff options
author | Christian Heimes <christian@python.org> | 2022-06-24 15:03:42 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-24 15:03:42 (GMT) |
commit | e69306f08b9be84ccdd0a1c6601ec229c4e5b377 (patch) | |
tree | ae26c9a084846fa80a90f95628cb6898d8c11dc1 | |
parent | 51fd4de101349bbea8afa4e212489f4b87e3a99b (diff) | |
download | cpython-e69306f08b9be84ccdd0a1c6601ec229c4e5b377.zip cpython-e69306f08b9be84ccdd0a1c6601ec229c4e5b377.tar.gz cpython-e69306f08b9be84ccdd0a1c6601ec229c4e5b377.tar.bz2 |
gh-84461: Build Emscripten with WASM BigInt support (#94219)
-rw-r--r-- | Tools/wasm/README.md | 4 | ||||
-rwxr-xr-x | configure | 2 | ||||
-rw-r--r-- | configure.ac | 3 |
3 files changed, 8 insertions, 1 deletions
diff --git a/Tools/wasm/README.md b/Tools/wasm/README.md index 94b3729..40f23a3 100644 --- a/Tools/wasm/README.md +++ b/Tools/wasm/README.md @@ -98,9 +98,11 @@ popd ``` ```shell -node --experimental-wasm-threads --experimental-wasm-bulk-memory builddir/emscripten-node/python.js +node --experimental-wasm-threads --experimental-wasm-bulk-memory --experimental-wasm-bigint builddir/emscripten-node/python.js ``` +(``--experimental-wasm-bigint`` is not needed with recent NodeJS versions) + # wasm32-emscripten limitations and issues Emscripten before 3.1.8 has known bugs that can cause memory corruption and @@ -7953,6 +7953,8 @@ fi as_fn_append LDFLAGS_NODIST " -sALLOW_MEMORY_GROWTH -sTOTAL_MEMORY=20971520" + as_fn_append LDFLAGS_NODIST " -sWASM_BIGINT" + as_fn_append LDFLAGS_NODIST " -sFORCE_FILESYSTEM -lidbfs.js -lnodefs.js -lproxyfs.js -lworkerfs.js" if test "x$enable_wasm_dynamic_linking" = xyes; then : diff --git a/configure.ac b/configure.ac index 3b70532..f9abd85 100644 --- a/configure.ac +++ b/configure.ac @@ -2028,6 +2028,9 @@ AS_CASE([$ac_sys_system], dnl Start with 20 MB and allow to grow AS_VAR_APPEND([LDFLAGS_NODIST], [" -sALLOW_MEMORY_GROWTH -sTOTAL_MEMORY=20971520"]) + dnl map int64_t and uint64_t to JS bigint + AS_VAR_APPEND([LDFLAGS_NODIST], [" -sWASM_BIGINT"]) + dnl Include file system support AS_VAR_APPEND([LDFLAGS_NODIST], [" -sFORCE_FILESYSTEM -lidbfs.js -lnodefs.js -lproxyfs.js -lworkerfs.js"]) |