From 48859317a6ddd37d141b8edf44858783495e7fc3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Morten=20S=C3=B8rvig?= Date: Tue, 8 Oct 2024 12:40:34 +0200 Subject: [PATCH] wasm: set correct exceptions flag Emscripten supports two exception types: -fexceptions: Emscripten JS-based exceptions -fwasm-exceptions: WebAssembly (native) exceptions These are mutually incompatible and a program should only use one type. Set exceptions flag based on configure option to make this happen. Task-number: QTBUG-129747 Change-Id: I7e80a676aebcfea81f07431df7d50c234b0e3d4d Reviewed-by: Lorn Potter --- cmake/QtInternalTargets.cmake | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/cmake/QtInternalTargets.cmake b/cmake/QtInternalTargets.cmake index bcfa8124596..012c355c015 100644 --- a/cmake/QtInternalTargets.cmake +++ b/cmake/QtInternalTargets.cmake @@ -389,6 +389,13 @@ function(qt_internal_add_exceptions_flags) # this hack since some unknown MSVC version. set(enable_flag "${enable_flag}" "/d2FH4") endif() + elseif(WASM) + # Use native WebAssembly exceptions if enabled + if(QT_FEATURE_wasm_exceptions) + set(enable_flag "-fwasm-exceptions") + else() + set(enable_flag "-fexceptions") + endif() else() set(enable_flag "-fexceptions") endif()