gh-84461: Build Emscripten with WASM BigInt support (GH-94219)

(cherry picked from commit e69306f08b)

Co-authored-by: Christian Heimes <christian@python.org>
This commit is contained in:
Miss Islington (bot) 2022-06-24 08:30:46 -07:00 committed by GitHub
parent 41e4b426ce
commit c966e0816e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 8 additions and 1 deletions

View File

@ -98,9 +98,11 @@ ### Cross compile to wasm32-emscripten for node
```
```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

2
configure generated vendored
View File

@ -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 :

View File

@ -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"])