Skip to content
Snippets Groups Projects
Select Git revision
  • main default protected
1 result

CMakeLists.txt

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    CMakeLists.txt 735 B
    
    
    project (sdclib)
    cmake_minimum_required(VERSION 3.5.1)
    option(JS_ONLY "Compiles to native JS (No WASM)" OFF)
    
    add_definitions(-std=c++17 -O3)
    include_directories(include)
    
    file(GLOB SOURCES src/*.cpp)
    
    set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_SOURCE_DIR}/public")
    add_executable(a ${SOURCES} src/main.cpp)
    
    if(JS_ONLY)
    	message(STATUS "Setting compilation target to native JavaScript")
    	set(CMAKE_EXECUTABLE_SUFFIX ".js")
    	set_target_properties(a PROPERTIES LINK_FLAGS "-s WASM=0 -s EXPORTED_FUNCTIONS='[_main]'")
    else(JS_ONLY)
    	message(STATUS "Setting compilation target to WASM")
    	set(CMAKE_EXECUTABLE_SUFFIX ".wasm.js")
    	set_target_properties(a PROPERTIES LINK_FLAGS "-s WASM=1 -s EXPORTED_FUNCTIONS='[_main]'")
    endif(JS_ONLY)