From 28f76db46ed7efa4857c0579cdbaf14071f43798 Mon Sep 17 00:00:00 2001 From: Martchus Date: Tue, 11 Jul 2017 19:34:38 +0200 Subject: [PATCH] Add install target for 'extra-files' So additional files like tests/calculateoverallcoverage.awk and coding-style.clang-format are installed and can be used by other projects, too. --- CMakeLists.txt | 7 ++++++- cmake/modules/BasicConfig.cmake | 15 +++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index f45c706..ccb8176 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -94,7 +94,8 @@ set(CMAKE_TEMPLATE_FILES cmake/templates/global.h.in cmake/templates/template.pc.in ) -set(SCRIPT_FILES) +set(SCRIPT_FILES +) if(MINGW) list(APPEND CMAKE_TEMPLATE_FILES cmake/templates/windows.rc.in @@ -109,6 +110,10 @@ set(DOC_FILES doc/buildvariables.md doc/testapplication.md ) +set(EXTRA_FILES + tests/calculateoverallcoverage.awk + coding-style.clang-format +) # required to include CMake modules from own project directory set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules" "${CMAKE_MODULE_PATH}") diff --git a/cmake/modules/BasicConfig.cmake b/cmake/modules/BasicConfig.cmake index bd05208..8250860 100644 --- a/cmake/modules/BasicConfig.cmake +++ b/cmake/modules/BasicConfig.cmake @@ -252,4 +252,19 @@ if(CLANG_SOURCE_BASED_COVERAGE_ENABLED) endif() endif() +# add install target for extra files +foreach(EXTRA_FILE ${EXTRA_FILES}) + get_filename_component(EXTRA_DIR ${EXTRA_FILE} DIRECTORY) + install( + FILES ${EXTRA_FILE} + DESTINATION "share/${META_PROJECT_NAME}/${EXTRA_DIR}" + COMPONENT extra-files + ) +endforeach() +if(NOT TARGET install-extra-files) + add_custom_target(install-extra-files + COMMAND "${CMAKE_COMMAND}" -DCMAKE_INSTALL_COMPONENT=extra-files -P "${CMAKE_BINARY_DIR}/cmake_install.cmake" + ) +endif() + set(BASIC_PROJECT_CONFIG_DONE YES)