diff options
Diffstat (limited to 'cmake/FindWrapLibYaml.cmake')
-rw-r--r-- | cmake/FindWrapLibYaml.cmake | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/cmake/FindWrapLibYaml.cmake b/cmake/FindWrapLibYaml.cmake new file mode 100644 index 00000000..1dab9126 --- /dev/null +++ b/cmake/FindWrapLibYaml.cmake @@ -0,0 +1,19 @@ +# We can't create the same interface imported target multiple times, CMake will complain if we do +# that. This can happen if the find_package call is done in multiple different subdirectories. +if(TARGET WrapLibYaml::WrapLibYaml) + set(WrapLibYaml_FOUND TRUE) + return() +endif() + +find_package(PkgConfig) +pkg_check_modules(pc_libyaml yaml-0.1 IMPORTED_TARGET) + + +if (NOT pc_libyaml_FOUND) + set(WrapLibYaml_FOUND FALSE) + return() +endif() + +add_library(WrapLibYaml::WrapLibYaml INTERFACE IMPORTED) +target_link_libraries(WrapLibYaml::WrapLibYaml INTERFACE ${pc_libyaml_LIBRARIES}) +set(WrapLibYaml_FOUND TRUE) |