# CMakeLists.txt # Written by JackCarterSmith, 2021 # This code is released under the AST license. 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}) # 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}) # install executable install(TARGETS ast RUNTIME DESTINATION bin )