aboutsummaryrefslogblamecommitdiffstats
path: root/main/busybox/APKBUILD
blob: a9a2cb0ccff8d288a175ca800a760892739fb333 (plain) (tree)
1
2
3
4
5
6
7
8
9
                                                   
               

             

                                                              
          
               
        
                                                     
                             
                                                                       
                                                             



                                                                               

                
                 
                                
                                      
                             
                               
 
                                                                       
                                                           

                     
        


                                 
                               
           
                                         
                





                                                                        
            

                                          
 
 
         
                      
                             
                                                                                       
 
                        



                                                             
                                                             
                        


                                 
                     

                                      
                                                             
                        


           
                     
                                                                     
                                                                     
                                

                                                               

                                                            









                                                      

 
          
                                           
                                 
                                                    
                                               

 



                                                                 
                                          
                                           
                                                         
                                                                
                                                       
                                                         
                                                                                                 
                                                                                     
                                               
                                              



























                                                                                                                                                                                                 
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=busybox
pkgver=1.21.0
pkgrel=0
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://busybox.net/downloads/fixes-1.21.0/busybox-1.21.0-mdev.patch
	http://busybox.net/downloads/fixes-1.21.0/busybox-1.21.0-platform.patch
	http://busybox.net/downloads/fixes-1.21.0/busybox-1.21.0-xz.patch

	bbsuid.c

	nologin.c
	$pkgname-1.11.1-bb.patch
	busybox-uname-is-not-gnu.patch
	bb-app-location.patch
	loginutils-sha512.patch

	0001-ifupdown-pass-interface-device-name-for-ipv6-route-c.patch
	0001-ifupdown-use-x-hostname-NAME-with-udhcpc.patch
	busyboxconfig
	glibc.patch"
	
_sdir="$srcdir"/$pkgname-$pkgver
_staticdir="$srcdir"/build-static
_dyndir="$srcdir"/build-dynamic
_config="$srcdir"/busyboxconfig
prepare() {
	mkdir -p "$_staticdir" "$_dyndir"
	#patches
	cd "$_sdir"
	for i in $source; do
		local p=${i##*/}
		case $i in
		*.patch) msg $p; patch -p1 -i "$srcdir"/$p || return 1;;
		esac
	done

	cp "$srcdir"/nologin.c loginutils/
}

build() {
	# build bbsuid
	msg "Building bbsuid"
	${CC:-gcc} $CFLAGS "$srcdir"/bbsuid.c $LDFLAGS -o "$_dyndir"/bbsuid || return 1

	cd "$_staticdir"
	msg "Building static busybox"
	sed -e "s/.*CONFIG_PIE.*/\# CONFIG_PIE is not set/" \
		-e "s/.*CONFIG_STATIC.*/CONFIG_STATIC=y/" \
		"$_config" > .config
	make -C "$_sdir" O="$PWD" silentoldconfig || return 1
	make || return 1
	mv busybox busybox.static

	# build dynamic
	cd "$_dyndir"
	msg "Building dynamic busybox"
	cp "$_config" .config
	make -C "$_sdir" O="$PWD" silentoldconfig || return 1
	make || return 1
}

package() {
	cd "$_dyndir"
	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 || return 1
	install -m4111 bbsuid "$pkgdir"/bin/bbsuid || return 1
	# we need /bin/sh to be able to execute post-install
	ln -s /bin/busybox "$pkgdir"/bin/sh

	#ifupdown needs those dirs to be present
	mkdir -p \
		"$pkgdir"/etc/network/if-down.d \
		"$pkgdir"/etc/network/if-post-down.d \
		"$pkgdir"/etc/network/if-post-up.d \
		"$pkgdir"/etc/network/if-pre-down.d \
		"$pkgdir"/etc/network/if-pre-up.d \
		"$pkgdir"/etc/network/if-up.d \
		|| return 1
}

static() {
	pkgdesc="Statically linked Busybox"
	mkdir -p "$subpkgdir"/bin
	install -m755 "$_staticdir"/busybox.static \
		"$subpkgdir"/bin/busybox.static
}

md5sums="d613f2e4b580305c1de8691f7b84285e  busybox-1.21.0.tar.bz2
86afecbf8216eab9d486b2c0fcc0175d  busybox-1.21.0-mdev.patch
324097adfdd8a25b85784bd4da6bec48  busybox-1.21.0-platform.patch
4ae68a09b398aee34453dc02e3474e21  busybox-1.21.0-xz.patch
8485cf1e389e891914cbb8771a6d9bbd  bbsuid.c
d64b58a30892c558bdbab7f0d0997577  nologin.c
4c0f3b486eaa0674961b7ddcd0c60a9b  busybox-1.11.1-bb.patch
b5375210f13fd6e1ca61a565e8fabd35  busybox-uname-is-not-gnu.patch
c5a8dbc8696db6da9c4624b0e11d8fba  bb-app-location.patch
8c42c9ef0f0419c314c86bcaf7796106  loginutils-sha512.patch
04eeda8c49d4688e6dec02451f8b6aae  0001-ifupdown-pass-interface-device-name-for-ipv6-route-c.patch
e1c183cbe1ca18a0fa0d9597314076c9  0001-ifupdown-use-x-hostname-NAME-with-udhcpc.patch
b4e7c47c05c1fdaee0a418731e1d1135  busyboxconfig
befaac2c59c380e36a452b3f1c1d4a3a  glibc.patch"
sha256sums="eb9d268627783297f5f459cb9bd61a94e395dc7cb3647e10ec186e0159aa36ed  busybox-1.21.0.tar.bz2
738c6f71ca2b277afb0d0371a67d7021214a269c7d4b887701e44bdaa526f4f3  busybox-1.21.0-mdev.patch
ee7b96577330a68598d4ec48ce94f6eca3079c32a86cca32f3bb6cc28d467654  busybox-1.21.0-platform.patch
c807f73718e836a81ee74987306c72297ddba209038240f81fab96b4a28b73b4  busybox-1.21.0-xz.patch
81957f1fe0c386120dad1c8174ccc1fcfeed98c14d229db7d164d4fb4c938b3d  bbsuid.c
9bbf0bec82e6d6907474958f3be048c54657fbf49207810b7e4d4d6146f0069d  nologin.c
327bb8049e2726351a5c8b6b2cef864f6ce58725d4453983f97092ea73656ccc  busybox-1.11.1-bb.patch
a31ce8bcb8b81b20e80ffa407600a530d085806c6471f4e4249fcb3a491b79ef  busybox-uname-is-not-gnu.patch
576366b4d50f1078da6c0364ef70415de92d97c93c64f4d790b11d7a34cdccd2  bb-app-location.patch
57674b20158c0b266ed028b0c65299f9cbcad7d33d19c9fcc403d3967daba493  loginutils-sha512.patch
2e9d56335ca39e944b9abd9ecc91d0e47a3fe3434f8b7ec3f526bc8fa0895ada  0001-ifupdown-pass-interface-device-name-for-ipv6-route-c.patch
53563c6dc4db13004d0b37f7bf1748e861b5a5c4244c1d34f102c23b689420c5  0001-ifupdown-use-x-hostname-NAME-with-udhcpc.patch
7774d71ddab017c4e436bc575637bd54e3936a7e82574756afced8e1e0077c57  busyboxconfig
c604ef791c31d35a8c5ee4558d21428a46f37a6d762c4a7e29864f4037fc44a0  glibc.patch"
sha512sums="ddafded24881f03db550d9793585bb5442c70f2a60a5d9770126f50981dadfe95fc0b280f83d5b8a8ce21c86bb7ce64e9f1a606cea140fb2f2599a21de55ba31  busybox-1.21.0.tar.bz2
646556d1b923e93ced3219b14013d1a75b41bfc21f4a917428707ebd9de4c1e06306c249b206307f898556e1d44cb5792bfa42088eb6f4715b48acac5c2c0cb1  busybox-1.21.0-mdev.patch
595e1081dcc9f2dca714066c1f59659d7c7e3f702df937c138ff60cf9af42272b71ac354521c3abd26ac406eb07a710c14c4f94e62a293edcd6473ba1fd53675  busybox-1.21.0-platform.patch
696dd31a73bbd919435a3ee1b8cd05769e6c3a45e853e3e052a22b7290bf332cd3b7e17e394911864b3c7ed7f9eea604dfbd7a5c43f0eb1e65b257d679fcccd3  busybox-1.21.0-xz.patch
16b3dd6a8b76b062d51458351fcb44f84b49eb4bf898584c933df90fb2cb3966f9547865a4d7447589bb20b7c203beb04ff7512f76f85d29138d2cff4eb9ee81  bbsuid.c
4e7c291a70e879b74c0fc07c54a73ef50537d8be68fee6b2d409425c07afd2d67f9b6afcd8c33a7971014913cc5de85e45079681c9e77200c6cc2f34acfba6d2  nologin.c
eb7cce973bfd53ce3350713437b9e2751becfb8dfb10b14f27c4f812297c403b90f80dc2906179d499e8dffbe6df8aa37ae27625c552162923d59fe35b55b32b  busybox-1.11.1-bb.patch
225c0608972f7daaca672eafdf647eea392e076537287370ca7791931de4803645d4d159385dc2909314028dccba3c64d0c89fa4e1184f856959b17c58459ed1  busybox-uname-is-not-gnu.patch
5c42b05be69c834c9fd5372c6b0d55a6399c74146a94ea09eae7285dd4fa75d1bde38bf7ab73e98638f65eb72db02115453cbdfe85a0085d742940366f617c7d  bb-app-location.patch
69af4800fcf765b4ae029daced7ff171b6b04d810c94a987c7ba848e275a27b77b18b38df1b85f4a12c4a47ed42f62e0768260eb1198e2aff1c3cea898b85c61  loginutils-sha512.patch
f2ed7bf994766a20ceecb28bea8c66307b6b66cdd7099408b1f29a529786ce07e55824b21256321708663e00d6fe9428480b0d3e121b67d6ebd8a8a87b1486d1  0001-ifupdown-pass-interface-device-name-for-ipv6-route-c.patch
b1a1cc2ada657a3d3364c8c96853575d73784e769cd8768c170c27a3e59abd2beace75dff6d5047c4391725e961d93149f9c3f45ed75fb1c582bf18b818282c9  0001-ifupdown-use-x-hostname-NAME-with-udhcpc.patch
373b23c3a0db5353dc19bc1f758ec1ebaec82a05f99ac1ab839b95c94e6214f1c252b6b39fcd56cd5f0e0b3bd6c32bd9dde72a4afa5be49c49b6bc9190a8776f  busyboxconfig
1d2739379dab1deb3eae7cffd4845300eb7d30f7343b4a1209b21a5680860d55080ad45fdefe098b249ce3040c01951fa7f0a79cd447b2d7b260eb000099d9dc  glibc.patch"