diff options
-rw-r--r-- | cmake/opentrack-pkg-config.cmake | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/cmake/opentrack-pkg-config.cmake b/cmake/opentrack-pkg-config.cmake index 0f13defc..0ea92e56 100644 --- a/cmake/opentrack-pkg-config.cmake +++ b/cmake/opentrack-pkg-config.cmake @@ -1,16 +1,21 @@ include_guard(GLOBAL) include(FindPkgConfig) +function(_otr_pkgconfig_add target k) + target_compile_options(${target} PRIVATE "${${k}_CFLAGS}") + target_link_options(${target} PRIVATE ${${k}_LDFLAGS}) + target_include_directories(${target} SYSTEM PRIVATE ${${k}_INCLUDE_DIRS} ${${k}_INCLUDEDIR}) + target_link_libraries(${target} ${${k}_LIBRARIES}) +endfunction() + + function(otr_pkgconfig_ ret target) set(${ret} 1 PARENT_SCOPE) foreach(i ${ARGN}) set(k pkg-config_${i}) - pkg_check_modules(${k} QUIET ${i}) - if(${${k}_FOUND}) - target_compile_options(${target} PRIVATE "${${k}_CFLAGS}") - target_link_options(${target} PRIVATE ${${k}_LDFLAGS}) - target_include_directories(${target} SYSTEM PRIVATE ${${k}_INCLUDE_DIRS} ${${k}_INCLUDEDIR}) - target_link_libraries(${target} ${${k}_LIBRARIES}) + pkg_check_modules(${k} ${i}) + if(${k}_FOUND) + _otr_pkgconfig_add(${target} ${k}) else() set(${ret} 0 PARENT_SCOPE) endif() @@ -18,14 +23,12 @@ function(otr_pkgconfig_ ret target) endfunction() function(otr_pkgconfig target) - set(ret "") - otr_pkgconfig_(ret "${target}" ${ARGN}) foreach(i ${ARGN}) set(k pkg-config_${i}) - if(NOT ${${k}_FOUND}) - message(FATAL_ERROR "Can't find '${i}'. Please install development files for this package.") + pkg_check_modules(${k} ${i}) + if(NOT ${k}_FOUND) + message(FATAL_ERROR "can't find ${i} for ${target}") endif() + _otr_pkgconfig_add(${target} ${k}) endforeach() endfunction() - - |