diff options
author | Mike Frysinger <vapier@gentoo.org> | 2011-02-19 17:20:16 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2011-02-19 17:20:16 +0000 |
commit | f0c38757eeb40d9c8a0c8ea067acf3453ed039c4 (patch) | |
tree | 2b2df801e68904b3086fd3f9cddd833dbb661905 /app-shells/bash | |
parent | Respect LDFLAGS (bug #335545) (diff) | |
download | historical-f0c38757eeb40d9c8a0c8ea067acf3453ed039c4.tar.gz historical-f0c38757eeb40d9c8a0c8ea067acf3453ed039c4.tar.bz2 historical-f0c38757eeb40d9c8a0c8ea067acf3453ed039c4.zip |
Add some fixes from upstream.
Package-Manager: portage-2.2.0_alpha23/cvs/Linux x86_64
Diffstat (limited to 'app-shells/bash')
-rw-r--r-- | app-shells/bash/ChangeLog | 7 | ||||
-rw-r--r-- | app-shells/bash/Manifest | 13 | ||||
-rw-r--r-- | app-shells/bash/bash-4.2.ebuild | 6 | ||||
-rw-r--r-- | app-shells/bash/files/bash-4.2-patmatch.patch | 284 | ||||
-rw-r--r-- | app-shells/bash/files/bash-4.2-rhs-split.patch | 19 | ||||
-rw-r--r-- | app-shells/bash/files/bash-4.2-vidomove.patch | 27 |
6 files changed, 349 insertions, 7 deletions
diff --git a/app-shells/bash/ChangeLog b/app-shells/bash/ChangeLog index 16c9f81d7f26..f83ea9f18ee5 100644 --- a/app-shells/bash/ChangeLog +++ b/app-shells/bash/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for app-shells/bash # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/ChangeLog,v 1.276 2011/02/15 03:44:16 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/ChangeLog,v 1.277 2011/02/19 17:20:15 vapier Exp $ + + 19 Feb 2011; Mike Frysinger <vapier@gentoo.org> bash-4.2.ebuild, + +files/bash-4.2-patmatch.patch, +files/bash-4.2-rhs-split.patch, + +files/bash-4.2-vidomove.patch: + Add some fixes from upstream. *bash-4.2 (15 Feb 2011) diff --git a/app-shells/bash/Manifest b/app-shells/bash/Manifest index f97d6c8aa39a..5311d290df7f 100644 --- a/app-shells/bash/Manifest +++ b/app-shells/bash/Manifest @@ -25,6 +25,9 @@ AUX bash-4.0-negative-return.patch 748 RMD160 ba602c6fb3caa055a09a72122c45e160ea AUX bash-4.0-parallel-build.patch 2237 RMD160 82aa28d48f12978cbaea7ebed987d13f5368c2c8 SHA1 c82d0c9ca049fe3c53418f4a3b399a840bbcdc90 SHA256 65db03b0c0b8e2fd917f049e9e84f7b2b234b3e9e37f395d4d8984194b392a56 AUX bash-4.1-fbsd-eaccess.patch 843 RMD160 50e06a8ec83fa756a9749ab5011696e737731afe SHA1 9468675bdb345c01f6a285d76526e851de63a895 SHA256 42a4ee58b0d2fd529e25fcc3ca10d17bbac2c91fd8bcb191d70c788f0b55fb95 AUX bash-4.1-parallel-build.patch 829 RMD160 371bd2d62a0b70c4305697975780165e02f2b38d SHA1 9978a6ed4668509660491799bbbc5b7d6ad2cbd9 SHA256 0da60b91e4fb2326137a4dde6d8937592b6efea45de51194ca1770127637e652 +AUX bash-4.2-patmatch.patch 5871 RMD160 deebbc4318fca428759ea2278c5875d4dc74ac42 SHA1 90d46e2bfb5524944a382c1251a6e006be83c386 SHA256 624bdc277c09e3cd679c91f70fdbfeb543938c55ac3a45116369b75109806a04 +AUX bash-4.2-rhs-split.patch 655 RMD160 39bafe55c4feed9429fb96f061ace0669d648361 SHA1 a5b87d1424d1f6e388f452c2b2763725e1a8704b SHA256 27bd555336ce281267be44e143b83727bc12bbb6264e0a9793069ed1687ff4db +AUX bash-4.2-vidomove.patch 901 RMD160 b541994e2592cab664daf96f25fd6b349a0497ad SHA1 873d55dd698067680f47c878f0a813d4cf54ea63 SHA256 6ff3cc3467b2e8a458309666f80fd36bbfeb0cbff3f7aae0e8a8b761c47cab8e AUX bash-4.x-deferred-heredocs.patch 1255 RMD160 69e3554d225e5a85be3f874b0bb0139c0e24c9b9 SHA1 b8d492af021ae59c9799dfbb169842c23ed9f826 SHA256 845ffcd7035eef5dc029747f211a737e0260b53b16086a37fb3c8ab3609a7d36 AUX bash_logout 205 RMD160 fa6064b67bd02cf66dc490759442a0127770d420 SHA1 a6983665cc842bde96fbc8811be89cf8fda71a45 SHA256 15aaded954389c05d7de5d36c4887db61975ad52c87ad78baf1062ec8997289d AUX bashrc 2796 RMD160 7d88ed1dbe1f88c8752b2301376f4702fc178375 SHA1 783fcfd8c3273184db638f5e61da1d0921426d00 SHA256 de72a331ed65585fd70353d0d36d5d69e229b7db52c7cb97aeefd8f1b148d218 @@ -157,13 +160,13 @@ EBUILD bash-3.2_p51.ebuild 5801 RMD160 454877211f4b171887e1d8c39f37cad998b261f5 EBUILD bash-4.0_p38.ebuild 5561 RMD160 965176e3361d1d0cac9b013152ec2eb6db274a44 SHA1 f061d10a59be9297db2b71b41ebafbb962db6850 SHA256 5874be2015b2f4d340cc7aa34839df07a4b37f70ead6ed6281fbec987a03ddfc EBUILD bash-4.1_p7.ebuild 5588 RMD160 b51148bc278822a53866104fe4c104100c6c7e95 SHA1 ed195b310adabc1a8e7d04d513c058e5dbdfe5fe SHA256 792f06f27d7d8b3186b4368ac1f54d145724120e7f369dfe92f7df1754b83faa EBUILD bash-4.1_p9.ebuild 5588 RMD160 266ea3c5f6115990a7311b344105f633860db162 SHA1 e8a15ffbc52f208579b06af883f7f086dc2df5f1 SHA256 1ec6c799674e9f5dbd08d4a83da2133079e33740b70a42a610e8ab81ddccbaa8 -EBUILD bash-4.2.ebuild 5331 RMD160 fa9b7b99498df4cb0204565c16533d71f6bf8150 SHA1 24aa9c9fc3f1492cc3821c6e663481d650d2045c SHA256 5bcd82f06a41e3e9cb1905782668f78f4e98805b4ae6b7d6e7b51e6409e5c533 -MISC ChangeLog 42828 RMD160 d00d219d88846216acf5ad4b1bfc81d6083bb86c SHA1 3e5c8ad8cb9c54129ddf2ae56ea88bdf892e4a63 SHA256 dcdca0aa1d8974b3a6feba259b3ee2554b2c5810df9a79f747bd08a8c5cc67b0 +EBUILD bash-4.2.ebuild 5459 RMD160 6955edf41eeeeea208ab7f855ab5e01e666905c7 SHA1 ea67fe290f6f8bb939a20b52002c9a5dabae8471 SHA256 701163069ab0e406fd28a5e6f3bcabe7f3785f93a116508518eaf59d76e06ddc +MISC ChangeLog 43029 RMD160 2c00c29a7ac89fc171ebf87988ce04173f9163e6 SHA1 fa3ea2f8bd97591af7a56b4f70d57a71ad60b18e SHA256 5dba31e2458a30df1796bdac67b46d1c72a1f1d42a5c03ef7624d5311a3da356 MISC metadata.xml 568 RMD160 c778ff1669af3c368238bcf481b344b741f0d6e1 SHA1 8d74d1c518351ad8085c9c26a5f2554d8c768b20 SHA256 48d380acb97dda0a7f4bd918b208d11367a8367d289b0a2d78ef08ef9a4e2562 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.17 (GNU/Linux) -iF4EAREIAAYFAk1Z9pUACgkQaC/OocHi7JZfhgEAnT14a+bSjeH3TFu0FcVq11XZ -1y5vAfq9j3CY78kbP78A/iPb76bu7yQB3fNoO5jnFnr/IHdp6J4PzhlqWCi9wIMm -=tPWN +iF4EAREIAAYFAk1f+9UACgkQaC/OocHi7JYf4QD/TZp3kQ8J27Y/pSUsaQM5kOlk +0zni8T+MQ0TJGXy5GdwA/16KQpoLaSiQLwjlW28fPGGgdu0VbDIge59V41TyY7VC +=i7DP -----END PGP SIGNATURE----- diff --git a/app-shells/bash/bash-4.2.ebuild b/app-shells/bash/bash-4.2.ebuild index c8acee5bc0d2..093e72458672 100644 --- a/app-shells/bash/bash-4.2.ebuild +++ b/app-shells/bash/bash-4.2.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/bash-4.2.ebuild,v 1.1 2011/02/15 03:44:16 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/bash-4.2.ebuild,v 1.2 2011/02/19 17:20:15 vapier Exp $ EAPI="1" @@ -69,6 +69,10 @@ src_unpack() { cd lib/readline [[ ${READLINE_PLEVEL} -gt 0 ]] && epatch $(patches -s ${READLINE_PLEVEL} readline ${READLINE_VER}) cd ../.. + + epatch "${FILESDIR}"/${P}-patmatch.patch + epatch "${FILESDIR}"/${P}-vidomove.patch + epatch "${FILESDIR}"/${P}-rhs-split.patch } src_compile() { diff --git a/app-shells/bash/files/bash-4.2-patmatch.patch b/app-shells/bash/files/bash-4.2-patmatch.patch new file mode 100644 index 000000000000..dfe5610abeac --- /dev/null +++ b/app-shells/bash/files/bash-4.2-patmatch.patch @@ -0,0 +1,284 @@ +*** ../bash-4.2/lib/glob/gmisc.c 2011-02-05 16:11:17.000000000 -0500 +--- lib/glob/gmisc.c 2011-02-18 23:53:42.000000000 -0500 +*************** +*** 78,83 **** + size_t wmax; + { +! wchar_t wc, *wbrack; +! int matlen, t, in_cclass, in_collsym, in_equiv; + + if (*wpat == 0) +--- 78,83 ---- + size_t wmax; + { +! wchar_t wc; +! int matlen, bracklen, t, in_cclass, in_collsym, in_equiv; + + if (*wpat == 0) +*************** +*** 119,123 **** + case L'[': + /* scan for ending `]', skipping over embedded [:...:] */ +! wbrack = wpat; + wc = *wpat++; + do +--- 119,123 ---- + case L'[': + /* scan for ending `]', skipping over embedded [:...:] */ +! bracklen = 1; + wc = *wpat++; + do +*************** +*** 125,140 **** + if (wc == 0) + { +! matlen += wpat - wbrack - 1; /* incremented below */ +! break; + } + else if (wc == L'\\') + { +! wc = *wpat++; +! if (*wpat == 0) +! break; + } + else if (wc == L'[' && *wpat == L':') /* character class */ + { + wpat++; + in_cclass = 1; + } +--- 125,148 ---- + if (wc == 0) + { +! wpat--; /* back up to NUL */ +! matlen += bracklen; +! goto bad_bracket; + } + else if (wc == L'\\') + { +! /* *wpat == backslash-escaped character */ +! bracklen++; +! /* If the backslash or backslash-escape ends the string, +! bail. The ++wpat skips over the backslash escape */ +! if (*wpat == 0 || *++wpat == 0) +! { +! matlen += bracklen; +! goto bad_bracket; +! } + } + else if (wc == L'[' && *wpat == L':') /* character class */ + { + wpat++; ++ bracklen++; + in_cclass = 1; + } +*************** +*** 142,145 **** +--- 150,154 ---- + { + wpat++; ++ bracklen++; + in_cclass = 0; + } +*************** +*** 147,152 **** + { + wpat++; + if (*wpat == L']') /* right bracket can appear as collating symbol */ +! wpat++; + in_collsym = 1; + } +--- 156,165 ---- + { + wpat++; ++ bracklen++; + if (*wpat == L']') /* right bracket can appear as collating symbol */ +! { +! wpat++; +! bracklen++; +! } + in_collsym = 1; + } +*************** +*** 154,157 **** +--- 167,171 ---- + { + wpat++; ++ bracklen++; + in_collsym = 0; + } +*************** +*** 159,164 **** + { + wpat++; + if (*wpat == L']') /* right bracket can appear as equivalence class */ +! wpat++; + in_equiv = 1; + } +--- 173,182 ---- + { + wpat++; ++ bracklen++; + if (*wpat == L']') /* right bracket can appear as equivalence class */ +! { +! wpat++; +! bracklen++; +! } + in_equiv = 1; + } +*************** +*** 166,174 **** +--- 184,196 ---- + { + wpat++; ++ bracklen++; + in_equiv = 0; + } ++ else ++ bracklen++; + } + while ((wc = *wpat++) != L']'); + matlen++; /* bracket expression can only match one char */ ++ bad_bracket: + break; + } +*************** +*** 214,219 **** + size_t max; + { +! char c, *brack; +! int matlen, t, in_cclass, in_collsym, in_equiv; + + if (*pat == 0) +--- 236,241 ---- + size_t max; + { +! char c; +! int matlen, bracklen, t, in_cclass, in_collsym, in_equiv; + + if (*pat == 0) +*************** +*** 255,259 **** + case '[': + /* scan for ending `]', skipping over embedded [:...:] */ +! brack = pat; + c = *pat++; + do +--- 277,281 ---- + case '[': + /* scan for ending `]', skipping over embedded [:...:] */ +! bracklen = 1; + c = *pat++; + do +*************** +*** 261,276 **** + if (c == 0) + { +! matlen += pat - brack - 1; /* incremented below */ +! break; + } + else if (c == '\\') + { +! c = *pat++; +! if (*pat == 0) +! break; + } + else if (c == '[' && *pat == ':') /* character class */ + { + pat++; + in_cclass = 1; + } +--- 283,306 ---- + if (c == 0) + { +! pat--; /* back up to NUL */ +! matlen += bracklen; +! goto bad_bracket; + } + else if (c == '\\') + { +! /* *pat == backslash-escaped character */ +! bracklen++; +! /* If the backslash or backslash-escape ends the string, +! bail. The ++pat skips over the backslash escape */ +! if (*pat == 0 || *++pat == 0) +! { +! matlen += bracklen; +! goto bad_bracket; +! } + } + else if (c == '[' && *pat == ':') /* character class */ + { + pat++; ++ bracklen++; + in_cclass = 1; + } +*************** +*** 278,281 **** +--- 308,312 ---- + { + pat++; ++ bracklen++; + in_cclass = 0; + } +*************** +*** 283,288 **** + { + pat++; + if (*pat == ']') /* right bracket can appear as collating symbol */ +! pat++; + in_collsym = 1; + } +--- 314,323 ---- + { + pat++; ++ bracklen++; + if (*pat == ']') /* right bracket can appear as collating symbol */ +! { +! pat++; +! bracklen++; +! } + in_collsym = 1; + } +*************** +*** 290,293 **** +--- 325,329 ---- + { + pat++; ++ bracklen++; + in_collsym = 0; + } +*************** +*** 295,300 **** + { + pat++; + if (*pat == ']') /* right bracket can appear as equivalence class */ +! pat++; + in_equiv = 1; + } +--- 331,340 ---- + { + pat++; ++ bracklen++; + if (*pat == ']') /* right bracket can appear as equivalence class */ +! { +! pat++; +! bracklen++; +! } + in_equiv = 1; + } +*************** +*** 302,310 **** +--- 342,354 ---- + { + pat++; ++ bracklen++; + in_equiv = 0; + } ++ else ++ bracklen++; + } + while ((c = *pat++) != ']'); + matlen++; /* bracket expression can only match one char */ ++ bad_bracket: + break; + } diff --git a/app-shells/bash/files/bash-4.2-rhs-split.patch b/app-shells/bash/files/bash-4.2-rhs-split.patch new file mode 100644 index 000000000000..59c436479ff9 --- /dev/null +++ b/app-shells/bash/files/bash-4.2-rhs-split.patch @@ -0,0 +1,19 @@ +*** ../bash-4.2/subst.c 2011-01-02 16:12:51.000000000 -0500 +--- subst.c 2011-02-18 22:30:13.000000000 -0500 +*************** +*** 3371,3377 **** + if (string == 0 || *string == '\0') + return (WORD_LIST *)NULL; + +! td.flags = 0; + td.word = string; + tresult = call_expand_word_internal (&td, quoted, 1, dollar_at_p, has_dollar_at); + return (tresult); +--- 3375,3381 ---- + if (string == 0 || *string == '\0') + return (WORD_LIST *)NULL; + +! td.flags = W_NOSPLIT2; /* no splitting, remove "" and '' */ + td.word = string; + tresult = call_expand_word_internal (&td, quoted, 1, dollar_at_p, has_dollar_at); + return (tresult); diff --git a/app-shells/bash/files/bash-4.2-vidomove.patch b/app-shells/bash/files/bash-4.2-vidomove.patch new file mode 100644 index 000000000000..117b73859db1 --- /dev/null +++ b/app-shells/bash/files/bash-4.2-vidomove.patch @@ -0,0 +1,27 @@ +*** ../bash-4.2/lib/readline/vi_mode.c 2010-11-20 19:51:39.000000000 -0500 +--- lib/readline/vi_mode.c 2011-02-17 20:24:25.000000000 -0500 +*************** +*** 1115,1119 **** + _rl_vi_last_motion = c; + RL_UNSETSTATE (RL_STATE_VIMOTION); +! return (0); + } + #if defined (READLINE_CALLBACKS) +--- 1115,1119 ---- + _rl_vi_last_motion = c; + RL_UNSETSTATE (RL_STATE_VIMOTION); +! return (vidomove_dispatch (m)); + } + #if defined (READLINE_CALLBACKS) +*** ../bash-4.2/lib/readline/callback.c 2010-06-06 12:18:58.000000000 -0400 +--- lib/readline/callback.c 2011-02-17 20:43:28.000000000 -0500 +*************** +*** 149,152 **** +--- 149,155 ---- + /* Should handle everything, including cleanup, numeric arguments, + and turning off RL_STATE_VIMOTION */ ++ if (RL_ISSTATE (RL_STATE_NUMERICARG) == 0) ++ _rl_internal_char_cleanup (); ++ + return; + } |