From dc9c750efd0114e5ebf736f5639aaf3df15c4bab Mon Sep 17 00:00:00 2001 From: Matthew Woehlke Date: Thu, 9 Nov 2017 13:41:01 -0500 Subject: [PATCH] Avoid absolute install destinations Remove use of CMAKE_INSTALL_PREFIX when specifying install destinations. It is preferred that install destinations are specified as relative paths, not absolute paths. This is also needed to create relocatable installs, and thus should fix #526. --- CMakeLists.txt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 6d1441f..b15f779 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -258,15 +258,15 @@ endif() ### ### General install settings ### -set(INCLUDE_INSTALL_ROOT_DIR ${CMAKE_INSTALL_PREFIX}/include) +set(INCLUDE_INSTALL_ROOT_DIR include) set(INCLUDE_INSTALL_DIR ${INCLUDE_INSTALL_ROOT_DIR}/yaml-cpp) -set(LIB_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}") +set(LIB_INSTALL_DIR "lib${LIB_SUFFIX}") set(_INSTALL_DESTINATIONS - RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}/bin + RUNTIME DESTINATION bin LIBRARY DESTINATION ${LIB_INSTALL_DIR} - ARCHIVE DESTINATION "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}" + ARCHIVE DESTINATION ${LIB_INSTALL_DIR} ) @@ -320,12 +320,12 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/yaml-cpp-config.cmake.in "${PROJECT_BINARY_DIR}/yaml-cpp-config.cmake" @ONLY) if(WIN32 AND NOT CYGWIN) - set(INSTALL_CMAKE_DIR ${CMAKE_INSTALL_PREFIX}/CMake) + set(INSTALL_CMAKE_DIR CMake) else() set(INSTALL_CMAKE_DIR ${LIB_INSTALL_DIR}/cmake/yaml-cpp) endif() -file(RELATIVE_PATH REL_INCLUDE_DIR "${INSTALL_CMAKE_DIR}" "${INCLUDE_INSTALL_ROOT_DIR}") +file(RELATIVE_PATH REL_INCLUDE_DIR "${CMAKE_INSTALL_PREFIX}/${INSTALL_CMAKE_DIR}" "${CMAKE_INSTALL_PREFIX}/${INCLUDE_INSTALL_ROOT_DIR}") set(CONFIG_INCLUDE_DIRS "\${YAML_CPP_CMAKE_DIR}/${REL_INCLUDE_DIR}") configure_file(${CMAKE_CURRENT_SOURCE_DIR}/yaml-cpp-config.cmake.in "${PROJECT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/yaml-cpp-config.cmake" @ONLY)