26 lines
		
	
	
		
			798 B
		
	
	
	
		
			CMake
		
	
	
	
	
	
			
		
		
	
	
			26 lines
		
	
	
		
			798 B
		
	
	
	
		
			CMake
		
	
	
	
	
	
cmake_minimum_required(VERSION 3.21)
 | 
						|
project(GameOfLife)
 | 
						|
 | 
						|
set(CMAKE_BINARY_DIR "${CMAKE_SOURCE_DIR}/bin")
 | 
						|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}")
 | 
						|
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}")
 | 
						|
 | 
						|
set(CMAKE_CXX_STANDARD 23)
 | 
						|
set(CMAKE_C_STANDARD 23)
 | 
						|
 | 
						|
file(GLOB_RECURSE source_files . src/**.cpp src/**.c vendor/renderer/**.c)
 | 
						|
include_directories(vendor/)
 | 
						|
 | 
						|
add_subdirectory(vendor/SDL3/ EXCLUDE_FROM_ALL)
 | 
						|
set(SDLTTF_VENDORED ON)
 | 
						|
add_subdirectory(vendor/SDL3_ttf/ EXCLUDE_FROM_ALL)
 | 
						|
 | 
						|
add_executable(GameOfLife ${source_files})
 | 
						|
target_link_libraries(GameOfLife PRIVATE SDL3_ttf::SDL3_ttf SDL3::SDL3)
 | 
						|
 | 
						|
add_custom_target(copy_assets
 | 
						|
    COMMAND ${CMAKE_COMMAND} -E
 | 
						|
	copy_directory ${CMAKE_SOURCE_DIR}/assets/ ${CMAKE_BINARY_DIR}/assets
 | 
						|
)
 | 
						|
add_dependencies(GameOfLife copy_assets)
 |