Mercurial > hg > orthanc-stone
diff Applications/StoneWebViewer/WebAssembly/CMakeLists.txt @ 1549:a48ae10857b1
packaging of the WebAssembly module
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 13 Aug 2020 15:56:01 +0200 |
parents | 65eccce95882 |
children | b894072b9e2f |
line wrap: on
line diff
--- a/Applications/StoneWebViewer/WebAssembly/CMakeLists.txt Thu Aug 13 09:57:35 2020 +0200 +++ b/Applications/StoneWebViewer/WebAssembly/CMakeLists.txt Thu Aug 13 15:56:01 2020 +0200 @@ -11,23 +11,21 @@ set(EMSCRIPTEN_SET_LLVM_WASM_BACKEND ON CACHE BOOL "") -set(WASM_FLAGS "-s WASM=1 -s FETCH=1") +set(WASM_FLAGS "${WASM_FLAGS} -s WASM=1 -s FETCH=1") if (CMAKE_BUILD_TYPE STREQUAL "Debug") set(WASM_FLAGS "${WASM_FLAGS} -s SAFE_HEAP=1") endif() -set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${WASM_FLAGS}") -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${WASM_FLAGS}") - -set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -s EXTRA_EXPORTED_RUNTIME_METHODS='[\"ccall\", \"cwrap\"]'") -set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -s ERROR_ON_UNDEFINED_SYMBOLS=1") -set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -s ASSERTIONS=1 -s DISABLE_EXCEPTION_CATCHING=0") -set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -s ALLOW_MEMORY_GROWTH=1 -s TOTAL_MEMORY=268435456") # 256MB + resize -set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -s DISABLE_DEPRECATED_FIND_EVENT_TARGET_BEHAVIOR=1") +set(WASM_LINKER_FLAGS "${WASM_LINKER_FLAGS} -s EXTRA_EXPORTED_RUNTIME_METHODS='[\"ccall\", \"cwrap\"]'") +set(WASM_LINKER_FLAGS "${WASM_LINKER_FLAGS} -s ERROR_ON_UNDEFINED_SYMBOLS=1") +set(WASM_LINKER_FLAGS "${WASM_LINKER_FLAGS} -s ASSERTIONS=1 -s DISABLE_EXCEPTION_CATCHING=0") +set(WASM_LINKER_FLAGS "${WASM_LINKER_FLAGS} -s ALLOW_MEMORY_GROWTH=1 -s TOTAL_MEMORY=268435456") # 256MB + resize +set(WASM_LINKER_FLAGS "${WASM_LINKER_FLAGS} -s DISABLE_DEPRECATED_FIND_EVENT_TARGET_BEHAVIOR=1") add_definitions( -DDISABLE_DEPRECATED_FIND_EVENT_TARGET_BEHAVIOR=1 ) + # Stone of Orthanc configuration # --------------------------------------------------------------- set(ALLOW_DOWNLOADS ON) @@ -46,6 +44,10 @@ # populate the ORTHANC_STONE_SOURCES CMake variable include(${ORTHANC_STONE_ROOT}/Resources/CMake/OrthancStoneConfiguration.cmake) +include_directories( + ${CMAKE_SOURCE_DIR}/../../../OrthancStone/Sources/ + ) + if (CMAKE_BUILD_TYPE MATCHES Debug) # specific flags go here elseif (CMAKE_BUILD_TYPE MATCHES RelWithDebInfo) @@ -58,8 +60,6 @@ ################################################################################ -project(StoneWebViewer) - # Create the wrapper to call C++ from JavaScript # --------------------------------------------------------------- @@ -92,6 +92,12 @@ StoneWebViewer.cpp ) +set_target_properties(StoneWebViewer + PROPERTIES + COMPILE_FLAGS "${WASM_FLAGS}" + LINK_FLAGS "${WASM_LINKER_FLAGS}" + ) + # Make sure to have the wrapper generated add_dependencies(StoneWebViewer StoneWrapper)