wasm: set MAXIMUM_MEMORY to 2GB when JSPI is in use

Work around Emscripten bug which triggers runtime exception

   WebAssembly.promising(): Argument 0 must be a
   WebAssembly exported function

This was already done for cmake, this adds the qmake
part.

Change-Id: Ieb3e89e9931a25f16c23ba2bce27bef33a91de53
Reviewed-by: Piotr Wierciński <piotr.wiercinski@qt.io>
This commit is contained in:
Morten Sørvig 2025-03-05 13:17:24 +01:00 committed by Morten Johan Sørvig
parent bd2f1e2f90
commit 90a6c5aaf8

View File

@ -49,7 +49,11 @@ exists($$QMAKE_QT_CONFIG) {
}
EMCC_LFLAGS += -s INITIAL_MEMORY=$$INITIAL_MEMORY
isEmpty(QT_WASM_MAXIMUM_MEMORY) {
MAXIMUM_MEMORY = 4GB # 32-bit max
qtConfig(wasm-jspi) {
MAXIMUM_MEMORY = 2GB # Avoid triggering Emscripten bug #23834
} else {
MAXIMUM_MEMORY = 4GB # 32-bit max
}
} else {
MAXIMUM_MEMORY = $$QT_WASM_MAXIMUM_MEMORY
}