assaultfish/engine/CMakeLists.txt

42 lines
1,023 B
Text
Raw Normal View History

2026-01-07 04:24:22 +09:00
cmake_minimum_required(VERSION 3.11)
2026-01-09 00:40:51 +09:00
project(gearbox)
2026-01-07 04:24:22 +09:00
include(GNUInstallDirs)
set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_FULL_LIBDIR}")
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
2026-01-07 04:35:00 +09:00
macro(install_target name)
install(
TARGETS ${name}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
)
endmacro()
2026-01-07 04:24:22 +09:00
add_subdirectory(net)
2026-01-09 00:40:51 +09:00
2026-01-09 07:48:18 +09:00
file(GLOB GearBox_SRC src/*.c lz4/*.c)
2026-01-09 00:40:51 +09:00
2026-01-09 06:12:57 +09:00
add_library(GearBox SHARED ${GearBox_SRC})
2026-01-09 07:48:18 +09:00
target_include_directories(GearBox PUBLIC include)
target_include_directories(GearBox PRIVATE lz4)
2026-01-09 00:40:51 +09:00
target_compile_definitions(GearBox PRIVATE _GEARBOX)
2026-01-09 03:38:29 +09:00
target_link_libraries(GearBox PRIVATE gbnet)
if(NOT ${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
target_link_libraries(GearBox PRIVATE m)
endif()
2026-01-09 00:40:51 +09:00
install_target(GearBox)
2026-01-09 06:12:57 +09:00
install(
DIRECTORY include/
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
FILES_MATCHING PATTERN "*.h"
)
2026-01-07 04:24:22 +09:00
add_subdirectory(tools)
2026-01-08 00:35:00 +09:00
install(
2026-01-10 00:55:45 +09:00
DIRECTORY resource/
2026-01-09 00:40:51 +09:00
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/GearBox
2026-01-08 00:35:00 +09:00
)