summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2015-10-29 12:42:25 (GMT)
committerCMake Topic Stage <kwrobot@kitware.com>2015-10-29 12:42:25 (GMT)
commit3179d9a2415702b8ca73e8759c0dba97f26423e2 (patch)
treea189dc22137ae6161234f8f1216cb6a399570b26
parentb5d94065c07a3ba6db29297e55b0e01ba0ef1f9d (diff)
parent1bfb527f561c705169f0716108e34a2b5ba5c8bb (diff)
downloadCMake-3179d9a2415702b8ca73e8759c0dba97f26423e2.zip
CMake-3179d9a2415702b8ca73e8759c0dba97f26423e2.tar.gz
CMake-3179d9a2415702b8ca73e8759c0dba97f26423e2.tar.bz2
Merge topic 'FindPkgConfig-better-error'
1bfb527f FindPkgConfig: return actual error when a package is not found (#15810)
-rw-r--r--Modules/FindPkgConfig.cmake8
-rwxr-xr-xTests/RunCMake/FindPkgConfig/dummy-pkg-config.sh5
2 files changed, 8 insertions, 5 deletions
diff --git a/Modules/FindPkgConfig.cmake b/Modules/FindPkgConfig.cmake
index e822b9c..d519c1d 100644
--- a/Modules/FindPkgConfig.cmake
+++ b/Modules/FindPkgConfig.cmake
@@ -328,7 +328,7 @@ macro(_pkg_check_modules_internal _is_required _is_silent _no_cmake_path _no_cma
if (_pkg_check_modules_pkg_op)
list(APPEND _pkg_check_modules_exist_query "${_pkg_check_modules_pkg_ver}")
else()
- list(APPEND _pkg_check_modules_exist_query --exists)
+ list(APPEND _pkg_check_modules_exist_query --exists --print-errors --short-errors)
endif()
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_VERSION)
@@ -342,12 +342,14 @@ macro(_pkg_check_modules_internal _is_required _is_silent _no_cmake_path _no_cma
# execute the query
execute_process(
COMMAND ${PKG_CONFIG_EXECUTABLE} ${_pkg_check_modules_exist_query}
- RESULT_VARIABLE _pkgconfig_retval)
+ RESULT_VARIABLE _pkgconfig_retval
+ ERROR_VARIABLE _pkgconfig_error
+ ERROR_STRIP_TRAILING_WHITESPACE)
# evaluate result and tell failures
if (_pkgconfig_retval)
if(NOT ${_is_silent})
- message(STATUS " Package '${_pkg_check_modules_pkg}' not found")
+ message(STATUS " ${_pkgconfig_error}")
endif()
set(_pkg_check_modules_failed 1)
diff --git a/Tests/RunCMake/FindPkgConfig/dummy-pkg-config.sh b/Tests/RunCMake/FindPkgConfig/dummy-pkg-config.sh
index 852e841..abe14bf 100755
--- a/Tests/RunCMake/FindPkgConfig/dummy-pkg-config.sh
+++ b/Tests/RunCMake/FindPkgConfig/dummy-pkg-config.sh
@@ -10,9 +10,10 @@ case $1 in
;;
--exists)
shift
- echo "Expected: $@"
+ eval last=\${$#}
+ echo "Expected: ${last}"
echo "Found: ${PKG_CONFIG_PATH}"
- [ "$@" = "${PKG_CONFIG_PATH}" ] || exit 1
+ [ "${last}" = "${PKG_CONFIG_PATH}" ] || exit 1
;;
*)
exit 255