Skip to content

Commit 0afe1ce

Browse files
author
DerThorsten
committed
continous integration auto updated
1 parent fd61a5c commit 0afe1ce

File tree

2 files changed

+44
-19
lines changed

2 files changed

+44
-19
lines changed

CMakeLists.txt

Lines changed: 29 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -52,16 +52,23 @@ find_package(xtensor REQUIRED)
5252
SET(INTERFACE_LIB_NAME cpptools)
5353

5454

55+
5556
file(GLOB_RECURSE ${PROJECT_NAME}_HEADERS ${PROJECT_INCLUDE_DIR}/*.hpp)
5657

5758

5859
add_library(${INTERFACE_LIB_NAME} INTERFACE)
60+
61+
message(STATUS "INSTALL_INTERFACE: ${CMAKE_INSTALL_INCLUDEDIR}")
62+
target_include_directories(${INTERFACE_LIB_NAME} INTERFACE
63+
$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>
64+
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
65+
66+
67+
5968
target_link_libraries(${INTERFACE_LIB_NAME}
6069
INTERFACE xtensor)
6170

62-
target_include_directories(${INTERFACE_LIB_NAME}
63-
INTERFACE $<BUILD_INTERFACE:${PROJECT_INCLUDE_DIR}>
64-
$<INSTALL_INTERFACE:include>)
71+
6572

6673
# Benchmark
6774
# ============
@@ -122,20 +129,29 @@ endif()
122129
include(GNUInstallDirs)
123130
include(CMakePackageConfigHelpers)
124131

125-
install(TARGETS ${PROJECT_NAME}
126-
EXPORT ${PROJECT_NAME}-targets)
127132

128-
# Makes the project importable from the build directory
129-
export(EXPORT ${PROJECT_NAME}-targets
130-
FILE "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Targets.cmake")
133+
set(${PROJECT_NAME}_CMAKECONFIG_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}" CACHE
134+
STRING "install path for ${PROJECT_NAME}Config.cmake")
135+
136+
137+
message(STATUS "DEST ${${PROJECT_NAME}_CMAKECONFIG_INSTALL_DIR}" )
138+
139+
140+
install(TARGETS ${INTERFACE_LIB_NAME}
141+
EXPORT ${INTERFACE_LIB_NAME}-targets)
142+
143+
install(EXPORT ${INTERFACE_LIB_NAME}-targets
144+
FILE ${INTERFACE_LIB_NAME}Targets.cmake
145+
#NAMESPACE ${PROJECT_NAME}::
146+
DESTINATION lib/cmake/${PROJECT_NAME}
147+
)
148+
131149

132-
# install(FILES ${${PROJECT_NAME}_HEADERS}
133-
# DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${CPP_ROOT_FOLDER_NAME})
134150
install(DIRECTORY ${PROJECT_INCLUDE_DIR}/${CPP_ROOT_FOLDER_NAME}
135151
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
136152

137-
set(${PROJECT_NAME}_CMAKECONFIG_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}" CACHE
138-
STRING "install path for ${PROJECT_NAME}Config.cmake")
153+
154+
139155

140156
configure_package_config_file(${PROJECT_NAME}Config.cmake.in
141157
"${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
@@ -154,6 +170,7 @@ set(CMAKE_SIZEOF_VOID_P ${_${PROJECT_NAME}_CMAKE_SIZEOF_VOID_P})
154170
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake
155171
${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake
156172
DESTINATION ${${PROJECT_NAME}_CMAKECONFIG_INSTALL_DIR})
173+
157174
install(EXPORT ${PROJECT_NAME}-targets
158175
FILE ${PROJECT_NAME}Targets.cmake
159176
DESTINATION ${${PROJECT_NAME}_CMAKECONFIG_INSTALL_DIR})

cpptoolsConfig.cmake.in

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,20 @@
1-
# cpptools cmake module
2-
# This module sets the following variables in your project::
3-
#
4-
# cpptools_FOUND - true if cpptools found on the system
5-
# cpptools_INCLUDE_DIRS - the directory containing cpptools headers
6-
# cpptools_LIBRARY - empty
1+
set(${PN}_INCLUDE_DIR "${INC_DIRS}")
72

83

4+
get_filename_component(SELF_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
5+
get_filename_component(TOP_DIR "${SELF_DIR}/../../../" ABSOLUTE)
6+
SET(INC_DIRS "${TOP_DIR}/include/")
7+
8+
9+
10+
11+
12+
@PACKAGE_INIT@
913
if(NOT TARGET @PROJECT_NAME@)
14+
find_package(xtensor REQUIRED)
1015
include("${CMAKE_CURRENT_LIST_DIR}/@[email protected]")
11-
get_target_property(@PROJECT_NAME@_INCLUDE_DIRS cpptools INTERFACE_INCLUDE_DIRECTORIES)
16+
set_target_properties( cpptools PROPERTIES
17+
INTERFACE_INCLUDE_DIRECTORIES ${INC_DIRS}
18+
)
19+
SET(@PROJECT_NAME@_INCLUDE_DIRS ${INC_DIRS})
1220
endif()

0 commit comments

Comments
 (0)