summaryrefslogtreecommitdiff
path: root/lib/CMakeLists.txt
diff options
context:
space:
mode:
authorFelix Morgner <felix.morgner@gmail.com>2025-05-23 13:51:10 +0200
committerFelix Morgner <felix.morgner@gmail.com>2025-05-23 13:51:10 +0200
commitc45004b73bb045328a724d1d860df6d1515af6d4 (patch)
tree4ce448eeb947e87f0447e9be20d90151a26421c9 /lib/CMakeLists.txt
parent14db127b26bc47861b6c41f144fe6e3b4ce283a0 (diff)
downloadturns-c45004b73bb045328a724d1d860df6d1515af6d4.tar.xz
turns-c45004b73bb045328a724d1d860df6d1515af6d4.zip
lib: split out header files
Diffstat (limited to 'lib/CMakeLists.txt')
-rw-r--r--lib/CMakeLists.txt45
1 files changed, 25 insertions, 20 deletions
diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
index d00e804..9389743 100644
--- a/lib/CMakeLists.txt
+++ b/lib/CMakeLists.txt
@@ -50,10 +50,10 @@ include("Catch")
# Library
set(HEADERS
- "src/turns-init.h"
- "src/turns-participant.h"
- "src/turns-turn-order.h"
- "src/turns.h"
+ "include/turns-init.h"
+ "include/turns-participant.h"
+ "include/turns-turn-order.h"
+ "include/turns.h"
)
set(SOURCES
@@ -67,7 +67,7 @@ add_library("turns::lib" ALIAS "lib")
target_sources("lib" PUBLIC
FILE_SET HEADERS
- BASE_DIRS "src"
+ BASE_DIRS "include"
FILES
${HEADERS}
)
@@ -88,7 +88,10 @@ target_compile_features("lib" PUBLIC
"cxx_std_23"
)
-target_include_directories("lib" PUBLIC "src")
+target_include_directories("lib" PUBLIC
+ "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
+ "$<INSTALL_INTERFACE:include/turns>"
+)
target_link_libraries("lib" PUBLIC
"PkgConfig::glib"
@@ -100,7 +103,6 @@ set_target_properties("lib" PROPERTIES
VERSION "${PROJECT_VERSION}"
INTERPROCEDURAL_OPTIMIZATION "${TURNS_CAN_DO_IPO}"
C_EXTENSIONS OFF
- CXX_EXTENSIONS OFF
)
target_add_glib_enums("lib"
@@ -120,19 +122,22 @@ target_glib_generate_gir("lib"
enable_coverage("lib")
-install(TARGETS "lib" FILE_SET HEADERS DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/turns")
+install(TARGETS "lib"
+ FILE_SET HEADERS
+ DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/turns-${PROJECT_VERSION_MAJOR}.0"
+)
# C++ Wrapper
set(CXX_HEADERS
- "src/turnsmm/enum_helpers.hpp"
- "src/turnsmm/init.hpp"
- "src/turnsmm/participant.hpp"
- "src/turnsmm/turn-order.hpp"
- "src/turnsmm.hpp"
+ "include/turnsmm/enum_helpers.hpp"
+ "include/turnsmm/init.hpp"
+ "include/turnsmm/participant.hpp"
+ "include/turnsmm/turn-order.hpp"
+ "include/turnsmm.hpp"
- "src/turnsmm/private/participant_p.hpp"
- "src/turnsmm/private/turn-order_p.hpp"
+ "include/turnsmm/private/participant_p.hpp"
+ "include/turnsmm/private/turn-order_p.hpp"
)
set(CXX_SOURCES
@@ -146,7 +151,7 @@ add_library("turns::mm" ALIAS "libmm")
target_sources("libmm" PUBLIC
FILE_SET HEADERS
- BASE_DIRS "src"
+ BASE_DIRS "include"
FILES
${CXX_HEADERS}
)
@@ -158,8 +163,6 @@ target_compile_options("libmm" PUBLIC
"$<$<CXX_COMPILER_ID:GNU,Clang>:-pedantic-errors>"
)
-target_include_directories("libmm" PUBLIC "src")
-
target_link_libraries("libmm" PUBLIC
"PkgConfig::glibmm"
"turns::lib"
@@ -170,13 +173,15 @@ set_target_properties("libmm" PROPERTIES
SOVERSION "${PROJECT_VERSION_MAJOR}"
VERSION "${PROJECT_VERSION}"
INTERPROCEDURAL_OPTIMIZATION "${TURNS_CAN_DO_IPO}"
- C_EXTENSIONS OFF
CXX_EXTENSIONS OFF
)
enable_coverage("libmm")
-install(TARGETS "libmm" FILE_SET HEADERS DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/turnsmm")
+install(TARGETS "libmm"
+ FILE_SET HEADERS
+ DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/turnsmm-${PROJECT_VERSION_MAJOR}.0"
+)
# Tests