From b4f7e56a38e724e9430ff272fce150f01182a3e3 Mon Sep 17 00:00:00 2001 From: Natanael Copa Date: Wed, 5 Sep 2012 13:07:07 +0000 Subject: main/abuild: use correct version number for provides --- ...clude-correct-version-number-for-provides.patch | 69 ++++++++++++++++++++++ ...1-abuild-use-so-as-namespace-for-provides.patch | 26 ++++++++ main/abuild/APKBUILD | 9 ++- 3 files changed, 101 insertions(+), 3 deletions(-) create mode 100644 main/abuild/0001-abuild-include-correct-version-number-for-provides.patch create mode 100644 main/abuild/0001-abuild-use-so-as-namespace-for-provides.patch (limited to 'main/abuild') 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 +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 + diff --git a/main/abuild/0001-abuild-use-so-as-namespace-for-provides.patch b/main/abuild/0001-abuild-use-so-as-namespace-for-provides.patch new file mode 100644 index 0000000000..5b6b1de954 --- /dev/null +++ b/main/abuild/0001-abuild-use-so-as-namespace-for-provides.patch @@ -0,0 +1,26 @@ +From a5cc84e229a40d725c1d53d1b0924a9ef9a615e0 Mon Sep 17 00:00:00 2001 +From: Natanael Copa +Date: Wed, 5 Sep 2012 11:09:57 +0000 +Subject: [PATCH] abuild: use 'so:' as 'namespace' for provides + +--- + abuild.in | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/abuild.in b/abuild.in +index f4d724c..ecb7c4d 100755 +--- a/abuild.in ++++ b/abuild.in +@@ -921,7 +921,8 @@ trace_apk_deps() { + + echo "# automatically detected:" >> "$dir"/.PKGINFO + if [ -f "$dir"/.provides-so ]; then +- sed 's/^\(.*\)/provides = \1=0/' "$dir"/.provides-so >> "$dir"/.PKGINFO ++ sed 's/^\(.*\)/provides = so:\1=0/' "$dir"/.provides-so \ ++ >> "$dir"/.PKGINFO + fi + [ -z "$autodeps" ] && return 0 + for i in $autodeps; do +-- +1.7.12 + diff --git a/main/abuild/APKBUILD b/main/abuild/APKBUILD index 7ea7adf2e8..bb16bc9aed 100644 --- a/main/abuild/APKBUILD +++ b/main/abuild/APKBUILD @@ -2,14 +2,15 @@ pkgdesc="Script to build Alpine Packages" pkgname=abuild pkgver=2.12.1 -pkgrel=3 +pkgrel=4 url=http://git.alpinelinux.org/cgit/abuild/ source="http://git.alpinelinux.org/cgit/abuild/snapshot/abuild-$pkgver.tar.bz2 0001-abuild-add-support-for-uncompressed-tar-archives.patch 0001-abuild-use-scanelf-soname-to-find-the-provides-so.patch 0002-abuild-add-provides-information.patch 0001-abuild-add-version-number-to-provides.patch - + 0001-abuild-use-so-as-namespace-for-provides.patch + 0001-abuild-include-correct-version-number-for-provides.patch " depends="fakeroot file sudo pax-utils openssl apk-tools>=2.0.7-r1 uclibc-utils abuildhelper curl" @@ -56,4 +57,6 @@ md5sums="92348750a3354c3ec7b811716543b8e5 abuild-2.12.1.tar.bz2 b04eb6325bf8014ea9fc974344f71a82 0001-abuild-add-support-for-uncompressed-tar-archives.patch 8ba51a92d24d9e54bfdd1133bc2f0f8d 0001-abuild-use-scanelf-soname-to-find-the-provides-so.patch 454e0c6a8a3ee97ec4b00874203f700c 0002-abuild-add-provides-information.patch -e8e910f86ed1892bd46facb88164a27b 0001-abuild-add-version-number-to-provides.patch" +e8e910f86ed1892bd46facb88164a27b 0001-abuild-add-version-number-to-provides.patch +1b3e30efede1bccff3f2686a4355a71d 0001-abuild-use-so-as-namespace-for-provides.patch +ddeb905afd9a486902f70eea824fcd05 0001-abuild-include-correct-version-number-for-provides.patch" -- cgit v1.2.3