# Maintainer: Natanael Copa 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"