CMake: Add option to set the package install dir.
This commit is contained in:
parent
37f1b8b8c9
commit
69535873b4
@ -32,6 +32,8 @@ cmake_dependent_option(YAML_CPP_BUILD_TESTS
|
|||||||
cmake_dependent_option(YAML_MSVC_SHARED_RT
|
cmake_dependent_option(YAML_MSVC_SHARED_RT
|
||||||
"MSVC: Build yaml-cpp with shared runtime libs (/MD)" ON
|
"MSVC: Build yaml-cpp with shared runtime libs (/MD)" ON
|
||||||
"CMAKE_SYSTEM_NAME MATCHES Windows" OFF)
|
"CMAKE_SYSTEM_NAME MATCHES Windows" OFF)
|
||||||
|
set(YAML_CPP_INSTALL_CMAKEDIR "${CMAKE_INSTALL_LIBDIR}/cmake/yaml-cpp"
|
||||||
|
CACHE STRING "Path to install the CMake package to")
|
||||||
|
|
||||||
if (YAML_CPP_FORMAT_SOURCE)
|
if (YAML_CPP_FORMAT_SOURCE)
|
||||||
find_program(YAML_CPP_CLANG_FORMAT_EXE NAMES clang-format)
|
find_program(YAML_CPP_CLANG_FORMAT_EXE NAMES clang-format)
|
||||||
@ -144,13 +146,12 @@ set_target_properties(yaml-cpp PROPERTIES
|
|||||||
PROJECT_LABEL "yaml-cpp ${yaml-cpp-label-postfix}"
|
PROJECT_LABEL "yaml-cpp ${yaml-cpp-label-postfix}"
|
||||||
DEBUG_POSTFIX "${CMAKE_DEBUG_POSTFIX}")
|
DEBUG_POSTFIX "${CMAKE_DEBUG_POSTFIX}")
|
||||||
|
|
||||||
set(CONFIG_EXPORT_DIR "${CMAKE_INSTALL_LIBDIR}/cmake/yaml-cpp")
|
|
||||||
set(EXPORT_TARGETS yaml-cpp)
|
set(EXPORT_TARGETS yaml-cpp)
|
||||||
configure_package_config_file(
|
configure_package_config_file(
|
||||||
"${PROJECT_SOURCE_DIR}/yaml-cpp-config.cmake.in"
|
"${PROJECT_SOURCE_DIR}/yaml-cpp-config.cmake.in"
|
||||||
"${PROJECT_BINARY_DIR}/yaml-cpp-config.cmake"
|
"${PROJECT_BINARY_DIR}/yaml-cpp-config.cmake"
|
||||||
INSTALL_DESTINATION "${CONFIG_EXPORT_DIR}"
|
INSTALL_DESTINATION "${YAML_CPP_INSTALL_CMAKEDIR}"
|
||||||
PATH_VARS CMAKE_INSTALL_INCLUDEDIR CMAKE_INSTALL_LIBDIR CONFIG_EXPORT_DIR YAML_BUILD_SHARED_LIBS)
|
PATH_VARS CMAKE_INSTALL_INCLUDEDIR CMAKE_INSTALL_LIBDIR YAML_BUILD_SHARED_LIBS)
|
||||||
unset(EXPORT_TARGETS)
|
unset(EXPORT_TARGETS)
|
||||||
|
|
||||||
write_basic_package_version_file(
|
write_basic_package_version_file(
|
||||||
@ -170,15 +171,14 @@ if (YAML_CPP_INSTALL)
|
|||||||
FILES_MATCHING PATTERN "*.h")
|
FILES_MATCHING PATTERN "*.h")
|
||||||
install(EXPORT yaml-cpp-targets
|
install(EXPORT yaml-cpp-targets
|
||||||
NAMESPACE yaml-cpp::
|
NAMESPACE yaml-cpp::
|
||||||
DESTINATION "${CONFIG_EXPORT_DIR}")
|
DESTINATION "${YAML_CPP_INSTALL_CMAKEDIR}")
|
||||||
install(FILES
|
install(FILES
|
||||||
"${PROJECT_BINARY_DIR}/yaml-cpp-config.cmake"
|
"${PROJECT_BINARY_DIR}/yaml-cpp-config.cmake"
|
||||||
"${PROJECT_BINARY_DIR}/yaml-cpp-config-version.cmake"
|
"${PROJECT_BINARY_DIR}/yaml-cpp-config-version.cmake"
|
||||||
DESTINATION "${CONFIG_EXPORT_DIR}")
|
DESTINATION "${YAML_CPP_INSTALL_CMAKEDIR}")
|
||||||
install(FILES "${PROJECT_BINARY_DIR}/yaml-cpp.pc"
|
install(FILES "${PROJECT_BINARY_DIR}/yaml-cpp.pc"
|
||||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
|
DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
|
||||||
endif()
|
endif()
|
||||||
unset(CONFIG_EXPORT_DIR)
|
|
||||||
|
|
||||||
if(YAML_CPP_BUILD_TESTS)
|
if(YAML_CPP_BUILD_TESTS)
|
||||||
add_subdirectory(test)
|
add_subdirectory(test)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user