Provide osgemscripten example CMake flags in a more stable way

This commit is contained in:
Michael Kapelko 2018-03-23 18:07:07 +03:00
parent b48db74fa3
commit 1170f6247e

View File

@ -14,12 +14,12 @@ SET(DYNAMIC_OPENTHREADS OFF CACHE BOOL "Link OpenThreads statically")
SET(DYNAMIC_OPENSCENEGRAPH OFF CACHE BOOL "Link OpenSceneGraph statically") SET(DYNAMIC_OPENSCENEGRAPH OFF CACHE BOOL "Link OpenSceneGraph statically")
# Prevent CMake configuration error. # Prevent CMake configuration error.
SET(_OPENTHREADS_ATOMIC_USE_GCC_BUILTINS_EXITCODE "0" CACHE STRING "Prevent cfg error") SET(_OPENTHREADS_ATOMIC_USE_GCC_BUILTINS_EXITCODE "0" CACHE STRING "Prevent cfg error")
# Reference SDL2 during build process.
# We use SDL2 to do the following: # Set special build flags:
# * OpenGL functions' address retrieval # * -O3: make compact binary, critical for web
# * OpenGL graphics context creation # * -s USE_SDL=2: provide SDL2
SET(USE_SDL2 "-s USE_SDL=2") SET(BUILD_FLAGS "-O3 -s USE_SDL=2")
SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${USE_SDL2}" CACHE STRING "Use SDL2" FORCE) ADD_DEFINITIONS(${BUILD_FLAGS})
# Reference OpenSceneGraph includes and libraries. # Reference OpenSceneGraph includes and libraries.
SET(OSG_SOURCE_DIR "${OSG_DIR}") SET(OSG_SOURCE_DIR "${OSG_DIR}")
@ -42,7 +42,7 @@ ADD_EXECUTABLE(osgemscripten osgemscripten.cpp)
# Make Emscripten generate ready-to-open HTML page. # Make Emscripten generate ready-to-open HTML page.
SET(CMAKE_EXECUTABLE_SUFFIX ".html") SET(CMAKE_EXECUTABLE_SUFFIX ".html")
# Make Emscripten preload the resource. # Make Emscripten preload the resource.
SET_TARGET_PROPERTIES(osgemscripten PROPERTIES LINK_FLAGS "--preload-file box.osgt") SET_TARGET_PROPERTIES(osgemscripten PROPERTIES LINK_FLAGS "--preload-file box.osgt ${BUILD_FLAGS}")
# Copy the resource to the build directory. # Copy the resource to the build directory.
CONFIGURE_FILE(box.osgt box.osgt COPYONLY) CONFIGURE_FILE(box.osgt box.osgt COPYONLY)
# Libraries must be linked in the specified order. # Libraries must be linked in the specified order.