aboutsummaryrefslogtreecommitdiffstats
path: root/main/abuild/0001-abuild-fix-circular-dependency-for-symlink-deps.patch
blob: c658262d366279ebaaaa240fb499e65f9a0390b7 (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
From 3f3281c87e123d15284e07e80a6ab5ba751463c9 Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
Date: Tue, 23 Jun 2015 11:20:29 +0000
Subject: [PATCH] abuild: fix circular dependency for symlink deps

The package should not have itself as dependency.
---
 abuild.in | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/abuild.in b/abuild.in
index 0813dd3..e76d873 100644
--- a/abuild.in
+++ b/abuild.in
@@ -1210,14 +1210,17 @@ scan_symlink_targets() {
 	local symfile= targetpath=
 	cd "$datadir"
 	for symfile in "$pkgbasedir"/.control.*/.symlinks; do
-		[ -e "$symfile" ] || continue
+		local d="${symfile%/.symlinks}"
+		if ! [ -e "$symfile" ] || [ "$d" = "$dir" ]; then
+			continue
+		fi
+
 		while read symlink target; do
 			if [ "${target#/}" = "$target" ]; then
 				target="${symlink%/*}/$target"
 			fi
 			targetpath="$datadir"/$(normalize_path "$target")
 			if [ -e "$targetpath" ] || [ -L "$targetpath" ]; then
-				local d="${symfile%/.symlinks}"
 				echo "$name=$pkgver-r$pkgrel" \
 					>> "$d"/.symlinks-needs
 			fi
-- 
2.4.4