# CMakeLists.txt # Written by JackCarterSmith, 2021 # This code is released under the RSE license. cmake_minimum_required(VERSION 3.1) cmake_policy(VERSION 3.1) set(CMAKE_MODULE_PATH ${CMAKE_BINARY_DIR}) # define project add_definitions(-DCONF_NO_GL) if(DEFINED ENV{CI}) project(rse-map VERSION $ENV{CI_VERSION}.$ENV{CI_BUILD_NUMBER} DESCRIPTION "RogueSquadron Extractor - Map" LANGUAGES C) set(RSE_MAP_NAME $ENV{CI_OUTPUT_NAME}-${PROJECT_VERSION}) else() project(rse-map VERSION 1.0.0 DESCRIPTION "RogueSquadron Extractor - Map" LANGUAGES C) set(RSE_MAP_NAME RSE_Map-${PROJECT_VERSION}) endif() 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(ZLIB 1.2.11 EXACT REQUIRED) include_directories(${ZLIB_INCLUDE_DIR}) find_package(PNG 1.6.37 EXACT REQUIRED) include_directories(${PNG_INCLUDE_DIR}) #find_package(GLEW REQUIRED) #include_directories(${GLEW_INCLUDE_DIR}) # define src/headers files FILE(GLOB_RECURSE RSE_MAP_SRCS src/*.c) FILE(GLOB_RECURSE RSE_MAP_HRDS src/*.h) SOURCE_GROUP("Source Files" FILES ${RSE_MAP_SRCS}) SOURCE_GROUP("Header Files" FILES ${RSE_MAP_HRDS}) # begin building RSE-Map #set(CMAKE_BUILD_TYPE Debug) #include_directories(${CMAKE_CURRENT_SOURCE_DIR}) add_executable(rse-map ${RSE_MAP_SRCS} ${RSE_MAP_HRDS}) #set_property(TARGET rse-map PROPERTY C_STANDARD 99) set_target_properties(rse-map PROPERTIES OUTPUT_NAME ${RSE_MAP_NAME}) if(MSVC) # msvc does not append 'lib' - do it here to have consistent name #set_target_properties(rse-map PROPERTIES PREFIX "lib") set_target_properties(rse-map PROPERTIES IMPORT_PREFIX "lib") endif() if(MSVC) target_link_libraries(rse-map ${ZLIB_LIBRARIES} ${PNG_LIBRARIES}) else() target_link_libraries(rse-map ${ZLIB_LIBRARIES} ${PNG_LIBRARIES} m) endif() # add GPG signature command #add_custom_command( # OUTPUT "" # COMMAND gpg --batch --detach-sign # -o ${RSE_MAP_NAME}_${CI_SYS_TARGET}.gpg # ${RSE_MAP_NAME} # DEPENDS ${RSE_MAP_NAME} # VERBATIM #) # install executable install(TARGETS rse-map RUNTIME DESTINATION bin )