cmake_minimum_required(VERSION 3.24)
project(zuma_launch_tests LANGUAGES C)
set(CMAKE_C_STANDARD 11)
get_filename_component(GAME "${CMAKE_CURRENT_SOURCE_DIR}/../.." ABSOLUTE)
add_executable(launch-test
  "${GAME}/core/launch_license.c"
  "${GAME}/core/launch_platform.c"
  "${GAME}/core/launch_state.c"
  "${GAME}/core/vendor/monocypher/monocypher.c"
  "${GAME}/core/vendor/monocypher/monocypher-ed25519.c"
  fixture.c)
target_include_directories(launch-test PRIVATE "${GAME}/core")
target_compile_definitions(launch-test PRIVATE "ZUMA_LAUNCH_CONFIG_HEADER=\"${LAUNCH_CONFIG_HEADER}\"")
target_compile_options(launch-test PRIVATE -O2 -Wall -Wextra)
target_link_options(launch-test PRIVATE -O2 -g0
  -sMODULARIZE=1 -sEXPORT_ES6=1 -sENVIRONMENT=node -sFILESYSTEM=0
  -sEXPORTED_FUNCTIONS=_malloc,_free -sEXPORTED_RUNTIME_METHODS=HEAPU8
  -sALLOW_MEMORY_GROWTH=1 -sINITIAL_MEMORY=16777216)
set_target_properties(launch-test PROPERTIES SUFFIX ".mjs")
