aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--cmake/cmake.d/04-extra_targets.cmake11
1 files changed, 7 insertions, 4 deletions
diff --git a/cmake/cmake.d/04-extra_targets.cmake b/cmake/cmake.d/04-extra_targets.cmake
index 2143741..d54e128 100644
--- a/cmake/cmake.d/04-extra_targets.cmake
+++ b/cmake/cmake.d/04-extra_targets.cmake
@@ -84,12 +84,15 @@ foreach (PKG_CONFIG ${PKG_REQUIRED_LIST})
# Only doable within a native environment not under SDK
if( OSRELEASE MATCHES "debian" AND NOT DEFINED ENV{SDKTARGETSYSROOT} AND NOT DEFINED CMAKE_TOOLCHAIN_FILE)
execute_process(
- COMMAND dpkg -S *${XPREFIX}.pc
+ COMMAND pkg-config --print-provides ${XPREFIX}
OUTPUT_VARIABLE TMP_PKG_BIN
)
- #Need to be harden check
- string(REGEX REPLACE ":.*$" "" PKG_BIN ${TMP_PKG_BIN})
- set(DEB_PKG_DEPS "${DEB_PKG_DEPS} ${PKG_BIN} ${DEB_EXTRA_DEP}")
+ if(TMP_PKG_BIN)
+ string(REGEX REPLACE " *=.*$" "" PKG_BIN ${TMP_PKG_BIN})
+ set(DEB_PKG_DEPS "${DEB_PKG_DEPS} ${PKG_BIN} ${DEB_EXTRA_DEP}")
+ else()
+ message(FATAL_ERROR "-- ${Red}${XPREFIX} development files not installed. Abort.${ColourReset}")
+ endif()
endif()
endforeach()