-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
71 lines (56 loc) · 2.88 KB
/
CMakeLists.txt
File metadata and controls
71 lines (56 loc) · 2.88 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
cmake_minimum_required(VERSION 3.22)
# set the project name
project(DFGEngine VERSION 0.1)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
# helper so we don't repeat CACHE BOOL FORCE everywhere
function(set_dep_option name value)
set(${name} ${value} CACHE BOOL "" FORCE)
endfunction()
# ---- RTTR configuration ----
set_dep_option(BUILD_UNIT_TESTS OFF)
set_dep_option(BUILD_STATIC ON)
set_dep_option(BUILD_WITH_STATIC_RUNTIME_LIBS ON)
set_dep_option(BUILD_EXAMPLES OFF)
set_dep_option(BUILD_DOCUMENTATION OFF)
set_dep_option(BUILD_INSTALLER OFF)
set_dep_option(BUILD_PACKAGE OFF)
set_dep_option(USE_PCH OFF)
set_dep_option(CUSTOM_DOXYGEN_STYLE OFF)
#submodule dependencies
add_subdirectory(DFGEngine/vendor/SDL)
add_subdirectory(DFGEngine/vendor/Glad)
add_subdirectory(DFGEngine/vendor/freetype)
add_subdirectory(DFGEngine/vendor/openal-soft)
add_subdirectory(DFGEngine/vendor/libsndfile)
add_subdirectory(DFGEngine/vendor/Lua)
add_subdirectory(DFGEngine/vendor/rttr)
set_target_properties(glad PROPERTIES FOLDER "Dependencies")
set_target_properties(freetype PROPERTIES FOLDER "Dependencies")
set_target_properties(mpeg_test PROPERTIES FOLDER "Dependencies/libsndfile")
set_target_properties(ogg_opus_test PROPERTIES FOLDER "Dependencies/libsndfile")
set_target_properties(sndfile PROPERTIES FOLDER "Dependencies/libsndfile")
set_target_properties(SDL2 PROPERTIES FOLDER "Dependencies/SDL2")
set_target_properties(SDL2main PROPERTIES FOLDER "Dependencies/SDL2")
set_target_properties(SDL2_test PROPERTIES FOLDER "Dependencies/SDL2")
set_target_properties(SDL2-static PROPERTIES FOLDER "Dependencies/SDL2")
set_target_properties(sdl_headers_copy PROPERTIES FOLDER "Dependencies/SDL2")
set_target_properties(OpenAL PROPERTIES FOLDER "Dependencies/OpenAL")
set_target_properties(build_version PROPERTIES FOLDER "Dependencies/OpenAL")
set_target_properties(alcommon PROPERTIES FOLDER "Dependencies/OpenAL")
set_target_properties(al-excommon PROPERTIES FOLDER "Dependencies/OpenAL")
set_target_properties(openal-info PROPERTIES FOLDER "Dependencies/OpenAL")
set_target_properties(alrecord PROPERTIES FOLDER "Dependencies/OpenAL")
set_target_properties(altonegen PROPERTIES FOLDER "Dependencies/OpenAL")
set_target_properties(lua_shared PROPERTIES FOLDER "Dependencies/Lua")
set_target_properties(lua_static PROPERTIES FOLDER "Dependencies/Lua")
set_target_properties(luac PROPERTIES FOLDER "Dependencies/Lua")
set_target_properties(rttr_core_lib PROPERTIES FOLDER "Dependencies/rttr")
set_target_properties(rttr_core PROPERTIES FOLDER "Dependencies/rttr")
set_target_properties(rttr_core_lib_s PROPERTIES FOLDER "Dependencies/rttr")
set_target_properties(rttr_core_s PROPERTIES FOLDER "Dependencies/rttr")
add_subdirectory(DFGEngine)
add_subdirectory(DFGEditor)
add_subdirectory(Sandbox)
set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT Sandbox)