aboutsummaryrefslogtreecommitdiffstats
path: root/main/busybox/APKBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'main/busybox/APKBUILD')
-rw-r--r--main/busybox/APKBUILD91
1 files changed, 91 insertions, 0 deletions
diff --git a/main/busybox/APKBUILD b/main/busybox/APKBUILD
new file mode 100644
index 0000000000..ca08551d19
--- /dev/null
+++ b/main/busybox/APKBUILD
@@ -0,0 +1,91 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=busybox
+pkgver=1.18.4
+pkgrel=4
+_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
+ http://busybox.net/downloads/fixes-1.18.4/busybox-1.18.4-fuser.patch
+ http://busybox.net/downloads/fixes-1.18.4/busybox-1.18.4-hush.patch
+ $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
+67a8bf1b82480bc36768d51c18e5a280 busybox-1.18.4-fuser.patch
+a81f2d7d3bdf1a35ab77c4414a530d38 busybox-1.18.4-hush.patch
+4c0f3b486eaa0674961b7ddcd0c60a9b busybox-1.11.1-bb.patch
+b5375210f13fd6e1ca61a565e8fabd35 busybox-uname-is-not-gnu.patch
+d21d70d590e9e04bfc65ecb23b9d1617 loginutils-sha512.patch
+cf688759721a35137c9654b995b186c5 busyboxconfig"