11cmake_minimum_required (VERSION 3.20)
22
3- set (BUILD_VERSION 1.0.0.8)
4- project (slick_logger VERSION ${BUILD_VERSION} LANGUAGES CXX)
3+ project (slick_logger
4+ VERSION 1.0.1
5+ LANGUAGES CXX)
56
67set (CMAKE_CXX_STANDARD 20)
78set (CMAKE_CXX_STANDARD_REQUIRED ON )
@@ -13,7 +14,7 @@ set(BUILD_SLICK_QUEUE_TESTS OFF CACHE BOOL "" FORCE)
1314FetchContent_Declare(
1415 slick_queue
1516 GIT_REPOSITORY https://github.com/SlickQuant/slick_queue.git
16- GIT_TAG v1.1.0. 2
17+ GIT_TAG v1.1.2
1718)
1819FetchContent_MakeAvailable(slick_queue)
1920
@@ -36,11 +37,12 @@ endif()
3637
3738# Add header-only library
3839add_library (slick_logger INTERFACE )
40+ add_library (slick::slick_logger ALIAS slick_logger)
3941target_include_directories (slick_logger INTERFACE
4042 $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR} /include >
4143 $<INSTALL_INTERFACE:include >
4244)
43- target_link_libraries (slick_logger INTERFACE slick_queue)
45+ target_link_libraries (slick_logger INTERFACE slick:: slick_queue)
4446
4547message (STATUS "Slick Queue: ${slick_queue_SOURCE_DIR} " )
4648
@@ -70,7 +72,39 @@ endif()
7072# Installation rules
7173install (DIRECTORY include / DESTINATION include )
7274
73- message (STATUS "slick_logger: ${BUILD_VERSION} " )
75+ # Install CMake package configuration files for vcpkg
76+ install (TARGETS slick_logger EXPORT slick_loggerTargets)
77+
78+ install (EXPORT slick_loggerTargets
79+ FILE slick_loggerTargets.cmake
80+ NAMESPACE slick::
81+ DESTINATION share/slick_logger
82+ )
83+
84+ include (CMakePackageConfigHelpers)
85+
86+ # Generate the config file
87+ configure_package_config_file(
88+ ${CMAKE_CURRENT_SOURCE_DIR} /cmake/slick_loggerConfig.cmake.in
89+ ${CMAKE_CURRENT_BINARY_DIR} /slick_loggerConfig.cmake
90+ INSTALL_DESTINATION share/slick_logger
91+ )
92+
93+ # Generate version file
94+ write_basic_package_version_file(
95+ ${CMAKE_CURRENT_BINARY_DIR} /slick_loggerConfigVersion.cmake
96+ VERSION ${PROJECT_VERSION}
97+ COMPATIBILITY SameMajorVersion
98+ )
99+
100+ # Install config files
101+ install (FILES
102+ ${CMAKE_CURRENT_BINARY_DIR} /slick_loggerConfig.cmake
103+ ${CMAKE_CURRENT_BINARY_DIR} /slick_loggerConfigVersion.cmake
104+ DESTINATION share/slick_logger
105+ )
106+
107+ message (STATUS "slick_logger: ${PROJECT_VERSION} " )
74108
75109if (CMAKE_BUILD_TYPE STREQUAL "Release" )
76110 add_custom_target (dist_slick_logger ALL
@@ -82,7 +116,7 @@ if(CMAKE_BUILD_TYPE STREQUAL "Release")
82116
83117 if (PROJECT_IS_TOP_LEVEL)
84118 add_custom_target (package_slick_logger ALL
85- COMMAND ${CMAKE_COMMAND} -E tar "cfv" "${CMAKE_BINARY_DIR} /dist/slick_logger_${BUILD_VERSION } .zip" --format=zip "include"
119+ COMMAND ${CMAKE_COMMAND} -E tar "cfv" "${CMAKE_BINARY_DIR} /dist/slick_logger_${PROJECT_VERSION } .zip" --format=zip "include"
86120 WORKING_DIRECTORY "${CMAKE_BINARY_DIR} /dist"
87121 COMMENT "Creating zip archive"
88122 )
0 commit comments