From b453ad06e549c02af858e6f0672e8b9c74dc6554 Mon Sep 17 00:00:00 2001 From: Alan Antonuk Date: Mon, 12 Apr 2021 05:10:01 +0000 Subject: cmake: specify COMPONENT on install commands To help package managers cmake install commands now specify a COMPONENT. Components include: - rabbitmq-c-runtime: libraries necessary for running programs linked against rabbitmq-c. - rabbitmq-c-development: static libraries, headers necessary for building programs against rabbitmq-c - rabbitmq-c-tools: CLI tools for interacting with RabbitMQ broker - rabbitmq-c-tool-docs: man pages for CLI tools. This also updates the tool install directory to use GnuInstallDirs- compatible location Signed-off-by: GitHub --- CMakeLists.txt | 2 ++ librabbitmq/CMakeLists.txt | 10 +++++++++- tools/CMakeLists.txt | 7 +++---- 3 files changed, 14 insertions(+), 5 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 9752984..4658638 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -332,11 +332,13 @@ export(TARGETS ${INSTALL_TARGETS} install(FILES ${project_config} ${version_config} DESTINATION ${RMQ_CMAKE_DIR} + COMPONENT rabbitmq-c-development ) install(EXPORT ${targets_export_name} DESTINATION ${RMQ_CMAKE_DIR} NAMESPACE rabbitmq:: + COMPONENT rabbitmq-c-development ) install(FILES diff --git a/librabbitmq/CMakeLists.txt b/librabbitmq/CMakeLists.txt index bf44ed7..f84e57f 100644 --- a/librabbitmq/CMakeLists.txt +++ b/librabbitmq/CMakeLists.txt @@ -121,8 +121,12 @@ if (BUILD_SHARED_LIBS) install(TARGETS rabbitmq EXPORT "${targets_export_name}" RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + COMPONENT rabbitmq-c-runtime LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + COMPONENT rabbitmq-c-runtime + NAMELINK_COMPONENT runtime-c-development ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + COMPONENT rabbitmq-c-development ) set(RMQ_LIBRARY_TARGET rabbitmq) @@ -152,6 +156,7 @@ if (BUILD_STATIC_LIBS) install(TARGETS rabbitmq-static EXPORT "${targets_export_name}" ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + COMPONENT rabbitmq-c-development ) if (NOT DEFINED RMQ_LIBRARY_TARGET) @@ -172,7 +177,9 @@ install(FILES ../include/amqp_framing.h ../include/amqp_tcp_socket.h ${AMQP_SSL_SOCKET_SHIM_PATH} - DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} + COMPONENT rabbitmq-c-development +) install(FILES ../include/rabbitmq-c/amqp.h @@ -181,6 +188,7 @@ install(FILES ${AMQP_SSL_SOCKET_H_PATH} ${CMAKE_CURRENT_BINARY_DIR}/rabbitmq-c/export.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/rabbitmq-c + COMPONENT rabbitmq-c-development ) set(RMQ_LIBRARY_TARGET ${RMQ_LIBRARY_TARGET} PARENT_SCOPE) diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt index 1b09975..92677ad 100644 --- a/tools/CMakeLists.txt +++ b/tools/CMakeLists.txt @@ -64,6 +64,7 @@ if (BUILD_TOOLS_DOCS) install( FILES ${file} DESTINATION ${CMAKE_INSTALL_MANDIR}/man${fileExt} + COMPONENT rabbitmq-c-tool-docs ) endforeach() @@ -77,7 +78,5 @@ if (ENABLE_SSL_SUPPORT) endif() install(TARGETS amqp-publish amqp-get amqp-consume amqp-declare-queue amqp-delete-queue - RUNTIME DESTINATION bin - LIBRARY DESTINATION lib - ARCHIVE DESTINATION lib - PUBLIC_HEADER DESTINATION include) + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + COMPONENT rabbitmq-c-tools) \ No newline at end of file -- cgit v1.2.1