blob: f2d4acdcad1543228e5822d1ca4919dd2ce44f86 (
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
From 9cb1ad3cffdb2664205645e2dad0600d6eaa2e1f Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
Date: Thu, 16 Jan 2014 14:33:45 +0100
Subject: [PATCH] abuild: implement -dbg subpackages
Patch from Andrew Manison.
ref #626
---
abuild.in | 35 ++++++++++++++++++++++++++++++++++-
1 file changed, 34 insertions(+), 1 deletion(-)
diff --git a/abuild.in b/abuild.in
index c37af4d..0876380 100755
--- a/abuild.in
+++ b/abuild.in
@@ -1245,6 +1245,31 @@ doc() {
default_doc
}
+# predefined splitfunc doc
+default_dbg() {
+ local f
+ binfiles=$(scanelf -R "$pkgdir" | grep ET_DYN | sed "s:$pkgdir\/::g" | sed "s:ET_DYN ::g")
+ for f in $binfiles; do
+ srcdir=$(dirname $pkgdir/$f)
+ srcfile=$(basename $pkgdir/$f)
+ dstdir=$(dirname $subpkgdir/usr/lib/debug/$f.debug)
+ dstfile=$(basename $subpkgdir/usr/lib/debug/$f.debug)
+ if [ ! -d $dstdir ] ; then
+ mkdir -p $dstdir
+ fi
+ cd $srcdir
+ objcopy --only-keep-debug $srcfile $dstfile
+ objcopy --add-gnu-debuglink=$dstfile $srcdir/$srcfile
+ mv $dstfile $dstdir
+ strip $srcfile
+ done
+ return 0
+}
+
+dbg() {
+ default_dbg
+}
+
# predefined splitfunc dev
default_dev() {
local i= j=
@@ -1675,6 +1700,14 @@ subpackages_has() {
return 1
}
+subpackage_types_has() {
+ local i
+ for i in $subpackages; do
+ [ "$1" = "${i##*-}" ] && return 0
+ done
+ return 1
+}
+
list_has() {
local needle="$1"
local i
@@ -1946,7 +1979,7 @@ else
fi
# if we want build debug package
-if [ -n "$DEBUG" ]; then
+if [ -n "$DEBUG" ] || subpackage_types_has "dbg"; then
CFLAGS="$CFLAGS -g"
options="$options !strip"
fi
--
1.8.5.2
|