From 7accc1b6299450caccb617262dfd05911ce25517 Mon Sep 17 00:00:00 2001 From: Evgeny Kashirin <evgeny.kashirin@cern.ch> Date: Wed, 2 Sep 2020 17:04:18 +0300 Subject: [PATCH] CMake copies headers to the build directory --- CMakeLists.txt | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 929ed35..eae85fb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 2.8) +cmake_minimum_required(VERSION 3.5) project(Centrality) set(CMAKE_MACOSX_RPATH 1) set(PROJECT_VERSION 1.0) @@ -59,6 +59,18 @@ set(PCM_FILE_NAME lib${PROJECT_NAME}) ROOT_GENERATE_DICTIONARY(${DICT_FILE_NAME} ${HEADERS} LINKDEF src/CentralityLinkDef.h) add_library(Centrality SHARED ${SOURCES} ${DICT_FILE_NAME}) target_link_libraries(Centrality ${ROOT_LIBRARIES}) +add_custom_command( + TARGET Centrality POST_BUILD + COMMAND ${CMAKE_COMMAND} ARGS -E make_directory ${CMAKE_BINARY_DIR}/include/centrality + COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different ${HEADERS} ${CMAKE_BINARY_DIR}/include/centrality/ + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} +) +target_include_directories(Centrality + PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src + PUBLIC + $<BUILD_INTERFACE:${CMAKE_BINARY_DIR}/include> + $<INSTALL_INTERFACE:include> + ) # Create a main program using the library add_executable(main main.cpp) -- GitLab