summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2006-01-04 05:47:01 +0000
committerMike Frysinger <vapier@gentoo.org>2006-01-04 05:47:01 +0000
commit35d675d2e94ae8da7e25b254165dbd633f53f85f (patch)
tree02e88424acc0970c3623f19bee4da057e6ff7aff /app-shells
parentold (diff)
downloadhistorical-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/ChangeLog10
-rw-r--r--app-shells/bash/Manifest13
-rw-r--r--app-shells/bash/bash-3.1-r2.ebuild146
-rw-r--r--app-shells/bash/files/bash-3.1-arrays.patch45
-rw-r--r--app-shells/bash/files/digest-bash-3.1-r23
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