aboutsummaryrefslogtreecommitdiffstats
path: root/main/busybox/APKBUILD
blob: 23fc36804ba9059ac03aa77dfd51ad2c6c3e83a2 (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
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=busybox
pkgver=1.17.1
pkgrel=3
pkgdesc="Size optimized toolbox of many common UNIX utilities"
url=http://busybox.net
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://busybox.net/downloads/fixes-1.17.1/busybox-1.17.1-shell.patch
	http://busybox.net/downloads/fixes-1.17.1/busybox-1.17.1-mktemp.patch
	http://busybox.net/downloads/fixes-1.17.1/busybox-1.17.1-sed.patch
	http://busybox.net/downloads/fixes-1.17.1/busybox-1.17.1-mdev.patch
	$pkgname-1.11.1-bb.patch
	busyboxconfig"

_builddir="$srcdir"/$pkgname-$pkgver
_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 "$_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 "$_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="c7fe7533b7fc4018b0b49a05ee0ee601  busybox-1.17.1.tar.bz2
ecbd34ef0d291a5a6c9ded3a16c7f544  busybox-1.17.1-shell.patch
74b8d7366ef0d1b8c10abdf3f88d51de  busybox-1.17.1-mktemp.patch
70e310bad1f9d2aa605ded62cf891c60  busybox-1.17.1-sed.patch
09c68cc99b2adbf8531a4319baba7a2d  busybox-1.17.1-mdev.patch
4c0f3b486eaa0674961b7ddcd0c60a9b  busybox-1.11.1-bb.patch
403e0b9fe99a7a18c5b9ae91283a5f9a  busyboxconfig"