mirror of
https://github.com/QuasarApp/CMake.git
synced 2025-04-26 17:54:43 +00:00
added wasm support (crossplatform build)
This commit is contained in:
parent
a10b5073fe
commit
8d71bd1bd9
38
crossplatform/Linux/wasm32.cmake
Executable file
38
crossplatform/Linux/wasm32.cmake
Executable file
@ -0,0 +1,38 @@
|
||||
#
|
||||
# Copyright (C) 2020-2020 QuasarApp.
|
||||
# Distributed under the MIT software license, see the accompanying
|
||||
# Everyone is permitted to copy and distribute verbatim copies
|
||||
# of this license document, but changing it is not allowed.
|
||||
#
|
||||
|
||||
if(DEFINED CROSSPLATFORM_BUILD_TOOLCHAIN_WASM_32)
|
||||
return()
|
||||
else()
|
||||
set(CROSSPLATFORM_BUILD_TOOLCHAIN_WASM_32 1)
|
||||
endif()
|
||||
|
||||
# the name of the target operating system
|
||||
|
||||
message("Building from Linux for Wasm_32")
|
||||
|
||||
add_link_options("SHELL:-s FETCH=1")
|
||||
add_link_options("SHELL:-s WASM=1")
|
||||
add_link_options("SHELL:-s FULL_ES2=1")
|
||||
add_link_options("SHELL:-s FULL_ES3=1")
|
||||
add_link_options("SHELL:-s USE_WEBGL2=1")
|
||||
add_link_options("SHELL:-s EXIT_RUNTIME=1")
|
||||
add_link_options("SHELL:-s ERROR_ON_UNDEFINED_SYMBOLS=1")
|
||||
add_link_options("SHELL:-s EXTRA_EXPORTED_RUNTIME_METHODS=[\"UTF16ToString\",\"stringToUTF16\"]")
|
||||
|
||||
add_link_options("--bind")
|
||||
|
||||
set(CMAKE_C_COMPILER emcc)
|
||||
#set_property(GLOBAL PROPERTY CMAKE_C_COMPILER emcc)
|
||||
#add_definitions(-DCMAKE_C_COMPILER="emcc")
|
||||
|
||||
set(CMAKE_CXX_COMPILER em++)
|
||||
#set_property(GLOBAL PROPERTY CMAKE_CXX_COMPILER em++)
|
||||
#add_definitions(-DCMAKE_CXX_COMPILER="em++")
|
||||
set(BUILD_SHARED_LIBS OFF)
|
||||
#set_property(GLOBAL PROPERTY BUILD_SHARED_LIBS OFF)
|
||||
#add_definitions(-DBUILD_SHARED_LIBS="OFF")
|
@ -11,17 +11,19 @@ else()
|
||||
set(CROSSPLATFORM_BUILD_TOOLCHAIN 1)
|
||||
endif()
|
||||
|
||||
# use TRGET_PLATFORM_LOOLCHAIN
|
||||
# use TARGET_PLATFORM_TOOLCHAIN
|
||||
|
||||
set(CROSSPLATFORM_BUILD_TOOLCHAIN_PATH ${CMAKE_CURRENT_LIST_DIR}/${CMAKE_HOST_SYSTEM_NAME}/${TRGET_PLATFORM_TOOLCHAIN}.cmake)
|
||||
|
||||
set(CROSSPLATFORM_BUILD_TOOLCHAIN_PATH ${CMAKE_CURRENT_LIST_DIR}/${CMAKE_HOST_SYSTEM_NAME}/${TARGET_PLATFORM_TOOLCHAIN}.cmake)
|
||||
|
||||
message("CROSSPLATFORM_BUILD_TOOLCHAIN_PATH = ${CROSSPLATFORM_BUILD_TOOLCHAIN_PATH}")
|
||||
if(EXISTS ${CROSSPLATFORM_BUILD_TOOLCHAIN_PATH})
|
||||
|
||||
message("${TRGET_PLATFORM_TOOLCHAIN} exits in ${CROSSPLATFORM_BUILD_TOOLCHAIN_PATH}")
|
||||
message("${TARGET_PLATFORM_TOOLCHAIN} exits in ${CROSSPLATFORM_BUILD_TOOLCHAIN_PATH}")
|
||||
|
||||
include(${CROSSPLATFORM_BUILD_TOOLCHAIN_PATH})
|
||||
|
||||
else(EXISTS ${CROSSPLATFORM_BUILD_TOOLCHAIN_PATH})
|
||||
message("${TRGET_PLATFORM_TOOLCHAIN} not exits in ${CROSSPLATFORM_BUILD_TOOLCHAIN_PATH}")
|
||||
message("${TARGET_PLATFORM_TOOLCHAIN} not exits in ${CROSSPLATFORM_BUILD_TOOLCHAIN_PATH}")
|
||||
endif()
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user