CMake changes: - Replace text files containing paths to installation, with install commands - You can set paths as cache variable - Added new option INSTALL_AFTER_BUILD Code changes: - Revert the changes to allow usage for older versions of g2o (like 0.1.9) This change is only temporary, to publish the release module fo the older g2o versions.
65 lines
1.6 KiB
CMake
65 lines
1.6 KiB
CMake
cmake_minimum_required(VERSION 3.17)
|
|
|
|
project(SqModule)
|
|
|
|
option(INSTALL_AFTER_BUILD "Run cmake --install separately for every target after each build. By default this option is set to OFF" ON)
|
|
|
|
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
|
|
"dependencies/squirrel/include/*.h"
|
|
"dependencies/sqrat/include/*.h"
|
|
"src/api/squirrel_api.h"
|
|
"src/api/module_api.h"
|
|
"src/api/module_api.cpp"
|
|
"src/pch.h"
|
|
"src/sqmain.cpp"
|
|
)
|
|
|
|
add_subdirectory("dependencies/squirrel/squirrel")
|
|
|
|
add_library(SqModule SHARED ${SRC})
|
|
target_precompile_headers(SqModule PRIVATE "src/pch.h")
|
|
|
|
target_include_directories(SqModule
|
|
INTERFACE
|
|
"include/"
|
|
PRIVATE
|
|
"src/"
|
|
"dependencies/squirrel/include/"
|
|
"dependencies/sqrat/include/"
|
|
)
|
|
|
|
target_link_libraries(SqModule PRIVATE squirrel_static)
|
|
|
|
if (NOT ${GAME_PATH} STREQUAL "")
|
|
install(TARGETS SqModule
|
|
RUNTIME
|
|
DESTINATION ${GAME_PATH}
|
|
COMPONENT "clientModule"
|
|
)
|
|
|
|
if(INSTALL_AFTER_BUILD)
|
|
add_custom_command(TARGET SqModule
|
|
POST_BUILD
|
|
COMMAND ${CMAKE_COMMAND} --install ${CMAKE_CURRENT_BINARY_DIR} --component "clientModule"
|
|
)
|
|
endif()
|
|
endif()
|
|
|
|
if (NOT ${SERVER_PATH} STREQUAL "")
|
|
install(TARGETS SqModule
|
|
RUNTIME
|
|
DESTINATION ${SERVER_PATH}
|
|
COMPONENT "serverModule"
|
|
)
|
|
|
|
if(INSTALL_AFTER_BUILD)
|
|
add_custom_command(TARGET SqModule
|
|
POST_BUILD
|
|
COMMAND ${CMAKE_COMMAND} --install ${CMAKE_CURRENT_BINARY_DIR} --component "serverModule"
|
|
)
|
|
endif()
|
|
endif()
|