From 1577216ae207699aa26a1aebd349da99764bf6f1 Mon Sep 17 00:00:00 2001 From: Natanael Copa Date: Fri, 23 Apr 2010 11:04:31 +0000 Subject: main/busybox: provide subpackage with static binary --- main/busybox/APKBUILD | 32 ++++++++++++++++++++++++-------- 1 file changed, 24 insertions(+), 8 deletions(-) (limited to 'main') diff --git a/main/busybox/APKBUILD b/main/busybox/APKBUILD index e4d1a01c5c..51813602df 100644 --- a/main/busybox/APKBUILD +++ b/main/busybox/APKBUILD @@ -1,12 +1,13 @@ # Maintainer: Natanael Copa pkgname=busybox pkgver=1.16.1 -pkgrel=1 +pkgrel=2 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 $pkgname-1.11.1-bb.patch @@ -18,6 +19,7 @@ source="http://busybox.net/downloads/$pkgname-$pkgver.tar.bz2 busyboxconfig" _builddir="$srcdir"/$pkgname-$pkgver +_config="$srcdir"/busyboxconfig prepare() { cd "$_builddir" #patches @@ -32,29 +34,43 @@ prepare() { sed -i -e 's/(ip, _BB_DIR_BIN/(ip, _BB_DIR_SBIN/' \ -e 's/(vi, _BB_DIR_BIN/(vi, _BB_DIR_USR_BIN/' \ include/applets.h || return 1 - - # we set the install prefix with sed since it might differ depending - # on abuild version - sed -e "s:^CONFIG_PREFIX=.*:CONFIG_PREFIX=\"$pkgdir\":" \ - ../busyboxconfig > .config } 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" - make install DESTDIR="$pkgdir" mkdir -p "$pkgdir"/usr/sbin "$pkgdir"/usr/bin "$pkgdir"/tmp \ - "$pkgdir"/var/cache/misc + "$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="319486ec65078d07fde26eb620fecde7 busybox-1.16.1.tar.bz2 4c0f3b486eaa0674961b7ddcd0c60a9b busybox-1.11.1-bb.patch 20d9beea7d0c0aaca14553a8f98fee12 flock-bb.patch -- cgit v1.2.3