mirror of https://github.com/mode777/rayjs.git
48 lines
1.6 KiB
CMake
48 lines
1.6 KiB
CMake
cmake_minimum_required(VERSION 3.1)
|
|
project(my-game)
|
|
|
|
message("=== Configure SDL2 ===")
|
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/SDL EXCLUDE_FROM_ALL)
|
|
|
|
message("=== Configure Corrade ===")
|
|
set(CORRADE_BUILD_STATIC ON CACHE BOOL "" FORCE)
|
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/corrade EXCLUDE_FROM_ALL)
|
|
|
|
message("=== Configure Magnum ===")
|
|
# Add Magnum as a subproject, enable Sdl2Application
|
|
set(MAGNUM_BUILD_STATIC ON CACHE BOOL "" FORCE)
|
|
set(MAGNUM_WITH_WGLCONTEXT ON CACHE BOOL "" FORCE)
|
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/magnum EXCLUDE_FROM_ALL)
|
|
|
|
message("=== Configure QuickJS ===")
|
|
# add quickjs
|
|
set(quickjs_version 2021-03-27)
|
|
set(quickjs_sources_root ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/quickjs)
|
|
set(quickjs_sources
|
|
${quickjs_sources_root}/quickjs.h
|
|
${quickjs_sources_root}/quickjs-libc.h
|
|
${quickjs_sources_root}/quickjs.c
|
|
${quickjs_sources_root}/libregexp.c
|
|
${quickjs_sources_root}/libunicode.c
|
|
${quickjs_sources_root}/libbf.c
|
|
${quickjs_sources_root}/cutils.c
|
|
${quickjs_sources_root}/quickjs-libc.c
|
|
)
|
|
add_library(quickjs STATIC
|
|
${quickjs_sources}
|
|
)
|
|
target_compile_definitions(quickjs
|
|
PRIVATE
|
|
CONFIG_VERSION="${quickjs_version}"
|
|
)
|
|
target_include_directories(quickjs
|
|
PRIVATE
|
|
${quickjs_sources_root}
|
|
)
|
|
|
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
|
|
file(GLOB files src/*.cpp)
|
|
add_executable(${CMAKE_PROJECT_NAME} ${files})
|
|
target_include_directories(${CMAKE_PROJECT_NAME} PRIVATE include)
|
|
target_include_directories(${CMAKE_PROJECT_NAME} PRIVATE src)
|
|
target_link_libraries(${CMAKE_PROJECT_NAME} SDL2::SDL2-static Magnum::Magnum Magnum::GL Magnum::WglContext quickjs) |