summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2018-04-24 13:58:11 -0400
committerBrad King <brad.king@kitware.com>2018-04-24 13:58:11 -0400
commitdc3401d5b08ea0c116fd5416c4d7eb5fe22e5835 (patch)
tree876cff2ee0ec33254e7c6859876893e78f9705ea
parent0b992b97517136ba21b93860ff4686b75bc962aa (diff)
parent7d756f37cc0dcd3dfff1c8524db5943af023cff8 (diff)
downloadcmake-dc3401d5b08ea0c116fd5416c4d7eb5fe22e5835.tar.gz
Merge branch 'BLAS-no-target-in-libs' into release-3.11
Merge-request: !2006
-rw-r--r--Modules/FindBLAS.cmake6
-rw-r--r--Modules/FindPkgConfig.cmake1
2 files changed, 5 insertions, 2 deletions
diff --git a/Modules/FindBLAS.cmake b/Modules/FindBLAS.cmake
index 8e8c6f4f2d..5223b1d0b6 100644
--- a/Modules/FindBLAS.cmake
+++ b/Modules/FindBLAS.cmake
@@ -90,7 +90,11 @@ if(BLA_PREFER_PKGCONFIG)
find_package(PkgConfig)
pkg_check_modules(PKGC_BLAS IMPORTED_TARGET blas)
if(PKGC_BLAS_FOUND)
- set(BLAS_LIBRARIES PkgConfig::PKGC_BLAS)
+ # FIXME: We should not interpret the INTERFACE_LINK_LIBRARIES property
+ # because it could have generator expressions and such. This is a
+ # workaround for pkg_check_modules not providing a first-class way to
+ # get the list of libraries.
+ get_property(BLAS_LIBRARIES TARGET PkgConfig::PKGC_BLAS PROPERTY INTERFACE_LINK_LIBRARIES)
find_package_handle_standard_args(BLAS
REQUIRED_VARS BLAS_LIBRARIES
VERSION_VAR PKGC_BLAS_VERSION)
diff --git a/Modules/FindPkgConfig.cmake b/Modules/FindPkgConfig.cmake
index 952ca92658..415e914297 100644
--- a/Modules/FindPkgConfig.cmake
+++ b/Modules/FindPkgConfig.cmake
@@ -222,7 +222,6 @@ function(_pkg_create_imp_target _prefix _no_cmake_path _no_cmake_environment_pat
AND ( ${_prefix}_INCLUDE_DIRS OR _libs OR ${_prefix}_CFLAGS_OTHER ))
add_library(PkgConfig::${_prefix} INTERFACE IMPORTED)
- unset(_props)
if(${_prefix}_INCLUDE_DIRS)
set_property(TARGET PkgConfig::${_prefix} PROPERTY
INTERFACE_INCLUDE_DIRECTORIES "${${_prefix}_INCLUDE_DIRS}")