Add `WASM_BIGINT` linker flag to the web build

This commit is contained in:
Adam Scott 2024-02-20 08:19:56 -05:00
parent b7145638d5
commit 3ae524fa9e
No known key found for this signature in database
GPG Key ID: 1352C2919D96DDDF
1 changed files with 6 additions and 0 deletions

View File

@ -253,6 +253,9 @@ def configure(env: "SConsEnvironment"):
env.Append(LINKFLAGS=["-fvisibility=hidden"]) env.Append(LINKFLAGS=["-fvisibility=hidden"])
env.extra_suffix = ".dlink" + env.extra_suffix env.extra_suffix = ".dlink" + env.extra_suffix
# WASM_BIGINT is needed since emscripten ≥ 3.1.41
needs_wasm_bigint = cc_semver >= (3, 1, 41)
# Run the main application in a web worker # Run the main application in a web worker
if env["proxy_to_pthread"]: if env["proxy_to_pthread"]:
env.Append(LINKFLAGS=["-s", "PROXY_TO_PTHREAD=1"]) env.Append(LINKFLAGS=["-s", "PROXY_TO_PTHREAD=1"])
@ -261,6 +264,9 @@ def configure(env: "SConsEnvironment"):
# https://github.com/emscripten-core/emscripten/issues/18034#issuecomment-1277561925 # https://github.com/emscripten-core/emscripten/issues/18034#issuecomment-1277561925
env.Append(LINKFLAGS=["-s", "TEXTDECODER=0"]) env.Append(LINKFLAGS=["-s", "TEXTDECODER=0"])
# BigInt support to pass object pointers between contexts # BigInt support to pass object pointers between contexts
needs_wasm_bigint = True
if needs_wasm_bigint:
env.Append(LINKFLAGS=["-s", "WASM_BIGINT"]) env.Append(LINKFLAGS=["-s", "WASM_BIGINT"])
# Reduce code size by generating less support code (e.g. skip NodeJS support). # Reduce code size by generating less support code (e.g. skip NodeJS support).