blob: 086c7c0622cddcccf7d040e3ef4a84f5869a0356 (
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
76
77
78
79
80
81
82
83
84
85
86
87
|
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=busybox
pkgver=1.18.4
pkgrel=2
_bbsuidver=0.6
pkgdesc="Size optimized toolbox of many common UNIX utilities"
url=http://busybox.net
arch="all"
license="GPL-2"
depends=
install="$pkgname.post-install $pkgname.post-upgrade"
subpackages="$pkgname-static"
triggers="busybox.trigger:/bin /usr/bin /sbin /usr/sbin /lib/modules/*"
source="http://busybox.net/downloads/$pkgname-$pkgver.tar.bz2
http://git.alpinelinux.org/cgit/bbsuid.git/snapshot/bbsuid-$_bbsuidver.tar.bz2
$pkgname-1.11.1-bb.patch
busybox-uname-is-not-gnu.patch
loginutils-sha512.patch
busyboxconfig"
_builddir="$srcdir"/$pkgname-$pkgver
_bbsuid="$srcdir"/bbsuid-$_bbsuidver
_config="$srcdir"/busyboxconfig
prepare() {
cd "$_builddir"
#patches
for i in ../*.patch; do
msg "Applying $i"
if ! patch -p1 -i $i; then
error "$i failed"
return 1
fi
done
sed -i -e 's/(ip, _BB_DIR_BIN/(ip, _BB_DIR_SBIN/' \
-e 's/(lspci, _BB_DIR_USR_BIN/(lspci, _BB_DIR_USR_SBIN/' \
-e 's/(vi, _BB_DIR_BIN/(vi, _BB_DIR_USR_BIN/' \
include/applets.src.h || return 1
}
build() {
cd "$_bbsuid"
make || return 1
cd "$_builddir"
msg "Building static busybox"
sed -e "s/.*CONFIG_PIE.*/\# CONFIG_PIE is not set/" \
-e "s/.*CONFIG_STATIC.*/CONFIG_STATIC=y/" \
"$_config" > .config
make silentoldconfig || return 1
make || return 1
mv busybox busybox.static
# build dynamic
msg "Building dynamic busybox"
cp "$_config" .config
make silentoldconfig || return 1
make || return 1
}
package() {
cd "$_bbsuid"
make install DESTDIR="$pkgdir" || return 1
cd "$_builddir"
mkdir -p "$pkgdir"/usr/sbin "$pkgdir"/usr/bin "$pkgdir"/tmp \
"$pkgdir"/var/cache/misc "$pkgdir"/bin "$pkgdir"/sbin
chmod 1777 "$pkgdir"/tmp
install -m755 busybox "$pkgdir"/bin/busybox
# we need /bin/sh to be able to execute post-install
ln -s /bin/busybox "$pkgdir"/bin/sh
}
static() {
triggers=
mkdir -p "$subpkgdir"/bin
install -m755 "$_builddir"/busybox.static \
"$subpkgdir"/bin/busybox.static
}
md5sums="b03c5b46ced732679e525a920a1a62f5 busybox-1.18.4.tar.bz2
968b3a058db04f95e9c4cdb44d7d3ddb bbsuid-0.6.tar.bz2
4c0f3b486eaa0674961b7ddcd0c60a9b busybox-1.11.1-bb.patch
b5375210f13fd6e1ca61a565e8fabd35 busybox-uname-is-not-gnu.patch
d21d70d590e9e04bfc65ecb23b9d1617 loginutils-sha512.patch
7297e212d5e2a5517f770b4ad1f4654d busyboxconfig"
|