diff options
author | 2006-07-02 07:17:56 +0000 | |
---|---|---|
committer | 2006-07-02 07:17:56 +0000 | |
commit | bed6bea5cce3ad96a96c9872f49eb0fcf31eeb96 (patch) | |
tree | 5a021fe818ec4dabb8349a520ce5a55a1cdd1aac /sys-apps | |
parent | arm/hppa/ia64/s390/sh stable (diff) | |
download | gentoo-2-bed6bea5cce3ad96a96c9872f49eb0fcf31eeb96.tar.gz gentoo-2-bed6bea5cce3ad96a96c9872f49eb0fcf31eeb96.tar.bz2 gentoo-2-bed6bea5cce3ad96a96c9872f49eb0fcf31eeb96.zip |
Version bump.
(Portage version: 2.1.1_pre2-r1)
Diffstat (limited to 'sys-apps')
-rw-r--r-- | sys-apps/busybox/ChangeLog | 8 | ||||
-rw-r--r-- | sys-apps/busybox/busybox-1.2.0.ebuild | 232 | ||||
-rw-r--r-- | sys-apps/busybox/files/1.2.0/bb.patch | 10 | ||||
-rw-r--r-- | sys-apps/busybox/files/digest-busybox-1.2.0 | 3 |
4 files changed, 252 insertions, 1 deletions
diff --git a/sys-apps/busybox/ChangeLog b/sys-apps/busybox/ChangeLog index 6a0f0c8782b2..9392e7e1b7e6 100644 --- a/sys-apps/busybox/ChangeLog +++ b/sys-apps/busybox/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for sys-apps/busybox # Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/busybox/ChangeLog,v 1.92 2006/06/28 06:52:04 corsair Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-apps/busybox/ChangeLog,v 1.93 2006/07/02 07:17:56 vapier Exp $ + +*busybox-1.2.0 (02 Jul 2006) + + 02 Jul 2006; Mike Frysinger <vapier@gentoo.org> +files/1.2.0/bb.patch, + +busybox-1.2.0.ebuild: + Version bump. 28 Jun 2006; Markus Rothe <corsair@gentoo.org> busybox-1.1.1.ebuild, busybox-1.1.2.ebuild, busybox-1.1.3.ebuild: diff --git a/sys-apps/busybox/busybox-1.2.0.ebuild b/sys-apps/busybox/busybox-1.2.0.ebuild new file mode 100644 index 000000000000..241050b441db --- /dev/null +++ b/sys-apps/busybox/busybox-1.2.0.ebuild @@ -0,0 +1,232 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/busybox/busybox-1.2.0.ebuild,v 1.1 2006/07/02 07:17:56 vapier Exp $ + +inherit eutils + +#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 static savedconfig netboot floppyboot make-symlinks" +RESTRICT="test" + +DEPEND="" + +S=${WORKDIR}/${MY_P} + +# <pebenito> then eventually turning on selinux would mean +# adding a dep: selinux? ( sys-libs/libselinux ) + +busybox_set_env() { + type -p ${CHOST}-ar > /dev/null && export CROSS=${CHOST}- + # Don't let KBUILD_OUTPUT mess us up #88088 + unset KBUILD_OUTPUT +} + +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;; + Y) echo "CONFIG_$2=y" >> .config;; + N) echo "CONFIG_$2=n" >> .config;; + *) use $1 \ + && busybox_config_option y $2 \ + || busybox_config_option n $2 + return 0 + ;; + esac + einfo $(grep "CONFIG_$2[= ]" .config) +} + +src_unpack() { + busybox_set_env + unpack ${A} + cd "${S}" + + # patches go here! + epatch "${FILESDIR}"/1.2.0/bb.patch + + # check for a busybox config before making one of our own. + # if one exist lets return and use it. + # fine grained config control for user defined busybox configs. + # [package]-[version]-[revision].config + # [package]-[version].config + # [package].config + + if use savedconfig ; then + [[ -r .config ]] && rm .config + for conf in ${PN}-${PV}-${PR} ${PN}-${PV} ${PN}; do + configfile=${ROOT}/etc/${PN}/${CHOST}/${conf}.config + [[ -r ${configfile} ]] || configfile=/etc/${PN}/${CHOST}/${conf}.config + if [[ -r ${configfile} ]] ; then + cp ${configfile} ${S}/.config + break + fi + done + if [[ -r ${S}/.config ]] ; then + einfo "Found your ${configfile} and using it." + yes "" | make oldconfig > /dev/null + return 0 + fi + fi + if use netboot ; then + cp "${FILESDIR}"/config-netboot .config + sed -i \ + -e '/DEFAULT_SCRIPT/s:/share/udhcpc/default.script:/lib/udhcpc.script:' \ + networking/udhcp/libbb_udhcp.h \ + || die "fixing netboot/udhcpc" + elif use floppyboot ; then + cp "${FILESDIR}"/config-floppyboot .config + fi + + # setup the config file + make allyesconfig > /dev/null + busybox_config_option n DMALLOC + busybox_config_option n FEATURE_SUID_CONFIG + busybox_config_option n BUILD_AT_ONCE + busybox_config_option n BUILD_LIBBUSYBOX + + # If these are not set and we are using a uclibc/busybox setup + # all calls to system() will fail. + busybox_config_option y FEATURE_SH_IS_ASH + busybox_config_option n FEATURE_SH_IS_NONE + + busybox_config_option static STATIC + busybox_config_option debug DEBUG + use debug \ + && busybox_config_option Y NO_DEBUG_LIB \ + && busybox_config_option N DMALLOC \ + && busybox_config_option N EFENCE + + busybox_config_option selinux SELINUX + + # default a bunch of uncommon options to off + for opt in LOCALE_SUPPORT TFTP FTP{GET,PUT} IPCALC TFTP HUSH \ + LASH MSH INETD DPKG RPM2CPIO RPM FOLD LOGNAME OD CRONTAB \ + UUDECODE UUENCODE SULOGIN DC + do + busybox_config_option n ${opt} + done + + make oldconfig > /dev/null +} + +src_compile() { + busybox_set_env + use ppc64 && CFLAGS="${CFLAGS} -mminimal-toc" + emake CROSS="${CROSS}" busybox || die "build failed" + if ! use static ; then + mv busybox_unstripped{,.bak} + local failed=0 + LDFLAGS="${LDFLAGS} -static" \ + emake \ + CROSS="${CROSS}" \ + busybox || failed=1 + if [[ ${failed} == 1 ]] ; then + if has_version '<sys-libs/glibc-2.3.5' ; then + eerror "Your glibc has broken static support, ignorning static build failure." + eerror "See http://bugs.gentoo.org/94879" + cp busybox_unstripped bb + else + die "static build failed" + fi + else + mv busybox_unstripped bb + fi + mv busybox_unstripped{.bak,} + fi +} + +src_install() { + busybox_set_env + + into / + newbin busybox_unstripped busybox || die + use static \ + && dosym busybox /bin/bb \ + || dobin bb + + if use make-symlinks ; then + if [[ ! ${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 + make CROSS="${CROSS}" install || die + cp -pPR _install/${x}/* "${D}"/ || die "copying links for ${x} failed" + cd "${D}" + # XXX: should really move this to pkg_preinst() ... + local symlink + for symlink in {,usr/}{bin,sbin}/* linuxrc ; do + [[ -L ${symlink} ]] || continue + [[ -e ${ROOT}/${symlink} ]] \ + && eerror "Deleting symlink ${symlink} because it exists in ${ROOT}" \ + && rm ${symlink} + done + cd "${S}" + fi + + dodoc AUTHORS README TODO + + cd docs || die + docinto txt + dodoc *.txt + docinto pod + dodoc *.pod + dohtml *.html *.sgml + + # no man files? + # cd ../man && doman *.1 + + cd ../examples || die + docinto examples + dodoc inittab depmod.pl *.conf *.script undeb unrpm + + cd bootfloppy || die + docinto bootfloppy + dodoc * etc/* etc/init.d/* 2>/dev/null + + cd ../../ || die + if has buildpkg ${FEATURES} && has keepwork ${FEATURES} ; then + cd "${S}" + # this should install to the ./_install/ dir by default. + # we make a micro pkg of busybox that can be used for + # embedded systems -solar + if ! use make-symlinks ; then + make CROSS="${CROSS}" install || die + fi + cd ./_install/ \ + && tar --no-same-owner -jcvf ${WORKDIR}/${MY_P}-${ARCH}.bz2 . \ + && cd .. + fi + + if use savedconfig ; then + einfo "Saving this build config to /etc/${PN}/${CHOST}/${PN}-${PV}-${PR}.config" + einfo "Read this ebuild for more info on how to take advantage of this option" + insinto /etc/${PN}/${CHOST}/ + newins "${S}"/.config ${PN}-${PV}-${PR}.config + fi +} + +pkg_postinst() { + echo + einfo "This ebuild has support for user defined configs" + einfo "Please read this ebuild for more details and re-emerge as needed" + einfo "if you want to add or remove functionality for ${PN}" + echo +} diff --git a/sys-apps/busybox/files/1.2.0/bb.patch b/sys-apps/busybox/files/1.2.0/bb.patch new file mode 100644 index 000000000000..255d5aa9c79d --- /dev/null +++ b/sys-apps/busybox/files/1.2.0/bb.patch @@ -0,0 +1,10 @@ +--- busybox-1.2.0/include/applets.h ++++ busybox-1.2.0/include/applets.h +@@ -56,6 +56,7 @@ + USE_ASH(APPLET_NOUSAGE(ash, ash, _BB_DIR_BIN, _BB_SUID_NEVER)) + USE_AWK(APPLET(awk, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) + USE_BASENAME(APPLET(basename, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) ++USE_ASH(APPLET_NOUSAGE(bb, ash, _BB_DIR_BIN, _BB_SUID_NEVER)) + USE_BBCONFIG(APPLET(bbconfig, _BB_DIR_BIN, _BB_SUID_NEVER)) + USE_BUNZIP2(APPLET(bunzip2, _BB_DIR_USR_BIN, _BB_SUID_NEVER)) + /* Always enabled. */ diff --git a/sys-apps/busybox/files/digest-busybox-1.2.0 b/sys-apps/busybox/files/digest-busybox-1.2.0 new file mode 100644 index 000000000000..47d0ab668c8c --- /dev/null +++ b/sys-apps/busybox/files/digest-busybox-1.2.0 @@ -0,0 +1,3 @@ +MD5 0a3e5d47adc4debda22726295f40a6f2 busybox-1.2.0.tar.bz2 1399041 +RMD160 c9cc9cf3ad3f947519489c8492a845228a736438 busybox-1.2.0.tar.bz2 1399041 +SHA256 e066e6f526fd1a4473f4431a05848181d12056bd1c12456954a68f9b15a57624 busybox-1.2.0.tar.bz2 1399041 |