summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorPablo Marcos Oltra <[email protected]>2018-07-25 00:39:17 +0200
committerAhmad Fatoum <[email protected]>2018-07-25 00:39:17 +0200
commitfa0de480f041a420e618d91e601d9a6bbc0c3425 (patch)
tree1352612fd6ba8673fe20246725d8a62495749e6e
parent361d878b4c70bcae72164e4f069f151d902e872d (diff)
downloadraylib-fa0de480f041a420e618d91e601d9a6bbc0c3425.tar.gz
raylib-fa0de480f041a420e618d91e601d9a6bbc0c3425.zip
Fix HTML5 examples and games using CMake (#589)
Mimic the Makefile by outputting html + js instead of LLVM IR.
-rw-r--r--examples/CMakeLists.txt8
-rw-r--r--games/CMakeLists.txt12
2 files changed, 17 insertions, 3 deletions
diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
index a71ec565..613fea6a 100644
--- a/examples/CMakeLists.txt
+++ b/examples/CMakeLists.txt
@@ -35,6 +35,7 @@ endforeach()
include(CheckIncludeFiles)
list(REMOVE_ITEM example_sources ${CMAKE_CURRENT_SOURCE_DIR}/others/standard_lighting.c)
+set(OUTPUT_EXT)
if(${PLATFORM} MATCHES "Android")
list(REMOVE_ITEM example_sources ${CMAKE_CURRENT_SOURCE_DIR}/others/rlgl_standalone.c)
@@ -56,7 +57,10 @@ if(${PLATFORM} MATCHES "Android")
list(REMOVE_ITEM example_sources ${CMAKE_CURRENT_SOURCE_DIR}/shaders/shaders_custom_uniform.c)
list(REMOVE_ITEM example_sources ${CMAKE_CURRENT_SOURCE_DIR}/shaders/shaders_model_shader.c)
list(REMOVE_ITEM example_sources ${CMAKE_CURRENT_SOURCE_DIR}/shaders/shaders_postprocessing.c)
-
+elseif(${PLATFORM} MATCHES "Web")
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Os -s USE_GLFW=3 -s ASSERTIONS=1 -s WASM=1 -s EMTERPRETIFY=1 -s EMTERPRETIFY_ASYNC=1")
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} --shell-file ${CMAKE_SOURCE_DIR}/templates/web_shell/shell.html")
+ set(OUTPUT_EXT ".html")
endif()
@@ -64,7 +68,7 @@ endif()
foreach(example_source ${example_sources})
# Create the basename for the example
get_filename_component(example_name ${example_source} NAME)
- string(REPLACE ".c" "" example_name ${example_name})
+ string(REPLACE ".c" "${OUTPUT_EXT}" example_name ${example_name})
# Setup the example
add_executable(${example_name} ${example_source})
diff --git a/games/CMakeLists.txt b/games/CMakeLists.txt
index 35c99139..563dbb61 100644
--- a/games/CMakeLists.txt
+++ b/games/CMakeLists.txt
@@ -11,11 +11,21 @@ include_directories("../build/release")
# Get the source toegher
file(GLOB sources *.c)
+message("PLATFORM = ${PLATFORM}")
+set(OUTPUT_EXT)
+
+if(${PLATFORM} MATCHES "Web")
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Os -s USE_GLFW=3 -s ASSERTIONS=1 -s WASM=1 -s EMTERPRETIFY=1 -s EMTERPRETIFY_ASYNC=1")
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} --shell-file ${CMAKE_SOURCE_DIR}/templates/web_shell/shell.html")
+ set(OUTPUT_EXT ".html")
+endif()
+
+
# Do each game
foreach(game_source ${sources})
# Create the basename for the game
get_filename_component(game_name ${game_source} NAME)
- string(REPLACE ".c" "" game_name ${game_name})
+ string(REPLACE ".c" "${OUTPUT_EXT}" game_name ${game_name})
# Setup the game
add_executable(${game_name} ${game_source})