blob: 3a2207abc665b262dc2b2970ea66cd32620f54b8 (
plain)
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
|
# Subsystem Library Targets
# Defines the 5 core static libraries
# Utility library
add_library(util STATIC ${UTIL_SOURCES})
add_dependencies(util generate_demo_assets generate_test_assets)
target_include_directories(util PUBLIC ${CORE_INCLUDES})
# Procedural generation library
add_library(procedural STATIC ${PROCEDURAL_SOURCES})
target_include_directories(procedural PUBLIC ${CORE_INCLUDES})
# Audio synthesis and processing library
add_library(audio STATIC ${AUDIO_SOURCES})
add_dependencies(audio generate_demo_assets)
target_include_directories(audio PUBLIC ${CORE_INCLUDES})
# 3D rendering library
add_library(3d STATIC ${3D_SOURCES})
add_dependencies(3d generate_demo_assets)
target_include_directories(3d PUBLIC ${CORE_INCLUDES})
# GPU effects library
add_library(gpu STATIC ${GPU_SOURCES})
add_dependencies(gpu generate_demo_assets)
target_include_directories(gpu PUBLIC ${CORE_INCLUDES})
# Note: Static libraries do not strictly need to link dependencies,
# but if they did, PRIVATE would propagate to the executable.
# We will link them in the executable to be explicit and avoid order issues.
|