Permalink
Browse files

Add yaml-cpp-config.cmake and yaml-cpp-config-version.cmake files for…

… importing yaml-cpp into external projects (through find_package).
  • Loading branch information...
1 parent c7752ca commit a397ad29252b60f0549a4edb389a46a37577cd02 @jbeder committed Jan 24, 2015
Showing with 37 additions and 0 deletions.
  1. +12 −0 CMakeLists.txt
  2. +11 −0 yaml-cpp-config-version.cmake.in
  3. +14 −0 yaml-cpp-config.cmake.in
View
@@ -302,6 +302,18 @@ install(
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)
set(PC_FILE ${CMAKE_BINARY_DIR}/yaml-cpp.pc)
configure_file("yaml-cpp.pc.cmake" ${PC_FILE} @ONLY)
@@ -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()
@@ -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@")

0 comments on commit a397ad2

Please sign in to comment.