37 lines
1 KiB
CMake
37 lines
1 KiB
CMake
cmake_minimum_required(VERSION 3.21)
|
|
project(dice-gui)
|
|
|
|
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 vendor/ceramic/**.cpp)
|
|
include_directories(vendor/)
|
|
|
|
|
|
set(SDL_VENDORED ON)
|
|
add_subdirectory(vendor/SDL3/ EXCLUDE_FROM_ALL)
|
|
set(SDLTTF_VENDORED ON)
|
|
add_subdirectory(vendor/SDL3_ttf EXCLUDE_FROM_ALL)
|
|
set(SDLIMAGE_AVIF OFF)
|
|
set(SDLIMAGE_BMP OFF)
|
|
set(SDLIMAGE_TIF OFF)
|
|
set(SDLIMAGE_WEBP OFF)
|
|
set(SDLIMAGE_VENDORED ON)
|
|
add_subdirectory(vendor/SDL3_image EXCLUDE_FROM_ALL)
|
|
|
|
add_executable(dice-gui ${source_files})
|
|
target_link_libraries(dice-gui PRIVATE
|
|
SDL3_ttf::SDL3_ttf
|
|
SDL3_image::SDL3_image
|
|
SDL3::SDL3)
|
|
|
|
add_custom_target(copy_assets
|
|
COMMAND ${CMAKE_COMMAND} -E
|
|
copy_directory ${CMAKE_SOURCE_DIR}/assets/ ${CMAKE_BINARY_DIR}/assets
|
|
)
|
|
add_dependencies(dice-gui copy_assets)
|