summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2015-06-05 07:18:09 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2015-06-05 07:18:09 +0000
commitf5dce44bf98218313715bc3b849c9b2120272f0d (patch)
treeedfdb65b6e9dff8de3fcc78ec914d093e99d91ba
parentd4d0dc0c335ecf96fcfb97077050197efd92ca1d (diff)
downloadabuild-f5dce44bf98218313715bc3b849c9b2120272f0d.tar.gz
abuild-f5dce44bf98218313715bc3b849c9b2120272f0d.tar.bz2
abuild-f5dce44bf98218313715bc3b849c9b2120272f0d.tar.xz
abuild-f5dce44bf98218313715bc3b849c9b2120272f0d.zip
abuild: add warning when pc:* provider is missing
and indicate which package that should provide it and needs a rebuild.
-rw-r--r--abuild.in11
1 files changed, 7 insertions, 4 deletions
diff --git a/abuild.in b/abuild.in
index 3879b5e..9e77ee4 100644
--- a/abuild.in
+++ b/abuild.in
@@ -1047,13 +1047,16 @@ trace_apk_deps() {
# pkg-config depends
for i in $(sort -u "$dir"/.needs-pc 2>/dev/null); do
- if grep -w "^depend = ${i%[<>=]*}$" "$dir"/.PKGINFO >/dev/null ; then
- warning "You can remove '$i' from depends"
- continue
- fi
if subpkg_provides_pc "$i" || cross_compiling \
|| $APK info --quiet --installed "pc:$i"; then
autodeps="$autodeps pc:$i"
+ else
+ warning "Could not find any provider for pc:$i"
+ local pcfile=/usr/lib/pkgconfig/"${i%%[<>=]*}".pc
+ if [ -e "$pcfile" ]; then
+ local owner=$($APK info --quiet --who-owns $pcfile)
+ warning "${owner:-package providing $pcfile} needs to be rebuilt"
+ fi
fi
done