mirror of
https://github.com/jbeder/yaml-cpp.git
synced 2025-09-08 12:21:17 +00:00

* CMake: Add option to set the package install dir. * CMake: Fix generated config. - `YAML_CPP_SHARED_LIBS_BUILT` should not be set with a `PATH_VAR` as it would always evaluate to true. - `YAML_CPP_LIBRARIES` should used the exported target name including the namespace, but `check_required_components` shouldn't. - Use `CMAKE_CURRENT_LIST_DIR` to find the target file, instead of a `PATH_VAR`. Package managers such as vcpkg move CMake configs after installing. * CI: Test the generated CMake package. * CMake: Create add a deprecated yaml-cpp target. This target is meant to provide compatibility with versions prior to 0.8.0. * CMake: mark the yaml-cpp target as IMPORTED. --------- Co-authored-by: Jesse Beder <jbeder+github@gmail.com>
31 lines
1.2 KiB
CMake
31 lines
1.2 KiB
CMake
# - Config file for the yaml-cpp package
|
|
# It defines the following variables
|
|
# YAML_CPP_INCLUDE_DIR - include directory
|
|
# YAML_CPP_LIBRARY_DIR - directory containing libraries
|
|
# YAML_CPP_SHARED_LIBS_BUILT - whether we have built shared libraries or not
|
|
# YAML_CPP_LIBRARIES - libraries to link against
|
|
|
|
@PACKAGE_INIT@
|
|
|
|
set_and_check(YAML_CPP_INCLUDE_DIR "@PACKAGE_CMAKE_INSTALL_INCLUDEDIR@")
|
|
set_and_check(YAML_CPP_LIBRARY_DIR "@PACKAGE_CMAKE_INSTALL_LIBDIR@")
|
|
|
|
# Are we building shared libraries?
|
|
set(YAML_CPP_SHARED_LIBS_BUILT @YAML_BUILD_SHARED_LIBS@)
|
|
|
|
# Our library dependencies (contains definitions for IMPORTED targets)
|
|
include("${CMAKE_CURRENT_LIST_DIR}/yaml-cpp-targets.cmake")
|
|
|
|
# These are IMPORTED targets created by yaml-cpp-targets.cmake
|
|
set(YAML_CPP_LIBRARIES "@EXPORT_TARGETS@")
|
|
|
|
add_library(yaml-cpp INTERFACE IMPORTED)
|
|
target_link_libraries(yaml-cpp INTERFACE yaml-cpp::yaml-cpp)
|
|
if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.17)
|
|
set_target_properties(yaml-cpp PROPERTIES
|
|
DEPRECATION "The target yaml-cpp is deprecated and will be removed in version 0.10.0. Use the yaml-cpp::yaml-cpp target instead."
|
|
)
|
|
endif()
|
|
|
|
check_required_components(yaml-cpp)
|