summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>2018-10-06 00:42:09 +0300
committerKaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>2018-10-19 15:18:13 +0300
commit152bab8eb855ac20cb4cc7cde88985f6b8574242 (patch)
treeee7de13003a1cc117df4617ea40a39cf4990503a
parentcf976c90ae418db9e708747bfdd9fd125bb910ee (diff)
downloadabuild-152bab8eb855ac20cb4cc7cde88985f6b8574242.tar.bz2
abuild-152bab8eb855ac20cb4cc7cde88985f6b8574242.tar.xz
abuild: filter_deps function
-rw-r--r--abuild.in30
1 files changed, 13 insertions, 17 deletions
diff --git a/abuild.in b/abuild.in
index 05e916f..3528b79 100644
--- a/abuild.in
+++ b/abuild.in
@@ -1966,28 +1966,24 @@ trace_makedepends() {
'
}
-calcdeps() {
- builddeps=
- hostdeps=
+filter_deps() {
+ local d= i
+ for i in $*; do
+ [ "$pkgname" = "${i%%[<>=]*}" ] && continue
+ list_has $i $d && continue
+ subpackages_has ${i%%[<>=]*} || d="$d $i"
+ done
+ echo $d
+}
+calcdeps() {
if cross_compiling && [ -n "$makedepends_build" -o -n "$makedepends_host" ]; then
- for i in $EXTRADEPENDS_BUILD $1 $makedepends_build; do
- list_has $i $hostdeps && continue
- builddeps="$builddeps $i"
- done
- for i in $EXTRADEPENDS_HOST $EXTRADEPENDS_TARGET $makedepends_host; do
- [ "$pkgname" = "${i%%[<>=]*}" ] && continue
- list_has $i $hostdeps && continue
- subpackages_has ${i%%[<>=]*} || hostdeps="$hostdeps $i"
- done
+ builddeps=$(filter_deps $EXTRADEPENDS_BUILD $1 $makedepends_build)
+ hostdeps=$(filter_deps $EXTRADEPENDS_HOST $EXTRADEPENDS_TARGET $makedepends_host)
else
[ -z "$makedepends" ] && makedepends="$makedepends_build $makedepends_host"
want_check && makedepends="$makedepends $checkdepends"
- for i in $EXTRADEPENDS_BUILD $EXTRADEPENDS_HOST $1 $depends $makedepends; do
- [ "$pkgname" = "${i%%[<>=]*}" ] && continue
- list_has $i $builddeps && continue
- subpackages_has ${i%%[<>=]*} || builddeps="$builddeps $i"
- done
+ builddeps=$(filter_deps $EXTRADEPENDS_BUILD $EXTRADEPENDS_HOST $1 $depends $makedepends)
hostdeps="$EXTRADEPENDS_TARGET"
fi
}