summaryrefslogtreecommitdiff
path: root/cmake/FindWrapLibYaml.cmake
blob: 1dab9126690d513f45cdd0ea40c9937abfc14351 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
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)