diff options
author | Mike Frysinger <vapier@gentoo.org> | 2006-01-04 05:47:01 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2006-01-04 05:47:01 +0000 |
commit | 35d675d2e94ae8da7e25b254165dbd633f53f85f (patch) | |
tree | 02e88424acc0970c3623f19bee4da057e6ff7aff /app-shells | |
parent | old (diff) | |
download | historical-35d675d2e94ae8da7e25b254165dbd633f53f85f.tar.gz historical-35d675d2e94ae8da7e25b254165dbd633f53f85f.tar.bz2 historical-35d675d2e94ae8da7e25b254165dbd633f53f85f.zip |
Grab fix from upstream for array handling #116352 by Jory A. Pratt.
Package-Manager: portage-2.1_pre3-r1
Diffstat (limited to 'app-shells')
-rw-r--r-- | app-shells/bash/ChangeLog | 10 | ||||
-rw-r--r-- | app-shells/bash/Manifest | 13 | ||||
-rw-r--r-- | app-shells/bash/bash-3.1-r2.ebuild | 146 | ||||
-rw-r--r-- | app-shells/bash/files/bash-3.1-arrays.patch | 45 | ||||
-rw-r--r-- | app-shells/bash/files/digest-bash-3.1-r2 | 3 |
5 files changed, 209 insertions, 8 deletions
diff --git a/app-shells/bash/ChangeLog b/app-shells/bash/ChangeLog index c65481c0b43c..1cde9b05c0e9 100644 --- a/app-shells/bash/ChangeLog +++ b/app-shells/bash/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for app-shells/bash -# Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/ChangeLog,v 1.81 2005/12/22 00:17:35 vapier Exp $ +# Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/ChangeLog,v 1.82 2006/01/04 05:47:01 vapier Exp $ + +*bash-3.1-r2 (04 Jan 2006) + + 04 Jan 2006; Mike Frysinger <vapier@gentoo.org> + +files/bash-3.1-arrays.patch, +bash-3.1-r2.ebuild: + Grab fix from upstream for array handling #116352 by Jory A. Pratt. *bash-3.1-r1 (22 Dec 2005) diff --git a/app-shells/bash/Manifest b/app-shells/bash/Manifest index deae2e6e9199..6dcc8e625d1f 100644 --- a/app-shells/bash/Manifest +++ b/app-shells/bash/Manifest @@ -1,13 +1,13 @@ -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 -MD5 d435fe34a31464106e09acf0bebdab9d ChangeLog 16644 +MD5 3fc29fdd5c786a439c88cb06ceb48d0a ChangeLog 16846 MD5 3da49e27281cbe16582393239ba5b29b bash-2.05b-r11.ebuild 3715 MD5 27a795f52631ec69ef83b28d72e449dc bash-3.0-r11.ebuild 5143 MD5 30fb11f3c3ffeebf09fa3ae90dd0d351 bash-3.0-r12.ebuild 5407 MD5 f999a51dcdf23cdb6597ea549b58c170 bash-3.0-r13.ebuild 4957 MD5 bd1598b6968b46dff8ca11cbc604beb0 bash-3.0-r14.ebuild 4838 -MD5 45c862614baf5f01b9309343f7805a03 bash-3.1-r1.ebuild 4380 +MD5 de403a0da8e0af5095df05361d23564a bash-3.1-r2.ebuild 4452 MD5 edf95b873162f4548435c379e4998b4e files/bash-2.05b-empty-herestring.patch 836 MD5 ca64aff9caa582e07e0b34ed87d60d80 files/bash-2.05b-jobs.patch 876 MD5 90ba92c981c1d26e45d88ecd23a1fbf5 files/bash-2.05b-multibyte-locale.patch 1897 @@ -47,6 +47,7 @@ MD5 b86b65863c2ae21b59d8201c2a3a9e91 files/bash-3.0-trap-fg-signals.patch 641 MD5 47fca8c27b11bcc6641a78a8cc9414e5 files/bash-3.0-ulimit.patch 5226 MD5 c16b3704ff34112b6f152205c2565f5b files/bash-3.0-utf8.patch 1392 MD5 7b9f39ddd140c23e0a3ad4010ab008a8 files/bash-3.0-volatile-command.patch 512 +MD5 c9d55fb9fb5d9dd279b460e513fd90c9 files/bash-3.1-arrays.patch 1463 MD5 9897114c737c0277d973b33b519f6df4 files/bash-3.1-bash-logger.patch 2209 MD5 0ea8241cac27acdecd7bddfc5d89e806 files/bash-3.1-gentoo.patch 2005 MD5 f6e2f0d9e5a4dcb898dc2b04c13ac67d files/bash-3.1-ulimit.patch 4094 @@ -57,7 +58,7 @@ MD5 13a88fae79fed8f76999ec8fdca2f085 files/digest-bash-3.0-r11 976 MD5 13a88fae79fed8f76999ec8fdca2f085 files/digest-bash-3.0-r12 976 MD5 e1aef7c77cc56da08cb6e99e26dee2cc files/digest-bash-3.0-r13 909 MD5 e1aef7c77cc56da08cb6e99e26dee2cc files/digest-bash-3.0-r14 909 -MD5 26df29e008da5ffd1ada97b325eed704 files/digest-bash-3.1-r1 171 +MD5 26df29e008da5ffd1ada97b325eed704 files/digest-bash-3.1-r2 171 MD5 7d8a8ef90c1818a0cd66808ac2740638 files/dot-bash_logout 127 MD5 d76b9aa6b733175df21c2bb6afe8900d files/dot-bash_profile 193 MD5 6dcc418c7812b5f8ebf2f6562eb2e57c files/dot-bashrc 983 @@ -65,7 +66,7 @@ MD5 9a09f8d531c582e78977dbfd96edc1f2 metadata.xml 164 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (GNU/Linux) -iD8DBQFDtQea2+ySkm8kpY0RAl2vAJ4h5VPh/gzni/CRhB65sBWL96VSrACdHqYE -F+8wljL1uthoED3zpVSeCPU= -=EK4l +iD8DBQFDu2GR2+ySkm8kpY0RAsAXAKC2M9yyvFunFawCUBdqV8E6pj8zkwCfesII +krN7MW/Bsk/zxIhSL+YSXG0= +=LihB -----END PGP SIGNATURE----- diff --git a/app-shells/bash/bash-3.1-r2.ebuild b/app-shells/bash/bash-3.1-r2.ebuild new file mode 100644 index 000000000000..585e95737cfe --- /dev/null +++ b/app-shells/bash/bash-3.1-r2.ebuild @@ -0,0 +1,146 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/bash-3.1-r2.ebuild,v 1.1 2006/01/04 05:47:01 vapier Exp $ + +inherit eutils flag-o-matic toolchain-funcs + +# Official patchlevel +# See ftp://ftp.cwru.edu/pub/bash/bash-3.1-patches/ +PLEVEL=1 +READLINE_VER=5.1 +READLINE_PLEVEL=1 + +DESCRIPTION="The standard GNU Bourne again shell" +HOMEPAGE="http://cnswww.cns.cwru.edu/~chet/bash/bashtop.html" +# Hit the GNU mirrors before hitting Chet's site +SRC_URI="mirror://gnu/bash/${P}.tar.gz + ftp://ftp.cwru.edu/pub/bash/${P}.tar.gz + $(for ((i=1; i<=PLEVEL; i++)); do + printf 'ftp://ftp.cwru.edu/pub/bash/bash-%s-patches/bash%s-%03d\n' \ + ${PV} ${PV/\.} ${i} + printf 'mirror://gnu/bash/bash-%s-patches/bash%s-%03d\n' \ + ${PV} ${PV/\.} ${i} + done) + $(for ((i=1; i<=READLINE_PLEVEL; i++)); do + printf 'ftp://ftp.cwru.edu/pub/bash/readline-%s-patches/readline%s-%03d\n' \ + ${READLINE_VER} ${READLINE_VER/\.} ${i} + printf 'mirror://gnu/bash/readline-%s-patches/readline%s-%03d\n' \ + ${READLINE_VER} ${READLINE_VER/\.} ${i} + done)" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc-macos ~ppc64 ~s390 ~sh ~sparc ~x86" +IUSE="afs nls build bashlogger unicode" + +DEPEND=">=sys-libs/ncurses-5.2-r2" + +src_unpack() { + unpack ${P}.tar.gz + cd "${S}" + epatch "${FILESDIR}"/${PN}-3.1-gentoo.patch + + # Include official patches + local i + for ((i=1; i<=PLEVEL; i++)); do + epatch "${DISTDIR}"/${PN}${PV/\.}-$(printf '%03d' ${i}) + done + cd lib/readline + for ((i=1; i<=READLINE_PLEVEL; i++)); do + epatch "${DISTDIR}"/readline${READLINE_VER/\.}-$(printf '%03d' ${i}) + done + cd ../.. + + # Fixup array handling #116352 + epatch "${FILESDIR}"/${P}-arrays.patch + # Fall back to /etc/inputrc + epatch "${FILESDIR}"/${PN}-3.0-etc-inputrc.patch + # Add more ulimit options (from Fedora) + epatch "${FILESDIR}"/${P}-ulimit.patch + # Fix a memleak in read_builtin (from Fedora) + epatch "${FILESDIR}"/${PN}-3.0-read-memleak.patch + # Don't barf on handled signals in scripts + epatch "${FILESDIR}"/${PN}-3.0-trap-fg-signals.patch +# # Fix generation of signals list when cross-compiling +# epatch "${FILESDIR}"/${PN}-3.0-cross-signals.patch + # Log bash commands to syslog #91327 + if use bashlogger ; then + echo + 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." + ebeep + epause + epatch "${FILESDIR}"/${PN}-3.1-bash-logger.patch + fi + + epatch "${FILESDIR}"/${PN}-3.0-configs.patch + + sed -i 's:-lcurses:-lncurses:' configure || die "sed configure" +} + +src_compile() { + filter-flags -malign-double + + local myconf= + + # Always use the buildin readline, else if we update readline + # bash gets borked as readline is usually not binary compadible + # between minor versions. + #myconf="${myconf} $(use_with !readline installed-readline)" + myconf="${myconf} --without-installed-readline" + + # Don't even think about building this statically without + # reading Bug 7714 first. If you still build it statically, + # don't come crying to use with bugs ;). + #use static && export LDFLAGS="${LDFLAGS} -static" + use nls || myconf="${myconf} --disable-nls" + + # Force linking with system curses ... the bundled termcap lib + # sucks bad compared to ncurses + export bash_cv_termcap_lib=libcurses + myconf="${myconf} --with-ncurses" + + econf \ + $(use_with afs) \ + --disable-profiling \ + --without-gnu-malloc \ + ${myconf} || die + emake -j1 || die "make failed" # see bug 102426 +} + +src_install() { + einstall || die + + dodir /bin + mv "${D}"/usr/bin/bash "${D}"/bin/ + [[ ${USERLAND} != "BSD" ]] && dosym bash /bin/sh + 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 + + if use build ; then + rm -rf "${D}"/usr + else + doman doc/*.1 + dodoc README NEWS AUTHORS CHANGES COMPAT Y2K doc/FAQ doc/INTRO + dosym bash.info.gz /usr/share/info/bashref.info.gz + fi +} + +pkg_preinst() { + if [[ -e ${ROOT}/etc/bashrc ]] && [[ ! -d ${ROOT}/etc/bash ]] ; then + mkdir -p "${ROOT}"/etc/bash + mv -f "${ROOT}"/etc/bashrc "${ROOT}"/etc/bash/ + fi + + # our bash_logout is just a place holder so dont + # force users to go through etc-update all the time + if [[ -e ${ROOT}/etc/bash/bash_logout ]] ; then + rm -f "${D}"/etc/bash/bash_logout + fi +} diff --git a/app-shells/bash/files/bash-3.1-arrays.patch b/app-shells/bash/files/bash-3.1-arrays.patch new file mode 100644 index 000000000000..6b1fc8f676b2 --- /dev/null +++ b/app-shells/bash/files/bash-3.1-arrays.patch @@ -0,0 +1,45 @@ +http://lists.gnu.org/archive/html/bug-bash/2005-12/msg00062.html + +Date: Sat, 24 Dec 2005 13:27:55 -0500 +From: Chet Ramey <chet.ramey@case.edu> +To: Mike Frysinger <vapier@gentoo.org> +CC: bug-bash@gnu.org, + chet@case.edu +Subject: Re: bash-3.1.1 parses arrays slightly incorrectly + +Mike Frysinger wrote: +> On Thu, Dec 22, 2005 at 09:24:06AM -0500, Chet Ramey wrote: +>> Bash-Release: 3.1 +>> Patch-ID: bash31-001 +>> +>> Bug-Description: +>> +>> There are parsing problems with compound assignments in several contexts, +>> including as arguments to builtins like `local', `eval', and `let', and +>> as multiple assignments in a single command. +> +> still seems to be a slight regression here with arrays ... + +Try this: + +*** ../bash-3.1/subst.c Mon Oct 24 09:51:13 2005 +--- subst.c Fri Dec 23 15:21:09 2005 +*************** +*** 2188,2192 **** + { + v = find_variable (name); +! if (v == 0 || array_p (v) == 0) + v = make_local_array_variable (name); + v = assign_array_var_from_string (v, value, flags); +--- 2188,2192 ---- + { + v = find_variable (name); +! if (v == 0 || array_p (v) == 0 || v->context != variable_context) + v = make_local_array_variable (name); + v = assign_array_var_from_string (v, value, flags); + +-- +``The lyf so short, the craft so long to lerne.'' - Chaucer +( ``Discere est Dolere'' -- chet ) + Live Strong. +Chet Ramey, ITS, CWRU chet@case.edu http://cnswww.cns.cwru.edu/~chet/ diff --git a/app-shells/bash/files/digest-bash-3.1-r2 b/app-shells/bash/files/digest-bash-3.1-r2 new file mode 100644 index 000000000000..337b1b5cc017 --- /dev/null +++ b/app-shells/bash/files/digest-bash-3.1-r2 @@ -0,0 +1,3 @@ +MD5 ef5304c4b22aaa5088972c792ed45d72 bash-3.1.tar.gz 2533934 +MD5 c0d33bdfed6e4e6a9ae9200b77cd5c99 bash31-001 2708 +MD5 63faf622820ca0828131c8b5aeac1e6a readline51-001 2042 |