mirror of
https://github.com/Jous99/F4MP.git
synced 2026-01-12 16:50:54 +01:00
87 lines
1.7 KiB
CMake
87 lines
1.7 KiB
CMake
cmake_minimum_required(VERSION 3.7)
|
|
project(F4MPServer)
|
|
|
|
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} CMakeModules/)
|
|
|
|
set(executable F4MPServer)
|
|
set(SrcDIR ./src)
|
|
set(IncludeDIR ./include)
|
|
|
|
# Setting build information and resource path for the program
|
|
|
|
add_definitions(-D_RESOURCES="${CMAKE_CURRENT_SOURCE_DIR}/resources/")
|
|
message(${CMAKE_CURRENT_SOURCE_DIR}/resources)
|
|
|
|
execute_process(COMMAND git log --pretty=format:'%H' -n 1
|
|
OUTPUT_VARIABLE GIT_REV
|
|
ERROR_QUIET)
|
|
|
|
add_definitions(-DGIT_VERSION="${GIT_REV}")
|
|
|
|
string(TIMESTAMP BUILD_TIME "%Y-%m-%d %H:%M")
|
|
add_definitions(-DBUILD_TIME="${BUILD_TIME}")
|
|
|
|
add_definitions(-DVERSION_MAJOR="0")
|
|
add_definitions(-DVERSION_MINOR="0")
|
|
add_definitions(-DVERSION_PATCH="1")
|
|
|
|
# Project definitions
|
|
|
|
if (UNIX)
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17")
|
|
endif(UNIX)
|
|
|
|
# Include Dependencies
|
|
|
|
set(THREADS_PREFER_PTHREAD_FLAD ON)
|
|
find_package(Threads REQUIRED)
|
|
|
|
if (WIN32)
|
|
# set(CMAKE_CXX_FLAGS "/Ox")
|
|
include_directories(${executable}
|
|
)
|
|
endif (WIN32)
|
|
|
|
if (UNIX)
|
|
include_directories(${executable}
|
|
)
|
|
endif (UNIX)
|
|
|
|
include_directories(${executable}
|
|
${IncludeDIR}
|
|
)
|
|
|
|
# Building
|
|
|
|
file(GLOB SourceFiles
|
|
${SrcDIR}/*
|
|
${SrcDIR}/ThirdParty/*
|
|
${SrcDIR}/ThirdParty/nlohmann*
|
|
)
|
|
|
|
add_executable(${executable} ${SourceFiles})
|
|
|
|
set_target_properties(${executable} PROPERTIES
|
|
CXX_STANDARD 17
|
|
CXX_EXTENSIONS ON
|
|
)
|
|
|
|
|
|
# Link Dependencies
|
|
|
|
if (UNIX)
|
|
target_link_libraries(${executable}
|
|
)
|
|
endif (UNIX)
|
|
|
|
if (WIN32)
|
|
target_link_libraries(${executable}
|
|
)
|
|
|
|
endif (WIN32)
|
|
|
|
target_link_libraries(${executable}
|
|
${CMAKE_DL_LIBS}
|
|
${CMAKE_CURRENT_SOURCE_DIR}/lib/GameNetworkingSockets_s.lib
|
|
${CMAKE_CURRENT_SOURCE_DIR}/lib/spdlogd.lib
|
|
)
|