AST/CMakeLists.txt
2021-01-10 00:30:09 +01:00

51 lines
1.5 KiB
CMake

# CMakeLists.txt
# Written by JackCarterSmith, 2021
# This code is released under the AST license.
set(CMAKE_VERBOSE_MAKEFILE ON)
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/sdl2)
cmake_minimum_required(VERSION 3.1)
cmake_policy(VERSION 3.1)
# define project
project(AST VERSION 1.0.0 DESCRIPTION "Arena Survival Tournament" LANGUAGES C)
set(AST_NAME AST-${PROJECT_VERSION})
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/config.h.in ${CMAKE_CURRENT_SOURCE_DIR}/src/config.h @ONLY)
include(CheckIncludeFile)
include(CheckCSourceCompiles)
# needed packages
find_package(SDL2 REQUIRED)
include_directories(${SDL2_INCLUDE_DIR})
find_package(SDL2_image REQUIRED)
include_directories(${SDL2_IMAGE_INCLUDE_DIR})
# define src/headers files
FILE(GLOB AST_SCRS src/*.c)
FILE(GLOB AST_HRDS src/*.h)
SOURCE_GROUP("Source Files" FILES ${AST_SCRS})
SOURCE_GROUP("Header Files" FILES ${AST_HRDS})
# begin building AST
#set(CMAKE_BUILD_TYPE Debug)
#include_directories(${CMAKE_CURRENT_SOURCE_DIR})
add_executable(AST ${AST_SCRS} ${AST_HRDS})
#set_property(TARGET AST PROPERTY C_STANDARD 99)
set_target_properties(AST PROPERTIES OUTPUT_NAME ${AST_NAME})
if(MSVC)
# msvc does not append 'lib' - do it here to have consistent name
set_target_properties(AST PROPERTIES PREFIX "lib")
set_target_properties(AST PROPERTIES IMPORT_PREFIX "lib")
endif()
target_link_libraries(AST ${SDL2_LIBRARIES} ${SDL2_IMAGE_LIBRARIES})
# install executable
install(TARGETS AST
RUNTIME DESTINATION bin
)