diff options
author | Mike Frysinger <vapier@gentoo.org> | 2008-02-06 15:36:38 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2008-02-06 15:36:38 +0000 |
commit | cf18fe3422fcc4a3dfdbfab9aa07df720f876265 (patch) | |
tree | f2df5b4b3c150071479e048e2b6d56913708163c /sys-apps/busybox | |
parent | old (diff) | |
download | historical-cf18fe3422fcc4a3dfdbfab9aa07df720f876265.tar.gz historical-cf18fe3422fcc4a3dfdbfab9aa07df720f876265.tar.bz2 historical-cf18fe3422fcc4a3dfdbfab9aa07df720f876265.zip |
Version bump.
Package-Manager: portage-2.1.4.1
Diffstat (limited to 'sys-apps/busybox')
-rw-r--r-- | sys-apps/busybox/ChangeLog | 12 | ||||
-rw-r--r-- | sys-apps/busybox/Manifest | 45 | ||||
-rw-r--r-- | sys-apps/busybox/busybox-1.9.0.ebuild | 239 | ||||
-rw-r--r-- | sys-apps/busybox/files/busybox-1.9.0-allno.patch | 23 | ||||
-rw-r--r-- | sys-apps/busybox/files/busybox-1.9.0-fsck.patch | 15 | ||||
-rw-r--r-- | sys-apps/busybox/files/busybox-1.9.0-iproute.patch | 25 | ||||
-rw-r--r-- | sys-apps/busybox/files/busybox-1.9.0-mkswap.patch | 15 | ||||
-rw-r--r-- | sys-apps/busybox/files/busybox-1.9.0-msh.patch | 79 | ||||
-rw-r--r-- | sys-apps/busybox/files/busybox-1.9.0-nameif.patch | 33 | ||||
-rw-r--r-- | sys-apps/busybox/files/busybox-1.9.0-nohup.patch | 82 | ||||
-rw-r--r-- | sys-apps/busybox/files/busybox-1.9.0-stty.patch | 37 | ||||
-rw-r--r-- | sys-apps/busybox/files/busybox-1.9.0-zcip.patch | 69 |
12 files changed, 651 insertions, 23 deletions
diff --git a/sys-apps/busybox/ChangeLog b/sys-apps/busybox/ChangeLog index 77f9bbcbd22c..e5622163ae39 100644 --- a/sys-apps/busybox/ChangeLog +++ b/sys-apps/busybox/ChangeLog @@ -1,6 +1,16 @@ # ChangeLog for sys-apps/busybox # Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/busybox/ChangeLog,v 1.178 2008/02/05 11:18:23 corsair Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-apps/busybox/ChangeLog,v 1.179 2008/02/06 15:36:37 vapier Exp $ + +*busybox-1.9.0 (06 Feb 2008) + + 06 Feb 2008; Mike Frysinger <vapier@gentoo.org> + +files/busybox-1.9.0-allno.patch, +files/busybox-1.9.0-fsck.patch, + +files/busybox-1.9.0-iproute.patch, +files/busybox-1.9.0-mkswap.patch, + +files/busybox-1.9.0-msh.patch, +files/busybox-1.9.0-nameif.patch, + +files/busybox-1.9.0-nohup.patch, +files/busybox-1.9.0-stty.patch, + +files/busybox-1.9.0-zcip.patch, +busybox-1.9.0.ebuild: + Version bump. 05 Feb 2008; Markus Rothe <corsair@gentoo.org> busybox-1.8.2.ebuild: Stable on ppc64 diff --git a/sys-apps/busybox/Manifest b/sys-apps/busybox/Manifest index 4419364cc23f..eacb13f15e3a 100644 --- a/sys-apps/busybox/Manifest +++ b/sys-apps/busybox/Manifest @@ -1,3 +1,6 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + AUX 1.4.0/bb.patch 866 RMD160 f1cce542de0814d6dbcf5f23cfad8d3249bf8839 SHA1 257b0dea76eb8656e2d0f03cc877af05415bcd0b SHA256 5e4ca94e7f5914d0e525bec1d661b978fd2e3d356cb1d1014701c6e486f4d7f8 AUX 1.4.0/bin2hex.patch 432 RMD160 5435664813aed4a15c9cf100e04506bbdf60c8b6 SHA1 66561e8c14f25a0b20d743941466bd9b445ee5c3 SHA256 7535703dffb63dd6a0331fce82d542c786758dfe52f7c97491369dde3d35fd1a AUX 1.4.0/data_extract_all.patch 545 RMD160 88773f3504cbf3e66e83e4c7d017591f79c97c9f SHA1 a30e4cda7c4d0c58ca0cccf23bba8e013cbfdf79 SHA256 cb2b59cb27114771b0c8dc04b480434a85a912eae5e6b96639cfcf5917f7b87e @@ -8,30 +11,28 @@ AUX busybox-1.6.0-echo.patch 270 RMD160 48b9556175d43a9de922100714f8060c1e9c47cc AUX busybox-1.6.0-hushdep.patch 738 RMD160 fe71f80fd3260ab85b2c6a3d758d6b996f76a1f5 SHA1 47d86150c0e53e29b2b967c4a6527f44b21ce5ad SHA256 e9a71597c8cc0efa246538678a35cd5af776d5165afb8e50f9f6d518eb174a0b AUX busybox-1.7.0-bb.patch 880 RMD160 fae03d9ed63f81d4ec043c4fc1eff5158eba5250 SHA1 8d515d3c2474e0f4d43015159b75e42de0d29cb1 SHA256 83c62f48e3ad89a77b2e0dd74d8ffa586faf2d112c3540c930f39e4abf3ccd55 AUX busybox-1.7.4-signal-hack.patch 559 RMD160 4be7ab4379d4d4523fb7139a9ea6d1d885256612 SHA1 2427c3a5509fd04a3215c241c66291778cb19ae0 SHA256 541ab9a625acbb21ad413151f02ede8ab19e32d3a3583f5ca35d4713161bb567 +AUX busybox-1.9.0-allno.patch 1179 RMD160 32d9813d9bc5ec998e7eb0f1e0f04066da0e34d3 SHA1 d902d31244d31778a8a21081a801f0f458a54e8f SHA256 40a38c927502233171db99c530e8c2282a6f63a1495d0c29c268827713700d0c +AUX busybox-1.9.0-fsck.patch 370 RMD160 82c5b5eaa18be59365f977090176a328d63f6bc4 SHA1 85f847de56f147f16ea4aad68b4e7f15d787f676 SHA256 4f058c85ef7d8b7dabbf3434f7c939180e5edcc4501837995315db86cf321e05 +AUX busybox-1.9.0-iproute.patch 957 RMD160 bc1c280ba29e777f6f25a76946a8b5d8d4eb777d SHA1 b8eb54f6bcd23371d2e48dfc2ce89d460cde08a9 SHA256 bda2fadffe307bfd5935d74b8a8e7162f868dce85cbf9ba1a01198d10ae5b969 +AUX busybox-1.9.0-mkswap.patch 567 RMD160 021736f6c1f06539fdeef876f075a3f6abf0184b SHA1 8f747fc61843bdf12ce6bd4e54cb9cc49bff1556 SHA256 61fba490c1ba4e8a2ea27651cfff882b0cf2c5225607b0ccb17a19c6690a553a +AUX busybox-1.9.0-msh.patch 2470 RMD160 c4e1c7ddc5d6673306e1aa7306fbb6839bd35f6e SHA1 ef840c32531dcc21367e4a78b342c797cfd4e6a6 SHA256 fe316eada26aceaadb8a519e7270aa96a19fe60f4a99f195502e993373d9c9ea +AUX busybox-1.9.0-nameif.patch 1584 RMD160 f43b765438a0a3882e61ccaa7691329824d5a95a SHA1 c0199f8326f81fd2c8e778274187f8bdc4ee9229 SHA256 e67f03f4ee0eb6b3bcdd7e8fb1aeb831676da70cb14669e2c2fe6596fb79c03f +AUX busybox-1.9.0-nohup.patch 2281 RMD160 1683ac268a03ac78ac73cda2d6d5f000a8f0c823 SHA1 a5bf092b5cc8760412af3d7dc72c3564172a1a08 SHA256 f939ac7fdfea294db7b82378eccd5e26a955913dde2bb6df926a41f4c442f7de +AUX busybox-1.9.0-stty.patch 806 RMD160 e7d04f3f1590b233f63d027bb27b278307d86aa6 SHA1 a2e93dfe87ccb5b00fd714e57af09ba1e83ee4e3 SHA256 d02827ad1e6d72d0d78f40cc77f805fc8e51718786e8571686ba05b7016056ce +AUX busybox-1.9.0-zcip.patch 2195 RMD160 7c056cb9bff14e1e5f728d2f7da93f46676cf7ba SHA1 ea89a0e9cd753a928c503b1d8c2e089b75992998 SHA256 c8d639ca5a6fc5198a5a532d4fa3dbb5350ee14cebf5ce6becbaead7755f3b47 AUX mdev-start.sh 2411 RMD160 0513dc2423a62d2728cd04ef01172906a79f4d01 SHA1 52efb662fc0726c18da0964adf1d80571766ce01 SHA256 33f45f6f09ee28f623b4cc0dcc1e60743141d9a969c04b9566ac3d0687cb670a -DIST busybox-1.4.1.tar.bz2 1510432 RMD160 6ea5461718fae52b9ee3b966e49a226a0685fd28 SHA1 e349e3585448ba0f7c28504326301ea130eb2e35 SHA256 2936318008322392716a9d3566bcff071cf5c97cb1df1f5953ec5b5a8a1701bb -DIST busybox-1.4.2.tar.bz2 1509690 RMD160 222c2f2bcabeba45b8233981c8071fe4f4d62bf3 SHA1 d654727c62f324ab13295095c219451b969beb87 SHA256 da1a9b1c9e210e3e129ab8a3b4e6af2fe093673e3f60722931e2c722d4c29b0f -DIST busybox-1.5.0.tar.bz2 1550138 RMD160 e42100fcd35856a907db983b284a37c650425185 SHA1 3968b6816b44d5ffcfd7a2feee2eb84680c801e4 SHA256 e71a5e19d3beb6139012558c8b25966b308e425ae999bd0d2a105d9bcdb37b5c -DIST busybox-1.5.1.tar.bz2 1549430 RMD160 81ba96b794db313cacc68a29ba19d6a18e5b6707 SHA1 474a45d626735ec8e04ec31fd353a8ceb2984f3c SHA256 b47c8c9f047cec4ee42559509909df8f910597539fdfb4b2de05404c3092337f -DIST busybox-1.6.0.tar.bz2 1689981 RMD160 56ee3ebefa5f2c6bfad84375b3f7f0752d31fcbe SHA1 bce33a204a943bf7438e1fdb8d8a28e8d99e9c81 SHA256 338cb3b77671f1dcec01079e8aad0084e05bb76e21b095274b5bea5d91b5a57d -DIST busybox-1.6.1.tar.bz2 1692099 RMD160 5fc8a3abeea8988777a9699bdffe025804ec1056 SHA1 ff79db26fa53c20808de4d6f3514f34044749a77 SHA256 d1c7ee084266a168372755929cc59cd27a5ddc136a97608b855f0dba5f7ba8c2 -DIST busybox-1.7.0.tar.bz2 1726650 RMD160 23691b0e908028d109138c1fdf719c35aada6bdc SHA1 84395ec037f23f08bdfc35e808622f344ab3c708 SHA256 b8b991dda8d386ef0210b421670efa6f72da2a5c382c544e6791efa0cbaeac76 -DIST busybox-1.7.1.tar.bz2 1728262 RMD160 42ba3ef6033b8d74c31251810f73c48ddb3820e1 SHA1 439ebcbe2b48e19e1c9acc5aa886b24795d523b1 SHA256 8b6a5fe183cbc19c73db475aaba73af0ba2cba386f3b206fb7720dcf94da549c -DIST busybox-1.7.2.tar.bz2 1729040 RMD160 f9850b3949ad61dfae37c7ab48eac6c9507eb537 SHA1 d9c618a7b104af4e70d623b1b6f3bc454405e12b SHA256 83c4cc813124a43f13e2ebb83cea9da9909d63891b824bf4bc7006f0567db7cf -DIST busybox-1.7.3.tar.bz2 1727483 RMD160 1039011774b7501abb8a4df4c858cba2def7abda SHA1 e50507674baa245774b7205384b2049f06ba7998 SHA256 b29c2701c5203ee21d6cf2590b6af164d05b7a524a42991b1a7da7fef6fbaaea DIST busybox-1.7.4.tar.bz2 1727940 RMD160 a4b71a246449f88a59acda6ecf019f66b9b7c19b SHA1 e5dcaa25525ca63663c3d4e7027897fed54a4f95 SHA256 8480a7c1b9ac0fddff55e8daae807ccf0a47aa292137fa8c9f97cf0733b459c7 DIST busybox-1.8.2.tar.bz2 1765399 RMD160 561d84cc28d2b9cd85f05d9959bc2c585c80a986 SHA1 cca3259c06c64ad4ba08070c8da32083d813057f SHA256 1e444c15c064ca111299323a5193113c8bcb80f7a946675b70f14b0166a2a59c -EBUILD busybox-1.4.1-r2.ebuild 7981 RMD160 83426ba5b68db54a6201fcbe9f7213908b8b8457 SHA1 6394e28e73cdea532532afbb674076d029a029b7 SHA256 bf7a7ee065cefa47aa00eb06714cf6225b664968a95f826d8ada3f8489cb79a3 -EBUILD busybox-1.4.2.ebuild 7820 RMD160 78d6b7adf60329ee833c185ce0051b4d45c989a3 SHA1 a545354ee416b17c824feff0c002ff0d68657060 SHA256 3e454621fcb5ac47002f480527605ad3fa55536ec5ebac44369bf11af2b7726c -EBUILD busybox-1.5.0.ebuild 7867 RMD160 9ca10806775bb7818060a8f5bc63e7f5184119a9 SHA1 19f489508ea62e8c53053838acdd667703435d97 SHA256 09c80143227fdca72dc68e30a3e2c41d637c528b8380f50930e2771e6f850ebb -EBUILD busybox-1.5.1.ebuild 7852 RMD160 dc19f20da0ec145345f5449b8ba6bc76a19f29bd SHA1 8b9557980a6b7936d7cb3841c106e958ac7601e5 SHA256 f93668324d369c28f496ce6ffdf09bb0bdbece84da0a91361df3cc5e726aac32 -EBUILD busybox-1.6.0.ebuild 6746 RMD160 093eedb8df20a0d643463a3bcac42a9d0461f59f SHA1 e98b9c00de8c268e0b518e476b813d923ab5ccf6 SHA256 e961df2df996c22d5bf35e0162c691bc29a1af3a8e8e14ebadda93d3815fe3bb -EBUILD busybox-1.6.1.ebuild 6734 RMD160 38af4f1dfe1ca9118c2f943f556250323127c2d8 SHA1 5f0e9a8ac3c27cb4a3d7ffff72f8a066f82d72e5 SHA256 7f211e58e65fa2234d3c2ddf92d51da5676af014e21dd5370d35d780d85b2fd5 -EBUILD busybox-1.7.0.ebuild 7016 RMD160 dbddd13c405cfeca64c4a27c51733eddf50c8a6d SHA1 e28c1c26f90c489227ec91d77413a9a613b04d8f SHA256 c5d6850b4938500e2764719ce193e7a4455d871da54e3142c2183703f8549c59 -EBUILD busybox-1.7.1.ebuild 7015 RMD160 895fb24957205cae59cf631642934418773066d4 SHA1 2a5cadc65be38be4aeebd68ccf5400fcbc4c4d32 SHA256 6e4bde9de725a4ac3d02f44daac357824831050b594fe082a58af2da687758a3 -EBUILD busybox-1.7.2.ebuild 7017 RMD160 f9385d31753be5c1d38713f40c32c4425956feaa SHA1 fefd0c431e5e759fe385f5991586196586745ff5 SHA256 b12b6a6df4da7a6d888091b8e4e3bc350dd51aeb2896906c0028ecaabdfed15f -EBUILD busybox-1.7.3.ebuild 7015 RMD160 7464153bd120766c254ba789337b536ef706630e SHA1 32c9ac1028e2e06ea521c972a5e80b5169fe2688 SHA256 8339ea8680e20c7df7eae1573a88fc457d21f2a88521409cd082158d550e3f70 +DIST busybox-1.9.0.tar.bz2 1798481 RMD160 ec8dbbda99d0ad2f8e139b2dd5340b8d0762a74b SHA1 adb9409ce37b2f9a8a1a5a6f9ba4fde615c3167b SHA256 2da62c3cfbea0108ba1066b7d56207fa01843a2b30314f3329454700301b28c1 EBUILD busybox-1.7.4.ebuild 7065 RMD160 c15b1f193f6e6064b129ab0d3988b5a7661c484e SHA1 bd04231092d736a8d84cecaac30638a80746d5b8 SHA256 295a507bfde7316606b4b8bac650a131fec9e61ef55a2356a4d29d0a0bb873e6 -EBUILD busybox-1.8.2.ebuild 7104 RMD160 f9d1272d7b0ac3225c0afd5ce2ff10d9c609cd5d SHA1 b464c1460787e6bcc55b8a4a58a704e6a1ad6a49 SHA256 4a92a98f70cc8b1d4f4ebd59ebd0b1922412cb1413bd9612cedadd9bb78a52cf -MISC ChangeLog 26437 RMD160 ac6952a6644339842882ad1d82b38c17ff6ce1f3 SHA1 0b402c2089d8c5563bcaf0eb14c00cdc01ac83d5 SHA256 f458e04117c0e7be546208d66ef565b03e55f853e0869bff8f319998a0daf7ec +EBUILD busybox-1.8.2.ebuild 7100 RMD160 f990e7adf92b71ed119e4954fc5d533e68821a91 SHA1 ece3e8c06f597ff1c86066e6a4330a03772577a2 SHA256 41e4a1a77b5cd0e990162043d0ef2389f5d825a5a7e92596d531469d885a2b1f +EBUILD busybox-1.9.0.ebuild 7110 RMD160 9bdb5d859e69147da01bbce4be1cd184f0f304c8 SHA1 d3c44467b85f4fd929d6880ab20697359c04e133 SHA256 62f33d2ee27d6aba2b139bf73104766b68ccfe9b8dbc67eedc2e71adda644090 +MISC ChangeLog 26871 RMD160 8bd9afc7522d05717b6a387e90adf2b59f1860f3 SHA1 4b9e5b81a10606714147620ca28bd83fc7361097 SHA256 00b86ae7e83e8dccb544142a00c005b3ecbda923f57f2b04eed11be7341ed98e MISC metadata.xml 161 RMD160 77385273ea1d12ed4093a4167307486b74d1cf82 SHA1 aa4b2873e32de89c0b0aeb26b5782f77cb00948e SHA256 a11fdd02015a232398fdf22a20d26a95fc34d44c54513e6b26b6128d0b76122e +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2.0.7 (GNU/Linux) + +iD8DBQFHqdNdj9hvisErhMIRAkklAKCpqs4bKOmOap3LMKuh8hP9BzEc4ACdFovH +OQB7BQ2JbdDTNMhJp2XLA5I= +=tELm +-----END PGP SIGNATURE----- diff --git a/sys-apps/busybox/busybox-1.9.0.ebuild b/sys-apps/busybox/busybox-1.9.0.ebuild new file mode 100644 index 000000000000..38e43bdfff20 --- /dev/null +++ b/sys-apps/busybox/busybox-1.9.0.ebuild @@ -0,0 +1,239 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/busybox/busybox-1.9.0.ebuild,v 1.1 2008/02/06 15:36:37 vapier Exp $ + +EAPI=1 + +inherit eutils flag-o-matic savedconfig toolchain-funcs + +################################################################################ +# BUSYBOX ALTERNATE CONFIG MINI-HOWTO +# +# Busybox can be modified in many different ways. Here's a few ways to do it: +# +# (1) Emerge busybox with FEATURES=keepwork so the work directory won't +# get erased afterwards. Add a definition like ROOT=/my/root/path to the +# start of the line if you're installing to somewhere else than the root +# directory. This command will save the default configuration to +# ${PORTAGE_CONFIGROOT} (or ${ROOT} if ${PORTAGE_CONFIGROOT} is not +# defined), and it will tell you that it has done this. Note the location +# where the config file was saved. +# +# FEATURES=keepwork USE=savedconfig emerge busybox +# +# (2) Go to the work directory and change the configuration of busybox using its +# menuconfig feature. +# +# cd /var/tmp/portage/busybox*/work +# make menuconfig +# +# (3) Save your configuration to the default location and copy it to the +# one of the locations listed in /usr/portage/eclass/savedconfig.eclass +# +# (4) Emerge busybox with USE=savedconfig to use the configuration file you +# just generated. +# +################################################################################ +# +# (1) Alternatively skip the above steps and simply emerge busybox without +# USE=savedconfig. +# +# (2) Edit the file it saves by hand. ${ROOT}"/etc/portage/savedconfig/${CATEGORY}/${PF} +# +# (3) Remerge busybox as using USE=savedconfig. +# +################################################################################ + +#SNAPSHOT=20040726 +SNAPSHOT="" + +DESCRIPTION="Utilities for rescue and embedded systems" +HOMEPAGE="http://www.busybox.net/" +if [[ -n ${SNAPSHOT} ]] ; then + MY_P=${PN} + SRC_URI="http://www.busybox.net/downloads/snapshots/${PN}-${SNAPSHOT}.tar.bz2" +else + MY_P=${PN}-${PV/_/-} + SRC_URI="http://www.busybox.net/downloads/${MY_P}.tar.bz2" +fi + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" +IUSE="debug make-symlinks pam selinux +static" +RESTRICT="test" + +DEPEND="selinux? ( sys-libs/libselinux ) + pam? ( sys-libs/pam )" + +S=${WORKDIR}/${MY_P} + +busybox_config_option() { + case $1 in + y) sed -i -e "s:.*CONFIG_$2.*set:CONFIG_$2=y:g" .config;; + n) sed -i -e "s:CONFIG_$2=y:# CONFIG_$2 is not set:g" .config;; + *) use $1 \ + && busybox_config_option y $2 \ + || busybox_config_option n $2 + return 0 + ;; + esac + einfo $(grep "CONFIG_$2[= ]" .config) +} + +src_unpack() { + unset KBUILD_OUTPUT #88088 + + unpack ${MY_P}.tar.bz2 + cd "${S}" + + # patches go here! + epatch "${FILESDIR}"/busybox-1.7.0-bb.patch + epatch "${FILESDIR}"/busybox-1.9.0-* + + # work around broken ass powerpc compilers + use ppc64 && append-flags -mminimal-toc + # flag cleanup + sed -i -r \ + -e 's:[[:space:]]?-(Werror|Os|falign-(functions|jumps|loops|labels)=1|fomit-frame-pointer)\>::g' \ + Makefile.flags || die + sed -i '/^#error Aborting compilation./d' applets/applets.c || die + use elibc_glibc && sed -i 's:-Wl,--gc-sections::' Makefile + cat <<-EOF >> Makefile.flags + CROSS_COMPILE := ${CHOST}- + HOSTCC := $(tc-getBUILD_CC) + SKIP_STRIP = y + EOF + + # check for a busybox config before making one of our own. + # if one exist lets return and use it. + + restore_config .config + if [ -f .config ]; then + yes "" | emake -j1 oldconfig > /dev/null + return 0 + else + ewarn "Could not locate user configfile, so we will save a default one" + fi + + # setup the config file + emake -j1 allyesconfig > /dev/null + busybox_config_option n DMALLOC + busybox_config_option n FEATURE_SUID_CONFIG + busybox_config_option n BUILD_AT_ONCE + busybox_config_option n BUILD_LIBBUSYBOX + + # If these are not set and we are using a uclibc/busybox setup + # all calls to system() will fail. + busybox_config_option y FEATURE_SH_IS_ASH + busybox_config_option n FEATURE_SH_IS_NONE + + if use static && use pam ; then + ewarn "You cannot have USE='static pam'. Assuming static is more important." + fi + use static \ + && busybox_config_option n PAM \ + || busybox_config_option pam PAM + busybox_config_option static STATIC + busybox_config_option debug DEBUG + use debug \ + && busybox_config_option y NO_DEBUG_LIB \ + && busybox_config_option n DMALLOC \ + && busybox_config_option n EFENCE + + busybox_config_option selinux SELINUX + + # default a bunch of uncommon options to off + for opt in LOCALE_SUPPORT TFTP FTP{GET,PUT} IPCALC TFTP HUSH \ + LASH MSH INETD DPKG RPM2CPIO RPM FOLD LOGNAME OD CRONTAB \ + UUDECODE UUENCODE SULOGIN DC DEBUG_YANK_SUSv2 DEBUG_INIT \ + DEBUG_CROND_OPTION FEATURE_UDHCP_DEBUG TASKSET + do + busybox_config_option n ${opt} + done + + emake -j1 oldconfig > /dev/null +} + +src_compile() { + unset KBUILD_OUTPUT #88088 + + emake busybox || die "build failed" + if ! use static && ! use pam ; then + mv busybox_unstripped{,.bak} + emake CONFIG_STATIC=y busybox || die "static build failed" + mv busybox_unstripped bb + mv busybox_unstripped{.bak,} + fi +} + +src_install() { + unset KBUILD_OUTPUT #88088 + save_config .config + + into / + newbin busybox_unstripped busybox || die + if use static || use pam ; then + dosym busybox /bin/bb || die + dosym bb /bin/busybox.static || die + else + dobin bb || die + fi + + insinto /$(get_libdir)/rcscripts/addons + doins "${FILESDIR}"/mdev-start.sh || die + + # bundle up the symlink files for use later + emake install || die + rm _install/bin/busybox + tar cf busybox-links.tar -C _install . || : #;die + insinto /usr/share/${PN} + doins busybox-links.tar || die + newins .config ${PF}.config || die + + dodoc AUTHORS README TODO + + cd docs || die + docinto txt + dodoc *.txt + docinto pod + dodoc *.pod + dohtml *.html *.sgml + + cd ../examples || die + docinto examples + dodoc inittab depmod.pl *.conf *.script undeb unrpm + + cd bootfloppy || die + docinto bootfloppy + dodoc * etc/* etc/init.d/* 2>/dev/null +} + +pkg_preinst() { + if use make-symlinks && [[ ! ${VERY_BRAVE_OR_VERY_DUMB} == "yes" ]] && [[ ${ROOT} == "/" ]] ; then + ewarn "setting USE=make-symlinks and emerging to / is very dangerous." + ewarn "it WILL overwrite lots of system programs like: ls bash awk grep (bug 60805 for full list)." + ewarn "If you are creating a binary only and not merging this is probably ok." + ewarn "set env VERY_BRAVE_OR_VERY_DUMB=yes if this is realy what you want." + die "silly options will destroy your system" + fi + + if use make-symlinks ; then + mv "${D}"/usr/share/${PN}/busybox-links.tar "${T}"/ || die + fi +} + +pkg_postinst() { + if use make-symlinks ; then + cd "${T}" || die + mkdir _install + tar xf busybox-links.tar -C _install || die + cp -vpPR _install/* "${ROOT}"/ || die "copying links for ${x} failed" + fi + + echo + einfo "This ebuild has support for user defined configs" + einfo "Please read this ebuild for more details and re-emerge as needed" + einfo "if you want to add or remove functionality for ${PN}" + echo +} diff --git a/sys-apps/busybox/files/busybox-1.9.0-allno.patch b/sys-apps/busybox/files/busybox-1.9.0-allno.patch new file mode 100644 index 000000000000..e830ddf4f2e5 --- /dev/null +++ b/sys-apps/busybox/files/busybox-1.9.0-allno.patch @@ -0,0 +1,23 @@ +diff -urN busybox-1.9.0/Makefile.help busybox-1.9.0-allno/Makefile.help +--- busybox-1.9.0/Makefile.help 2007-12-21 22:00:33.000000000 +0000 ++++ busybox-1.9.0-allno/Makefile.help 2008-01-04 20:03:30.000000000 +0000 +@@ -16,7 +16,6 @@ + @echo 'Configuration:' + @echo ' allnoconfig - disable all symbols in .config' + @echo ' allyesconfig - enable all symbols in .config (see defconfig)' +- @echo ' allbareconfig - enable all applets without any sub-features' + @echo ' config - text based configurator (of last resort)' + @echo ' defconfig - set .config to largest generic configuration' + @echo ' menuconfig - interactive curses-based configurator' +diff -urN busybox-1.9.0/applets/applet_tables.c busybox-1.9.0-allno/applets/applet_tables.c +--- busybox-1.9.0/applets/applet_tables.c 2007-12-24 14:08:25.000000000 +0000 ++++ busybox-1.9.0-allno/applets/applet_tables.c 2008-01-04 20:00:12.000000000 +0000 +@@ -71,7 +71,7 @@ + + puts("/* This is a generated file, don't edit */"); + +- puts("const char applet_names[] ALIGN1 ="); ++ puts("const char applet_names[] ALIGN1 = \"\" \n"); + for (i = 0; i < NUM_APPLETS; i++) { + printf("\"%s\" \"\\0\"\n", applets[i].name); + } diff --git a/sys-apps/busybox/files/busybox-1.9.0-fsck.patch b/sys-apps/busybox/files/busybox-1.9.0-fsck.patch new file mode 100644 index 000000000000..5bf4bd275ca7 --- /dev/null +++ b/sys-apps/busybox/files/busybox-1.9.0-fsck.patch @@ -0,0 +1,15 @@ +--- busybox-1.9.0/e2fsprogs/fsck.c Fri Dec 21 22:00:31 2007 ++++ busybox-1.9.0-fsck/e2fsprogs/fsck.c Sat Feb 2 18:55:22 2008 +@@ -665,6 +665,12 @@ + for (i = num_args+1; i < argc; i++) + free(argv[i]); + ++ /* No pid, so don't record an instance */ ++ if (pid < 0) { ++ free(inst); ++ return; ++ } ++ + inst->pid = pid; + inst->prog = argv[0]; + inst->type = xstrdup(type); diff --git a/sys-apps/busybox/files/busybox-1.9.0-iproute.patch b/sys-apps/busybox/files/busybox-1.9.0-iproute.patch new file mode 100644 index 000000000000..4813aa3c6c06 --- /dev/null +++ b/sys-apps/busybox/files/busybox-1.9.0-iproute.patch @@ -0,0 +1,25 @@ +diff -urN busybox-1.9.0/networking/libiproute/iproute.c busybox-1.9.0-iproute/networking/libiproute/iproute.c +--- busybox-1.9.0/networking/libiproute/iproute.c 2007-12-21 22:00:23.000000000 +0000 ++++ busybox-1.9.0-iproute/networking/libiproute/iproute.c 2008-01-04 15:18:33.000000000 +0000 +@@ -841,15 +841,17 @@ + /*0-3*/ "add\0""append\0""change\0""chg\0" + /*4-7*/ "delete\0""get\0""list\0""show\0" + /*8..*/ "prepend\0""replace\0""test\0""flush\0"; +- int command_num = 6; ++ int command_num; + unsigned flags = 0; + int cmd = RTM_NEWROUTE; + ++ if (!*argv) ++ return iproute_list_or_flush(argv, 0); ++ + /* "Standard" 'ip r a' treats 'a' as 'add', not 'append' */ + /* It probably means that it is using "first match" rule */ +- if (*argv) { +- command_num = index_in_substrings(ip_route_commands, *argv); +- } ++ command_num = index_in_substrings(ip_route_commands, *argv); ++ + switch (command_num) { + case 0: /* add */ + flags = NLM_F_CREATE|NLM_F_EXCL; diff --git a/sys-apps/busybox/files/busybox-1.9.0-mkswap.patch b/sys-apps/busybox/files/busybox-1.9.0-mkswap.patch new file mode 100644 index 000000000000..ac7e1ecc5c81 --- /dev/null +++ b/sys-apps/busybox/files/busybox-1.9.0-mkswap.patch @@ -0,0 +1,15 @@ +--- busybox-1.9.0/util-linux/mkswap.c Fri Dec 21 22:00:33 2007 ++++ busybox-1.9.0-mkswap/util-linux/mkswap.c Sat Feb 2 18:55:31 2008 +@@ -64,9 +64,10 @@ + // Figure out how big the device is and announce our intentions. + + fd = xopen(argv[1], O_RDWR); +- len = fdlength(fd); ++ len = lseek(fd, 0, SEEK_END); ++ lseek(fd, 0, SEEK_SET); + pagesize = getpagesize(); +- printf("Setting up swapspace version 1, size = %"OFF_FMT"d bytes\n", ++ printf("Setting up swapspace version 1, size = %"OFF_FMT"u bytes\n", + len - pagesize); + mkswap_selinux_setcontext(fd, argv[1]); + diff --git a/sys-apps/busybox/files/busybox-1.9.0-msh.patch b/sys-apps/busybox/files/busybox-1.9.0-msh.patch new file mode 100644 index 000000000000..25c7c7605544 --- /dev/null +++ b/sys-apps/busybox/files/busybox-1.9.0-msh.patch @@ -0,0 +1,79 @@ +--- busybox-1.9.0/include/libbb.h Fri Dec 21 22:00:31 2007 ++++ busybox-1.9.0-msh/include/libbb.h Sat Feb 2 18:55:36 2008 +@@ -950,10 +950,9 @@ + }; + line_input_t *new_line_input_t(int flags); + /* Returns: +- * -1 on read errors or EOF, or on bare Ctrl-D. +- * 0 on ctrl-C, ++ * -1 on read errors or EOF, or on bare Ctrl-D, ++ * 0 on ctrl-C (the line entered is still returned in 'command'), + * >0 length of input string, including terminating '\n' +- * [is this true? stores "" in 'command' if return value is 0 or -1] + */ + int read_line_input(const char* prompt, char* command, int maxsize, line_input_t *state); + #else +--- busybox-1.9.0/libbb/lineedit.c Mon Dec 24 14:08:25 2007 ++++ busybox-1.9.0-msh/libbb/lineedit.c Sat Feb 2 18:55:36 2008 +@@ -1315,8 +1315,8 @@ + #define CTRL(a) ((a) & ~0x40) + + /* Returns: +- * -1 on read errors or EOF, or on bare Ctrl-D. +- * 0 on ctrl-C, ++ * -1 on read errors or EOF, or on bare Ctrl-D, ++ * 0 on ctrl-C (the line entered is still returned in 'command'), + * >0 length of input string, including terminating '\n' + */ + int read_line_input(const char *prompt, char *command, int maxsize, line_input_t *st) +--- busybox-1.9.0/shell/msh.c Fri Dec 21 22:00:28 2007 ++++ busybox-1.9.0-msh/shell/msh.c Sat Feb 2 18:57:12 2008 +@@ -2825,11 +2825,13 @@ + + if (pin != NULL) { + xmove_fd(pin[0], 0); +- if (pin[1] != 0) close(pin[1]); ++ if (pin[1] != 0) ++ close(pin[1]); + } + if (pout != NULL) { + xmove_fd(pout[1], 1); +- if (pout[1] != 1) close(pout[0]); ++ if (pout[1] != 1) ++ close(pout[0]); + } + + iopp = t->ioact; +@@ -4162,7 +4164,7 @@ + return 0; + } + if (i != 0) { +- waitpid(i, NULL, 0); ++ waitpid(i, NULL, 0); // safe_waitpid? + global_env.iop->argp->aword = ++cp; + close(pf[1]); + PUSHIO(afile, remap(pf[0]), +@@ -4181,7 +4183,8 @@ + * echo "$files" >zz + */ + xmove_fd(pf[1], 1); +- if (pf[0] != 1) close(pf[0]); ++ if (pf[0] != 1) ++ close(pf[0]); + + argument_list[0] = (char *) DEFAULT_SHELL; + argument_list[1] = (char *) "-c"; +@@ -4834,9 +4837,11 @@ + static int position = 0, size = 0; + + while (size == 0 || position >= size) { +- read_line_input(current_prompt, filechar_cmdbuf, BUFSIZ, line_input_state); +- size = strlen(filechar_cmdbuf); ++ size = read_line_input(current_prompt, filechar_cmdbuf, BUFSIZ, line_input_state); ++ if (size < 0) /* Error/EOF */ ++ exit(0); + position = 0; ++ /* if Ctrl-C, size == 0 and loop will repeat */ + } + c = filechar_cmdbuf[position]; + position++; diff --git a/sys-apps/busybox/files/busybox-1.9.0-nameif.patch b/sys-apps/busybox/files/busybox-1.9.0-nameif.patch new file mode 100644 index 000000000000..146bc29b06c3 --- /dev/null +++ b/sys-apps/busybox/files/busybox-1.9.0-nameif.patch @@ -0,0 +1,33 @@ +diff -urN busybox-1.9.0/networking/nameif.c busybox-1.9.0-nameif/networking/nameif.c +--- busybox-1.9.0/networking/nameif.c 2007-12-24 14:08:25.000000000 +0000 ++++ busybox-1.9.0-nameif/networking/nameif.c 2008-01-04 20:05:48.000000000 +0000 +@@ -50,18 +50,18 @@ + #define ETHTOOL_BUSINFO_LEN 32 + /* these strings are set to whatever the driver author decides... */ + struct ethtool_drvinfo { +- __u32 cmd; +- char driver[32]; /* driver short name, "tulip", "eepro100" */ +- char version[32]; /* driver version string */ +- char fw_version[32]; /* firmware version string, if applicable */ +- char bus_info[ETHTOOL_BUSINFO_LEN]; /* Bus info for this IF. */ ++ uint32_t cmd; ++ char driver[32]; /* driver short name, "tulip", "eepro100" */ ++ char version[32]; /* driver version string */ ++ char fw_version[32]; /* firmware version string, if applicable */ ++ char bus_info[ETHTOOL_BUSINFO_LEN]; /* Bus info for this IF. */ + /* For PCI devices, use pci_dev->slot_name. */ +- char reserved1[32]; +- char reserved2[16]; +- __u32 n_stats; /* number of u64's from ETHTOOL_GSTATS */ +- __u32 testinfo_len; +- __u32 eedump_len; /* Size of data from ETHTOOL_GEEPROM (bytes) */ +- __u32 regdump_len; /* Size of data from ETHTOOL_GREGS (bytes) */ ++ char reserved1[32]; ++ char reserved2[16]; ++ uint32_t n_stats; /* number of u64's from ETHTOOL_GSTATS */ ++ uint32_t testinfo_len; ++ uint32_t eedump_len; /* Size of data from ETHTOOL_GEEPROM (bytes) */ ++ uint32_t regdump_len; /* Size of data from ETHTOOL_GREGS (bytes) */ + }; + #define ETHTOOL_GDRVINFO 0x00000003 /* Get driver info. */ + #endif diff --git a/sys-apps/busybox/files/busybox-1.9.0-nohup.patch b/sys-apps/busybox/files/busybox-1.9.0-nohup.patch new file mode 100644 index 000000000000..a052401a395b --- /dev/null +++ b/sys-apps/busybox/files/busybox-1.9.0-nohup.patch @@ -0,0 +1,82 @@ +--- trunk/busybox/coreutils/nohup.c 2007/10/11 10:05:36 20219 ++++ trunk/busybox/coreutils/nohup.c 2008/02/04 00:30:06 20940 +@@ -12,21 +12,41 @@ + + #include "libbb.h" + ++/* Compat info: nohup (GNU coreutils 6.8) does this: ++# nohup true ++nohup: ignoring input and appending output to `nohup.out' ++# nohup true 1>/dev/null ++nohup: ignoring input and redirecting stderr to stdout ++# nohup true 2>zz ++# cat zz ++nohup: ignoring input and appending output to `nohup.out' ++# nohup true 2>zz 1>/dev/null ++# cat zz ++nohup: ignoring input ++# nohup true </dev/null 1>/dev/null ++nohup: redirecting stderr to stdout ++# nohup true </dev/null 2>zz 1>/dev/null ++# cat zz ++ (nothing) ++# ++*/ ++ + int nohup_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; + int nohup_main(int argc, char **argv) + { +- int nullfd; + const char *nohupout; +- char *home = NULL; ++ char *home; + + xfunc_error_retval = 127; + + if (argc < 2) bb_show_usage(); + +- nullfd = xopen(bb_dev_null, O_WRONLY|O_APPEND); + /* If stdin is a tty, detach from it. */ +- if (isatty(STDIN_FILENO)) +- dup2(nullfd, STDIN_FILENO); ++ if (isatty(STDIN_FILENO)) { ++ /* bb_error_msg("ignoring input"); */ ++ close(STDIN_FILENO); ++ xopen(bb_dev_null, O_RDONLY); /* will be fd 0 (STDIN_FILENO) */ ++ } + + nohupout = "nohup.out"; + /* Redirect stdout to nohup.out, either in "." or in "$HOME". */ +@@ -37,24 +57,22 @@ + if (home) { + nohupout = concat_path_file(home, nohupout); + xopen3(nohupout, O_CREAT|O_WRONLY|O_APPEND, S_IRUSR|S_IWUSR); ++ } else { ++ xopen(bb_dev_null, O_RDONLY); /* will be fd 1 */ + } + } +- } else dup2(nullfd, STDOUT_FILENO); ++ bb_error_msg("appending output to %s", nohupout); ++ } + +- /* If we have a tty on stderr, announce filename and redirect to stdout. +- * Else redirect to /dev/null. +- */ ++ /* If we have a tty on stderr, redirect to stdout. */ + if (isatty(STDERR_FILENO)) { +- bb_error_msg("appending to %s", nohupout); ++ /* if (stdout_wasnt_a_tty) ++ bb_error_msg("redirecting stderr to stdout"); */ + dup2(STDOUT_FILENO, STDERR_FILENO); +- } else dup2(nullfd, STDERR_FILENO); ++ } + +- if (nullfd > 2) +- close(nullfd); + signal(SIGHUP, SIG_IGN); + + BB_EXECVP(argv[1], argv+1); +- if (ENABLE_FEATURE_CLEAN_UP && home) +- free((char*)nohupout); + bb_simple_perror_msg_and_die(argv[1]); + } diff --git a/sys-apps/busybox/files/busybox-1.9.0-stty.patch b/sys-apps/busybox/files/busybox-1.9.0-stty.patch new file mode 100644 index 000000000000..d9e7b2e957fa --- /dev/null +++ b/sys-apps/busybox/files/busybox-1.9.0-stty.patch @@ -0,0 +1,37 @@ +--- busybox-1.9.0/coreutils/stty.c Fri Dec 21 22:00:29 2007 ++++ busybox-1.9.0-stty/coreutils/stty.c Sat Feb 2 18:55:40 2008 +@@ -780,30 +780,14 @@ + + static const struct mode_info *find_mode(const char *name) + { +- int i = 0; +- const char *m = mode_name; +- +- while (*m) { +- if (strcmp(name, m) == 0) +- return &mode_info[i]; +- m += strlen(m) + 1; +- i++; +- } +- return NULL; ++ int i = index_in_strings(mode_name, name); ++ return i >= 0 ? &mode_info[i] : NULL; + } + + static const struct control_info *find_control(const char *name) + { +- int i = 0; +- const char *m = mode_name; +- +- while (*m) { +- if (strcmp(name, m) == 0) +- return &control_info[i]; +- m += strlen(m) + 1; +- i++; +- } +- return NULL; ++ int i = index_in_strings(control_name, name); ++ return i >= 0 ? &control_info[i] : NULL; + } + + enum { diff --git a/sys-apps/busybox/files/busybox-1.9.0-zcip.patch b/sys-apps/busybox/files/busybox-1.9.0-zcip.patch new file mode 100644 index 000000000000..3c173a2bcf56 --- /dev/null +++ b/sys-apps/busybox/files/busybox-1.9.0-zcip.patch @@ -0,0 +1,69 @@ +--- busybox-1.9.0/networking/zcip.c Fri Dec 21 22:00:25 2007 ++++ busybox-1.9.0-zcip/networking/zcip.c Mon Feb 4 09:37:14 2008 +@@ -180,7 +180,7 @@ + char *r_opt; + unsigned opts; + +- /* Ugly trick, but I want these zeroed in one go */ ++ // ugly trick, but I want these zeroed in one go + struct { + const struct in_addr null_ip; + const struct ether_addr null_addr; +@@ -214,8 +214,17 @@ + // exactly 2 args; -v accumulates and implies -f + opt_complementary = "=2:vv:vf"; + opts = getopt32(argv, "fqr:v", &r_opt, &verbose); ++#if !BB_MMU ++ // on NOMMU reexec early (or else we will rerun things twice) ++ if (!FOREGROUND) ++ bb_daemonize_or_rexec(DAEMON_CHDIR_ROOT, argv); ++#endif ++ // open an ARP socket ++ // (need to do it before openlog to prevent openlog from taking ++ // fd 3 (sock_fd==3)) ++ xmove_fd(xsocket(AF_PACKET, SOCK_PACKET, htons(ETH_P_ARP)), sock_fd); + if (!FOREGROUND) { +- /* Do it early, before all bb_xx_msg calls */ ++ // do it before all bb_xx_msg calls + openlog(applet_name, 0, LOG_DAEMON); + logmode |= LOGMODE_SYSLOG; + } +@@ -226,11 +235,6 @@ + bb_error_msg_and_die("invalid link address"); + } + } +- // On NOMMU reexec early (or else we will rerun things twice) +-#if !BB_MMU +- if (!FOREGROUND) +- bb_daemonize_or_rexec(DAEMON_CHDIR_ROOT, argv); +-#endif + argc -= optind; + argv += optind; + +@@ -249,8 +253,6 @@ + //TODO: are we leaving sa_family == 0 (AF_UNSPEC)?! + safe_strncpy(saddr.sa_data, intf, sizeof(saddr.sa_data)); + +- // open an ARP socket +- xmove_fd(xsocket(AF_PACKET, SOCK_PACKET, htons(ETH_P_ARP)), sock_fd); + // bind to the interface's ARP socket + xbind(sock_fd, &saddr, sizeof(saddr)); + +@@ -290,7 +292,7 @@ + // restarting after address conflicts: + // - start with some address we want to try + // - short random delay +- // - arp probes to see if another host else uses it ++ // - arp probes to see if another host uses it + // - arp announcements that we're claiming it + // - use it + // - defend it, within limits +@@ -321,7 +323,7 @@ + switch (safe_poll(fds, 1, timeout_ms)) { + + default: +- /*bb_perror_msg("poll"); - done in safe_poll */ ++ //bb_perror_msg("poll"); - done in safe_poll + return EXIT_FAILURE; + + // timeout |