summaryrefslogtreecommitdiff
path: root/static
diff options
context:
space:
mode:
authorStephan Bergmann <stephan.bergmann@allotropia.de>2024-08-07 15:01:25 +0200
committerStephan Bergmann <stephan.bergmann@allotropia.de>2024-08-07 17:18:34 +0200
commit146fafa691e63de00d6030d88626833ab43d7a65 (patch)
tree88128224bb7deb2c1523814dc96e2bc5f32b072b /static
parente7aa613e751c159881cb2448d5c7e08549f3fe49 (diff)
I finally understand why we need that hack
...that 77129fbb74bcefde4551d494f029169e7c6026e3 "Emscripten: Add hack to prepare for --enable-wasm-exceptions" was puzzled about Change-Id: Iba54a77e3c2a71fe45b97795ca2da0606c3adf41 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171594 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Diffstat (limited to 'static')
-rw-r--r--static/README.wasm.md7
1 files changed, 7 insertions, 0 deletions
diff --git a/static/README.wasm.md b/static/README.wasm.md
index cb5d0aa7fc3e..de595b19b459 100644
--- a/static/README.wasm.md
+++ b/static/README.wasm.md
@@ -69,6 +69,13 @@ With "-opensource -confirm-license" you agree to the open source license.
./configure -opensource -confirm-license -xplatform wasm-emscripten -feature-thread -prefix <whatever> QMAKE_CFLAGS+=-sSUPPORT_LONGJMP=wasm QMAKE_CXXFLAGS+=-sSUPPORT_LONGJMP=wasm
make -j<CORES> module-qtbase
+Do not include `-fwasm-exceptions` in the above `QMAKE_CXXFLAGS`, see
+<https://emscripten.org/docs/api_reference/emscripten.h.html#c.emscripten_set_main_loop> "Note:
+Currently, using the new Wasm exception handling and simulate_infinite_loop == true at the same time
+does not work yet in C++ projects that have objects with destructors on the stack at the time of the
+call." (Also see the EMSCRIPTEN-specific HACK in soffice_main, desktop/source/app/sofficemain.cxx,
+for what we need to do to work around that.)
+
Optionally you can add the configure flag "-compile-examples". But then you also have to
patch at least mkspecs/wasm-emscripten/qmake.conf with EXIT_RUNTIME=0, otherwise they will
fail to run. In addition, building with examples will break with some of them, but at that