Add yaml-cpp-config.cmake and yaml-cpp-config-version.cmake files for importing yaml-cpp into external projects (through find_package).
This commit is contained in:
parent
c7752ca336
commit
a397ad2925
@ -302,6 +302,18 @@ install(
|
|||||||
FILES_MATCHING PATTERN "*.h"
|
FILES_MATCHING PATTERN "*.h"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
export(
|
||||||
|
TARGETS yaml-cpp
|
||||||
|
FILE "${PROJECT_BINARY_DIR}/yaml-cpp-targets.cmake")
|
||||||
|
export(PACKAGE yaml-cpp)
|
||||||
|
set(EXPORT_TARGETS yaml-cpp CACHE INTERNAL "export targets")
|
||||||
|
|
||||||
|
set(CONFIG_INCLUDE_DIRS "${YAML_CPP_SOURCE_DIR}/include")
|
||||||
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/yaml-cpp-config.cmake.in
|
||||||
|
"${PROJECT_BINARY_DIR}/yaml-cpp-config.cmake" @ONLY)
|
||||||
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/yaml-cpp-config-version.cmake.in
|
||||||
|
"${PROJECT_BINARY_DIR}/yaml-cpp-config-version.cmake" @ONLY)
|
||||||
|
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
set(PC_FILE ${CMAKE_BINARY_DIR}/yaml-cpp.pc)
|
set(PC_FILE ${CMAKE_BINARY_DIR}/yaml-cpp.pc)
|
||||||
configure_file("yaml-cpp.pc.cmake" ${PC_FILE} @ONLY)
|
configure_file("yaml-cpp.pc.cmake" ${PC_FILE} @ONLY)
|
||||||
|
11
yaml-cpp-config-version.cmake.in
Normal file
11
yaml-cpp-config-version.cmake.in
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
set(PACKAGE_VERSION "@YAML_CPP_VERSION@")
|
||||||
|
|
||||||
|
# Check whether the requested PACKAGE_FIND_VERSION is compatible
|
||||||
|
if("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}")
|
||||||
|
set(PACKAGE_VERSION_COMPATIBLE FALSE)
|
||||||
|
else()
|
||||||
|
set(PACKAGE_VERSION_COMPATIBLE TRUE)
|
||||||
|
if ("${PACKAGE_VERSION}" VERSION_EQUAL "${PACKAGE_FIND_VERSION}")
|
||||||
|
set(PACKAGE_VERSION_EXACT TRUE)
|
||||||
|
endif()
|
||||||
|
endif()
|
14
yaml-cpp-config.cmake.in
Normal file
14
yaml-cpp-config.cmake.in
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
# - Config file for the yaml-cpp package
|
||||||
|
# It defines the following variables
|
||||||
|
# YAML_CPP_INCLUDE_DIR - include directory
|
||||||
|
# YAML_CPP_LIBRARIES - libraries to link against
|
||||||
|
|
||||||
|
# Compute paths
|
||||||
|
get_filename_component(YAML_CPP_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
||||||
|
set(YAML_CPP_INCLUDE_DIR "@CONFIG_INCLUDE_DIRS@")
|
||||||
|
|
||||||
|
# Our library dependencies (contains definitions for IMPORTED targets)
|
||||||
|
include("${YAML_CPP_CMAKE_DIR}/yaml-cpp-targets.cmake")
|
||||||
|
|
||||||
|
# These are IMPORTED targets created by yaml-cpp-targets.cmake
|
||||||
|
set(YAML_CPP_LIBRARIES "@EXPORT_TARGETS@")
|
Loading…
Reference in New Issue
Block a user