diff options
author | Mike Frysinger <vapier@gentoo.org> | 2012-04-30 00:13:13 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2012-04-30 00:13:13 +0000 |
commit | bcbaf9577098a3dd5b3fb2d5b1dd8a4cb58d3040 (patch) | |
tree | ab447e51b22903cbdbca3df8fdf7b1501e9768a3 /sys-apps | |
parent | version bump (diff) | |
download | gentoo-2-bcbaf9577098a3dd5b3fb2d5b1dd8a4cb58d3040.tar.gz gentoo-2-bcbaf9577098a3dd5b3fb2d5b1dd8a4cb58d3040.tar.bz2 gentoo-2-bcbaf9577098a3dd5b3fb2d5b1dd8a4cb58d3040.zip |
Old.
(Portage version: 2.2.0_alpha100/cvs/Linux x86_64)
Diffstat (limited to 'sys-apps')
33 files changed, 19 insertions, 3257 deletions
diff --git a/sys-apps/busybox/ChangeLog b/sys-apps/busybox/ChangeLog index b50337cc075b..db46d9faa3c1 100644 --- a/sys-apps/busybox/ChangeLog +++ b/sys-apps/busybox/ChangeLog @@ -1,6 +1,24 @@ # 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.300 2012/04/24 19:52:31 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-apps/busybox/ChangeLog,v 1.301 2012/04/30 00:13:13 vapier Exp $ + + 30 Apr 2012; Mike Frysinger <vapier@gentoo.org> -busybox-1.17.4.ebuild, + -busybox-1.18.4.ebuild, -busybox-1.18.5.ebuild, -busybox-1.19.0.ebuild, + -busybox-1.19.2-r1.ebuild, -busybox-1.19.2.ebuild, -busybox-1.19.3.ebuild, + -files/busybox-1.17.0-bb.patch, -files/busybox-1.18.0-bb.patch, + -files/busybox-1.18.1-bzip2.patch, -files/busybox-1.18.1-cpio.patch, + -files/busybox-1.18.1-hush.patch, -files/busybox-1.18.1-mkswap.patch, + -files/busybox-1.18.1-warning.patch, -files/busybox-1.18.3-buildsys.patch, + -files/busybox-1.18.3-modutils24.patch, -files/busybox-1.18.3-wget.patch, + -files/busybox-1.18.4-fuser.patch, -files/busybox-1.18.4-hush.patch, + -files/busybox-1.19.0-cttyhack.patch, -files/busybox-1.19.0-less.patch, + -files/busybox-1.19.0-sed.patch, -files/busybox-1.19.0-swap.patch, + -files/busybox-1.19.0-uncompress.patch, -files/busybox-1.19.2-android.patch, + -files/busybox-1.19.2-buildsys.patch, -files/busybox-1.19.2-chpasswd.patch, + -files/busybox-1.19.2-crond.patch, -files/busybox-1.19.2-inetd.patch, + -files/busybox-1.19.2-syslogd.patch, -files/busybox-1.19.2-tail.patch, + -files/busybox-1.19.2-tftp.patch: + Old. 24 Apr 2012; Mike Frysinger <vapier@gentoo.org> busybox-1.17.4.ebuild, busybox-1.18.4.ebuild, busybox-1.18.5.ebuild, busybox-1.19.0.ebuild, diff --git a/sys-apps/busybox/busybox-1.17.4.ebuild b/sys-apps/busybox/busybox-1.17.4.ebuild deleted file mode 100644 index 72b111448219..000000000000 --- a/sys-apps/busybox/busybox-1.17.4.ebuild +++ /dev/null @@ -1,272 +0,0 @@ -# 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.17.4.ebuild,v 1.13 2012/04/24 19:52:31 vapier Exp $ - -EAPI=2 -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/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. -# -################################################################################ - -#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 ipv6 make-symlinks mdev -pam selinux static elibc_glibc" -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 || 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}"/busybox-1.17.0-bb.patch - #epatch "${FILESDIR}"/busybox-${PV}-*.patch - - # 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 "/^LD\>/s:=.*:= $(tc-getLD):" \ - -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \ - Makefile || 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 - 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 NOMMU - busybox_config_option n MONOTONIC_SYSCALL - - # 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 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 - local opt - for opt in \ - CRONTAB \ - DC DEVFSD DNSD DPKG \ - FAKEIDENTD FBSPLASH FOLD FTP{GET,PUT} \ - HOSTID HUSH \ - INETD INOTIFYD IPCALC \ - LASH LOCALE_SUPPORT LOGNAME LPD \ - MSH \ - OD \ - RFKILL \ - SLATTACH SULOGIN \ - 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 busybox || die "build failed" - if ! use static ; then - cp .config{,.bak} - mv busybox_unstripped{,.bak} - use pam && busybox_config_option n PAM - emake CONFIG_STATIC=y busybox || die "static build failed" - mv busybox_unstripped bb - mv busybox_unstripped{.bak,} - mv .config{.bak,} - fi -} - -src_install() { - unset KBUILD_OUTPUT #88088 - save_config .config - - into / - newbin busybox_unstripped busybox || die - if use static ; then - dosym busybox /bin/bb || die - dosym bb /bin/busybox.static || die - else - dobin bb || die - fi - if use mdev ; then - dodir /$(get_libdir)/mdev/ - use make-symlinks || dosym /bin/bb /sbin/mdev - cp "${S}"/examples/mdev_fat.conf "${D}"/etc/mdev.conf - - exeinto /$(get_libdir)/mdev/ - doexe "${FILESDIR}"/mdev/* - - insinto /$(get_libdir)/rcscripts/addons - doins "${FILESDIR}"/mdev-start.sh || die - newinitd "${FILESDIR}"/mdev.rc mdev || die - fi - - # 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 - - cd ../examples || die - docinto examples - dodoc inittab depmod.pl *.conf *.script undeb unrpm - - cd bootfloppy || die - docinto bootfloppy - dodoc $(find . -type f) -} - -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/busybox-1.18.4.ebuild b/sys-apps/busybox/busybox-1.18.4.ebuild deleted file mode 100644 index 98a34dab88a5..000000000000 --- a/sys-apps/busybox/busybox-1.18.4.ebuild +++ /dev/null @@ -1,277 +0,0 @@ -# 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.18.4.ebuild,v 1.6 2012/04/24 19:52:31 vapier Exp $ - -EAPI="3" -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/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. -# -################################################################################ - -#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 ~x86-linux" -IUSE="debug ipv6 make-symlinks mdev nfs -pam selinux static elibc_glibc" -RESTRICT="test" - -RDEPEND="selinux? ( sys-libs/libselinux ) - pam? ( sys-libs/pam )" -DEPEND="${RDEPEND} - nfs? ( || ( <sys-libs/glibc-2.13 >=net-libs/libtirpc-0.2.2-r1 ) )" - -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 - append-cppflags $($(tc-getPKG_CONFIG) libtirpc --cflags) - - # patches go here! - epatch "${FILESDIR}"/busybox-1.18.0-bb.patch - epatch "${FILESDIR}"/busybox-${PV}-*.patch - - # 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 -} - -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 - 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 NOMMU - busybox_config_option n MONOTONIC_SYSCALL - - # 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 - busybox_config_option nfs FEATURE_MOUNT_NFS - 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 - 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 \ - LASH LOCALE_SUPPORT LOGNAME LPD \ - MAKEMIME MKFS_MINIX MSH \ - OD \ - RDEV READPROFILE REFORMIME REMOVE_SHELL RFKILL 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 busybox || die "build failed" - if ! use static ; then - cp .config{,.bak} - mv busybox_unstripped{,.bak} - use pam && busybox_config_option n PAM - emake CONFIG_STATIC=y busybox || die "static build failed" - mv busybox_unstripped bb - mv busybox_unstripped{.bak,} - mv .config{.bak,} - fi -} - -src_install() { - unset KBUILD_OUTPUT #88088 - save_config .config - - into / - newbin busybox_unstripped busybox || die - if use static ; then - dosym busybox /bin/bb || die - dosym bb /bin/busybox.static || die - else - dobin bb || die - 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/* - - insinto /$(get_libdir)/rcscripts/addons - doins "${FILESDIR}"/mdev-start.sh || die - newinitd "${FILESDIR}"/mdev.rc mdev || die - fi - - # bundle up the symlink files for use later - emake DESTDIR="${ED}" 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 - - cd ../examples || die - docinto examples - dodoc inittab depmod.pl *.conf *.script undeb unrpm - - cd bootfloppy || die - docinto bootfloppy - dodoc $(find . -type f) -} - -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 "${ED}"/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/busybox-1.18.5.ebuild b/sys-apps/busybox/busybox-1.18.5.ebuild deleted file mode 100644 index 9c2f3ccf79e3..000000000000 --- a/sys-apps/busybox/busybox-1.18.5.ebuild +++ /dev/null @@ -1,275 +0,0 @@ -# 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.18.5.ebuild,v 1.4 2012/04/24 19:52:31 vapier Exp $ - -EAPI="3" -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/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. -# -################################################################################ - -#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 ~x86-linux" -IUSE="debug ipv6 make-symlinks mdev nfs -pam selinux static elibc_glibc" -RESTRICT="test" - -RDEPEND="selinux? ( sys-libs/libselinux ) - pam? ( sys-libs/pam )" -DEPEND="${RDEPEND} - nfs? ( || ( <sys-libs/glibc-2.13 >=net-libs/libtirpc-0.2.2-r1 ) )" - -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 - append-cppflags $($(tc-getPKG_CONFIG) libtirpc --cflags) - - # patches go here! - epatch "${FILESDIR}"/busybox-1.18.0-bb.patch - #epatch "${FILESDIR}"/busybox-${PV}-*.patch - - # 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 -} - -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 - 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 NOMMU - busybox_config_option n MONOTONIC_SYSCALL - - # 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 - busybox_config_option nfs FEATURE_MOUNT_NFS - 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 - 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 \ - LASH 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 busybox || die "build failed" - if ! use static ; then - cp .config{,.bak} - mv busybox_unstripped{,.bak} - use pam && busybox_config_option n PAM - emake CONFIG_STATIC=y busybox || die "static build failed" - mv busybox_unstripped bb - mv busybox_unstripped{.bak,} - mv .config{.bak,} - fi -} - -src_install() { - unset KBUILD_OUTPUT #88088 - save_config .config - - into / - newbin busybox_unstripped busybox || die - if use static ; then - dosym busybox /bin/bb || die - dosym bb /bin/busybox.static || die - else - dobin bb || die - 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/* - - insinto /$(get_libdir)/rcscripts/addons - doins "${FILESDIR}"/mdev-start.sh || die - newinitd "${FILESDIR}"/mdev.rc mdev || die - fi - - # bundle up the symlink files for use later - emake DESTDIR="${ED}" 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 - - cd ../examples || die - docinto examples - dodoc inittab depmod.pl *.conf *.script undeb unrpm - - cd bootfloppy || die - docinto bootfloppy - dodoc $(find . -type f) -} - -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 "${ED}"/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 - - elog "This ebuild has support for user defined configs" - elog "Please read this ebuild for more details and re-emerge as needed" - elog "if you want to add or remove functionality for ${PN}" -} diff --git a/sys-apps/busybox/busybox-1.19.0.ebuild b/sys-apps/busybox/busybox-1.19.0.ebuild deleted file mode 100644 index 9b402f9107ff..000000000000 --- a/sys-apps/busybox/busybox-1.19.0.ebuild +++ /dev/null @@ -1,276 +0,0 @@ -# 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.19.0.ebuild,v 1.9 2012/04/24 19:52:31 vapier Exp $ - -EAPI="3" -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/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. -# -################################################################################ - -#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 ~x86-linux" -IUSE="debug ipv6 make-symlinks mdev nfs -pam selinux static elibc_glibc" -RESTRICT="test" - -RDEPEND="selinux? ( sys-libs/libselinux ) - pam? ( sys-libs/pam )" -DEPEND="${RDEPEND} - nfs? ( || ( <sys-libs/glibc-2.13 >=net-libs/libtirpc-0.2.2-r1 ) )" - -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 - append-cppflags $($(tc-getPKG_CONFIG) libtirpc --cflags) - - # patches go here! - #epatch "${FILESDIR}"/busybox-1.19.0-bb.patch - epatch "${FILESDIR}"/busybox-${PV}-*.patch - - # 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 -} - -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 - 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 NOMMU - busybox_config_option n MONOTONIC_SYSCALL - - # 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 - busybox_config_option nfs FEATURE_MOUNT_NFS - 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 - 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 \ - LASH 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 busybox || die "build failed" - if ! use static ; then - cp .config{,.bak} - mv busybox_unstripped{,.bak} - use pam && busybox_config_option n PAM - emake CONFIG_STATIC=y busybox || die "static build failed" - mv busybox_unstripped bb - mv busybox_unstripped{.bak,} - mv .config{.bak,} - fi -} - -src_install() { - unset KBUILD_OUTPUT #88088 - save_config .config - - into / - newbin busybox_unstripped busybox || die - if use static ; then - dosym busybox /bin/bb || die - dosym bb /bin/busybox.static || die - else - dobin bb || die - 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/* - - insinto /$(get_libdir)/rcscripts/addons - doins "${FILESDIR}"/mdev-start.sh || die - newinitd "${FILESDIR}"/mdev.rc mdev || die - fi - - # bundle up the symlink files for use later - emake DESTDIR="${ED}" 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 - - cd ../examples || die - docinto examples - dodoc inittab depmod.pl *.conf *.script undeb unrpm - - cd bootfloppy || die - docinto bootfloppy - dodoc $(find . -type f) -} - -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() { - 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 - - elog "This ebuild has support for user defined configs" - elog "Please read this ebuild for more details and re-emerge as needed" - elog "if you want to add or remove functionality for ${PN}" -} diff --git a/sys-apps/busybox/busybox-1.19.2-r1.ebuild b/sys-apps/busybox/busybox-1.19.2-r1.ebuild deleted file mode 100644 index 07aaab08f215..000000000000 --- a/sys-apps/busybox/busybox-1.19.2-r1.ebuild +++ /dev/null @@ -1,279 +0,0 @@ -# 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.19.2-r1.ebuild,v 1.3 2012/04/24 19:52:31 vapier Exp $ - -EAPI="3" -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/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. -# -################################################################################ - -#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 ~x86-linux" -IUSE="debug ipv6 make-symlinks mdev nfs -pam selinux static elibc_glibc" -RESTRICT="test" - -RDEPEND="selinux? ( sys-libs/libselinux ) - pam? ( sys-libs/pam )" -DEPEND="${RDEPEND} - nfs? ( || ( <sys-libs/glibc-2.13 >=net-libs/libtirpc-0.2.2-r1 ) )" - -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 - append-cppflags $($(tc-getPKG_CONFIG) libtirpc --cflags) - - # patches go here! - epatch "${FILESDIR}"/busybox-1.19.0-bb.patch - epatch "${FILESDIR}"/busybox-${PV}-*.patch - - # 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 -} - -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 - - # 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 - busybox_config_option nfs FEATURE_MOUNT_NFS - 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 - 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 \ - LASH 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 busybox || die "build failed" - if ! use static ; then - cp .config{,.bak} - mv busybox_unstripped{,.bak} - use pam && busybox_config_option n PAM - emake CONFIG_STATIC=y busybox || die "static build failed" - mv busybox_unstripped bb - mv busybox_unstripped{.bak,} - mv .config{.bak,} - fi -} - -src_install() { - unset KBUILD_OUTPUT #88088 - save_config .config - - into / - newbin busybox_unstripped busybox || die - if use static ; then - dosym busybox /bin/bb || die - dosym bb /bin/busybox.static || die - else - dobin bb || die - 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/* || die - - newinitd "${FILESDIR}"/mdev.rc.1 mdev || die - fi - - # bundle up the symlink files for use later - emake DESTDIR="${ED}" 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 - - cd ../examples || die - docinto examples - dodoc inittab depmod.pl *.conf *.script undeb unrpm - - cd bootfloppy || die - docinto bootfloppy - dodoc $(find . -type f) -} - -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() { - 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 - - elog "This ebuild has support for user defined configs" - elog "Please read this ebuild for more details and re-emerge as needed" - elog "if you want to add or remove functionality for ${PN}" -} diff --git a/sys-apps/busybox/busybox-1.19.2.ebuild b/sys-apps/busybox/busybox-1.19.2.ebuild deleted file mode 100644 index c3bcdcfe9abc..000000000000 --- a/sys-apps/busybox/busybox-1.19.2.ebuild +++ /dev/null @@ -1,274 +0,0 @@ -# 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.19.2.ebuild,v 1.3 2012/04/24 19:52:31 vapier Exp $ - -EAPI="3" -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/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. -# -################################################################################ - -#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 ~x86-linux" -IUSE="debug ipv6 make-symlinks mdev nfs -pam selinux static elibc_glibc" -RESTRICT="test" - -RDEPEND="selinux? ( sys-libs/libselinux ) - pam? ( sys-libs/pam )" -DEPEND="${RDEPEND} - nfs? ( || ( <sys-libs/glibc-2.13 >=net-libs/libtirpc-0.2.2-r1 ) )" - -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 - append-cppflags $($(tc-getPKG_CONFIG) libtirpc --cflags) - - # patches go here! - epatch "${FILESDIR}"/busybox-1.19.0-bb.patch - epatch "${FILESDIR}"/busybox-${PV}-*.patch - - # 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 -} - -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 - 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 NOMMU - busybox_config_option n MONOTONIC_SYSCALL - - # 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 - busybox_config_option nfs FEATURE_MOUNT_NFS - 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 - 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 \ - LASH 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 busybox || die "build failed" - if ! use static ; then - cp .config{,.bak} - mv busybox_unstripped{,.bak} - use pam && busybox_config_option n PAM - emake CONFIG_STATIC=y busybox || die "static build failed" - mv busybox_unstripped bb - mv busybox_unstripped{.bak,} - mv .config{.bak,} - fi -} - -src_install() { - unset KBUILD_OUTPUT #88088 - save_config .config - - into / - newbin busybox_unstripped busybox || die - if use static ; then - dosym busybox /bin/bb || die - dosym bb /bin/busybox.static || die - else - dobin bb || die - 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/* || die - - newinitd "${FILESDIR}"/mdev.rc.1 mdev || die - fi - - # bundle up the symlink files for use later - emake DESTDIR="${ED}" 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 - - cd ../examples || die - docinto examples - dodoc inittab depmod.pl *.conf *.script undeb unrpm - - cd bootfloppy || die - docinto bootfloppy - dodoc $(find . -type f) -} - -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() { - 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 - - elog "This ebuild has support for user defined configs" - elog "Please read this ebuild for more details and re-emerge as needed" - elog "if you want to add or remove functionality for ${PN}" -} diff --git a/sys-apps/busybox/busybox-1.19.3.ebuild b/sys-apps/busybox/busybox-1.19.3.ebuild deleted file mode 100644 index 3fcc52055aa1..000000000000 --- a/sys-apps/busybox/busybox-1.19.3.ebuild +++ /dev/null @@ -1,283 +0,0 @@ -# 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.19.3.ebuild,v 1.3 2012/04/24 19:52:31 vapier Exp $ - -EAPI="3" -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/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. -# -################################################################################ - -#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 ~x86-linux" -IUSE="ipv6 make-symlinks mdev nfs -pam selinux static elibc_glibc" -RESTRICT="test" - -RDEPEND="selinux? ( sys-libs/libselinux ) - pam? ( sys-libs/pam )" -DEPEND="${RDEPEND} - nfs? ( || ( <sys-libs/glibc-2.13 >=net-libs/libtirpc-0.2.2-r1 ) )" - -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 - append-cppflags $($(tc-getPKG_CONFIG) libtirpc --cflags) - - # patches go here! - epatch "${FILESDIR}"/busybox-1.19.0-bb.patch - epatch "${FILESDIR}"/busybox-${PV}-*.patch - - # 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 - - # 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 - busybox_config_option nfs FEATURE_MOUNT_NFS - use static \ - && busybox_config_option n PAM \ - || busybox_config_option pam PAM - busybox_config_option static STATIC - - # 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 - - # 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 \ - LASH 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 || die - if ! use static ; then - cp .config{,.bak} - mv busybox_unstripped{,.bak} - use pam && busybox_config_option n PAM - emake CONFIG_STATIC=y busybox || die - mv busybox_unstripped bb - mv busybox_unstripped{.bak,} - mv .config{.bak,} - fi -} - -src_install() { - unset KBUILD_OUTPUT #88088 - save_config .config - - into / - newbin busybox_unstripped busybox || die - if use static ; then - dosym busybox /bin/bb || die - dosym bb /bin/busybox.static || die - else - dobin bb || die - 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/* || die - - newinitd "${FILESDIR}"/mdev.rc.1 mdev || die - fi - - # bundle up the symlink files for use later - emake DESTDIR="${ED}" 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 - - cd ../examples || die - docinto examples - dodoc inittab depmod.pl *.conf *.script undeb unrpm - - cd bootfloppy || die - docinto bootfloppy - dodoc $(find . -type f) -} - -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() { - 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 - - elog "This ebuild has support for user defined configs" - elog "Please read this ebuild for more details and re-emerge as needed" - elog "if you want to add or remove functionality for ${PN}" -} diff --git a/sys-apps/busybox/files/busybox-1.17.0-bb.patch b/sys-apps/busybox/files/busybox-1.17.0-bb.patch deleted file mode 100644 index a9d64e0d5f6e..000000000000 --- a/sys-apps/busybox/files/busybox-1.17.0-bb.patch +++ /dev/null @@ -1,23 +0,0 @@ ---- a/include/applets.src.h -+++ b/include/applets.src.h -@@ -77,7 +77,9 @@ - IF_BASENAME(APPLET_NOFORK(basename, basename, _BB_DIR_USR_BIN, _BB_SUID_DROP, basename)) - IF_FEATURE_BASH_IS_ASH(APPLET_ODDNAME(bash, ash, _BB_DIR_BIN, _BB_SUID_DROP, bash)) - IF_FEATURE_BASH_IS_HUSH(APPLET_ODDNAME(bash, hush, _BB_DIR_BIN, _BB_SUID_DROP, bash)) -+IF_ASH(APPLET_ODDNAME(bb, ash, _BB_DIR_BIN, _BB_SUID_DROP, ash)) - IF_BBCONFIG(APPLET(bbconfig, _BB_DIR_BIN, _BB_SUID_DROP)) -+IF_ASH(APPLET_ODDNAME(bbsh, ash, _BB_DIR_BIN, _BB_SUID_DROP, ash)) - //IF_BBSH(APPLET(bbsh, _BB_DIR_BIN, _BB_SUID_DROP)) - IF_BEEP(APPLET(beep, _BB_DIR_USR_BIN, _BB_SUID_DROP)) - IF_BLKID(APPLET(blkid, _BB_DIR_SBIN, _BB_SUID_DROP)) ---- a/shell/ash.c -+++ b/shell/ash.c -@@ -7255,6 +7255,8 @@ - } - /* re-exec ourselves with the new arguments */ - execve(bb_busybox_exec_path, argv, envp); -+ execve("/bin/busybox.static", argv, envp); -+ execve("/bin/busybox", argv, envp); - /* If they called chroot or otherwise made the binary no longer - * executable, fall through */ - } diff --git a/sys-apps/busybox/files/busybox-1.18.0-bb.patch b/sys-apps/busybox/files/busybox-1.18.0-bb.patch deleted file mode 100644 index 309d2430b3d2..000000000000 --- a/sys-apps/busybox/files/busybox-1.18.0-bb.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- a/shell/ash.c -+++ b/shell/ash.c -@@ -75,6 +75,8 @@ - //applet:IF_ASH(APPLET(ash, _BB_DIR_BIN, _BB_SUID_DROP)) - //applet:IF_FEATURE_SH_IS_ASH(APPLET_ODDNAME(sh, ash, _BB_DIR_BIN, _BB_SUID_DROP, sh)) - //applet:IF_FEATURE_BASH_IS_ASH(APPLET_ODDNAME(bash, ash, _BB_DIR_BIN, _BB_SUID_DROP, bash)) -+//applet:IF_ASH(APPLET_ODDNAME(bb, ash, _BB_DIR_BIN, _BB_SUID_DROP, ash)) -+//applet:IF_ASH(APPLET_ODDNAME(bbsh, ash, _BB_DIR_BIN, _BB_SUID_DROP, ash)) - - //kbuild:lib-$(CONFIG_ASH) += ash.o ash_ptr_hack.o shell_common.o - //kbuild:lib-$(CONFIG_ASH_RANDOM_SUPPORT) += random.o ---- a/shell/ash.c -+++ b/shell/ash.c -@@ -7255,6 +7255,8 @@ - } - /* re-exec ourselves with the new arguments */ - execve(bb_busybox_exec_path, argv, envp); -+ execve("/bin/busybox.static", argv, envp); -+ execve("/bin/busybox", argv, envp); - /* If they called chroot or otherwise made the binary no longer - * executable, fall through */ - } diff --git a/sys-apps/busybox/files/busybox-1.18.1-bzip2.patch b/sys-apps/busybox/files/busybox-1.18.1-bzip2.patch deleted file mode 100644 index cffa194355fe..000000000000 --- a/sys-apps/busybox/files/busybox-1.18.1-bzip2.patch +++ /dev/null @@ -1,40 +0,0 @@ -diff -urpN busybox-1.18.1/archival/bzip2.c busybox-1.18.1-bzip2/archival/bzip2.c ---- busybox-1.18.1/archival/bzip2.c 2010-12-20 01:41:26.000000000 +0100 -+++ busybox-1.18.1-bzip2/archival/bzip2.c 2010-12-30 04:43:11.000000000 +0100 -@@ -128,10 +128,12 @@ IF_DESKTOP(long long) int FAST_FUNC comp - break; - } - --#if ENABLE_FEATURE_CLEAN_UP -+ /* Can't be conditional on ENABLE_FEATURE_CLEAN_UP - -+ * we are called repeatedly -+ */ - BZ2_bzCompressEnd(strm); - free(iobuf); --#endif -+ - return total; - } - -diff -urpN busybox-1.18.1/archival/libarchive/bz/bzlib.c busybox-1.18.1-bzip2/archival/libarchive/bz/bzlib.c ---- busybox-1.18.1/archival/libarchive/bz/bzlib.c 2010-12-20 01:41:26.000000000 +0100 -+++ busybox-1.18.1-bzip2/archival/libarchive/bz/bzlib.c 2010-12-30 04:43:11.000000000 +0100 -@@ -361,7 +361,6 @@ int BZ2_bzCompress(bz_stream *strm, int - - - /*---------------------------------------------------*/ --#if ENABLE_FEATURE_CLEAN_UP - static - void BZ2_bzCompressEnd(bz_stream *strm) - { -@@ -372,9 +371,8 @@ void BZ2_bzCompressEnd(bz_stream *strm) - free(s->arr2); - free(s->ftab); - free(s->crc32table); -- free(strm->state); -+ free(s); - } --#endif - - - /*---------------------------------------------------*/ diff --git a/sys-apps/busybox/files/busybox-1.18.1-cpio.patch b/sys-apps/busybox/files/busybox-1.18.1-cpio.patch deleted file mode 100644 index 135f8091cda9..000000000000 --- a/sys-apps/busybox/files/busybox-1.18.1-cpio.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff -urpN busybox-1.18.1/archival/cpio.c busybox-1.18.1-cpio/archival/cpio.c ---- busybox-1.18.1/archival/cpio.c 2010-12-20 01:41:26.000000000 +0100 -+++ busybox-1.18.1-cpio/archival/cpio.c 2010-12-26 02:26:38.000000000 +0100 -@@ -308,16 +308,12 @@ int cpio_main(int argc UNUSED_PARAM, cha - /* -L makes sense only with -o or -p */ - - #if !ENABLE_FEATURE_CPIO_O -- /* no parameters */ -- opt_complementary = "=0"; - opt = getopt32(argv, OPTION_STR, &cpio_filename); - argv += optind; - if (opt & CPIO_OPT_FILE) { /* -F */ - xmove_fd(xopen(cpio_filename, O_RDONLY), STDIN_FILENO); - } - #else -- /* _exactly_ one parameter for -p, thus <= 1 param if -p is allowed */ -- opt_complementary = ENABLE_FEATURE_CPIO_P ? "?1" : "=0"; - opt = getopt32(argv, OPTION_STR "oH:" IF_FEATURE_CPIO_P("p"), &cpio_filename, &cpio_fmt); - argv += optind; - if ((opt & (CPIO_OPT_FILE|CPIO_OPT_CREATE)) == CPIO_OPT_FILE) { /* -F without -o */ diff --git a/sys-apps/busybox/files/busybox-1.18.1-hush.patch b/sys-apps/busybox/files/busybox-1.18.1-hush.patch deleted file mode 100644 index 5281a52e536c..000000000000 --- a/sys-apps/busybox/files/busybox-1.18.1-hush.patch +++ /dev/null @@ -1,259 +0,0 @@ -diff -urpN busybox-1.18.1/shell/hush.c busybox-1.18.1-hush/shell/hush.c ---- busybox-1.18.1/shell/hush.c 2010-12-21 05:31:04.000000000 +0100 -+++ busybox-1.18.1-hush/shell/hush.c 2011-01-07 14:59:19.649956156 +0100 -@@ -913,7 +913,7 @@ static const struct built_in_command blt - */ - #if HUSH_DEBUG - /* prevent disasters with G.debug_indent < 0 */ --# define indent() fprintf(stderr, "%*s", (G.debug_indent * 2) & 0xff, "") -+# define indent() fdprintf(2, "%*s", (G.debug_indent * 2) & 0xff, "") - # define debug_enter() (G.debug_indent++) - # define debug_leave() (G.debug_indent--) - #else -@@ -923,56 +923,56 @@ static const struct built_in_command blt - #endif - - #ifndef debug_printf --# define debug_printf(...) (indent(), fprintf(stderr, __VA_ARGS__)) -+# define debug_printf(...) (indent(), fdprintf(2, __VA_ARGS__)) - #endif - - #ifndef debug_printf_parse --# define debug_printf_parse(...) (indent(), fprintf(stderr, __VA_ARGS__)) -+# define debug_printf_parse(...) (indent(), fdprintf(2, __VA_ARGS__)) - #endif - - #ifndef debug_printf_exec --#define debug_printf_exec(...) (indent(), fprintf(stderr, __VA_ARGS__)) -+#define debug_printf_exec(...) (indent(), fdprintf(2, __VA_ARGS__)) - #endif - - #ifndef debug_printf_env --# define debug_printf_env(...) (indent(), fprintf(stderr, __VA_ARGS__)) -+# define debug_printf_env(...) (indent(), fdprintf(2, __VA_ARGS__)) - #endif - - #ifndef debug_printf_jobs --# define debug_printf_jobs(...) (indent(), fprintf(stderr, __VA_ARGS__)) -+# define debug_printf_jobs(...) (indent(), fdprintf(2, __VA_ARGS__)) - # define DEBUG_JOBS 1 - #else - # define DEBUG_JOBS 0 - #endif - - #ifndef debug_printf_expand --# define debug_printf_expand(...) (indent(), fprintf(stderr, __VA_ARGS__)) -+# define debug_printf_expand(...) (indent(), fdprintf(2, __VA_ARGS__)) - # define DEBUG_EXPAND 1 - #else - # define DEBUG_EXPAND 0 - #endif - - #ifndef debug_printf_varexp --# define debug_printf_varexp(...) (indent(), fprintf(stderr, __VA_ARGS__)) -+# define debug_printf_varexp(...) (indent(), fdprintf(2, __VA_ARGS__)) - #endif - - #ifndef debug_printf_glob --# define debug_printf_glob(...) (indent(), fprintf(stderr, __VA_ARGS__)) -+# define debug_printf_glob(...) (indent(), fdprintf(2, __VA_ARGS__)) - # define DEBUG_GLOB 1 - #else - # define DEBUG_GLOB 0 - #endif - - #ifndef debug_printf_list --# define debug_printf_list(...) (indent(), fprintf(stderr, __VA_ARGS__)) -+# define debug_printf_list(...) (indent(), fdprintf(2, __VA_ARGS__)) - #endif - - #ifndef debug_printf_subst --# define debug_printf_subst(...) (indent(), fprintf(stderr, __VA_ARGS__)) -+# define debug_printf_subst(...) (indent(), fdprintf(2, __VA_ARGS__)) - #endif - - #ifndef debug_printf_clean --# define debug_printf_clean(...) (indent(), fprintf(stderr, __VA_ARGS__)) -+# define debug_printf_clean(...) (indent(), fdprintf(2, __VA_ARGS__)) - # define DEBUG_CLEAN 1 - #else - # define DEBUG_CLEAN 0 -@@ -982,9 +982,9 @@ static const struct built_in_command blt - static void debug_print_strings(const char *prefix, char **vv) - { - indent(); -- fprintf(stderr, "%s:\n", prefix); -+ fdprintf(2, "%s:\n", prefix); - while (*vv) -- fprintf(stderr, " '%s'\n", *vv++); -+ fdprintf(2, " '%s'\n", *vv++); - } - #else - # define debug_print_strings(prefix, vv) ((void)0) -@@ -1416,6 +1416,22 @@ static void hush_exit(int exitcode) - builtin_eval(argv); - } - -+#if ENABLE_FEATURE_CLEAN_UP -+ { -+ struct variable *cur_var; -+ if (G.cwd != bb_msg_unknown) -+ free((char*)G.cwd); -+ cur_var = G.top_var; -+ while (cur_var) { -+ struct variable *tmp = cur_var; -+ if (!cur_var->max_len) -+ free(cur_var->varstr); -+ cur_var = cur_var->next; -+ free(tmp); -+ } -+ } -+#endif -+ - #if ENABLE_HUSH_JOB - fflush_all(); - sigexit(- (exitcode & 0xff)); -@@ -2158,22 +2174,22 @@ static void debug_print_list(const char - int i = 0; - - indent(); -- fprintf(stderr, "%s: list:%p n:%d string_start:%d length:%d maxlen:%d glob:%d quoted:%d escape:%d\n", -+ fdprintf(2, "%s: list:%p n:%d string_start:%d length:%d maxlen:%d glob:%d quoted:%d escape:%d\n", - prefix, list, n, string_start, o->length, o->maxlen, - !!(o->o_expflags & EXP_FLAG_GLOB), - o->has_quoted_part, - !!(o->o_expflags & EXP_FLAG_ESC_GLOB_CHARS)); - while (i < n) { - indent(); -- fprintf(stderr, " list[%d]=%d '%s' %p\n", i, (int)list[i], -- o->data + (int)list[i] + string_start, -- o->data + (int)list[i] + string_start); -+ fdprintf(2, " list[%d]=%d '%s' %p\n", i, (int)(uintptr_t)list[i], -+ o->data + (int)(uintptr_t)list[i] + string_start, -+ o->data + (int)(uintptr_t)list[i] + string_start); - i++; - } - if (n) { -- const char *p = o->data + (int)list[n - 1] + string_start; -+ const char *p = o->data + (int)(uintptr_t)list[n - 1] + string_start; - indent(); -- fprintf(stderr, " total_sz:%ld\n", (long)((p + strlen(p) + 1) - o->data)); -+ fdprintf(2, " total_sz:%ld\n", (long)((p + strlen(p) + 1) - o->data)); - } - } - #else -@@ -2672,18 +2688,18 @@ static void debug_print_tree(struct pipe - - pin = 0; - while (pi) { -- fprintf(stderr, "%*spipe %d res_word=%s followup=%d %s\n", lvl*2, "", -+ fdprintf(2, "%*spipe %d res_word=%s followup=%d %s\n", lvl*2, "", - pin, RES[pi->res_word], pi->followup, PIPE[pi->followup]); - prn = 0; - while (prn < pi->num_cmds) { - struct command *command = &pi->cmds[prn]; - char **argv = command->argv; - -- fprintf(stderr, "%*s cmd %d assignment_cnt:%d", -+ fdprintf(2, "%*s cmd %d assignment_cnt:%d", - lvl*2, "", prn, - command->assignment_cnt); - if (command->group) { -- fprintf(stderr, " group %s: (argv=%p)%s%s\n", -+ fdprintf(2, " group %s: (argv=%p)%s%s\n", - CMDTYPE[command->cmd_type], - argv - # if !BB_MMU -@@ -2697,10 +2713,10 @@ static void debug_print_tree(struct pipe - continue; - } - if (argv) while (*argv) { -- fprintf(stderr, " '%s'", *argv); -+ fdprintf(2, " '%s'", *argv); - argv++; - } -- fprintf(stderr, "\n"); -+ fdprintf(2, "\n"); - prn++; - } - pi = pi->next; -@@ -4106,7 +4122,16 @@ static struct pipe *parse_stream(char ** - if (IS_NULL_CMD(ctx.command) - && dest.length == 0 && !dest.has_quoted_part - ) { -- continue; -+ /* This newline can be ignored. But... -+ * without the below check, interactive shell -+ * will ignore even lines with bare <newline>, -+ * and show the continuation prompt: -+ * ps1_prompt$ <enter> -+ * ps2> _ <=== wrong prompt, should be ps1 -+ */ -+ struct pipe *pi = ctx.list_head; -+ if (pi->num_cmds != 0) -+ continue; - } - /* Treat newline as a command separator. */ - done_pipe(&ctx, PIPE_SEQ); -@@ -7445,7 +7470,7 @@ int hush_main(int argc, char **argv) - unsigned builtin_argc; - char **e; - struct variable *cur_var; -- struct variable shell_ver; -+ struct variable *shell_ver; - - INIT_G(); - if (EXIT_SUCCESS) /* if EXIT_SUCCESS == 0, it is already done */ -@@ -7454,17 +7479,17 @@ int hush_main(int argc, char **argv) - G.argv0_for_re_execing = argv[0]; - #endif - /* Deal with HUSH_VERSION */ -- memset(&shell_ver, 0, sizeof(shell_ver)); -- shell_ver.flg_export = 1; -- shell_ver.flg_read_only = 1; -+ shell_ver = xzalloc(sizeof(*shell_ver)); -+ shell_ver->flg_export = 1; -+ shell_ver->flg_read_only = 1; - /* Code which handles ${var<op>...} needs writable values for all variables, - * therefore we xstrdup: */ -- shell_ver.varstr = xstrdup(hush_version_str), -- G.top_var = &shell_ver; -+ shell_ver->varstr = xstrdup(hush_version_str); - /* Create shell local variables from the values - * currently living in the environment */ - debug_printf_env("unsetenv '%s'\n", "HUSH_VERSION"); - unsetenv("HUSH_VERSION"); /* in case it exists in initial env */ -+ G.top_var = shell_ver; - cur_var = G.top_var; - e = environ; - if (e) while (*e) { -@@ -7479,8 +7504,8 @@ int hush_main(int argc, char **argv) - e++; - } - /* (Re)insert HUSH_VERSION into env (AFTER we scanned the env!) */ -- debug_printf_env("putenv '%s'\n", shell_ver.varstr); -- putenv(shell_ver.varstr); -+ debug_printf_env("putenv '%s'\n", shell_ver->varstr); -+ putenv(shell_ver->varstr); - - /* Export PWD */ - set_pwd_var(/*exp:*/ 1); -@@ -7840,18 +7865,6 @@ int hush_main(int argc, char **argv) - parse_and_run_file(stdin); - - final_return: --#if ENABLE_FEATURE_CLEAN_UP -- if (G.cwd != bb_msg_unknown) -- free((char*)G.cwd); -- cur_var = G.top_var->next; -- while (cur_var) { -- struct variable *tmp = cur_var; -- if (!cur_var->max_len) -- free(cur_var->varstr); -- cur_var = cur_var->next; -- free(tmp); -- } --#endif - hush_exit(G.last_exitcode); - } - diff --git a/sys-apps/busybox/files/busybox-1.18.1-mkswap.patch b/sys-apps/busybox/files/busybox-1.18.1-mkswap.patch deleted file mode 100644 index 41dff57c0eec..000000000000 --- a/sys-apps/busybox/files/busybox-1.18.1-mkswap.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -urpN busybox-1.18.1/util-linux/mkswap.c busybox-1.18.1-mkswap/util-linux/mkswap.c ---- busybox-1.18.1/util-linux/mkswap.c 2010-12-20 01:41:27.000000000 +0100 -+++ busybox-1.18.1-mkswap/util-linux/mkswap.c 2011-01-05 11:41:24.455856773 +0100 -@@ -15,7 +15,7 @@ static void mkswap_selinux_setcontext(in - if (!is_selinux_enabled()) - return; - -- xfstat(fd, &stbuf, argv[0]); -+ xfstat(fd, &stbuf, path); - if (S_ISREG(stbuf.st_mode)) { - security_context_t newcon; - security_context_t oldcon = NULL; diff --git a/sys-apps/busybox/files/busybox-1.18.1-warning.patch b/sys-apps/busybox/files/busybox-1.18.1-warning.patch deleted file mode 100644 index cda94bd4fd00..000000000000 --- a/sys-apps/busybox/files/busybox-1.18.1-warning.patch +++ /dev/null @@ -1,28 +0,0 @@ -diff -urpN busybox-1.18.1/libbb/procps.c busybox-1.18.1-warning/libbb/procps.c ---- busybox-1.18.1/libbb/procps.c 2010-12-21 05:29:45.000000000 +0100 -+++ busybox-1.18.1-warning/libbb/procps.c 2011-01-07 13:41:22.000000000 +0100 -@@ -154,6 +154,7 @@ static unsigned long fast_strtoul_10(cha - return n; - } - -+# if ENABLE_FEATURE_FAST_TOP - static long fast_strtol_10(char **endptr) - { - if (**endptr != '-') -@@ -162,6 +163,7 @@ static long fast_strtol_10(char **endptr - (*endptr)++; - return - (long)fast_strtoul_10(endptr); - } -+# endif - - static char *skip_fields(char *str, int count) - { -@@ -448,7 +450,7 @@ procps_status_t* FAST_FUNC procps_scan(p - //FIXME: is it safe to assume this field exists? - sp->last_seen_on_cpu = fast_strtoul_10(&cp); - # endif --#endif /* end of !ENABLE_FEATURE_TOP_SMP_PROCESS */ -+#endif /* FEATURE_FAST_TOP */ - - #if ENABLE_FEATURE_PS_ADDITIONAL_COLUMNS - sp->niceness = tasknice; diff --git a/sys-apps/busybox/files/busybox-1.18.3-buildsys.patch b/sys-apps/busybox/files/busybox-1.18.3-buildsys.patch deleted file mode 100644 index 330b73fbb808..000000000000 --- a/sys-apps/busybox/files/busybox-1.18.3-buildsys.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- busybox-1.18.3/Config.in -+++ busybox-1.18.3-buildsys/Config.in -@@ -126,7 +126,6 @@ config FEATURE_INSTALLER - config INSTALL_NO_USR - bool "Don't use /usr" - default n -- depends on FEATURE_INSTALLER - help - Disable use of /usr. busybox --install and "make install" - will install applets only to /bin and /sbin, diff --git a/sys-apps/busybox/files/busybox-1.18.3-modutils24.patch b/sys-apps/busybox/files/busybox-1.18.3-modutils24.patch deleted file mode 100644 index 2b13787f38c0..000000000000 --- a/sys-apps/busybox/files/busybox-1.18.3-modutils24.patch +++ /dev/null @@ -1,36 +0,0 @@ ---- busybox-1.18.3/modutils/modutils-24.c -+++ busybox-1.18.3-modutils24/modutils/modutils-24.c -@@ -2474,6 +2474,7 @@ new_process_module_arguments(struct obj_ - n = 0; - p = val; - while (*p != 0) { -+ char sv_ch; - char *endp; - - if (++n > max) -@@ -2482,14 +2483,17 @@ new_process_module_arguments(struct obj_ - switch (*pinfo) { - case 's': - len = strcspn(p, ","); -+ sv_ch = p[len]; - p[len] = 0; - obj_string_patch(f, sym->secidx, - loc - contents, p); - loc += tgt_sizeof_char_p; - p += len; -+ *p = sv_ch; - break; - case 'c': - len = strcspn(p, ","); -+ sv_ch = p[len]; - p[len] = 0; - if (len >= charssize) - bb_error_msg_and_die("string too long for %s (max %ld)", param, -@@ -2497,6 +2501,7 @@ new_process_module_arguments(struct obj_ - strcpy((char *) loc, p); - loc += charssize; - p += len; -+ *p = sv_ch; - break; - case 'b': - *loc++ = strtoul(p, &endp, 0); diff --git a/sys-apps/busybox/files/busybox-1.18.3-wget.patch b/sys-apps/busybox/files/busybox-1.18.3-wget.patch deleted file mode 100644 index 88cfc918ca2f..000000000000 --- a/sys-apps/busybox/files/busybox-1.18.3-wget.patch +++ /dev/null @@ -1,128 +0,0 @@ ---- busybox-1.18.3/networking/wget.c -+++ busybox-1.18.3-wget/networking/wget.c -@@ -446,7 +446,7 @@ static FILE* prepare_ftp_session(FILE ** - - static void NOINLINE retrieve_file_data(FILE *dfp, int output_fd) - { -- char buf[512]; -+ char buf[4*1024]; /* made bigger to speed up local xfers */ - #if ENABLE_FEATURE_WGET_STATUSBAR || ENABLE_FEATURE_WGET_TIMEOUT - # if ENABLE_FEATURE_WGET_TIMEOUT - unsigned second_cnt; -@@ -455,7 +455,6 @@ static void NOINLINE retrieve_file_data( - - polldata.fd = fileno(dfp); - polldata.events = POLLIN | POLLPRI; -- ndelay_on(polldata.fd); - #endif - progress_meter(PROGRESS_START); - -@@ -464,6 +463,10 @@ static void NOINLINE retrieve_file_data( - - /* Loops only if chunked */ - while (1) { -+ -+#if ENABLE_FEATURE_WGET_STATUSBAR || ENABLE_FEATURE_WGET_TIMEOUT -+ ndelay_on(polldata.fd); -+#endif - while (1) { - int n; - unsigned rdsz; -@@ -493,22 +496,46 @@ static void NOINLINE retrieve_file_data( - progress_meter(PROGRESS_BUMP); - } - #endif -+ /* fread internally uses read loop, which in our case -+ * is usually exited when we get EAGAIN. -+ * In this case, libc sets error marker on the stream. -+ * Need to clear it before next fread to avoid possible -+ * rare false positive ferror below. Rare because usually -+ * fread gets more than zero bytes, and we don't fall -+ * into if (n <= 0) ... -+ */ -+ clearerr(dfp); -+ errno = 0; - n = safe_fread(buf, rdsz, dfp); -+ /* man fread: -+ * If error occurs, or EOF is reached, the return value -+ * is a short item count (or zero). -+ * fread does not distinguish between EOF and error. -+ */ - if (n <= 0) { -- if (ferror(dfp)) { -- /* perror will not work: ferror doesn't set errno */ -- bb_error_msg_and_die(bb_msg_read_error); -- } -- break; -+#if ENABLE_FEATURE_WGET_STATUSBAR || ENABLE_FEATURE_WGET_TIMEOUT -+ if (errno == EAGAIN) /* poll lied, there is no data? */ -+ continue; /* yes */ -+#endif -+ if (ferror(dfp)) -+ bb_perror_msg_and_die(bb_msg_read_error); -+ break; /* EOF, not error */ - } -+ - xwrite(output_fd, buf, n); - #if ENABLE_FEATURE_WGET_STATUSBAR - G.transferred += n; - progress_meter(PROGRESS_BUMP); - #endif -- if (G.got_clen) -+ if (G.got_clen) { - G.content_len -= n; -+ if (G.content_len == 0) -+ break; -+ } - } -+#if ENABLE_FEATURE_WGET_STATUSBAR || ENABLE_FEATURE_WGET_TIMEOUT -+ ndelay_off(polldata.fd); -+#endif - - if (!G.chunked) - break; -@@ -706,6 +733,11 @@ int wget_main(int argc UNUSED_PARAM, cha - fprintf(sfp, "Host: %s\r\nUser-Agent: %s\r\n", - target.host, user_agent); - -+ /* Ask server to close the connection as soon as we are done -+ * (IOW: we do not intend to send more requests) -+ */ -+ fprintf(sfp, "Connection: close\r\n"); -+ - #if ENABLE_FEATURE_WGET_AUTHENTICATION - if (target.user) { - fprintf(sfp, "Proxy-Authorization: Basic %s\r\n"+6, -@@ -719,22 +751,25 @@ int wget_main(int argc UNUSED_PARAM, cha - - if (G.beg_range) - fprintf(sfp, "Range: bytes=%"OFF_FMT"u-\r\n", G.beg_range); -+ - #if ENABLE_FEATURE_WGET_LONG_OPTIONS - if (extra_headers) - fputs(extra_headers, sfp); - - if (opt & WGET_OPT_POST_DATA) { - char *estr = URL_escape(post_data); -- fprintf(sfp, "Content-Type: application/x-www-form-urlencoded\r\n"); -- fprintf(sfp, "Content-Length: %u\r\n" "\r\n" "%s", -- (int) strlen(estr), estr); -- /*fprintf(sfp, "Connection: Keep-Alive\r\n\r\n");*/ -- /*fprintf(sfp, "%s\r\n", estr);*/ -+ fprintf(sfp, -+ "Content-Type: application/x-www-form-urlencoded\r\n" -+ "Content-Length: %u\r\n" -+ "\r\n" -+ "%s", -+ (int) strlen(estr), estr -+ ); - free(estr); - } else - #endif -- { /* If "Connection:" is needed, document why */ -- fprintf(sfp, /* "Connection: close\r\n" */ "\r\n"); -+ { -+ fprintf(sfp, "\r\n"); - } - - fflush(sfp); diff --git a/sys-apps/busybox/files/busybox-1.18.4-fuser.patch b/sys-apps/busybox/files/busybox-1.18.4-fuser.patch deleted file mode 100644 index 838d9acca28b..000000000000 --- a/sys-apps/busybox/files/busybox-1.18.4-fuser.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- busybox-1.18.4/procps/fuser.c -+++ busybox-1.18.4-fuser/procps/fuser.c -@@ -271,7 +271,7 @@ Find processes which use FILEs or PORTs - if (sscanf(*pp, "%u/%4s", &port, tproto) != 2) - goto file; - sprintf(path, "/proc/net/%s", tproto); -- if (access(path, R_OK) != 0) { /* PORT/PROTO */ -+ if (access(path, R_OK) == 0) { /* PORT/PROTO */ - scan_proc_net(path, port); - } else { /* FILE */ - file: diff --git a/sys-apps/busybox/files/busybox-1.18.4-hush.patch b/sys-apps/busybox/files/busybox-1.18.4-hush.patch deleted file mode 100644 index 1e5a5cfcb4be..000000000000 --- a/sys-apps/busybox/files/busybox-1.18.4-hush.patch +++ /dev/null @@ -1,183 +0,0 @@ ---- busybox-1.18.4/shell/hush.c -+++ busybox-1.18.4-hush/shell/hush.c -@@ -427,6 +427,15 @@ enum { - /* Used for initialization: o_string foo = NULL_O_STRING; */ - #define NULL_O_STRING { NULL } - -+#ifndef debug_printf_parse -+static const char *const assignment_flag[] = { -+ "MAYBE_ASSIGNMENT", -+ "DEFINITELY_ASSIGNMENT", -+ "NOT_ASSIGNMENT", -+ "WORD_IS_KEYWORD", -+}; -+#endif -+ - /* I can almost use ordinary FILE*. Is open_memstream() universally - * available? Where is it documented? */ - typedef struct in_str { -@@ -2885,24 +2894,24 @@ static const struct reserved_combo* matc - */ - static const struct reserved_combo reserved_list[] = { - # if ENABLE_HUSH_IF -- { "!", RES_NONE, NOT_ASSIGNMENT , 0 }, -- { "if", RES_IF, WORD_IS_KEYWORD, FLAG_THEN | FLAG_START }, -- { "then", RES_THEN, WORD_IS_KEYWORD, FLAG_ELIF | FLAG_ELSE | FLAG_FI }, -- { "elif", RES_ELIF, WORD_IS_KEYWORD, FLAG_THEN }, -- { "else", RES_ELSE, WORD_IS_KEYWORD, FLAG_FI }, -- { "fi", RES_FI, NOT_ASSIGNMENT , FLAG_END }, -+ { "!", RES_NONE, NOT_ASSIGNMENT , 0 }, -+ { "if", RES_IF, MAYBE_ASSIGNMENT, FLAG_THEN | FLAG_START }, -+ { "then", RES_THEN, MAYBE_ASSIGNMENT, FLAG_ELIF | FLAG_ELSE | FLAG_FI }, -+ { "elif", RES_ELIF, MAYBE_ASSIGNMENT, FLAG_THEN }, -+ { "else", RES_ELSE, MAYBE_ASSIGNMENT, FLAG_FI }, -+ { "fi", RES_FI, NOT_ASSIGNMENT , FLAG_END }, - # endif - # if ENABLE_HUSH_LOOPS -- { "for", RES_FOR, NOT_ASSIGNMENT , FLAG_IN | FLAG_DO | FLAG_START }, -- { "while", RES_WHILE, WORD_IS_KEYWORD, FLAG_DO | FLAG_START }, -- { "until", RES_UNTIL, WORD_IS_KEYWORD, FLAG_DO | FLAG_START }, -- { "in", RES_IN, NOT_ASSIGNMENT , FLAG_DO }, -- { "do", RES_DO, WORD_IS_KEYWORD, FLAG_DONE }, -- { "done", RES_DONE, NOT_ASSIGNMENT , FLAG_END }, -+ { "for", RES_FOR, NOT_ASSIGNMENT , FLAG_IN | FLAG_DO | FLAG_START }, -+ { "while", RES_WHILE, MAYBE_ASSIGNMENT, FLAG_DO | FLAG_START }, -+ { "until", RES_UNTIL, MAYBE_ASSIGNMENT, FLAG_DO | FLAG_START }, -+ { "in", RES_IN, NOT_ASSIGNMENT , FLAG_DO }, -+ { "do", RES_DO, MAYBE_ASSIGNMENT, FLAG_DONE }, -+ { "done", RES_DONE, NOT_ASSIGNMENT , FLAG_END }, - # endif - # if ENABLE_HUSH_CASE -- { "case", RES_CASE, NOT_ASSIGNMENT , FLAG_MATCH | FLAG_START }, -- { "esac", RES_ESAC, NOT_ASSIGNMENT , FLAG_END }, -+ { "case", RES_CASE, NOT_ASSIGNMENT , FLAG_MATCH | FLAG_START }, -+ { "esac", RES_ESAC, NOT_ASSIGNMENT , FLAG_END }, - # endif - }; - const struct reserved_combo *r; -@@ -2968,6 +2977,7 @@ static int reserved_word(o_string *word, - ctx->ctx_res_w = r->res; - ctx->old_flag = r->flag; - word->o_assignment = r->assignment_flag; -+ debug_printf_parse("word->o_assignment='%s'\n", assignment_flag[word->o_assignment]); - - if (ctx->old_flag & FLAG_END) { - struct parse_context *old; -@@ -3034,18 +3044,6 @@ static int done_word(o_string *word, str - debug_printf_parse("word stored in rd_filename: '%s'\n", word->data); - ctx->pending_redirect = NULL; - } else { -- /* If this word wasn't an assignment, next ones definitely -- * can't be assignments. Even if they look like ones. */ -- if (word->o_assignment != DEFINITELY_ASSIGNMENT -- && word->o_assignment != WORD_IS_KEYWORD -- ) { -- word->o_assignment = NOT_ASSIGNMENT; -- } else { -- if (word->o_assignment == DEFINITELY_ASSIGNMENT) -- command->assignment_cnt++; -- word->o_assignment = MAYBE_ASSIGNMENT; -- } -- - #if HAS_KEYWORDS - # if ENABLE_HUSH_CASE - if (ctx->ctx_dsemicolon -@@ -3065,8 +3063,9 @@ static int done_word(o_string *word, str - && ctx->ctx_res_w != RES_CASE - # endif - ) { -- debug_printf_parse("checking '%s' for reserved-ness\n", word->data); -- if (reserved_word(word, ctx)) { -+ int reserved = reserved_word(word, ctx); -+ debug_printf_parse("checking for reserved-ness: %d\n", reserved); -+ if (reserved) { - o_reset_to_empty_unquoted(word); - debug_printf_parse("done_word return %d\n", - (ctx->ctx_res_w == RES_SNTX)); -@@ -3087,6 +3086,23 @@ static int done_word(o_string *word, str - "groups and arglists don't mix\n"); - return 1; - } -+ -+ /* If this word wasn't an assignment, next ones definitely -+ * can't be assignments. Even if they look like ones. */ -+ if (word->o_assignment != DEFINITELY_ASSIGNMENT -+ && word->o_assignment != WORD_IS_KEYWORD -+ ) { -+ word->o_assignment = NOT_ASSIGNMENT; -+ } else { -+ if (word->o_assignment == DEFINITELY_ASSIGNMENT) { -+ command->assignment_cnt++; -+ debug_printf_parse("++assignment_cnt=%d\n", command->assignment_cnt); -+ } -+ debug_printf_parse("word->o_assignment was:'%s'\n", assignment_flag[word->o_assignment]); -+ word->o_assignment = MAYBE_ASSIGNMENT; -+ } -+ debug_printf_parse("word->o_assignment='%s'\n", assignment_flag[word->o_assignment]); -+ - if (word->has_quoted_part - /* optimization: and if it's ("" or '') or ($v... or `cmd`...): */ - && (word->data[0] == '\0' || word->data[0] == SPECIAL_VAR_SYMBOL) -@@ -4105,6 +4121,7 @@ static struct pipe *parse_stream(char ** - && is_well_formed_var_name(dest.data, '=') - ) { - dest.o_assignment = DEFINITELY_ASSIGNMENT; -+ debug_printf_parse("dest.o_assignment='%s'\n", assignment_flag[dest.o_assignment]); - } - continue; - } -@@ -4154,6 +4171,7 @@ static struct pipe *parse_stream(char ** - heredoc_cnt = 0; - } - dest.o_assignment = MAYBE_ASSIGNMENT; -+ debug_printf_parse("dest.o_assignment='%s'\n", assignment_flag[dest.o_assignment]); - ch = ';'; - /* note: if (is_blank) continue; - * will still trigger for us */ -@@ -4203,6 +4221,7 @@ static struct pipe *parse_stream(char ** - } - done_pipe(&ctx, PIPE_SEQ); - dest.o_assignment = MAYBE_ASSIGNMENT; -+ debug_printf_parse("dest.o_assignment='%s'\n", assignment_flag[dest.o_assignment]); - /* Do we sit outside of any if's, loops or case's? */ - if (!HAS_KEYWORDS - IF_HAS_KEYWORDS(|| (ctx.ctx_res_w == RES_NONE && ctx.old_flag == 0)) -@@ -4309,6 +4328,7 @@ static struct pipe *parse_stream(char ** - /* ch is a special char and thus this word - * cannot be an assignment */ - dest.o_assignment = NOT_ASSIGNMENT; -+ debug_printf_parse("dest.o_assignment='%s'\n", assignment_flag[dest.o_assignment]); - } - - /* Note: nommu_addchr(&ctx.as_string, ch) is already done */ -@@ -4406,6 +4426,7 @@ static struct pipe *parse_stream(char ** - /* We just finished a cmd. New one may start - * with an assignment */ - dest.o_assignment = MAYBE_ASSIGNMENT; -+ debug_printf_parse("dest.o_assignment='%s'\n", assignment_flag[dest.o_assignment]); - break; - case '&': - if (done_word(&dest, &ctx)) { -@@ -7292,7 +7313,10 @@ static int run_list(struct pipe *pi) - #endif - #if ENABLE_HUSH_LOOPS - /* Beware of "while false; true; do ..."! */ -- if (pi->next && pi->next->res_word == RES_DO) { -+ if (pi->next -+ && (pi->next->res_word == RES_DO || pi->next->res_word == RES_DONE) -+ /* (the second check above is needed for "while ...; do \n done" case) */ -+ ) { - if (rword == RES_WHILE) { - if (rcode) { - /* "while false; do...done" - exitcode 0 */ ---- busybox-1.18.4/shell/hush_test/hush-misc/while3.right -+++ busybox-1.18.4-hush/shell/hush_test/hush-misc/while3.right -@@ -0,0 +1 @@ -+OK:0 ---- busybox-1.18.4/shell/hush_test/hush-misc/while3.tests -+++ busybox-1.18.4-hush/shell/hush_test/hush-misc/while3.tests -@@ -0,0 +1,4 @@ -+while false; do -+ # bash will require at least ":" here... -+done -+echo OK:$? diff --git a/sys-apps/busybox/files/busybox-1.19.0-cttyhack.patch b/sys-apps/busybox/files/busybox-1.19.0-cttyhack.patch deleted file mode 100644 index ef2781d78de7..000000000000 --- a/sys-apps/busybox/files/busybox-1.19.0-cttyhack.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- busybox-1.19.0/shell/cttyhack.c -+++ busybox-1.19.0-cttyhack/shell/cttyhack.c -@@ -122,10 +122,12 @@ int cttyhack_main(int argc UNUSED_PARAM, - do { - #ifdef __linux__ - int s = open_read_close("/sys/class/tty/console/active", -- console + 5, sizeof(console) - 5 - 1); -+ console + 5, sizeof(console) - 5); - if (s > 0) { -- /* found active console via sysfs (Linux 2.6.38+) */ -- console[5 + s] = '\0'; -+ /* found active console via sysfs (Linux 2.6.38+) -+ * sysfs string looks like "ttyS0\n" so zap the newline: -+ */ -+ console[4 + s] = '\0'; - break; - } - diff --git a/sys-apps/busybox/files/busybox-1.19.0-less.patch b/sys-apps/busybox/files/busybox-1.19.0-less.patch deleted file mode 100644 index a1d3374bcf9d..000000000000 --- a/sys-apps/busybox/files/busybox-1.19.0-less.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- busybox-1.19.0/miscutils/less.c -+++ busybox-1.19.0-less/miscutils/less.c -@@ -990,7 +990,8 @@ static int64_t less_getch(int pos) - */ - if (key >= 0 && key < ' ' && key != 0x0d && key != 8) - goto again; -- return key; -+ -+ return key64; - } - - static char* less_gets(int sz) diff --git a/sys-apps/busybox/files/busybox-1.19.0-sed.patch b/sys-apps/busybox/files/busybox-1.19.0-sed.patch deleted file mode 100644 index c71e9c26e28f..000000000000 --- a/sys-apps/busybox/files/busybox-1.19.0-sed.patch +++ /dev/null @@ -1,237 +0,0 @@ ---- busybox-1.19.0/editors/sed.c -+++ busybox-1.19.0-sed/editors/sed.c -@@ -75,6 +75,13 @@ - #include "libbb.h" - #include "xregex.h" - -+#if 0 -+# define dbg(...) bb_error_msg(__VA_ARGS__) -+#else -+# define dbg(...) ((void)0) -+#endif -+ -+ - enum { - OPT_in_place = 1 << 0, - }; -@@ -89,6 +96,7 @@ typedef struct sed_cmd_s { - regex_t *end_match; /* sed -e '/match/,/end_match/cmd' */ - regex_t *sub_match; /* For 's/sub_match/string/' */ - int beg_line; /* 'sed 1p' 0 == apply commands to all lines */ -+ int beg_line_orig; /* copy of the above, needed for -i */ - int end_line; /* 'sed 1,3p' 0 == one line only. -1 = last line ($) */ - - FILE *sw_file; /* File (sw) command writes to, -1 for none. */ -@@ -123,7 +131,7 @@ struct globals { - regex_t *previous_regex_ptr; - - /* linked list of sed commands */ -- sed_cmd_t sed_cmd_head, *sed_cmd_tail; -+ sed_cmd_t *sed_cmd_head, **sed_cmd_tail; - - /* Linked list of append lines */ - llist_t *append_head; -@@ -148,7 +156,7 @@ struct BUG_G_too_big { - #if ENABLE_FEATURE_CLEAN_UP - static void sed_free_and_close_stuff(void) - { -- sed_cmd_t *sed_cmd = G.sed_cmd_head.next; -+ sed_cmd_t *sed_cmd = G.sed_cmd_head; - - llist_free(G.append_head, free); - -@@ -599,6 +607,7 @@ static void add_cmd(const char *cmdstr) - - /* first part (if present) is an address: either a '$', a number or a /regex/ */ - cmdstr += get_address(cmdstr, &sed_cmd->beg_line, &sed_cmd->beg_match); -+ sed_cmd->beg_line_orig = sed_cmd->beg_line; - - /* second part (if present) will begin with a comma */ - if (*cmdstr == ',') { -@@ -630,8 +639,8 @@ static void add_cmd(const char *cmdstr) - cmdstr = parse_cmd_args(sed_cmd, cmdstr); - - /* Add the command to the command array */ -- G.sed_cmd_tail->next = sed_cmd; -- G.sed_cmd_tail = G.sed_cmd_tail->next; -+ *G.sed_cmd_tail = sed_cmd; -+ G.sed_cmd_tail = &sed_cmd->next; - } - - /* If we glued multiple lines together, free the memory. */ -@@ -777,7 +786,7 @@ static sed_cmd_t *branch_to(char *label) - { - sed_cmd_t *sed_cmd; - -- for (sed_cmd = G.sed_cmd_head.next; sed_cmd; sed_cmd = sed_cmd->next) { -+ for (sed_cmd = G.sed_cmd_head; sed_cmd; sed_cmd = sed_cmd->next) { - if (sed_cmd->cmd == ':' && sed_cmd->string && !strcmp(sed_cmd->string, label)) { - return sed_cmd; - } -@@ -953,24 +962,24 @@ static void process_files(void) - - /* For every line, go through all the commands */ - restart: -- for (sed_cmd = G.sed_cmd_head.next; sed_cmd; sed_cmd = sed_cmd->next) { -+ for (sed_cmd = G.sed_cmd_head; sed_cmd; sed_cmd = sed_cmd->next) { - int old_matched, matched; - - old_matched = sed_cmd->in_match; - - /* Determine if this command matches this line: */ - -- //bb_error_msg("match1:%d", sed_cmd->in_match); -- //bb_error_msg("match2:%d", (!sed_cmd->beg_line && !sed_cmd->end_line -- // && !sed_cmd->beg_match && !sed_cmd->end_match)); -- //bb_error_msg("match3:%d", (sed_cmd->beg_line > 0 -- // && (sed_cmd->end_line || sed_cmd->end_match -- // ? (sed_cmd->beg_line <= linenum) -- // : (sed_cmd->beg_line == linenum) -- // ) -- // ) -- //bb_error_msg("match4:%d", (beg_match(sed_cmd, pattern_space))); -- //bb_error_msg("match5:%d", (sed_cmd->beg_line == -1 && next_line == NULL)); -+ dbg("match1:%d", sed_cmd->in_match); -+ dbg("match2:%d", (!sed_cmd->beg_line && !sed_cmd->end_line -+ && !sed_cmd->beg_match && !sed_cmd->end_match)); -+ dbg("match3:%d", (sed_cmd->beg_line > 0 -+ && (sed_cmd->end_line || sed_cmd->end_match -+ ? (sed_cmd->beg_line <= linenum) -+ : (sed_cmd->beg_line == linenum) -+ ) -+ )); -+ dbg("match4:%d", (beg_match(sed_cmd, pattern_space))); -+ dbg("match5:%d", (sed_cmd->beg_line == -1 && next_line == NULL)); - - /* Are we continuing a previous multi-line match? */ - sed_cmd->in_match = sed_cmd->in_match -@@ -981,7 +990,14 @@ static void process_files(void) - || (sed_cmd->beg_line > 0 - && (sed_cmd->end_line || sed_cmd->end_match - /* note: even if end is numeric and is < linenum too, -- * GNU sed matches! We match too */ -+ * GNU sed matches! We match too, therefore we don't -+ * check here that linenum <= end. -+ * Example: -+ * printf '1\n2\n3\n4\n' | sed -n '1{N;N;d};1p;2,3p;3p;4p' -+ * first three input lines are deleted; -+ * 4th line is matched and printed -+ * by "2,3" (!) and by "4" ranges -+ */ - ? (sed_cmd->beg_line <= linenum) /* N,end */ - : (sed_cmd->beg_line == linenum) /* N */ - ) -@@ -994,16 +1010,14 @@ static void process_files(void) - /* Snapshot the value */ - matched = sed_cmd->in_match; - -- //bb_error_msg("cmd:'%c' matched:%d beg_line:%d end_line:%d linenum:%d", -- //sed_cmd->cmd, matched, sed_cmd->beg_line, sed_cmd->end_line, linenum); -+ dbg("cmd:'%c' matched:%d beg_line:%d end_line:%d linenum:%d", -+ sed_cmd->cmd, matched, sed_cmd->beg_line, sed_cmd->end_line, linenum); - - /* Is this line the end of the current match? */ - - if (matched) { - /* once matched, "n,xxx" range is dead, disabling it */ -- if (sed_cmd->beg_line > 0 -- && !(option_mask32 & OPT_in_place) /* but not for -i */ -- ) { -+ if (sed_cmd->beg_line > 0) { - sed_cmd->beg_line = -2; - } - sed_cmd->in_match = !( -@@ -1017,7 +1031,8 @@ static void process_files(void) - /* or does this line matches our last address regex */ - || (sed_cmd->end_match && old_matched - && (regexec(sed_cmd->end_match, -- pattern_space, 0, NULL, 0) == 0)) -+ pattern_space, 0, NULL, 0) == 0) -+ ) - ); - } - -@@ -1407,11 +1422,12 @@ int sed_main(int argc UNUSED_PARAM, char - add_input_file(stdin); - } else { - int i; -- FILE *file; - - for (i = 0; argv[i]; i++) { - struct stat statbuf; - int nonstdoutfd; -+ FILE *file; -+ sed_cmd_t *sed_cmd; - - if (LONE_DASH(argv[i]) && !(opt & OPT_in_place)) { - add_input_file(stdin); -@@ -1423,11 +1439,13 @@ int sed_main(int argc UNUSED_PARAM, char - status = EXIT_FAILURE; - continue; - } -+ add_input_file(file); - if (!(opt & OPT_in_place)) { -- add_input_file(file); - continue; - } - -+ /* -i: process each FILE separately: */ -+ - G.outname = xasprintf("%sXXXXXX", argv[i]); - nonstdoutfd = xmkstemp(G.outname); - G.nonstdout = xfdopen_for_write(nonstdoutfd); -@@ -1438,15 +1456,20 @@ int sed_main(int argc UNUSED_PARAM, char - * but GNU sed 4.2.1 does not preserve them either */ - fchmod(nonstdoutfd, statbuf.st_mode); - fchown(nonstdoutfd, statbuf.st_uid, statbuf.st_gid); -- add_input_file(file); -+ - process_files(); - fclose(G.nonstdout); -- - G.nonstdout = stdout; -+ - /* unlink(argv[i]); */ - xrename(G.outname, argv[i]); - free(G.outname); - G.outname = NULL; -+ -+ /* Re-enable disabled range matches */ -+ for (sed_cmd = G.sed_cmd_head; sed_cmd; sed_cmd = sed_cmd->next) { -+ sed_cmd->beg_line = sed_cmd->beg_line_orig; -+ } - } - /* Here, to handle "sed 'cmds' nonexistent_file" case we did: - * if (G.current_input_file >= G.input_file_count) ---- busybox-1.19.0/testsuite/sed.tests -+++ busybox-1.19.0-sed/testsuite/sed.tests -@@ -6,7 +6,7 @@ - - . ./testing.sh - --# testing "description" "arguments" "result" "infile" "stdin" -+# testing "description" "commands" "result" "infile" "stdin" - - # Corner cases - testing "sed no files (stdin)" 'sed ""' "hello\n" "" "hello\n" -@@ -225,7 +225,7 @@ testing "sed s/xxx/[/" "sed -e 's/xxx/[/ - #testing "sed -g (exhaustive)" "sed -e 's/[[:space:]]*/,/g'" ",1,2,3,4,5," \ - # "" "12345" - --# testing "description" "arguments" "result" "infile" "stdin" -+# testing "description" "commands" "result" "infile" "stdin" - - testing "sed n command must reset 'substituted' bit" \ - "sed 's/1/x/;T;n;: next;s/3/y/;t quit;n;b next;: quit;q'" \ -@@ -291,6 +291,10 @@ testing "sed understands \r" \ - "sed 's/r/\r/'" \ - "\rrr\n" "" "rrr\n" - --# testing "description" "arguments" "result" "infile" "stdin" -+testing "sed -i finishes ranges correctly" \ -+ "sed '1,2d' -i input; echo \$?; cat input" \ -+ "0\n3\n4\n" "1\n2\n3\n4\n" "" -+ -+# testing "description" "commands" "result" "infile" "stdin" - - exit $FAILCOUNT diff --git a/sys-apps/busybox/files/busybox-1.19.0-swap.patch b/sys-apps/busybox/files/busybox-1.19.0-swap.patch deleted file mode 100644 index c7839457b9cc..000000000000 --- a/sys-apps/busybox/files/busybox-1.19.0-swap.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- busybox-1.19.0/util-linux/swaponoff.c -+++ busybox-1.19.0-swap/util-linux/swaponoff.c -@@ -114,7 +114,8 @@ int swap_on_off_main(int argc UNUSED_PAR - #if !ENABLE_FEATURE_SWAPON_PRI - ret = getopt32(argv, "a"); - #else -- opt_complementary = "p+"; -+ if (applet_name[5] == 'n') -+ opt_complementary = "p+"; - ret = getopt32(argv, (applet_name[5] == 'n') ? "ap:" : "a", &g_flags); - - if (ret & 2) { // -p diff --git a/sys-apps/busybox/files/busybox-1.19.0-uncompress.patch b/sys-apps/busybox/files/busybox-1.19.0-uncompress.patch deleted file mode 100644 index 303373908bd4..000000000000 --- a/sys-apps/busybox/files/busybox-1.19.0-uncompress.patch +++ /dev/null @@ -1,50 +0,0 @@ ---- busybox-1.19.0/archival/libarchive/decompress_uncompress.c -+++ busybox-1.19.0-uncompress/archival/libarchive/decompress_uncompress.c -@@ -163,7 +163,8 @@ unpack_Z_stream(int fd_in, int fd_out) - - if (insize < (int) (IBUFSIZ + 64) - IBUFSIZ) { - rsize = safe_read(fd_in, inbuf + insize, IBUFSIZ); --//error check?? -+ if (rsize < 0) -+ bb_error_msg(bb_msg_read_error); - insize += rsize; - } - -@@ -195,6 +196,8 @@ unpack_Z_stream(int fd_in, int fd_out) - - - if (oldcode == -1) { -+ if (code >= 256) -+ bb_error_msg_and_die("corrupted data"); /* %ld", code); */ - oldcode = code; - finchar = (int) oldcode; - outbuf[outpos++] = (unsigned char) finchar; -@@ -239,6 +242,8 @@ unpack_Z_stream(int fd_in, int fd_out) - - /* Generate output characters in reverse order */ - while ((long) code >= (long) 256) { -+ if (stackp <= &htabof(0)) -+ bb_error_msg_and_die("corrupted data"); - *--stackp = tab_suffixof(code); - code = tab_prefixof(code); - } -@@ -263,8 +268,7 @@ unpack_Z_stream(int fd_in, int fd_out) - } - - if (outpos >= OBUFSIZ) { -- full_write(fd_out, outbuf, outpos); --//error check?? -+ xwrite(fd_out, outbuf, outpos); - IF_DESKTOP(total_written += outpos;) - outpos = 0; - } -@@ -292,8 +296,7 @@ unpack_Z_stream(int fd_in, int fd_out) - } while (rsize > 0); - - if (outpos > 0) { -- full_write(fd_out, outbuf, outpos); --//error check?? -+ xwrite(fd_out, outbuf, outpos); - IF_DESKTOP(total_written += outpos;) - } - diff --git a/sys-apps/busybox/files/busybox-1.19.2-android.patch b/sys-apps/busybox/files/busybox-1.19.2-android.patch deleted file mode 100644 index e2e6528a2fce..000000000000 --- a/sys-apps/busybox/files/busybox-1.19.2-android.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- busybox-1.19.2/include/platform.h -+++ busybox-1.19.2-android/include/platform.h -@@ -433,7 +433,7 @@ typedef unsigned smalluint; - # undef HAVE_STPCPY - #endif - --#if defined(ANDROID) -+#if defined(ANDROID) || defined(__ANDROID__) - # undef HAVE_DPRINTF - # undef HAVE_GETLINE - # undef HAVE_STPCPY diff --git a/sys-apps/busybox/files/busybox-1.19.2-buildsys.patch b/sys-apps/busybox/files/busybox-1.19.2-buildsys.patch deleted file mode 100644 index 8e0c4c33eefa..000000000000 --- a/sys-apps/busybox/files/busybox-1.19.2-buildsys.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- busybox-1.19.2/applets/applet_tables.c -+++ busybox-1.19.2-buildsys/applets/applet_tables.c -@@ -80,8 +80,15 @@ int main(int argc, char **argv) - - printf("#define NUM_APPLETS %u\n", NUM_APPLETS); - if (NUM_APPLETS == 1) { -+ char *dash_to_underscore, *p; - printf("#define SINGLE_APPLET_STR \"%s\"\n", applets[0].name); -- printf("#define SINGLE_APPLET_MAIN %s_main\n", applets[0].name); -+ /* Example: "ether-wake" -> "ether_wake" */ -+ p = dash_to_underscore = strdup(applets[0].name); -+ p--; -+ while (*++p) -+ if (*p == '-') -+ *p = '_'; -+ printf("#define SINGLE_APPLET_MAIN %s_main\n", dash_to_underscore); - } - printf("\n"); - diff --git a/sys-apps/busybox/files/busybox-1.19.2-chpasswd.patch b/sys-apps/busybox/files/busybox-1.19.2-chpasswd.patch deleted file mode 100644 index 0cba0e219a5c..000000000000 --- a/sys-apps/busybox/files/busybox-1.19.2-chpasswd.patch +++ /dev/null @@ -1,55 +0,0 @@ ---- busybox-1.19.2/loginutils/chpasswd.c -+++ busybox-1.19.2-chpasswd/loginutils/chpasswd.c -@@ -33,9 +33,8 @@ static const char chpasswd_longopts[] AL - int chpasswd_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; - int chpasswd_main(int argc UNUSED_PARAM, char **argv) - { -- char *name, *pass; -- char salt[sizeof("$N$XXXXXXXX")]; -- int opt, rc; -+ char *name; -+ int opt; - - if (getuid() != 0) - bb_error_msg_and_die(bb_msg_perm_denied_are_you_root); -@@ -45,6 +44,10 @@ int chpasswd_main(int argc UNUSED_PARAM, - opt = getopt32(argv, "em"); - - while ((name = xmalloc_fgetline(stdin)) != NULL) { -+ char *free_me; -+ char *pass; -+ int rc; -+ - pass = strchr(name, ':'); - if (!pass) - bb_error_msg_and_die("missing new password"); -@@ -52,7 +55,10 @@ int chpasswd_main(int argc UNUSED_PARAM, - - xuname2uid(name); /* dies if there is no such user */ - -+ free_me = NULL; - if (!(opt & OPT_ENC)) { -+ char salt[sizeof("$N$XXXXXXXX")]; -+ - crypt_make_salt(salt, 1); - if (opt & OPT_MD5) { - salt[0] = '$'; -@@ -60,7 +66,7 @@ int chpasswd_main(int argc UNUSED_PARAM, - salt[2] = '$'; - crypt_make_salt(salt + 3, 4); - } -- pass = pw_encrypt(pass, salt, 0); -+ free_me = pass = pw_encrypt(pass, salt, 0); - } - - /* This is rather complex: if user is not found in /etc/shadow, -@@ -81,8 +87,7 @@ int chpasswd_main(int argc UNUSED_PARAM, - bb_info_msg("Password for '%s' changed", name); - logmode = LOGMODE_STDIO; - free(name); -- if (!(opt & OPT_ENC)) -- free(pass); -+ free(free_me); - } - return EXIT_SUCCESS; - } diff --git a/sys-apps/busybox/files/busybox-1.19.2-crond.patch b/sys-apps/busybox/files/busybox-1.19.2-crond.patch deleted file mode 100644 index 043a846ca4a5..000000000000 --- a/sys-apps/busybox/files/busybox-1.19.2-crond.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- busybox-1.19.2/miscutils/crond.c -+++ busybox-1.19.2-crond/miscutils/crond.c -@@ -861,7 +861,8 @@ int crond_main(int argc UNUSED_PARAM, ch - - /* "-b after -f is ignored", and so on for every pair a-b */ - opt_complementary = "f-b:b-f:S-L:L-S" IF_FEATURE_CROND_D(":d-l") -- ":l+:d+"; /* -l and -d have numeric param */ -+ /* -l and -d have numeric param */ -+ ":l+" IF_FEATURE_CROND_D(":d+"); - opts = getopt32(argv, "l:L:fbSc:" IF_FEATURE_CROND_D("d:"), - &G.log_level, &G.log_filename, &G.crontab_dir_name - IF_FEATURE_CROND_D(,&G.log_level)); diff --git a/sys-apps/busybox/files/busybox-1.19.2-inetd.patch b/sys-apps/busybox/files/busybox-1.19.2-inetd.patch deleted file mode 100644 index e1395a6b3bd0..000000000000 --- a/sys-apps/busybox/files/busybox-1.19.2-inetd.patch +++ /dev/null @@ -1,47 +0,0 @@ ---- busybox-1.19.2/networking/inetd.c -+++ busybox-1.19.2-inetd/networking/inetd.c -@@ -1278,6 +1278,7 @@ int inetd_main(int argc UNUSED_PARAM, ch - sep->se_count = 0; - rearm_alarm(); /* will revive it in RETRYTIME sec */ - restore_sigmask(&omask); -+ maybe_close(new_udp_fd); - maybe_close(accepted_fd); - continue; /* -> check next fd in fd set */ - } -@@ -1298,17 +1299,18 @@ int inetd_main(int argc UNUSED_PARAM, ch - bb_perror_msg("vfork"+1); - sleep(1); - restore_sigmask(&omask); -+ maybe_close(new_udp_fd); - maybe_close(accepted_fd); - continue; /* -> check next fd in fd set */ - } - if (pid == 0) - pid--; /* -1: "we did fork and we are child" */ - } -- /* if pid == 0 here, we never forked */ -+ /* if pid == 0 here, we didn't fork */ - - if (pid > 0) { /* parent */ - if (sep->se_wait) { -- /* tcp wait: we passed listening socket to child, -+ /* wait: we passed socket to child, - * will wait for child to terminate */ - sep->se_wait = pid; - remove_fd_from_set(sep->se_fd); -@@ -1345,9 +1347,13 @@ int inetd_main(int argc UNUSED_PARAM, ch - setsid(); - /* "nowait" udp */ - if (new_udp_fd >= 0) { -- len_and_sockaddr *lsa = xzalloc_lsa(sep->se_family); -+ len_and_sockaddr *lsa; -+ int r; -+ -+ close(new_udp_fd); -+ lsa = xzalloc_lsa(sep->se_family); - /* peek at the packet and remember peer addr */ -- int r = recvfrom(ctrl, NULL, 0, MSG_PEEK|MSG_DONTWAIT, -+ r = recvfrom(ctrl, NULL, 0, MSG_PEEK|MSG_DONTWAIT, - &lsa->u.sa, &lsa->len); - if (r < 0) - goto do_exit1; diff --git a/sys-apps/busybox/files/busybox-1.19.2-syslogd.patch b/sys-apps/busybox/files/busybox-1.19.2-syslogd.patch deleted file mode 100644 index d54f5d4307b4..000000000000 --- a/sys-apps/busybox/files/busybox-1.19.2-syslogd.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- busybox-1.19.2/sysklogd/syslogd.c -+++ busybox-1.19.2-syslogd/sysklogd/syslogd.c -@@ -278,7 +278,7 @@ static void parse_syslogdcfg(const char - parser_t *parser; - - parser = config_open2(file ? file : "/etc/syslog.conf", -- file ? xfopen_for_read : fopen_or_warn_stdin); -+ file ? xfopen_for_read : fopen_for_read); - if (!parser) - /* didn't find default /etc/syslog.conf */ - /* proceed as if we built busybox without config support */ -@@ -678,7 +678,7 @@ static void timestamp_and_log(int pri, c - if (LOG_PRI(pri) < G.logLevel) { - #if ENABLE_FEATURE_IPC_SYSLOG - if ((option_mask32 & OPT_circularlog) && G.shbuf) { -- log_to_shmem(msg); -+ log_to_shmem(G.printbuf); - return; - } - #endif diff --git a/sys-apps/busybox/files/busybox-1.19.2-tail.patch b/sys-apps/busybox/files/busybox-1.19.2-tail.patch deleted file mode 100644 index f3cc79814e58..000000000000 --- a/sys-apps/busybox/files/busybox-1.19.2-tail.patch +++ /dev/null @@ -1,43 +0,0 @@ ---- busybox-1.19.2/coreutils/tail.c -+++ busybox-1.19.2-tail/coreutils/tail.c -@@ -203,7 +203,7 @@ int tail_main(int argc, char **argv) - int fd = fds[i]; - - if (ENABLE_FEATURE_FANCY_TAIL && fd < 0) -- continue; /* may happen with -E */ -+ continue; /* may happen with -F */ - - if (nfiles > header_threshhold) { - tail_xprint_header(fmt, argv[i]); -@@ -252,14 +252,14 @@ int tail_main(int argc, char **argv) - * Used only by +N code ("start from Nth", 1-based): */ - seen = 1; - newlines_seen = 0; -- while ((nread = tail_read(fd, buf, tailbufsize-taillen)) > 0) { -+ while ((nread = tail_read(fd, buf, tailbufsize - taillen)) > 0) { - if (G.from_top) { - int nwrite = nread; - if (seen < count) { - /* We need to skip a few more bytes/lines */ - if (COUNT_BYTES) { - nwrite -= (count - seen); -- seen = count; -+ seen += nread; - } else { - char *s = buf; - do { ---- busybox-1.19.2/testsuite/tail.tests -+++ busybox-1.19.2-tail/testsuite/tail.tests -@@ -14,4 +14,12 @@ testing "tail: +N with N > file length" - "0\n" \ - "" "qw" - -+testing "tail: -c +N with largish N" \ -+ " -+ dd if=/dev/zero bs=16k count=1 2>/dev/null | tail -c +8200 | wc -c; -+ dd if=/dev/zero bs=16k count=1 2>/dev/null | tail -c +8208 | wc -c; -+ " \ -+ "8185\n8177\n" \ -+ "" "" -+ - exit $FAILCOUNT diff --git a/sys-apps/busybox/files/busybox-1.19.2-tftp.patch b/sys-apps/busybox/files/busybox-1.19.2-tftp.patch deleted file mode 100644 index 15dc9e1d132b..000000000000 --- a/sys-apps/busybox/files/busybox-1.19.2-tftp.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- busybox-1.19.2/networking/tftp.c -+++ busybox-1.19.2-tftp/networking/tftp.c -@@ -813,7 +813,8 @@ int tftpd_main(int argc UNUSED_PARAM, ch - goto err; - } - mode = local_file + strlen(local_file) + 1; -- if (mode >= block_buf + result || strcmp(mode, "octet") != 0) { -+ /* RFC 1350 says mode string is case independent */ -+ if (mode >= block_buf + result || strcasecmp(mode, "octet") != 0) { - goto err; - } - # if ENABLE_FEATURE_TFTP_BLOCKSIZE |