summaryrefslogtreecommitdiffstats
path: root/abuild.in
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2015-06-11 11:56:04 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2015-06-11 11:56:04 +0000
commit0e58eeff8089c8c148c20a5e239d618095ec434f (patch)
treec1be051b87c5d61cf3e567f7bbc5c516cfc3e27d /abuild.in
parent563409ed82164663e08835ed07584337ce601773 (diff)
downloadabuild-0e58eeff8089c8c148c20a5e239d618095ec434f.tar.bz2
abuild-0e58eeff8089c8c148c20a5e239d618095ec434f.tar.xz
abuild: fix provides and install_if in subpackages
we need to clear provides set in global scope before splitting the subpackages so the subpackage does not inherit main packages' provides. But at the same time, we must not clear the provides/install_if set in the splitfunction itself.
Diffstat (limited to 'abuild.in')
-rw-r--r--abuild.in16
1 files changed, 10 insertions, 6 deletions
diff --git a/abuild.in b/abuild.in
index cb069f2..dc72d79 100644
--- a/abuild.in
+++ b/abuild.in
@@ -683,6 +683,15 @@ postcheck() {
return 0
}
+pre_split() {
+ if [ -z "$subpkgname" ]; then
+ return 0
+ fi
+ # the subpackages should not inherit those form main package
+ provides=""
+ install_if=""
+}
+
prepare_subpackages() {
local i
cd "$startdir"
@@ -692,7 +701,7 @@ prepare_subpackages() {
msg "Running split function $func..."
local dir="$pkgbasedir/${i%:*}" name="${i%:*}"
( subpkgdir="$dir" subpkgname="$name" \
- $0 $func prepare_package \
+ $0 pre_split $func prepare_package \
&& postcheck "$dir" "$name" ) || return 1
done
postcheck "$pkgdir" "$pkgname" || return 1
@@ -947,11 +956,6 @@ archcheck() {
prepare_package() {
msg "Preparing ${subpkgname:+sub}package ${subpkgname:-$pkgname}..."
- if [ -n "$subpkgname" ]; then
- # the subpackages should not inherit those
- provides=""
- install_if=""
- fi
stripbin
prepare_metafiles \
&& prepare_trace_rpaths \