diff --git a/cmake/modules/InstallationHelper.cmake b/cmake/modules/InstallationHelper.cmake --- a/cmake/modules/InstallationHelper.cmake +++ b/cmake/modules/InstallationHelper.cmake @@ -5,9 +5,15 @@ function(install_target _target) install( TARGETS ${_target} - RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" - LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" - PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}" + RUNTIME + DESTINATION "${CMAKE_INSTALL_BINDIR}" + COMPONENT ${PROJECT_NAME} + LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" + COMPONENT ${PROJECT_NAME} + PUBLIC_HEADER + DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}" + COMPONENT ${PROJECT_NAME} ) endfunction() diff --git a/cmake/modules/PackageOptions.cmake b/cmake/modules/PackageOptions.cmake --- a/cmake/modules/PackageOptions.cmake +++ b/cmake/modules/PackageOptions.cmake @@ -20,6 +20,10 @@ set(CPACK_GENERATOR "TGZ") endif() +# Prevent the components aware generators (such as ZIP) from generating a +# different package for each component. +set(CPACK_MONOLITHIC_INSTALL ON) + # CPack source package options set(CPACK_SOURCE_PACKAGE_FILE_NAME "${PROJECT_NAME}-${PROJECT_VERSION}") set(CPACK_SOURCE_GENERATOR "TGZ") diff --git a/doc/man/CMakeLists.txt b/doc/man/CMakeLists.txt --- a/doc/man/CMakeLists.txt +++ b/doc/man/CMakeLists.txt @@ -2,16 +2,32 @@ include(GNUInstallDirs) set(MAN_DESTINATION "${CMAKE_INSTALL_MANDIR}/man1") -install(FILES bitcoind.1 DESTINATION "${MAN_DESTINATION}") +install( + FILES bitcoind.1 + DESTINATION "${MAN_DESTINATION}" + COMPONENT bitcoind +) if(BUILD_BITCOIN_CLI) - install(FILES bitcoin-cli.1 DESTINATION "${MAN_DESTINATION}") + install( + FILES bitcoin-cli.1 + DESTINATION "${MAN_DESTINATION}" + COMPONENT bitcoind + ) endif() if(BUILD_BITCOIN_TX) - install(FILES bitcoin-tx.1 DESTINATION "${MAN_DESTINATION}") + install( + FILES bitcoin-tx.1 + DESTINATION "${MAN_DESTINATION}" + COMPONENT bitcoind + ) endif() if(BUILD_BITCOIN_QT) - install(FILES bitcoin-qt.1 DESTINATION "${MAN_DESTINATION}") + install( + FILES bitcoin-qt.1 + DESTINATION "${MAN_DESTINATION}" + COMPONENT bitcoin-qt + ) endif()