Initial commit step0
This commit is contained in:
38
step0/Web.cmake
Normal file
38
step0/Web.cmake
Normal file
@@ -0,0 +1,38 @@
|
||||
set(CMAKE_SYSTEM_NAME WASI)
|
||||
set(CMAKE_SYSTEM_PROCESSOR WASM)
|
||||
set(CMAKE_SYSTEM_PROCESSOR_FAMILY WASM)
|
||||
set(WASM ON)
|
||||
set(WEB ON)
|
||||
|
||||
# Find clang/clang++ as compiler
|
||||
find_program(CMAKE_C_COMPILER clang)
|
||||
find_program(CMAKE_CXX_COMPILER clang++)
|
||||
find_program(CMAKE_ASM_COMPILER llvm-mc)
|
||||
|
||||
# Some options that affect the generated output
|
||||
set(WASM_OPTS -mbulk-memory -matomics -fignore-exceptions -msimd128)
|
||||
|
||||
add_compile_definitions(
|
||||
$<$<COMPILE_LANGUAGE:C,CXX>:__wasi__>
|
||||
$<$<COMPILE_LANGUAGE:C,CXX>:__WASM__>
|
||||
)
|
||||
add_compile_options(${WASM_OPTS})
|
||||
add_link_options(-nostdlib ${WASM_OPTS})
|
||||
|
||||
set(CMAKE_CROSSCOMPILING TRUE)
|
||||
set(CMAKE_EXECUTABLE_SUFFIX_CXX ".wasm")
|
||||
set(CMAKE_EXECUTABLE_SUFFIX_C ".wasm")
|
||||
|
||||
set(BUILD_SHARED_LIBS OFF)
|
||||
|
||||
set(CMAKE_C_COMPILER_TARGET unknown-unknown-wasm32-web)
|
||||
set(CMAKE_CXX_COMPILER_TARGET unknown-unknown-wasm32-web)
|
||||
set(CMAKE_ASM_COMPILER_TARGET unknown-unknown-wasm32-web)
|
||||
|
||||
# adjust the default behavior of the FIND_XXX() commands:
|
||||
# search programs in the host environment
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||
|
||||
# search headers and libraries in the target environment
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||
Reference in New Issue
Block a user