Skip to content

Commit e939449

Browse files
authored
Merge pull request #1 from simoncblyth/master
switch from hardcoded include to overridable GNUInstallDirs CMAKE_INS…
2 parents 9739706 + baef822 commit e939449

File tree

3 files changed

+19
-10
lines changed

3 files changed

+19
-10
lines changed

share/bcm/cmake/BCMDeploy.cmake

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,18 @@ include(BCMInstallTargets)
44
include(BCMExport)
55

66
function(bcm_deploy)
7-
set(options)
7+
set(options SKIP_HEADER_INSTALL)
88
set(oneValueArgs NAMESPACE COMPATIBILITY)
99
set(multiValueArgs TARGETS INCLUDE)
1010

1111
cmake_parse_arguments(PARSE "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
1212

13-
bcm_install_targets(TARGETS ${PARSE_TARGETS} INCLUDE ${PARSE_INCLUDE})
13+
if(PARSE_SKIP_HEADER_INSTALL)
14+
bcm_install_targets(TARGETS ${PARSE_TARGETS} INCLUDE ${PARSE_INCLUDE} SKIP_HEADER_INSTALL)
15+
else()
16+
bcm_install_targets(TARGETS ${PARSE_TARGETS} INCLUDE ${PARSE_INCLUDE} )
17+
endif()
18+
1419
bcm_auto_pkgconfig(TARGET ${PARSE_TARGETS})
1520
bcm_auto_export(TARGETS ${PARSE_TARGETS} NAMESPACE ${PARSE_NAMESPACE} COMPATIBILITY ${PARSE_COMPATIBILITY})
1621

@@ -34,4 +39,4 @@ function(bcm_deploy)
3439
bcm_shadow_notify(${TARGET})
3540
endforeach()
3641

37-
endfunction()
42+
endfunction()

share/bcm/cmake/BCMInstallTargets.cmake

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
include(GNUInstallDirs)
22

33
function(bcm_install_targets)
4-
set(options)
4+
set(options SKIP_HEADER_INSTALL)
55
set(oneValueArgs EXPORT)
66
set(multiValueArgs TARGETS INCLUDE)
77

@@ -22,12 +22,16 @@ function(bcm_install_targets)
2222
get_filename_component(INCLUDE_PATH ${INCLUDE} ABSOLUTE)
2323
target_include_directories(${TARGET} INTERFACE $<BUILD_INTERFACE:${INCLUDE_PATH}>)
2424
endforeach()
25-
target_include_directories(${TARGET} INTERFACE $<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>)
25+
target_include_directories(${TARGET} INTERFACE $<INSTALL_INTERFACE:$<INSTALL_PREFIX>/${INCLUDE_INSTALL_DIR}>)
2626
endforeach()
2727

28-
foreach(INCLUDE ${PARSE_INCLUDE})
29-
install(DIRECTORY ${INCLUDE}/ DESTINATION ${INCLUDE_INSTALL_DIR})
30-
endforeach()
28+
29+
if(NOT PARSE_SKIP_HEADER_INSTALL)
30+
message(STATUS "bcm_install_targets.proceed-with-install ${INCLUDE_INSTALL_DIR} ")
31+
foreach(INCLUDE ${PARSE_INCLUDE})
32+
install(DIRECTORY ${INCLUDE}/ DESTINATION ${INCLUDE_INSTALL_DIR})
33+
endforeach()
34+
endif()
3135

3236
install(TARGETS ${PARSE_TARGETS}
3337
EXPORT ${EXPORT_FILE}

share/bcm/cmake/BCMSetupVersion.cmake

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
1+
include(GNUInstallDirs)
22
set(BCM_HEADER_VERSION_TEMPLATE_FILE "${CMAKE_CURRENT_LIST_DIR}/version.hpp")
33

44
macro(bcm_set_parent VAR)
@@ -46,7 +46,7 @@ function(bcm_setup_version)
4646

4747
if(PARSE_GENERATE_HEADER)
4848
configure_file("${BCM_HEADER_VERSION_TEMPLATE_FILE}" "${PARSE_GENERATE_HEADER}")
49-
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/${PARSE_GENERATE_HEADER}" DESTINATION include)
49+
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/${PARSE_GENERATE_HEADER}" DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
5050
endif()
5151

5252
endfunction()

0 commit comments

Comments
 (0)