aboutsummaryrefslogtreecommitdiffstats
path: root/main/abuild/versioned-deps.patch
blob: 4c0a20d8adad2c5ad7702cb1f381b546c2f92502 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
commit 463a87812523b004b94dc56b8edf90d1ed5d1ee0
Author: Natanael Copa <ncopa@alpinelinux.org>
Date:   Thu May 6 18:31:36 2010 +0000

    abuild: bugfix for versioned dependencies
    
    we need strip all '<>=' chars not only last

diff --git a/abuild.in b/abuild.in
index e0d726b..2af45e7 100755
--- a/abuild.in
+++ b/abuild.in
@@ -726,7 +726,7 @@ depparse_aports() {
 			case "$j" in
 				!*) continue;;
 			esac
-			deps="$deps ${j%[<>=]*}"
+			deps="$deps ${j%%[<>=]*}"
 		done
 		for j in $pkgname $subpackages; do
 			echo "o ${j%%:*} $dir"
@@ -747,7 +747,7 @@ deptrace() {
 	local deps= i=
 	# strip versions from deps
 	for i in "$@"; do
-		deps="$deps ${i%[<>=]*}"
+		deps="$deps ${i%%[<>=]*}"
 	done
 	[ -z "$deps" ] && return 0
 	( 	depparse_aports 
@@ -789,7 +789,7 @@ builddeps() {
 
 	# add depends unless it is a subpackage
 	for i in $depends; do
-		subpackages_has ${i%[<>=]*} || deps="$deps $i"
+		subpackages_has ${i%%[<>=]*} || deps="$deps $i"
 	done
 
 	installed_deps=$(apk info -e $deps)
@@ -820,7 +820,7 @@ builddeps() {
 
 	# find dependencies that are installed but missing in repo.
 	for i in $deps; do
-		local m=$(apk search --repository "$apkcache" ${i%[<>=]*})
+		local m=$(apk search --repository "$apkcache" ${i%%[<>=]*})
 		if [ -z "$m" ]; then
 			missing="$missing $i"
 		fi
@@ -903,7 +903,7 @@ deplist_has() {
 	local i
 	shift
 	for i in $@; do
-		i=${i%[<>=]*}
+		i=${i%%[<>=]*}
 		[ "$needle" = "$i" ] && return 0
 		[ "$needle" = "!$i" ] && return 1
 	done