-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
43 lines (36 loc) · 1.25 KB
/
CMakeLists.txt
File metadata and controls
43 lines (36 loc) · 1.25 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
cmake_minimum_required(VERSION 3.16)
project(FallingSandCellularAutomata)
set(CMAKE_CXX_STANDARD 23)
if (WIN32)
set(SDL2_DIR "${CMAKE_SOURCE_DIR}/SDL2/cmake")
set(SDL2_INCLUDE_DIR "${CMAKE_SOURCE_DIR}/SDL2/include")
set(SDL2_LIBRARIES "${CMAKE_SOURCE_DIR}/SDL2/lib/X64/SDL2.lib")
endif()
find_package(SDL2 REQUIRED)
# Include SDL2 and project header directories
include_directories(FallingSandCellularAutomata ${SDL2_INCLUDE_DIR})
include_directories("${CMAKE_SOURCE_DIR}/include")
# Add source files
set(SOURCES
src/world/Chunk.cpp
src/world/ChunkWorker.cpp
src/materials/solid/Concrete.cpp
src/Element.cpp
src/materials/gas/Fire.cpp
src/materials/gas/Gas.cpp
src/world/Grid.cpp
src/materials/liquid/Liquid.cpp
src/FallingSand.cpp
src/utils/Renderer.cpp
src/materials/solid/Sand.cpp
src/materials/gas/Smoke.cpp
src/materials/solid/Solid.cpp
src/materials/gas/Steam.cpp
src/utils/ToolHandler.cpp
src/materials/liquid/Water.cpp
src/materials/solid/Wood.cpp
# Add additional .cpp files here
)
add_executable(${PROJECT_NAME} ${SOURCES})
# Link SDL2 libraries
target_link_libraries(${PROJECT_NAME} ${SDL2_LIBRARIES})