mirror of
https://github.com/ScrelliCopter/Lesson10-SDL3.git
synced 2025-02-21 07:19:26 +11:00
36 lines
1.4 KiB
CMake
36 lines
1.4 KiB
CMake
cmake_minimum_required(VERSION "3.15" FATAL_ERROR)
|
|
project(Lesson10 LANGUAGES C)
|
|
|
|
find_package(SDL3 REQUIRED CONFIG)
|
|
find_package(OpenGL REQUIRED)
|
|
|
|
set(SOURCES Lesson10.c)
|
|
|
|
set(DATA
|
|
Data/Mud.bmp
|
|
Data/World.txt)
|
|
|
|
add_executable(Lesson10 WIN32 MACOSX_BUNDLE ${SOURCES} ${DATA})
|
|
set_property(TARGET Lesson10 PROPERTY C_STANDARD 99)
|
|
source_group("Data\\Random" FILES ${DATA})
|
|
target_link_libraries(Lesson10 SDL3::SDL3 OpenGL::GL)
|
|
target_compile_options(Lesson10 PRIVATE $<$<C_COMPILER_ID:GNU,Clang,AppleClang>:-Wall -Wextra -pedantic>)
|
|
target_compile_definitions(Lesson10 PRIVATE $<$<C_COMPILER_ID:MSVC>:_CRT_SECURE_NO_WARNINGS>)
|
|
|
|
if (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
|
get_property(SDL3_IMPORTED_LOCATION TARGET SDL3::SDL3 PROPERTY IMPORTED_LOCATION)
|
|
if (SDL3_IMPORTED_LOCATION MATCHES "^/Library/Frameworks/")
|
|
set_property(TARGET Lesson10 PROPERTY BUILD_RPATH "/Library/Frameworks")
|
|
endif()
|
|
foreach (RESOURCE IN LISTS DATA)
|
|
set_source_files_properties("${RESOURCE}" PROPERTIES MACOSX_PACKAGE_LOCATION "Resources/Data")
|
|
endforeach()
|
|
else()
|
|
add_custom_command(TARGET Lesson10 POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_directory
|
|
"${CMAKE_SOURCE_DIR}/Data" "$<TARGET_FILE_DIR:Lesson10>/Data")
|
|
if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
|
add_custom_command(TARGET Lesson10 POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different
|
|
$<TARGET_FILE:SDL3::SDL3> $<TARGET_FILE_DIR:Lesson10>)
|
|
endif()
|
|
endif()
|