summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys-apps/busybox/ChangeLog7
-rw-r--r--sys-apps/busybox/Manifest30
-rw-r--r--sys-apps/busybox/busybox-1.20.1.ebuild307
3 files changed, 329 insertions, 15 deletions
diff --git a/sys-apps/busybox/ChangeLog b/sys-apps/busybox/ChangeLog
index 7d5a6351365c..7f926a7f3fbe 100644
--- a/sys-apps/busybox/ChangeLog
+++ b/sys-apps/busybox/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for sys-apps/busybox
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/busybox/ChangeLog,v 1.309 2012/05/26 00:07:11 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/busybox/ChangeLog,v 1.310 2012/05/30 18:27:47 vapier Exp $
+
+*busybox-1.20.1 (30 May 2012)
+
+ 30 May 2012; Mike Frysinger <vapier@gentoo.org> +busybox-1.20.1.ebuild:
+ Version bump.
26 May 2012; Mike Frysinger <vapier@gentoo.org> busybox-1.19.3-r1.ebuild,
busybox-1.20.0.ebuild, busybox-9999.ebuild:
diff --git a/sys-apps/busybox/Manifest b/sys-apps/busybox/Manifest
index 6cb36a6cf178..8848071c3646 100644
--- a/sys-apps/busybox/Manifest
+++ b/sys-apps/busybox/Manifest
@@ -20,25 +20,27 @@ AUX mdev/usbdev 1624 RMD160 a448558f058566223072c993cb4ae52f9aa43da3 SHA1 4d1a7a
AUX mdev/usbdisk_link 984 RMD160 9b86d85f5f27f03f894a062c9f00d3583c4db3ae SHA1 690290b25fa1b90f6d9d7b8947a55746920991a4 SHA256 4957f6991e0cb988b263b5276b582f1757deecad19cddebe3c615b381df9f858
DIST busybox-1.19.3.tar.bz2 2167188 RMD160 f8df020b47a363b1b308e852d2034758e42d16a9 SHA1 692754db46b129c70921ffb84eaef679061c0952 SHA256 a1a9a35732c719ef384f02b6e357c324d8be25bc154af91a48c4264b1e6038f0
DIST busybox-1.20.0.tar.bz2 2190652 RMD160 b7d4d411b9903e709e71d0438d1aa2825d6a028e SHA1 b8f5721557d437d2539dd3f7db91683ec50bdade SHA256 3c56508d984db1178664241ad548d118fb0aa71cdd2f8a9a93038e50b3b2bf16
+DIST busybox-1.20.1.tar.bz2 2190170 RMD160 41a63b8a3d2927086886b43d61a739744fce72c3 SHA1 8877502e3399dd6cb8ab333cdf6c43264f1da313 SHA256 3e515d8abefd8583ebabffdcfccecb3b8deacf2cef7c69ab1d8755a012ec68c9
EBUILD busybox-1.19.3-r1.ebuild 8449 RMD160 4323b21683bd1b2069f40213ebf126620f8e7276 SHA1 c12f0fc2e3ea3af78219b850f45704a493378e9f SHA256 89497a117be3235619155c56984ada796850517d2e2583e4aefeebd02780822b
EBUILD busybox-1.20.0.ebuild 8811 RMD160 986d0703af3f195006e5707e3ba90b4e84dbfc36 SHA1 215ea5bf808e15d34282605e3d75d659027034de SHA256 19c606393839c21452f4352d6290495a27edddfc7b1d7fabff373da2d06a3dee
+EBUILD busybox-1.20.1.ebuild 8812 RMD160 5c447431ecb35e4342a605fd00615af2daff3067 SHA1 36ebab2f753620204487ce4a7ad6b8daaf18c052 SHA256 74a6cc1d732a2a4850d50058295e3bf960a03e8d96e11a2cbf926c7ae915a5d0
EBUILD busybox-9999.ebuild 8809 RMD160 7b4175a43f052a7eff0ce4193c4143034ddf5da3 SHA1 d0cbb0913c3f236a65f6bcd79bd053968d34542f SHA256 e2e1f552555d23b33d4aa6c498a6dc63ba6d2c3eeedbff2f9c278e36adce00c9
-MISC ChangeLog 47907 RMD160 f37e1c8599716128eb8524052777e0f63c03fc3e SHA1 3a79884753017b4244b0f960c122f9a97efdfd98 SHA256 367176551772d6e34bf1059e58f5c244253d4885d1b06b8c3826f94cae8a091f
+MISC ChangeLog 48029 RMD160 5a3c012feb484a48e7062d6ee57eb34190a69483 SHA1 6da86f7df1e58d84a89059f13edaa801a29d23a9 SHA256 79f45812d11bd6ee01f171525bac2c6c1c63868dd0ca8741ef2c9832a50c52d7
MISC metadata.xml 547 RMD160 aa5254ffac1ac4da6d17a333e859c16b0497e152 SHA1 6c141e0e1029b1d97d3e3eced774fa0fc916bfbe SHA256 b4f66e23430aa57c9af2b6919800c4ecf07cb65c9993879d834676cfb22d9498
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (GNU/Linux)
-iQIcBAEBAgAGBQJPwB8QAAoJELEHsLL7fEFW6qEP/jlHFxAa3trXEWZFJYyfF0+G
-XrdAw9QKH23SXyUJ3SufhpTMG98vsFGvC8HuXlpgTAf+kvTs2OtyI4vm6VYU+c0R
-30lLCQSKmFcpAdsD/6sZX9SPqsFL8wc8bjQnIX+S6ggs2Q+PXh4e79DUvuvqpu7e
-Ff9D9WXpVEHBEWvu+dz3y8mr0XZywODpuhkAEEd4TWv1cQWu0JmxAHH8Mu1gQ05/
-JQ1Gh5Zl/zp6FvHMe4ZTWV44G3PbAbC0OsuSGzP7ICqlrnNtBdzKnAIkcVracwEL
-Z7pKeT5q90fCnrdk3AQXU9qhcplRlztwqkMvN3Zf80IqXHcoLxRqlDsb8ZmfnI8c
-6bBfeghaFBSCidZOA0pmC4bR9AIMgb9bImiS3dbBob5l/Cgd5WH2xMQPWV9OPGzj
-lmK0ABQ3k9FLS035o53PljEXWM2C1v1hd9uqJQlV0SSnoMsHoX9lY5+iJZYwxUP9
-ADyq02lv0NoiZMX38V8A72setcRMYc6N42zNUJf1xhcU7NMl7aLLjbqzibHU9nT+
-o6O2RyYmpzHmJtHdFpoTBIdNHAAkeG+9Txu71K4elS4N/csRTyRZRtffzfB+Co9f
-DDqw/Zj7tEX58iTpEXDx4S2E79wGfb5Xm8MFnIUliMR39BBxFsZa/zQvnrk8CuXt
-eFatPKF/e5JFb0FVLRYl
-=fo7e
+iQIcBAEBAgAGBQJPxmaqAAoJELEHsLL7fEFWNYAP/0owgxJt0q5y3LUZ/ej4LdZd
+TfWpRknN7gOPyK8+nZ3+L7FxjU+uS1Rpm9nDdW38TqpGEpgnkvBU2lFwU6R/iOL/
+ris0z9+Ho+92H8IHDQXtVngYOqQRilT1fEyhtz+f1z9MHTDEp/1RMp6xm6V3OMu2
+iIcNJ3osvpRpobeFDYBoNZQ7uhI+SIZsEhyZq4yzgG7eqWLB4sc4e+AJ1bb05+1l
+9vgQxwOuKo0Cguvdt02sifFSUXi/liLmRdIu2Z9bZ5gFJTGUNrxad0lB6S5/MNQY
+rFJFdKjPHKfuZNfN+8IR+/YAXOuHABZOD/gM/N62plGzP12Dkdyw8JDViFfxNBaE
+7CpsqMOd2elNCXKPcMAyLy1c2LcL6a7Kt18xqTVM4/sHn2Czp4cJgOYiv+gZOCVs
+QvxtFDuRqs0Kqlx39KApe3mb6yZIiUo01dX6r7PMQdZHqHoWd6nHUi9NTlMbL6vU
+AdzYLxE/YS0S3vFdaf6C4TeDd+WU00z7jRKWH6ujatAxM5IJI5/tijOBZNA/G2JH
+x8ij3Km0bnmwXfmAcLBd7rmZRiW8SQJaASJjw2fauTyj2N5KpGkXMugxQmbqHjzJ
+T9Iihm5iXkWdkpM9SL9pGnOVSPXJ1Bq9f0E0Ma7JONkWBtm9a5DdxWC6jYU0lLA7
+FZE8wMFamQyMBQVb0zK9
+=DnI7
-----END PGP SIGNATURE-----
diff --git a/sys-apps/busybox/busybox-1.20.1.ebuild b/sys-apps/busybox/busybox-1.20.1.ebuild
new file mode 100644
index 000000000000..0b881815d1de
--- /dev/null
+++ b/sys-apps/busybox/busybox-1.20.1.ebuild
@@ -0,0 +1,307 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/busybox/busybox-1.20.1.ebuild,v 1.1 2012/05/30 18:27:47 vapier Exp $
+
+EAPI="4"
+inherit eutils flag-o-matic savedconfig toolchain-funcs multilib
+
+################################################################################
+# 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/busybox-*
+# 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.
+#
+################################################################################
+
+DESCRIPTION="Utilities for rescue and embedded systems"
+HOMEPAGE="http://www.busybox.net/"
+if [[ ${PV} == "9999" ]] ; then
+ MY_P=${PN}
+ EGIT_REPO_URI="git://busybox.net/busybox.git"
+ inherit git-2
+else
+ MY_P=${PN}-${PV/_/-}
+ SRC_URI="http://www.busybox.net/downloads/${MY_P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="ipv6 livecd make-symlinks math mdev -pam selinux sep-usr static"
+RESTRICT="test"
+
+RDEPEND="selinux? ( sys-libs/libselinux )
+ pam? ( sys-libs/pam )"
+DEPEND="${RDEPEND}
+ >=sys-kernel/linux-headers-2.6.39"
+
+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 || echo Could not find CONFIG_$2 ...)
+}
+
+src_prepare() {
+ unset KBUILD_OUTPUT #88088
+ append-flags -fno-strict-aliasing #310413
+ use ppc64 && append-flags -mminimal-toc #130943
+
+ # patches go here!
+ epatch "${FILESDIR}"/${PN}-1.19.0-bb.patch
+ #epatch "${FILESDIR}"/${P}-*.patch
+ cp "${FILESDIR}"/ginit.c init/ || die
+
+ # 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 '/bbsh/s:^//::' include/applets.h
+ sed -i '/^#error Aborting compilation./d' applets/applets.c || die
+ use elibc_glibc && sed -i 's:-Wl,--gc-sections::' Makefile
+ sed -i \
+ -e "/^CROSS_COMPILE/s:=.*:= ${CHOST}-:" \
+ -e "/^AR\>/s:=.*:= $(tc-getAR):" \
+ -e "/^CC\>/s:=.*:= $(tc-getCC):" \
+ -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
+ Makefile || die
+ sed -i \
+ -e 's:-static-libgcc::' \
+ Makefile.flags || die
+}
+
+src_configure() {
+ # 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
+ # nommu forces a bunch of things off which we want on #387555
+ busybox_config_option n NOMMU
+ sed -i '/^#/d' .config
+ yes "" | emake -j1 oldconfig >/dev/null
+
+ # now turn off stuff we really don't want
+ 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
+ busybox_config_option n MONOTONIC_SYSCALL
+ busybox_config_option n WERROR
+
+ # If these are not set and we are using a uclibc/busybox setup
+ # all calls to system() will fail.
+ busybox_config_option y ASH
+ busybox_config_option n HUSH
+
+ # disable ipv6 applets
+ if ! use ipv6; then
+ busybox_config_option n FEATURE_IPV6
+ busybox_config_option n TRACEROUTE6
+ busybox_config_option n PING6
+ fi
+
+ 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 math FEATURE_AWK_LIBM
+
+ # all the debug options are compiler related, so punt them
+ busybox_config_option n DEBUG
+ busybox_config_option y NO_DEBUG_LIB
+ busybox_config_option n DMALLOC
+ busybox_config_option n EFENCE
+
+ busybox_config_option selinux SELINUX
+
+ # this opt only controls mounting with <linux-2.6.23
+ busybox_config_option n FEATURE_MOUNT_NFS
+
+ # default a bunch of uncommon options to off
+ local opt
+ for opt in \
+ ADD_SHELL \
+ BEEP BOOTCHARTD \
+ CRONTAB \
+ DC DEVFSD DNSD DPKG{,_DEB} \
+ FAKEIDENTD FBSPLASH FOLD FSCK_MINIX FTP{GET,PUT} \
+ FEATURE_DEVFS \
+ HOSTID HUSH \
+ INETD INOTIFYD IPCALC \
+ LOCALE_SUPPORT LOGNAME LPD \
+ MAKEMIME MKFS_MINIX MSH \
+ OD \
+ RDEV READPROFILE REFORMIME REMOVE_SHELL RFKILL RUN_PARTS RUNSV{,DIR} \
+ SLATTACH SMEMCAP SULOGIN SV{,LOGD} \
+ TASKSET TCPSVD \
+ RPM RPM2CPIO \
+ UDPSVD UUDECODE UUENCODE
+ do
+ busybox_config_option n ${opt}
+ done
+
+ emake -j1 oldconfig > /dev/null
+}
+
+src_compile() {
+ unset KBUILD_OUTPUT #88088
+ export SKIP_STRIP=y
+
+ emake V=1 busybox
+ if ! use static ; then
+ cp .config{,.bak}
+ mv busybox_unstripped{,.bak}
+ use pam && busybox_config_option n PAM
+ emake CONFIG_STATIC=y busybox
+ mv busybox_unstripped bb
+ mv busybox_unstripped{.bak,}
+ mv .config{.bak,}
+ else
+ # keeps src_install simpler
+ ln busybox_unstripped bb
+ fi
+}
+
+src_install() {
+ unset KBUILD_OUTPUT #88088
+ save_config .config
+
+ into /
+ dodir /bin
+ if use sep-usr ; then
+ # install /ginit to take care of mounting stuff
+ exeinto /
+ newexe bb ginit
+ dosym /ginit /bin/bb
+ if use static ; then
+ dosym bb /bin/busybox
+ else
+ newbin busybox_unstripped busybox
+ fi
+ else
+ newbin busybox_unstripped busybox
+ if use static ; then
+ dosym busybox /bin/bb
+ else
+ dobin bb
+ fi
+ fi
+ if use mdev ; then
+ dodir /$(get_libdir)/mdev/
+ use make-symlinks || dosym /bin/bb /sbin/mdev
+ cp "${S}"/examples/mdev_fat.conf "${ED}"/etc/mdev.conf
+
+ exeinto /$(get_libdir)/mdev/
+ doexe "${FILESDIR}"/mdev/*
+
+ newinitd "${FILESDIR}"/mdev.rc.1 mdev
+ fi
+ if use livecd ; then
+ dosym busybox /bin/vi
+ fi
+
+ # bundle up the symlink files for use later
+ emake DESTDIR="${ED}" install
+ rm _install/bin/busybox
+ tar cf busybox-links.tar -C _install . || : #;die
+ insinto /usr/share/${PN}
+ use make-symlinks && doins busybox-links.tar
+
+ dodoc AUTHORS README TODO
+
+ cd docs
+ docinto txt
+ dodoc *.txt
+ docinto pod
+ dodoc *.pod
+ dohtml *.html
+
+ cd ../examples
+ docinto examples
+ dodoc inittab depmod.pl *.conf *.script undeb unrpm
+}
+
+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 really what you want."
+ die "silly options will destroy your system"
+ fi
+
+ if use make-symlinks ; then
+ mv "${ED}"/usr/share/${PN}/busybox-links.tar "${T}"/ || die
+ fi
+}
+
+pkg_postinst() {
+ savedconfig_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
+
+ if use sep-usr ; then
+ elog "In order to use the sep-usr support, you have to update your"
+ elog "kernel command line. Add the option:"
+ elog " init=/ginit"
+ elog "To launch a different init than /sbin/init, use:"
+ elog " init=/ginit /sbin/yourinit"
+ elog "To get a rescue shell, you may boot with:"
+ elog " init=/ginit bb"
+ fi
+}