Mercurial > hg > orthanc
annotate OrthancFramework/Resources/CMake/EmscriptenParameters.cmake @ 4119:bf7b9edf6b81 framework-lgpl
re-licensing the OrthancFramework to LGPL, in order to license Stone of Orthanc under LGPL
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 07 Jul 2020 19:17:56 +0200 |
parents | ea95eecead6f |
children | 304842a0d152 |
rev | line source |
---|---|
4075 | 1 # https://github.com/emscripten-core/emscripten/blob/master/src/settings.js |
2 | |
4063
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
3 if (NOT "${EMSCRIPTEN_TRAP_MODE}" STREQUAL "") |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
4 set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -s BINARYEN_TRAP_MODE='\"${EMSCRIPTEN_TRAP_MODE}\"'") |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
5 endif() |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
6 |
4075 | 7 # "DISABLE_EXCEPTION_CATCHING" is a "compile+link" option. HOWEVER, |
8 # setting it inside "WASM_FLAGS" creates link errors, at least with | |
9 # side modules. TODO: Understand why | |
4069
cf454aabfc19
improving EmscriptenParameters.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4067
diff
changeset
|
10 set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -s DISABLE_EXCEPTION_CATCHING=0") |
4075 | 11 #set(WASM_FLAGS "${WASM_FLAGS} -s DISABLE_EXCEPTION_CATCHING=0") |
4069
cf454aabfc19
improving EmscriptenParameters.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4067
diff
changeset
|
12 |
4063
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
13 if (EMSCRIPTEN_TARGET_MODE STREQUAL "wasm") |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
14 # WebAssembly |
4070
f1e82dd6acb1
fixed emscripten options
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4069
diff
changeset
|
15 set(WASM_FLAGS "${WASM_FLAGS} -s WASM=1") |
4063
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
16 |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
17 elseif (EMSCRIPTEN_TARGET_MODE STREQUAL "asm.js") |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
18 # asm.js targeting IE 11 |
4070
f1e82dd6acb1
fixed emscripten options
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4069
diff
changeset
|
19 set(WASM_FLAGS "-s WASM=0 -s ASM_JS=2 -s LEGACY_VM_SUPPORT=1") |
4063
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
20 |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
21 else() |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
22 message(FATAL_ERROR "Bad value for EMSCRIPTEN_TARGET_MODE: ${EMSCRIPTEN_TARGET_MODE}") |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
23 endif() |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
24 |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
25 if (CMAKE_BUILD_TYPE STREQUAL "Debug") |
4069
cf454aabfc19
improving EmscriptenParameters.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
4067
diff
changeset
|
26 set(WASM_FLAGS "${WASM_FLAGS} -s SAFE_HEAP=1 -s ASSERTIONS=1") |
4063
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
27 endif() |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
28 |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
29 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${WASM_FLAGS}") |
e00f3d089991
shared library of orthanc framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff
changeset
|
30 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${WASM_FLAGS}") |