Files
letnik3koncni-prap/CMakeLists.txt
2026-03-10 22:06:38 +01:00

36 lines
1.0 KiB
CMake

cmake_minimum_required(VERSION 3.16)
project(Letnik3Zadnja)
set(CMAKE_CXX_STANDARD 23)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
# Include FetchContent to download SDL from source
include(FetchContent)
# Download SDL2 from source
FetchContent_Declare(
SDL2
GIT_REPOSITORY https://github.com/libsdl-org/SDL.git
GIT_TAG release-2.30.3
)
# Work around PipeWire API mismatch on some Linux distributions.
# Disable PipeWire backend in SDL; PulseAudio/ALSA backends remain available.
set(SDL_PIPEWIRE OFF CACHE BOOL "Disable SDL PipeWire backend" FORCE)
set(SDL_PIPEWIRE_SHARED OFF CACHE BOOL "Disable dynamic PipeWire loading in SDL" FORCE)
# Make SDL available
FetchContent_MakeAvailable(SDL2)
# Collect all source files from src/ and nested directories
file(GLOB_RECURSE SOURCES CONFIGURE_DEPENDS "src/*.cpp")
# Create the executable
add_executable(${PROJECT_NAME} ${SOURCES})
# Include headers from include/
target_include_directories(${PROJECT_NAME} PRIVATE include)
# Link SDL2 to the executable
target_link_libraries(${PROJECT_NAME} PRIVATE SDL2::SDL2)