From 34497bffd885ddf4b067f033fb6e967fa6333853 Mon Sep 17 00:00:00 2001 From: Arseny Zorin Date: Fri, 19 Mar 2021 09:47:39 +0300 Subject: [PATCH 1/4] Adds CMake config generation --- CMakeLists.txt | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index db091858..d7d4fa34 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -194,6 +194,34 @@ endif () include(GNUInstallDirs) +include(CMakePackageConfigHelpers) +set(SAC_CMAKE_DIR ${CMAKE_INSTALL_LIBDIR}/cmake/SimpleAmqpClient) +set(project_config "${CMAKE_CURRENT_BINARY_DIR}/SimpleAmqpClient-config.cmake") +set(version_config "${CMAKE_CURRENT_BINARY_DIR}/SimpleAmqpClient-config-version.cmake") +set(targets_export_name SimpleAmqpClient-targets) +list(APPEND INSTALL_TARGETS SimpleAmqpClient) + +write_basic_package_version_file( + "${version_config}" + VERSION ${SAC_VERSION} + COMPATIBILITY AnyNewerVersion + ) + +configure_package_config_file( + "${CMAKE_CURRENT_SOURCE_DIR}/cmake/SimpleAmqpClient-config.cmake.in" + "${project_config}" + INSTALL_DESTINATION "${SAC_CMAKE_DIR}" + ) + +install(FILES ${project_config} ${version_config} + DESTINATION ${SAC_CMAKE_DIR} + ) + +install(EXPORT ${targets_export_name} + DESTINATION ${SAC_CMAKE_DIR} + NAMESPACE SimpleAmqpClient:: + ) + install(TARGETS SimpleAmqpClient RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} From 5348093bcd91d53f17f30989c6b39085968f2c96 Mon Sep 17 00:00:00 2001 From: Arseny Zorin Date: Fri, 19 Mar 2021 09:56:50 +0300 Subject: [PATCH 2/4] Adds cmake dir with template file --- cmake/SimpleAmqpClient-config.cmake.in | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 cmake/SimpleAmqpClient-config.cmake.in diff --git a/cmake/SimpleAmqpClient-config.cmake.in b/cmake/SimpleAmqpClient-config.cmake.in new file mode 100644 index 00000000..61eba12f --- /dev/null +++ b/cmake/SimpleAmqpClient-config.cmake.in @@ -0,0 +1,3 @@ +@PACKAGE_INIT@ + +include(${CMAKE_CURRENT_LIST_DIR}/@targets_export_name@.cmake) From 2847bc3941cc9b1dd064718ccb2b2c5543443b51 Mon Sep 17 00:00:00 2001 From: Arseny Zorin Date: Fri, 19 Mar 2021 10:03:23 +0300 Subject: [PATCH 3/4] Fixes targets --- CMakeLists.txt | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index d7d4fa34..739c044b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -206,13 +206,19 @@ write_basic_package_version_file( VERSION ${SAC_VERSION} COMPATIBILITY AnyNewerVersion ) - + configure_package_config_file( "${CMAKE_CURRENT_SOURCE_DIR}/cmake/SimpleAmqpClient-config.cmake.in" "${project_config}" INSTALL_DESTINATION "${SAC_CMAKE_DIR}" ) +install(TARGETS ${INSTALL_TARGETS} EXPORT ${targets_export_name} + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + ) + install(FILES ${project_config} ${version_config} DESTINATION ${SAC_CMAKE_DIR} ) @@ -222,12 +228,6 @@ install(EXPORT ${targets_export_name} NAMESPACE SimpleAmqpClient:: ) -install(TARGETS SimpleAmqpClient - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} - ) - install(FILES src/SimpleAmqpClient/AmqpException.h src/SimpleAmqpClient/AmqpLibraryException.h From fcc90dc6c8ffe92b4c1974fd7bb0b9a00c13e719 Mon Sep 17 00:00:00 2001 From: Arseny Zorin Date: Fri, 19 Mar 2021 11:25:57 +0300 Subject: [PATCH 4/4] Uses Config instead of -config --- CMakeLists.txt | 6 +++--- ...ient-config.cmake.in => SimpleAmqpClientConfig.cmake.in} | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) rename cmake/{SimpleAmqpClient-config.cmake.in => SimpleAmqpClientConfig.cmake.in} (93%) diff --git a/CMakeLists.txt b/CMakeLists.txt index 739c044b..25397350 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -196,8 +196,8 @@ include(GNUInstallDirs) include(CMakePackageConfigHelpers) set(SAC_CMAKE_DIR ${CMAKE_INSTALL_LIBDIR}/cmake/SimpleAmqpClient) -set(project_config "${CMAKE_CURRENT_BINARY_DIR}/SimpleAmqpClient-config.cmake") -set(version_config "${CMAKE_CURRENT_BINARY_DIR}/SimpleAmqpClient-config-version.cmake") +set(project_config "${CMAKE_CURRENT_BINARY_DIR}/SimpleAmqpClientConfig.cmake") +set(version_config "${CMAKE_CURRENT_BINARY_DIR}/SimpleAmqpClientConfig-version.cmake") set(targets_export_name SimpleAmqpClient-targets) list(APPEND INSTALL_TARGETS SimpleAmqpClient) @@ -208,7 +208,7 @@ write_basic_package_version_file( ) configure_package_config_file( - "${CMAKE_CURRENT_SOURCE_DIR}/cmake/SimpleAmqpClient-config.cmake.in" + "${CMAKE_CURRENT_SOURCE_DIR}/cmake/SimpleAmqpClientConfig.cmake.in" "${project_config}" INSTALL_DESTINATION "${SAC_CMAKE_DIR}" ) diff --git a/cmake/SimpleAmqpClient-config.cmake.in b/cmake/SimpleAmqpClientConfig.cmake.in similarity index 93% rename from cmake/SimpleAmqpClient-config.cmake.in rename to cmake/SimpleAmqpClientConfig.cmake.in index 61eba12f..3df8c673 100644 --- a/cmake/SimpleAmqpClient-config.cmake.in +++ b/cmake/SimpleAmqpClientConfig.cmake.in @@ -1,3 +1,3 @@ @PACKAGE_INIT@ - + include(${CMAKE_CURRENT_LIST_DIR}/@targets_export_name@.cmake)