Skip to content

Commit cf10524

Browse files
ahayzen-kdabLeonMatthesKDAB
authored andcommitted
cmake: set RUST_CXX_NO_EXCEPTIONS when building for emscripten
1 parent 76cd5bf commit cf10524

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

cmake/CxxQt.cmake

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,16 @@ function(cxx_qt_import_crate)
6161
"QMAKE=${IMPORT_CRATE_QMAKE}"
6262
$<$<BOOL:${CMAKE_RUSTC_WRAPPER}>:RUSTC_WRAPPER=${CMAKE_RUSTC_WRAPPER}>)
6363

64+
# When using WASM ensure that we have RUST_CXX_NO_EXCEPTIONS set
65+
if (${CMAKE_SYSTEM_NAME} MATCHES "Emscripten")
66+
# Read any existing CXX_FLAGS and append RUST_CXX_NO_EXCEPTIONS
67+
set(EMSCRIPTEN_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
68+
list(APPEND EMSCRIPTEN_CXX_FLAGS "-DRUST_CXX_NO_EXCEPTIONS")
69+
70+
message(STATUS "CXX-Qt Found Emscripten, setting CXXFLAGS=${EMSCRIPTEN_CXX_FLAGS}")
71+
corrosion_set_env_vars(${CRATE} "CXXFLAGS=${EMSCRIPTEN_CXX_FLAGS}")
72+
endif()
73+
6474
file(MAKE_DIRECTORY "${IMPORT_CRATE_CXX_QT_EXPORT_DIR}/crates/${CRATE}/include/")
6575
target_include_directories(${CRATE} INTERFACE "${IMPORT_CRATE_CXX_QT_EXPORT_DIR}/crates/${CRATE}/include/")
6676

0 commit comments

Comments
 (0)