aboutsummaryrefslogtreecommitdiffstats
path: root/main/abuild/0001-abuild-include-correct-version-number-for-provides.patch
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2012-09-05 13:07:07 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2012-09-05 13:07:07 +0000
commitb4f7e56a38e724e9430ff272fce150f01182a3e3 (patch)
tree458cf982a1bc25c1d4541e6f3256d861fd8b94ad /main/abuild/0001-abuild-include-correct-version-number-for-provides.patch
parent40ee1911fff790ce00c83a318580feab74bae820 (diff)
downloadaports-b4f7e56a38e724e9430ff272fce150f01182a3e3.tar.bz2
aports-b4f7e56a38e724e9430ff272fce150f01182a3e3.tar.xz
main/abuild: use correct version number for provides
Diffstat (limited to 'main/abuild/0001-abuild-include-correct-version-number-for-provides.patch')
-rw-r--r--main/abuild/0001-abuild-include-correct-version-number-for-provides.patch69
1 files changed, 69 insertions, 0 deletions
diff --git a/main/abuild/0001-abuild-include-correct-version-number-for-provides.patch b/main/abuild/0001-abuild-include-correct-version-number-for-provides.patch
new file mode 100644
index 0000000000..49c3d4db84
--- /dev/null
+++ b/main/abuild/0001-abuild-include-correct-version-number-for-provides.patch
@@ -0,0 +1,69 @@
+From 14af6a80cfbf657423334614b37a8f6f688dfe1a Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Wed, 5 Sep 2012 12:26:45 +0000
+Subject: [PATCH] abuild: include correct version number for provides
+
+This changes the format of .provides-so file. We now add a column with
+the version number
+---
+ abuild.in | 16 ++++++++++++----
+ 1 file changed, 12 insertions(+), 4 deletions(-)
+
+diff --git a/abuild.in b/abuild.in
+index ecb7c4d..a9ed449 100755
+--- a/abuild.in
++++ b/abuild.in
+@@ -775,14 +775,22 @@ EOF
+
+ prepare_tracedeps() {
+ local dir=${subpkgdir:-$pkgdir}
++ local etype= soname= file= sover=
+ [ "$arch" = "noarch" ] && return 0
+ options_has "!tracedeps" && return 0
+ # lets tell all the .so files this package provides in .provides-so
+ scanelf --recursive --nobanner --soname "$dir" | while read etype soname file; do
+ # if soname field is missing, soname will be the filepath
+ # we only want shared libs
++ sover=0
+ case $soname in
+- *.so|*.so.[0-9]*) echo ${soname##*/};;
++ *.so|*.so.[0-9]*)
++ soname=${soname##*/}
++ case "$file" in
++ *.so.[0-9]*) sover=${file##*.so.};;
++ esac
++ echo "$soname $sover"
++ ;;
+ esac
+ done >"$controldir"/.provides-so
+ # lets tell all the places we should look for .so files - all rpaths
+@@ -794,7 +802,7 @@ prepare_tracedeps() {
+ | sed 's:,:\n:g' | sort | uniq \
+ | while read i; do
+ # only add files that are not self provided
+- grep "^$i$" "$controldir"/.provides-so >/dev/null \
++ grep -q -w "^$i" "$controldir"/.provides-so \
+ || echo $i >> "$controldir"/.needs-so
+ done
+ }
+@@ -888,7 +896,7 @@ trace_apk_deps() {
+ found=
+ # first check if its provide by same apkbuild
+ for j in "$dir"/../.control.*/.provides-so; do
+- grep -w "$i" "$j" >/dev/null || continue
++ grep -q -w "^$i" "$j" || continue
+ found=${j%/.provides-so}
+ found=${found##*/.control.}
+ break
+@@ -921,7 +929,7 @@ trace_apk_deps() {
+
+ echo "# automatically detected:" >> "$dir"/.PKGINFO
+ if [ -f "$dir"/.provides-so ]; then
+- sed 's/^\(.*\)/provides = so:\1=0/' "$dir"/.provides-so \
++ sed 's/^\(.*\) \([0-9].*\)/provides = so:\1=\2/' "$dir"/.provides-so \
+ >> "$dir"/.PKGINFO
+ fi
+ [ -z "$autodeps" ] && return 0
+--
+1.7.12
+