polynomial-c    14/10/03 09:56:11

  Modified:             ChangeLog
  Added:                bash-4.2_p52.ebuild bash-3.1_p22.ebuild
                        bash-4.1_p16.ebuild bash-4.0_p43.ebuild
                        bash-3.2_p56.ebuild bash-4.3_p29.ebuild
  Removed:              bash-4.3_p28.ebuild
  Log:
  Security bump (bug #524256). Should fix CVE-2014-6277
  
  (Portage version: 2.2.14_rc1/cvs/Linux x86_64, signed Manifest commit with 
key 0x981CA6FC)

Revision  Changes    Path
1.411                app-shells/bash/ChangeLog

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-shells/bash/ChangeLog?rev=1.411&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-shells/bash/ChangeLog?rev=1.411&content-type=text/plain
diff : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-shells/bash/ChangeLog?r1=1.410&r2=1.411

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/app-shells/bash/ChangeLog,v
retrieving revision 1.410
retrieving revision 1.411
diff -u -r1.410 -r1.411
--- ChangeLog   3 Oct 2014 09:13:56 -0000       1.410
+++ ChangeLog   3 Oct 2014 09:56:11 -0000       1.411
@@ -1,6 +1,18 @@
 # ChangeLog for app-shells/bash
 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/ChangeLog,v 1.410 
2014/10/03 09:13:56 polynomial-c Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/ChangeLog,v 1.411 
2014/10/03 09:56:11 polynomial-c Exp $
+
+*bash-4.3_p29 (03 Oct 2014)
+*bash-4.2_p52 (03 Oct 2014)
+*bash-4.1_p16 (03 Oct 2014)
+*bash-4.0_p43 (03 Oct 2014)
+*bash-3.2_p56 (03 Oct 2014)
+*bash-3.1_p22 (03 Oct 2014)
+
+  03 Oct 2014; Lars Wendler <polynomia...@gentoo.org> +bash-3.1_p22.ebuild,
+  +bash-3.2_p56.ebuild, +bash-4.0_p43.ebuild, +bash-4.1_p16.ebuild,
+  +bash-4.2_p52.ebuild, -bash-4.3_p28.ebuild, +bash-4.3_p29.ebuild:
+  Security bump (bug #524256). Should fix CVE-2014-6277.
 
   03 Oct 2014; Lars Wendler <polynomia...@gentoo.org> -bash-3.1_p20.ebuild,
   -bash-3.2_p54.ebuild, -bash-4.0_p41.ebuild, -bash-4.1_p14.ebuild,



1.1                  app-shells/bash/bash-4.2_p52.ebuild

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-shells/bash/bash-4.2_p52.ebuild?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-shells/bash/bash-4.2_p52.ebuild?rev=1.1&content-type=text/plain

Index: bash-4.2_p52.ebuild
===================================================================
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/bash-4.2_p52.ebuild,v 1.1 
2014/10/03 09:56:11 polynomial-c Exp $

EAPI="4"

inherit eutils flag-o-matic toolchain-funcs multilib

# Official patchlevel
# See ftp://ftp.cwru.edu/pub/bash/bash-4.2-patches/
PLEVEL=${PV##*_p}
MY_PV=${PV/_p*}
MY_PV=${MY_PV/_/-}
MY_P=${PN}-${MY_PV}
[[ ${PV} != *_p* ]] && PLEVEL=0
patches() {
        local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
        [[ ${plevel} -eq 0 ]] && return 1
        eval set -- {1..${plevel}}
        set -- $(printf "${pn}${pv/\.}-%03d " "$@")
        if [[ ${opt} == -s ]] ; then
                echo "${@/#/${DISTDIR}/}"
        else
                local u
                for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
                        printf "${u}/${pn}-${pv}-patches/%s " "$@"
                done
        fi
}

DESCRIPTION="The standard GNU Bourne again shell"
HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html";
SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"

LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 
~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
IUSE="afs bashlogger examples mem-scramble +net nls plugins +readline vanilla"

DEPEND=">=sys-libs/ncurses-5.2-r2
        readline? ( >=sys-libs/readline-6.2 )
        nls? ( virtual/libintl )"
RDEPEND="${DEPEND}
        !!<sys-apps/portage-2.1.6.7_p1
        !!<sys-apps/paludis-0.26.0_alpha5"
# we only need yacc when the .y files get patched (bash42-005)
DEPEND+=" virtual/yacc"

S=${WORKDIR}/${MY_P}

pkg_setup() {
        if is-flag -malign-double ; then #7332
                eerror "Detected bad CFLAGS '-malign-double'.  Do not use this"
                eerror "as it breaks LFS (struct stat64) on x86."
                die "remove -malign-double from your CFLAGS mr ricer"
        fi
        if use bashlogger ; then
                ewarn "The logging patch should ONLY be used in restricted 
(i.e. honeypot) envs."
                ewarn "This will log ALL output you enter into the shell, you 
have been warned."
        fi
}

src_unpack() {
        unpack ${MY_P}.tar.gz
}

src_prepare() {
        # Include official patches
        [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)

        # Clean out local libs so we know we use system ones
        rm -rf lib/{readline,termcap}/*
        touch lib/{readline,termcap}/Makefile.in # for config.status
        sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in 
|| die

        # Avoid regenerating docs after patches #407985
        sed -i -r '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in || die
        touch -r . doc/*

        epatch "${FILESDIR}"/${PN}-4.2-execute-job-control.patch #383237
        epatch "${FILESDIR}"/${PN}-4.2-parallel-build.patch
        epatch "${FILESDIR}"/${PN}-4.2-no-readline.patch
        epatch "${FILESDIR}"/${PN}-4.2-read-retry.patch #447810
        if ! use vanilla ; then
                epatch "${FILESDIR}"/${PN}-4.2-speed-up-read-N.patch
        fi

        epatch_user
}

src_configure() {
        local myconf=()

        # For descriptions of these, see config-top.h
        # bashrc/#26952 bash_logout/#90488 ssh/#24762
        append-cppflags \
                
-DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\'
 \
                -DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \
                -DSYS_BASHRC=\'\"/etc/bash/bashrc\"\' \
                -DSYS_BASH_LOGOUT=\'\"/etc/bash/bash_logout\"\' \
                -DNON_INTERACTIVE_LOGIN_SHELLS \
                -DSSH_SOURCE_BASHRC \
                $(use bashlogger && echo -DSYSLOG_HISTORY)

        # Don't even think about building this statically without
        # reading Bug 7714 first.  If you still build it statically,
        # don't come crying to us with bugs ;).
        #use static && export LDFLAGS="${LDFLAGS} -static"
        use nls || myconf+=( --disable-nls )

        # Historically, we always used the builtin readline, but since
        # our handling of SONAME upgrades has gotten much more stable
        # in the PM (and the readline ebuild itself preserves the old
        # libs during upgrades), linking against the system copy should
        # be safe.
        # Exact cached version here doesn't really matter as long as it
        # is at least what's in the DEPEND up above.
        export ac_cv_rl_version=6.2

        # Force linking with system curses ... the bundled termcap lib
        # sucks bad compared to ncurses.  For the most part, ncurses
        # is here because readline needs it.  But bash itself calls
        # ncurses in one or two small places :(.

        use plugins && append-ldflags -Wl,-rpath,/usr/$(get_libdir)/bash
        tc-export AR #444070
        econf \
                --with-installed-readline=. \
                --with-curses \
                $(use_with afs) \
                $(use_enable net net-redirections) \
                --disable-profiling \
                $(use_enable mem-scramble) \
                $(use_with mem-scramble bash-malloc) \
                $(use_enable readline) \
                $(use_enable readline history) \
                $(use_enable readline bang-history) \
                "${myconf[@]}"
}

src_compile() {
        emake

        if use plugins ; then
                emake -C examples/loadables all others
        fi
}

src_install() {
        emake install DESTDIR="${D}"

        dodir /bin
        mv "${ED}"/usr/bin/bash "${ED}"/bin/ || die
        dosym bash /bin/rbash

        insinto /etc/bash
        doins "${FILESDIR}"/{bashrc,bash_logout}
        insinto /etc/skel
        for f in bash{_logout,_profile,rc} ; do
                newins "${FILESDIR}"/dot-${f} .${f}
        done

        local sed_args=(
                -e "s:#${USERLAND}#@::"
                -e '/#@/d'
        )
        if ! use readline ; then
                sed_args+=( #432338
                        -e '/^shopt -s histappend/s:^:#:'
                        -e 's:use_color=true:use_color=false:'
                )
        fi
        sed -i \
                "${sed_args[@]}" \
                "${ED}"/etc/skel/.bashrc \
                "${ED}"/etc/bash/bashrc || die

        if use plugins ; then
                exeinto /usr/$(get_libdir)/bash
                doexe $(echo examples/loadables/*.o | sed 's:\.o::g')
                insinto /usr/include/bash-plugins
                doins *.h builtins/*.h examples/loadables/*.h include/*.h \
                        lib/{glob/glob.h,tilde/tilde.h}
        fi

        if use examples ; then
                for d in 
examples/{functions,misc,scripts,scripts.noah,scripts.v2} ; do
                        exeinto /usr/share/doc/${PF}/${d}
                        insinto /usr/share/doc/${PF}/${d}
                        for f in ${d}/* ; do
                                if [[ ${f##*/} != PERMISSION ]] && [[ ${f##*/} 
!= *README ]] ; then
                                        doexe ${f}
                                else
                                        doins ${f}
                                fi
                        done
                done
        fi

        doman doc/*.1
        dodoc README NEWS AUTHORS CHANGES COMPAT Y2K doc/FAQ doc/INTRO
        dosym bash.info /usr/share/info/bashref.info
}

pkg_preinst() {
        if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]] ; then
                mkdir -p "${EROOT}"/etc/bash
                mv -f "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/
        fi

        if [[ -L ${EROOT}/bin/sh ]]; then
                # rewrite the symlink to ensure that its mtime changes. having 
/bin/sh
                # missing even temporarily causes a fatal error with paludis.
                local target=$(readlink "${EROOT}"/bin/sh)
                local tmp=$(emktemp "${EROOT}"/bin)
                ln -sf "${target}" "${tmp}"
                mv -f "${tmp}" "${EROOT}"/bin/sh
        fi
}

pkg_postinst() {
        # If /bin/sh does not exist, provide it
        if [[ ! -e ${EROOT}/bin/sh ]]; then
                ln -sf bash "${EROOT}"/bin/sh
        fi
}



1.1                  app-shells/bash/bash-3.1_p22.ebuild

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-shells/bash/bash-3.1_p22.ebuild?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-shells/bash/bash-3.1_p22.ebuild?rev=1.1&content-type=text/plain

Index: bash-3.1_p22.ebuild
===================================================================
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/bash-3.1_p22.ebuild,v 1.1 
2014/10/03 09:56:11 polynomial-c Exp $

EAPI="4"

inherit eutils flag-o-matic toolchain-funcs

# Official patchlevel
# See ftp://ftp.cwru.edu/pub/bash/bash-3.1-patches/
PLEVEL=${PV##*_p}
MY_PV=${PV/_p*}
MY_PV=${MY_PV/_/-}
MY_P=${PN}-${MY_PV}
[[ ${PV} != *_p* ]] && PLEVEL=0
patches() {
        local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
        [[ ${plevel} -eq 0 ]] && return 1
        eval set -- {1..${plevel}}
        set -- $(printf "${pn}${pv/\.}-%03d " "$@")
        if [[ ${opt} == -s ]] ; then
                echo "${@/#/${DISTDIR}/}"
        else
                local u
                for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
                        printf "${u}/${pn}-${pv}-patches/%s " "$@"
                done
        fi
}

DESCRIPTION="The standard GNU Bourne again shell"
HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html";
SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"

LICENSE="GPL-2"
SLOT="${MY_PV}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 
~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd"
IUSE="afs +net nls +readline"

DEPEND=">=sys-libs/ncurses-5.2-r2
        readline? ( >=sys-libs/readline-6.2 )
        nls? ( virtual/libintl )"
RDEPEND="${DEPEND}"

S=${WORKDIR}/${MY_P}

pkg_setup() {
        if is-flag -malign-double ; then #7332
                eerror "Detected bad CFLAGS '-malign-double'.  Do not use this"
                eerror "as it breaks LFS (struct stat64) on x86."
                die "remove -malign-double from your CFLAGS mr ricer"
        fi
}

src_unpack() {
        unpack ${MY_P}.tar.gz
}

src_prepare() {
        # Include official patches
        [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)

        # Clean out local libs so we know we use system ones
        rm -rf lib/{readline,termcap}/*
        touch lib/{readline,termcap}/Makefile.in # for config.status
        sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in 
|| die

        epatch "${FILESDIR}"/${PN}-3.1-gentoo.patch
        epatch "${FILESDIR}"/autoconf-mktime-2.53.patch #220040
        epatch "${FILESDIR}"/${PN}-3.1-ulimit.patch
        epatch "${FILESDIR}"/${PN}-3.0-read-memleak.patch
        epatch "${FILESDIR}"/${PN}-3.0-trap-fg-signals.patch
        epatch "${FILESDIR}"/bash-3.1-fix-dash-login-shell.patch #118257
        epatch "${FILESDIR}"/bash-3.1-dev-fd-test-as-user.patch #131875

        epatch_user
}

src_configure() {
        local myconf=()

        # Force pgrp synchronization
        # https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=81653
        export bash_cv_pgrp_pipe=yes

        # For descriptions of these, see config-top.h
        # bashrc/#26952 bash_logout/#90488 ssh/#24762
        append-cppflags \
                
-DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\'
 \
                -DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \
                -DSYS_BASHRC=\'\"/etc/bash/bashrc\"\' \
                -DSYS_BASH_LOGOUT=\'\"/etc/bash/bash_logout\"\' \
                -DNON_INTERACTIVE_LOGIN_SHELLS \
                -DSSH_SOURCE_BASHRC

        # Don't even think about building this statically without
        # reading Bug 7714 first.  If you still build it statically,
        # don't come crying to us with bugs ;).
        #use static && export LDFLAGS="${LDFLAGS} -static"
        use nls || myconf+=( --disable-nls )

        # Historically, we always used the builtin readline, but since
        # our handling of SONAME upgrades has gotten much more stable
        # in the PM (and the readline ebuild itself preserves the old
        # libs during upgrades), linking against the system copy should
        # be safe.
        # Exact cached version here doesn't really matter as long as it
        # is at least what's in the DEPEND up above.
        export ac_cv_rl_version=6.2

        # Force linking with system curses ... the bundled termcap lib
        # sucks bad compared to ncurses.  For the most part, ncurses
        # is here because readline needs it.  But bash itself calls
        # ncurses in one or two small places :(.

        tc-export AR #444070
        econf \
                --with-installed-readline=. \
                --with-curses \
                $(use_with afs) \
                $(use_enable net net-redirections) \
                --disable-profiling \
                --without-gnu-malloc \
                $(use_enable readline) \
                $(use_enable readline history) \
                $(use_enable readline bang-history) \
                "${myconf[@]}"
}

src_compile() {
        emake -j1 #102426
}

src_install() {
        into /
        newbin bash bash-${SLOT}

        newman doc/bash.1 bash-${SLOT}.1
        newman doc/builtins.1 builtins-${SLOT}.1

        insinto /usr/share/info
        newins doc/bashref.info bash-${SLOT}.info
        dosym bash-${SLOT}.info /usr/share/info/bashref-${SLOT}.info

        dodoc README NEWS AUTHORS CHANGES COMPAT Y2K doc/FAQ doc/INTRO
}



1.1                  app-shells/bash/bash-4.1_p16.ebuild

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-shells/bash/bash-4.1_p16.ebuild?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-shells/bash/bash-4.1_p16.ebuild?rev=1.1&content-type=text/plain

Index: bash-4.1_p16.ebuild
===================================================================
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/bash-4.1_p16.ebuild,v 1.1 
2014/10/03 09:56:11 polynomial-c Exp $

EAPI="4"

inherit eutils flag-o-matic toolchain-funcs

# Official patchlevel
# See ftp://ftp.cwru.edu/pub/bash/bash-4.1-patches/
PLEVEL=${PV##*_p}
MY_PV=${PV/_p*}
MY_PV=${MY_PV/_/-}
MY_P=${PN}-${MY_PV}
[[ ${PV} != *_p* ]] && PLEVEL=0
patches() {
        local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
        [[ ${plevel} -eq 0 ]] && return 1
        eval set -- {1..${plevel}}
        set -- $(printf "${pn}${pv/\.}-%03d " "$@")
        if [[ ${opt} == -s ]] ; then
                echo "${@/#/${DISTDIR}/}"
        else
                local u
                for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
                        printf "${u}/${pn}-${pv}-patches/%s " "$@"
                done
        fi
}

DESCRIPTION="The standard GNU Bourne again shell"
HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html";
SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"

LICENSE="GPL-3"
SLOT="${MY_PV}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 
~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd"
IUSE="afs mem-scramble +net nls +readline"

DEPEND=">=sys-libs/ncurses-5.2-r2
        readline? ( >=sys-libs/readline-6.2 )
        nls? ( virtual/libintl )"
RDEPEND="${DEPEND}"

S=${WORKDIR}/${MY_P}

pkg_setup() {
        if is-flag -malign-double ; then #7332
                eerror "Detected bad CFLAGS '-malign-double'.  Do not use this"
                eerror "as it breaks LFS (struct stat64) on x86."
                die "remove -malign-double from your CFLAGS mr ricer"
        fi
}

src_unpack() {
        unpack ${MY_P}.tar.gz
}

src_prepare() {
        # Include official patches
        [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)

        # Clean out local libs so we know we use system ones
        rm -rf lib/{readline,termcap}/*
        touch lib/{readline,termcap}/Makefile.in # for config.status
        sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in 
|| die

        epatch "${FILESDIR}"/${PN}-4.1-fbsd-eaccess.patch #303411
        sed -i '1i#define NEED_FPURGE_DECL' execute_cmd.c # needs fpurge() decl
        epatch "${FILESDIR}"/${PN}-4.1-parallel-build.patch

        epatch_user
}

src_configure() {
        local myconf=()

        myconf+=( --without-lispdir ) #335896

        # For descriptions of these, see config-top.h
        # bashrc/#26952 bash_logout/#90488 ssh/#24762
        append-cppflags \
                
-DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\'
 \
                -DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \
                -DSYS_BASHRC=\'\"/etc/bash/bashrc\"\' \
                -DSYS_BASH_LOGOUT=\'\"/etc/bash/bash_logout\"\' \
                -DNON_INTERACTIVE_LOGIN_SHELLS \
                -DSSH_SOURCE_BASHRC

        # Don't even think about building this statically without
        # reading Bug 7714 first.  If you still build it statically,
        # don't come crying to us with bugs ;).
        #use static && export LDFLAGS="${LDFLAGS} -static"
        use nls || myconf+=( --disable-nls )

        # Historically, we always used the builtin readline, but since
        # our handling of SONAME upgrades has gotten much more stable
        # in the PM (and the readline ebuild itself preserves the old
        # libs during upgrades), linking against the system copy should
        # be safe.
        # Exact cached version here doesn't really matter as long as it
        # is at least what's in the DEPEND up above.
        export ac_cv_rl_version=6.2

        # Force linking with system curses ... the bundled termcap lib
        # sucks bad compared to ncurses.  For the most part, ncurses
        # is here because readline needs it.  But bash itself calls
        # ncurses in one or two small places :(.

        tc-export AR #444070
        econf \
                --with-installed-readline=. \
                --with-curses \
                $(use_with afs) \
                $(use_enable net net-redirections) \
                --disable-profiling \
                $(use_enable mem-scramble) \
                $(use_with mem-scramble bash-malloc) \
                $(use_enable readline) \
                $(use_enable readline history) \
                $(use_enable readline bang-history) \
                "${myconf[@]}"
}

src_install() {
        into /
        newbin bash bash-${SLOT}

        newman doc/bash.1 bash-${SLOT}.1
        newman doc/builtins.1 builtins-${SLOT}.1

        insinto /usr/share/info
        newins doc/bashref.info bash-${SLOT}.info
        dosym bash-${SLOT}.info /usr/share/info/bashref-${SLOT}.info

        dodoc README NEWS AUTHORS CHANGES COMPAT Y2K doc/FAQ doc/INTRO
}



1.1                  app-shells/bash/bash-4.0_p43.ebuild

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-shells/bash/bash-4.0_p43.ebuild?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-shells/bash/bash-4.0_p43.ebuild?rev=1.1&content-type=text/plain

Index: bash-4.0_p43.ebuild
===================================================================
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/bash-4.0_p43.ebuild,v 1.1 
2014/10/03 09:56:11 polynomial-c Exp $

EAPI="4"

inherit eutils flag-o-matic toolchain-funcs

# Official patchlevel
# See ftp://ftp.cwru.edu/pub/bash/bash-4.0-patches/
PLEVEL=${PV##*_p}
MY_PV=${PV/_p*}
MY_PV=${MY_PV/_/-}
MY_P=${PN}-${MY_PV}
[[ ${PV} != *_p* ]] && PLEVEL=0
patches() {
        local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
        [[ ${plevel} -eq 0 ]] && return 1
        eval set -- {1..${plevel}}
        set -- $(printf "${pn}${pv/\.}-%03d " "$@")
        if [[ ${opt} == -s ]] ; then
                echo "${@/#/${DISTDIR}/}"
        else
                local u
                for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
                        printf "${u}/${pn}-${pv}-patches/%s " "$@"
                done
        fi
}

DESCRIPTION="The standard GNU Bourne again shell"
HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html";
SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"

LICENSE="GPL-3"
SLOT="${MY_PV}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 
~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd"
IUSE="afs mem-scramble +net nls +readline"

DEPEND=">=sys-libs/ncurses-5.2-r2
        readline? ( >=sys-libs/readline-6.2 )
        nls? ( virtual/libintl )"
RDEPEND="${DEPEND}"

S=${WORKDIR}/${MY_P}

pkg_setup() {
        if is-flag -malign-double ; then #7332
                eerror "Detected bad CFLAGS '-malign-double'.  Do not use this"
                eerror "as it breaks LFS (struct stat64) on x86."
                die "remove -malign-double from your CFLAGS mr ricer"
        fi
}

src_unpack() {
        unpack ${MY_P}.tar.gz
}

src_prepare() {
        # Include official patches
        [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)

        # Clean out local libs so we know we use system ones
        rm -rf lib/{readline,termcap}/*
        touch lib/{readline,termcap}/Makefile.in # for config.status
        sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in 
|| die

        epatch "${FILESDIR}"/${PN}-4.0-configure.patch #304901
        epatch "${FILESDIR}"/${PN}-4.x-deferred-heredocs.patch
        sed -i '1i#define NEED_FPURGE_DECL' execute_cmd.c # needs fpurge() decl
        epatch "${FILESDIR}"/${PN}-3.2-parallel-build.patch #189671
        epatch "${FILESDIR}"/${PN}-4.0-ldflags-for-build.patch #211947
        epatch "${FILESDIR}"/${PN}-4.0-negative-return.patch
        epatch "${FILESDIR}"/${PN}-4.0-parallel-build.patch #267613
        sed -i '/\.o: .*shell\.h/s:$: pathnames.h:' Makefile.in #267613

        epatch_user
}

src_configure() {
        local myconf=()

        # For descriptions of these, see config-top.h
        # bashrc/#26952 bash_logout/#90488 ssh/#24762
        append-cppflags \
                
-DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\'
 \
                -DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \
                -DSYS_BASHRC=\'\"/etc/bash/bashrc\"\' \
                -DSYS_BASH_LOGOUT=\'\"/etc/bash/bash_logout\"\' \
                -DNON_INTERACTIVE_LOGIN_SHELLS \
                -DSSH_SOURCE_BASHRC

        # Don't even think about building this statically without
        # reading Bug 7714 first.  If you still build it statically,
        # don't come crying to us with bugs ;).
        #use static && export LDFLAGS="${LDFLAGS} -static"
        use nls || myconf+=( --disable-nls )

        # Historically, we always used the builtin readline, but since
        # our handling of SONAME upgrades has gotten much more stable
        # in the PM (and the readline ebuild itself preserves the old
        # libs during upgrades), linking against the system copy should
        # be safe.
        # Exact cached version here doesn't really matter as long as it
        # is at least what's in the DEPEND up above.
        export ac_cv_rl_version=6.2

        # Force linking with system curses ... the bundled termcap lib
        # sucks bad compared to ncurses.  For the most part, ncurses
        # is here because readline needs it.  But bash itself calls
        # ncurses in one or two small places :(.

        tc-export AR #444070
        econf \
                --with-installed-readline=. \
                --with-curses \
                $(use_with afs) \
                $(use_enable net net-redirections) \
                --disable-profiling \
                $(use_enable mem-scramble) \
                $(use_with mem-scramble bash-malloc) \
                $(use_enable readline) \
                $(use_enable readline history) \
                $(use_enable readline bang-history) \
                "${myconf[@]}"
}

src_install() {
        into /
        newbin bash bash-${SLOT}

        newman doc/bash.1 bash-${SLOT}.1
        newman doc/builtins.1 builtins-${SLOT}.1

        insinto /usr/share/info
        newins doc/bashref.info bash-${SLOT}.info
        dosym bash-${SLOT}.info /usr/share/info/bashref-${SLOT}.info

        dodoc README NEWS AUTHORS CHANGES COMPAT Y2K doc/FAQ doc/INTRO
}



1.1                  app-shells/bash/bash-3.2_p56.ebuild

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-shells/bash/bash-3.2_p56.ebuild?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-shells/bash/bash-3.2_p56.ebuild?rev=1.1&content-type=text/plain

Index: bash-3.2_p56.ebuild
===================================================================
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/bash-3.2_p56.ebuild,v 1.1 
2014/10/03 09:56:11 polynomial-c Exp $

EAPI="4"

inherit eutils flag-o-matic toolchain-funcs

# Official patchlevel
# See ftp://ftp.cwru.edu/pub/bash/bash-3.2-patches/
PLEVEL=${PV##*_p}
MY_PV=${PV/_p*}
MY_PV=${MY_PV/_/-}
MY_P=${PN}-${MY_PV}
[[ ${PV} != *_p* ]] && PLEVEL=0
patches() {
        local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
        [[ ${plevel} -eq 0 ]] && return 1
        eval set -- {1..${plevel}}
        set -- $(printf "${pn}${pv/\.}-%03d " "$@")
        if [[ ${opt} == -s ]] ; then
                echo "${@/#/${DISTDIR}/}"
        else
                local u
                for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
                        printf "${u}/${pn}-${pv}-patches/%s " "$@"
                done
        fi
}

DESCRIPTION="The standard GNU Bourne again shell"
HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html";
SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"

LICENSE="GPL-2"
SLOT="${MY_PV}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 
~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd"
IUSE="afs +net nls +readline"

DEPEND=">=sys-libs/ncurses-5.2-r2
        readline? ( >=sys-libs/readline-6.2 )
        nls? ( virtual/libintl )"
RDEPEND="${DEPEND}"

S=${WORKDIR}/${MY_P}

pkg_setup() {
        if is-flag -malign-double ; then #7332
                eerror "Detected bad CFLAGS '-malign-double'.  Do not use this"
                eerror "as it breaks LFS (struct stat64) on x86."
                die "remove -malign-double from your CFLAGS mr ricer"
        fi
}

src_unpack() {
        unpack ${MY_P}.tar.gz
}

src_prepare() {
        # Include official patches
        [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)

        # Clean out local libs so we know we use system ones
        rm -rf lib/{readline,termcap}/*
        touch lib/{readline,termcap}/Makefile.in # for config.status
        sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in 
|| die

        epatch "${FILESDIR}"/autoconf-mktime-2.59.patch #220040
        epatch "${FILESDIR}"/${PN}-3.1-gentoo.patch
        epatch "${FILESDIR}"/${PN}-3.2-loadables.patch
        epatch "${FILESDIR}"/${PN}-3.2-protos.patch
        epatch "${FILESDIR}"/${PN}-3.2-session-leader.patch #231775
        epatch "${FILESDIR}"/${PN}-3.2-parallel-build.patch #189671
        epatch "${FILESDIR}"/${PN}-3.2-ldflags-for-build.patch #211947
        epatch "${FILESDIR}"/${PN}-3.2-process-subst.patch
        epatch "${FILESDIR}"/${PN}-3.2-ulimit.patch
        epatch "${FILESDIR}"/${PN}-3.0-trap-fg-signals.patch
        epatch "${FILESDIR}"/${PN}-3.2-dev-fd-test-as-user.patch #131875

        epatch_user
}

src_configure() {
        local myconf=()

        # Force pgrp synchronization
        # https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=81653
        export bash_cv_pgrp_pipe=yes

        # For descriptions of these, see config-top.h
        # bashrc/#26952 bash_logout/#90488 ssh/#24762
        append-cppflags \
                
-DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\'
 \
                -DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \
                -DSYS_BASHRC=\'\"/etc/bash/bashrc\"\' \
                -DSYS_BASH_LOGOUT=\'\"/etc/bash/bash_logout\"\' \
                -DNON_INTERACTIVE_LOGIN_SHELLS \
                -DSSH_SOURCE_BASHRC

        # Don't even think about building this statically without
        # reading Bug 7714 first.  If you still build it statically,
        # don't come crying to us with bugs ;).
        #use static && export LDFLAGS="${LDFLAGS} -static"
        use nls || myconf+=( --disable-nls )

        # Historically, we always used the builtin readline, but since
        # our handling of SONAME upgrades has gotten much more stable
        # in the PM (and the readline ebuild itself preserves the old
        # libs during upgrades), linking against the system copy should
        # be safe.
        # Exact cached version here doesn't really matter as long as it
        # is at least what's in the DEPEND up above.
        export ac_cv_rl_version=6.2

        # Force linking with system curses ... the bundled termcap lib
        # sucks bad compared to ncurses.  For the most part, ncurses
        # is here because readline needs it.  But bash itself calls
        # ncurses in one or two small places :(.

        tc-export AR #444070
        econf \
                --with-installed-readline=. \
                --with-curses \
                $(use_with afs) \
                $(use_enable net net-redirections) \
                --disable-profiling \
                --without-gnu-malloc \
                $(use_enable readline) \
                $(use_enable readline history) \
                $(use_enable readline bang-history) \
                "${myconf[@]}"
}

src_install() {
        into /
        newbin bash bash-${SLOT}

        newman doc/bash.1 bash-${SLOT}.1
        newman doc/builtins.1 builtins-${SLOT}.1

        insinto /usr/share/info
        newins doc/bashref.info bash-${SLOT}.info
        dosym bash-${SLOT}.info /usr/share/info/bashref-${SLOT}.info

        dodoc README NEWS AUTHORS CHANGES COMPAT Y2K doc/FAQ doc/INTRO
}



1.1                  app-shells/bash/bash-4.3_p29.ebuild

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-shells/bash/bash-4.3_p29.ebuild?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-shells/bash/bash-4.3_p29.ebuild?rev=1.1&content-type=text/plain

Index: bash-4.3_p29.ebuild
===================================================================
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/bash-4.3_p29.ebuild,v 1.1 
2014/10/03 09:56:11 polynomial-c Exp $

EAPI="4"

inherit eutils flag-o-matic toolchain-funcs multilib

# Official patchlevel
# See ftp://ftp.cwru.edu/pub/bash/bash-4.3-patches/
PLEVEL=${PV##*_p}
MY_PV=${PV/_p*}
MY_PV=${MY_PV/_/-}
MY_P=${PN}-${MY_PV}
[[ ${PV} != *_p* ]] && PLEVEL=0
patches() {
        local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
        [[ ${plevel} -eq 0 ]] && return 1
        eval set -- {1..${plevel}}
        set -- $(printf "${pn}${pv/\.}-%03d " "$@")
        if [[ ${opt} == -s ]] ; then
                echo "${@/#/${DISTDIR}/}"
        else
                local u
                for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
                        printf "${u}/${pn}-${pv}-patches/%s " "$@"
                done
        fi
}

# The version of readline this bash normally ships with.
READLINE_VER="6.3"

DESCRIPTION="The standard GNU Bourne again shell"
HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html";
SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"
[[ ${PV} == *_rc* ]] && SRC_URI+=" ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz";

LICENSE="GPL-3"
SLOT="0"
#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 
~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
IUSE="afs bashlogger examples mem-scramble +net nls plugins +readline vanilla"

DEPEND=">=sys-libs/ncurses-5.2-r2
        readline? ( >=sys-libs/readline-${READLINE_VER} )
        nls? ( virtual/libintl )"
RDEPEND="${DEPEND}
        !<sys-apps/portage-2.1.6.7_p1
        !<sys-apps/paludis-0.26.0_alpha5"
# we only need yacc when the .y files get patched (bash42-005)
DEPEND+=" virtual/yacc"

S=${WORKDIR}/${MY_P}

pkg_setup() {
        if is-flag -malign-double ; then #7332
                eerror "Detected bad CFLAGS '-malign-double'.  Do not use this"
                eerror "as it breaks LFS (struct stat64) on x86."
                die "remove -malign-double from your CFLAGS mr ricer"
        fi
        if use bashlogger ; then
                ewarn "The logging patch should ONLY be used in restricted 
(i.e. honeypot) envs."
                ewarn "This will log ALL output you enter into the shell, you 
have been warned."
        fi
}

src_unpack() {
        unpack ${MY_P}.tar.gz
}

src_prepare() {
        # Include official patches
        [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)

        # Clean out local libs so we know we use system ones w/releases.
        if [[ ${PV} != *_rc* ]] ; then
                rm -rf lib/{readline,termcap}/*
                touch lib/{readline,termcap}/Makefile.in # for config.status
                sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' 
Makefile.in || die
        fi

        # Avoid regenerating docs after patches #407985
        sed -i -r '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in || die
        touch -r . doc/*

        epatch "${FILESDIR}"/${PN}-4.3-compat-lvl.patch
        epatch "${FILESDIR}"/${PN}-4.3-parse-time-keyword.patch
        epatch "${FILESDIR}"/${PN}-4.3-append-process-segfault.patch
        epatch "${FILESDIR}"/${PN}-4.3-term-cleanup.patch

        epatch_user
}

src_configure() {
        local myconf=()

        # For descriptions of these, see config-top.h
        # bashrc/#26952 bash_logout/#90488 ssh/#24762
        append-cppflags \
                
-DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\'
 \
                -DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \
                -DSYS_BASHRC=\'\"/etc/bash/bashrc\"\' \
                -DSYS_BASH_LOGOUT=\'\"/etc/bash/bash_logout\"\' \
                -DNON_INTERACTIVE_LOGIN_SHELLS \
                -DSSH_SOURCE_BASHRC \
                $(use bashlogger && echo -DSYSLOG_HISTORY)

        # Don't even think about building this statically without
        # reading Bug 7714 first.  If you still build it statically,
        # don't come crying to us with bugs ;).
        #use static && export LDFLAGS="${LDFLAGS} -static"
        use nls || myconf+=( --disable-nls )

        # Historically, we always used the builtin readline, but since
        # our handling of SONAME upgrades has gotten much more stable
        # in the PM (and the readline ebuild itself preserves the old
        # libs during upgrades), linking against the system copy should
        # be safe.
        # Exact cached version here doesn't really matter as long as it
        # is at least what's in the DEPEND up above.
        export ac_cv_rl_version=${READLINE_VER}

        # Force linking with system curses ... the bundled termcap lib
        # sucks bad compared to ncurses.  For the most part, ncurses
        # is here because readline needs it.  But bash itself calls
        # ncurses in one or two small places :(.

        if [[ ${PV} != *_rc* ]] ; then
                # Use system readline only with released versions.
                myconf+=( --with-installed-readline=. )
        fi

        if use plugins; then
                append-ldflags -Wl,-rpath,/usr/$(get_libdir)/bash
        else
                # Disable the plugins logic by hand since bash doesn't
                # provide a way of doing it.
                export ac_cv_func_dl{close,open,sym}=no \
                        ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no
                sed -i \
                        -e '/LOCAL_LDFLAGS=/s:-rdynamic::' \
                        configure || die
        fi
        tc-export AR #444070
        econf \
                --docdir='$(datarootdir)'/doc/${PF} \
                --htmldir='$(docdir)/html' \
                --with-curses \
                $(use_with afs) \
                $(use_enable net net-redirections) \
                --disable-profiling \
                $(use_enable mem-scramble) \
                $(use_with mem-scramble bash-malloc) \
                $(use_enable readline) \
                $(use_enable readline history) \
                $(use_enable readline bang-history) \
                "${myconf[@]}"
}

src_compile() {
        emake

        if use plugins ; then
                emake -C examples/loadables all others
        fi
}

src_install() {
        local d f

        default

        dodir /bin
        mv "${ED}"/usr/bin/bash "${ED}"/bin/ || die
        dosym bash /bin/rbash

        insinto /etc/bash
        doins "${FILESDIR}"/{bashrc,bash_logout}
        insinto /etc/skel
        for f in bash{_logout,_profile,rc} ; do
                newins "${FILESDIR}"/dot-${f} .${f}
        done

        local sed_args=(
                -e "s:#${USERLAND}#@::"
                -e '/#@/d'
        )
        if ! use readline ; then
                sed_args+=( #432338
                        -e '/^shopt -s histappend/s:^:#:'
                        -e 's:use_color=true:use_color=false:'
                )
        fi
        sed -i \
                "${sed_args[@]}" \
                "${ED}"/etc/skel/.bashrc \
                "${ED}"/etc/bash/bashrc || die

        if use plugins ; then
                exeinto /usr/$(get_libdir)/bash
                doexe $(echo examples/loadables/*.o | sed 's:\.o::g')
                insinto /usr/include/bash-plugins
                doins *.h builtins/*.h include/*.h 
lib/{glob/glob.h,tilde/tilde.h}
        fi

        if use examples ; then
                for d in 
examples/{functions,misc,scripts,scripts.noah,scripts.v2} ; do
                        exeinto /usr/share/doc/${PF}/${d}
                        insinto /usr/share/doc/${PF}/${d}
                        for f in ${d}/* ; do
                                if [[ ${f##*/} != PERMISSION ]] && [[ ${f##*/} 
!= *README ]] ; then
                                        doexe ${f}
                                else
                                        doins ${f}
                                fi
                        done
                done
        fi

        doman doc/*.1
        newdoc CWRU/changelog ChangeLog
        dosym bash.info /usr/share/info/bashref.info
}

pkg_preinst() {
        if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]] ; then
                mkdir -p "${EROOT}"/etc/bash
                mv -f "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/
        fi

        if [[ -L ${EROOT}/bin/sh ]] ; then
                # rewrite the symlink to ensure that its mtime changes. having 
/bin/sh
                # missing even temporarily causes a fatal error with paludis.
                local target=$(readlink "${EROOT}"/bin/sh)
                local tmp=$(emktemp "${EROOT}"/bin)
                ln -sf "${target}" "${tmp}"
                mv -f "${tmp}" "${EROOT}"/bin/sh
        fi
}

pkg_postinst() {
        # If /bin/sh does not exist, provide it
        if [[ ! -e ${EROOT}/bin/sh ]] ; then
                ln -sf bash "${EROOT}"/bin/sh
        fi
}




Reply via email to