Files
PyG2O/CMakeLists.txt
2023-01-09 21:30:29 +01:00

78 lines
1.7 KiB
CMake

cmake_minimum_required(VERSION 3.17)
project(squirrel-template)
option(INSTALL_AFTER_BUILD "Run cmake --install separately for every target after each build. By default this option is set to OFF" OFF)
set(GAME_PATH "" CACHE PATH "This option specifies the game location. It's only used for the installation step.")
set(SERVER_PATH "" CACHE PATH "This option specifies the server location. It's only used for the installation step.")
file(GLOB SRC
"src/api/squirrel_api.h"
"src/api/module_api.h"
"src/api/module_api.cpp"
"src/sqmain.cpp"
)
add_library(squirrel-template SHARED ${SRC})
target_compile_definitions(squirrel-template
PRIVATE
SCRAT_EXPORT
)
target_precompile_headers(squirrel-template
PRIVATE
"src/api/module_api.h"
"src/api/squirrel_api.h"
)
target_include_directories(squirrel-template
INTERFACE
"include/"
PRIVATE
"src/"
)
add_subdirectory(dependencies)
if(DEFINED OUT_FILE_SUFFIX)
set_target_properties(squirrel-template
PROPERTIES
PREFIX ""
SUFFIX ".${OUT_FILE_SUFFIX}${CMAKE_SHARED_LIBRARY_SUFFIX}"
)
endif()
if (NOT ${GAME_PATH} STREQUAL "")
install(TARGETS squirrel-template
RUNTIME
DESTINATION ${GAME_PATH}
COMPONENT "clientModule"
)
if(INSTALL_AFTER_BUILD)
add_custom_command(TARGET squirrel-template
POST_BUILD
COMMAND ${CMAKE_COMMAND} --install ${CMAKE_CURRENT_BINARY_DIR} --component "clientModule"
)
endif()
endif()
if (NOT ${SERVER_PATH} STREQUAL "")
install(TARGETS squirrel-template
RUNTIME
DESTINATION ${SERVER_PATH}
COMPONENT "serverModule"
)
if(INSTALL_AFTER_BUILD)
add_custom_command(TARGET squirrel-template
POST_BUILD
COMMAND ${CMAKE_COMMAND} --install ${CMAKE_CURRENT_BINARY_DIR} --component "serverModule"
)
endif()
endif()