diff options
author | Lorn Potter <lorn.potter@gmail.com> | 2022-07-14 10:07:00 +1000 |
---|---|---|
committer | Lorn Potter <lorn.potter@gmail.com> | 2022-08-12 10:13:51 +1000 |
commit | 1f9c1f032c5d8af2c6758081eb8de076fe678b53 (patch) | |
tree | bbbb2a1e6ec2c6f66e660a6b8db0bb8f7b4b69ee /mkspecs | |
parent | 97f6878afddbef83b4a654ff0f9b118aa9ab2ab4 (diff) |
wasm: allow apps to override EXPORT_RUNTIME_METHODS
Developers can add to Emscripten's EXPORT_RUNTIME_METHODS
by defining their own using:
QT_WASM_EXTRA_EXPORTED_METHODS
Which will add on to Qt's default exported runtime methods
of UTF16ToString,stringToUTF16
for cmake:
set_target_properties(<target> PROPERTIES QT_WASM_EXTRA_EXPORTED_METHODS "ccall,cwrap")
or
set(QT_WASM_EXTRA_EXPORTED_METHODS "ccall,cwrap")
for qmake:
QT_WASM_EXTRA_EXPORTED_METHODS = ccall,cwrap
Done-with: Mikolaj Boc
Fixes: QTBUG-104882
Pick-to: 6.4
Change-Id: I9678bdb7b077aaa8527057212ea4e161c0be0b60
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'mkspecs')
-rw-r--r-- | mkspecs/features/wasm/wasm.prf | 8 | ||||
-rw-r--r-- | mkspecs/wasm-emscripten/qmake.conf | 1 |
2 files changed, 8 insertions, 1 deletions
diff --git a/mkspecs/features/wasm/wasm.prf b/mkspecs/features/wasm/wasm.prf index 1ccda7a6e8..5e6501ed99 100644 --- a/mkspecs/features/wasm/wasm.prf +++ b/mkspecs/features/wasm/wasm.prf @@ -7,6 +7,14 @@ isEmpty(DESTDIR): DESTDIR = $$OUT_PWD exists($$QMAKE_QT_CONFIG) { ## this may be subject to change + ## qmake puts a space if done otherwise + !isEmpty(QT_WASM_EXTRA_EXPORTED_METHODS): { + EXPORTED_METHODS = UTF16ToString,stringToUTF16,$$QT_WASM_EXTRA_EXPORTED_METHODS + } else { + EXPORTED_METHODS = UTF16ToString,stringToUTF16 + } + EMCC_LFLAGS += -s EXPORTED_RUNTIME_METHODS=$$EXPORTED_METHODS + qtConfig(thread) { EMCC_LFLAGS += -pthread diff --git a/mkspecs/wasm-emscripten/qmake.conf b/mkspecs/wasm-emscripten/qmake.conf index 9e5a223d1b..648246b268 100644 --- a/mkspecs/wasm-emscripten/qmake.conf +++ b/mkspecs/wasm-emscripten/qmake.conf @@ -32,7 +32,6 @@ EMCC_COMMON_LFLAGS += \ -s WASM=1 \ -s MAX_WEBGL_VERSION=2 \ -s ERROR_ON_UNDEFINED_SYMBOLS=1 \ - -s EXPORTED_RUNTIME_METHODS=UTF16ToString,stringToUTF16 \ --bind \ -s FETCH=1 \ -s MODULARIZE=1 \ |