Gentoo Archives: gentoo-commits

From: Fabian Groffen <grobian@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/proj/prefix:master commit in: app-shells/bash/, app-shells/bash/files/
Date: Fri, 28 Dec 2018 10:26:35
Message-Id: 1545992779.b7c921b97b592678aa3185daeec17a3479b71e99.grobian@gentoo
1 commit: b7c921b97b592678aa3185daeec17a3479b71e99
2 Author: Fabian Groffen <grobian <AT> gentoo <DOT> org>
3 AuthorDate: Fri Dec 28 10:25:37 2018 +0000
4 Commit: Fabian Groffen <grobian <AT> gentoo <DOT> org>
5 CommitDate: Fri Dec 28 10:26:19 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/proj/prefix.git/commit/?id=b7c921b9
7
8 app-shells/bash: migrate to gx86
9
10 bash-4.4_p23 was actually identical to gx86 version except its keywords
11
12 Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>
13
14 app-shells/bash/Manifest | 73 ---
15 app-shells/bash/bash-4.3_p48-r1.ebuild | 288 ---------
16 app-shells/bash/bash-4.3_p48.ebuild | 288 ---------
17 app-shells/bash/bash-4.4_p23.ebuild | 259 --------
18 app-shells/bash/files/autoconf-mktime-2.59.patch | 197 ------
19 .../bash/files/bash-2.05b-parallel-build.patch | 15 -
20 .../bash/files/bash-3.0-configs-prefix.patch | 48 --
21 app-shells/bash/files/bash-3.0-configs.patch | 71 ---
22 .../bash/files/bash-3.0-trap-fg-signals.patch | 23 -
23 app-shells/bash/files/bash-3.1-bash-logger.patch | 89 ---
24 app-shells/bash/files/bash-3.1-gentoo.patch | 55 --
25 .../bash/files/bash-3.2-dev-fd-test-as-user.patch | 26 -
26 .../bash/files/bash-3.2-getcwd-interix.patch | 51 --
27 .../bash/files/bash-3.2-interix-stdint.patch | 59 --
28 .../bash/files/bash-3.2-ldflags-for-build.patch | 37 --
29 app-shells/bash/files/bash-3.2-loadables.patch | 239 -------
30 .../bash/files/bash-3.2-parallel-build.patch | 16 -
31 app-shells/bash/files/bash-3.2-process-subst.patch | 12 -
32 app-shells/bash/files/bash-3.2-protos.patch | 57 --
33 .../bash/files/bash-3.2-session-leader.patch | 65 --
34 app-shells/bash/files/bash-3.2-ulimit.patch | 13 -
35 .../bash/files/bash-4.0-bashintl-in-siglist.patch | 12 -
36 .../bash/files/bash-4.0-cflags_for_build.patch | 23 -
37 app-shells/bash/files/bash-4.0-childmax-pids.patch | 123 ----
38 .../bash/files/bash-4.0-configs-prefix.patch | 15 -
39 app-shells/bash/files/bash-4.0-configure.patch | 25 -
40 .../files/bash-4.0-interix-access-suacomp.patch | 50 --
41 .../bash/files/bash-4.0-interix-access.patch | 103 ---
42 app-shells/bash/files/bash-4.0-interix-x64.patch | 40 --
43 app-shells/bash/files/bash-4.0-interix.patch | 14 -
44 .../bash/files/bash-4.0-ldflags-for-build.patch | 15 -
45 .../bash/files/bash-4.0-negative-return.patch | 33 -
46 .../bash/files/bash-4.0-parallel-build.patch | 65 --
47 .../bash/files/bash-4.1-blocking-namedpipe.patch | 14 -
48 app-shells/bash/files/bash-4.1-fbsd-eaccess.patch | 29 -
49 .../files/bash-4.1-interix-access-suacomp.patch | 40 --
50 .../bash/files/bash-4.1-interix-stdint.patch | 34 -
51 .../bash/files/bash-4.1-parallel-build.patch | 23 -
52 app-shells/bash/files/bash-4.2-darwin13.patch | 41 --
53 .../bash/files/bash-4.2-execute-job-control.patch | 24 -
54 .../files/bash-4.2-freebsd-pipe-open-eintr.patch | 18 -
55 app-shells/bash/files/bash-4.2-no-readline.patch | 19 -
56 .../bash/files/bash-4.2-parallel-build.patch | 106 ----
57 app-shells/bash/files/bash-4.2-read-retry.patch | 41 --
58 .../bash/files/bash-4.2-speed-up-read-N.patch | 112 ----
59 .../files/bash-4.3-append-process-segfault.patch | 18 -
60 app-shells/bash/files/bash-4.3-arrayfunc.patch | 15 -
61 app-shells/bash/files/bash-4.3-compat-lvl.patch | 13 -
62 ....3-mapfile-improper-array-name-validation.patch | 13 -
63 .../bash/files/bash-4.3-parse-time-keyword.patch | 30 -
64 app-shells/bash/files/bash-4.3-protos.patch | 10 -
65 app-shells/bash/files/bash-4.3-term-cleanup.patch | 47 --
66 app-shells/bash/files/bash-4.3_p39-cygwin-r2.patch | 690 ---------------------
67 .../bash/files/bash-4.4-history-alloclist.patch | 26 -
68 app-shells/bash/files/bash-4.4-jobs_overflow.patch | 14 -
69 .../bash/files/bash-4.4-popd-offset-overflow.patch | 30 -
70 .../bash/files/bash-4.x-deferred-heredocs.patch | 47 --
71 app-shells/bash/files/bash-eol-pushback.patch | 11 -
72 app-shells/bash/files/bash_logout | 9 -
73 app-shells/bash/files/bashrc | 113 ----
74 app-shells/bash/files/bashrc-prefix.patch | 40 --
75 app-shells/bash/files/bashrc-r2 | 108 ----
76 app-shells/bash/files/bashrc-r2-prefix.patch | 37 --
77 app-shells/bash/files/dot-bash_logout | 6 -
78 app-shells/bash/files/dot-bash_profile | 7 -
79 app-shells/bash/files/dot-bashrc | 18 -
80 app-shells/bash/metadata.xml | 19 -
81 67 files changed, 4321 deletions(-)
82
83 diff --git a/app-shells/bash/Manifest b/app-shells/bash/Manifest
84 deleted file mode 100644
85 index 19bef7dd3e..0000000000
86 --- a/app-shells/bash/Manifest
87 +++ /dev/null
88 @@ -1,73 +0,0 @@
89 -DIST bash-4.3.tar.gz 7955839 BLAKE2B 398461e90a1ab6fd726b1a9db41c4c2a1e184034e3b96029bd17097338f1f9869d1c2216bde0b5b3c8e561629824348a0da3045cc425914e8e024180a175efe4 SHA512 a852b8e46ee55568dce9d23a30a9dbd1c770c2d2a4bc91e1c3177d723b31b32c5d69d19704a93f165891b409b9dd2cc65723372044e2bd0ee49ed59a11512651
90 -DIST bash-4.4.tar.gz 9377313 BLAKE2B ac0e481dd4f2d5b91eea4f0156f1fc398ef8bd1ccd941366aa9b041be576114c51e1ff1431ec871e96fb72257c2a05a0ebcbd88c43c221610fef7dfdb2502fc0 SHA512 73de3b425faaac55e45456b0f6f6d8077b5dfa7bb76e0d1894a19361b4a2b6bd4fbbe182117ddbfe9b07b4d898fba03537c261badc9533dd3c0da891764c7f29
91 -DIST bash43-001 1617 BLAKE2B c268cb0b2cd02e1bf5ef20eb84f317193f40e00b8f1ecf082640777b03ca070ad9b70cda746a0bad7fd94076126d4fdcc48e31c88bdb66c451eba4fd31bdf83b SHA512 a1011392652180a28f9837af4a341a80beb929c1458e2384e282f0007713c5fe8d0b315abf1340b3707748d3caed322135dee87b59eeb7612ee5130f87d79888
92 -DIST bash43-002 1594 BLAKE2B d1465949ab51e582498068e4e7b2988ce39ea9ca959aea7a90f5e050f119ba5cb96f1291d3ab9fae187e0b8894ffef73823139a6059a3e227bb1fd3934a28f10 SHA512 e3178c85f553522d5d1c5fd39e76f015b680a8ccc84836a5e10283b2aed6e5b7cc3d23af0e67a270b7622dce0abf35dd8a95afa9bb6f89b73a9439f7435175a4
93 -DIST bash43-003 1465 BLAKE2B 8fc9e83e39e0c43dc9365e3014f61d7a6643832c78c29da71dfd0f3adaf3dced5075f57ef42e183fe892e4db837214fedb1b8fd00f717e105c56b460685f5409 SHA512 dc2c5fad8d357d1301e419afd959dfaf015a63172857080c11f77ab1bb7d1d737f411eb0e70a861f98a36bed1b19edb7217a4fa9f4773e21706b62dc56ec3464
94 -DIST bash43-004 1534 BLAKE2B e227900b10cf9a35055c79f6a25fa1c6db13c5ef652b2733570297c7fde5001518aff2c7b3bd0e072ac2d6e950d916f6f7d4c318db048aa15c1fc8791fbc1ebf SHA512 6a5177d5f4205ca9d3824601052dc6d0cd768638cdfc125501c5643dd51d537f5d075cbd11a10356caf4205e47a0287c72636065789ecce264129fc92fbda420
95 -DIST bash43-005 2636 BLAKE2B 659e60ce3571571e74c116b1bc502168641eeaa6fd48131842c022bbcfd9679f4e1e7e7f593538dd51caefcc0fe3b122e5e73cb8384e4fea9212f810cbe5cd43 SHA512 e201aa8ef0ce0d74fa5ee42e8171bbb5ba633d831d863a8e8afc5d5157581bb055d16c52b316cc945979a852b0eae7921244a24b89818acfb7c96572ed04d1f8
96 -DIST bash43-006 1445 BLAKE2B 40c0af5e2ff2d97f30c0de260ec32ece50b43651a89bc75dd4e1fa2558a54d687c577a0f44ab4464abe4db79520a08eb1ea23d090d72012ab9bf472cbf29a2ef SHA512 d1da3c9d3781482d87cdcbfd69ab3958ed4950f2a00e9d15228ecb4ad5ca8ae253eff378010b4908d04df2ecf658e08f7c2efc97d6a0b8dd2317552c1895d7b2
97 -DIST bash43-007 1331 BLAKE2B 66b94d60ae4262aecb23ba1beaf09eb976c93c60e64424e0fb3dca1bde24323a09f71c523c3d32085c7888dd99e1fc5e3aa774a2e1f56e1cdbaefd93e7f688dc SHA512 c445b5cdd486d06991c78d4c88e2e44e49f74d1fc07b8e4bc9492cccfc4ff4045587bed6b24d745974c6339340e45b9756c27723fdb79e7591e7d6c5d350a86e
98 -DIST bash43-008 4575 BLAKE2B 32bb0cb4dc247545e72060a8ce658fa8cbde0113e38d0058d0f85bb5036d6eeeb053989aedf21f5f13d8316af6aacff8f4a9b09650f50b58481386352af8718c SHA512 53bae88cd3341a4ef8c60d6a294c09402103d1b20f485cf85775e6730a3d2eec8e6ebe15aa6dd95336e4a1f540f21db394823b9d04b416e5af071a7a6c618900
99 -DIST bash43-009 2413 BLAKE2B 42cf000b7f52b4f31a72387f655366f42f6241a2ea7834eeb0bda9b26008bd462637079f8abc0ebda6f80b88127a5c8f0da70a10a090ba43b44417563287939a SHA512 8d06fe612cd32cb414fdcdc34d4420b8991b268dd3ddd2dd47b3d01679954debd78e21f697a7f495d2340f0dcc8acdc3ad6809b8870bf5fd300afb1439788776
100 -DIST bash43-010 5357 BLAKE2B fee1bf3723344b671ed0221a0083cc1156a140b71357113277b8f71f8bad4931ff644f31a965bbe14aa9bcbce7db958017207795c6ce58ef76e127055e7934dd SHA512 e36e550d749f52bab01256ed5f8f1b48fe53190c1a0a0a15c545328261c1f50b85f574b44188855858de1f2d045945770c4940bdecadd8381ea2cf174bde2fee
101 -DIST bash43-011 1533 BLAKE2B 2ebc249170e4a08cc0bbb069ba57110b0884b87c0341ed90e0f8f4b029940e4d1d169013ec2a289ac237bb68d61f93a9b380103f50081c688ab6186dc1077912 SHA512 678bbcd92b927c86631cd42d6d3ab7596a3ffd20b640f471a9783a7972f05d2d4fb15970c12e7645e90d407c5a2d2aadcad698113211724b0ef8d89eccd2cd66
102 -DIST bash43-012 1365 BLAKE2B 27460ae8f102032cd7367da8c050e08f69fe20a0dcb25804c4fa5b0e04238b6c71732038627a7b8a9b55a95e1aafba8ed06d9f3a2b7c6945daa1b61667af8be5 SHA512 169453248edb55baf761b0c9c7b296ed2c24543b80fcf4756b8dd398054b6317da285c5e9cd68828f2620b05874f21a08773844ee32416daef76b88d0ef3ee6d
103 -DIST bash43-013 2151 BLAKE2B 8732cabe5634ee11869b708b34edab1e7bea13d9e2f2f34371587c532447d04185193ebff87c04e6a9cacaba5574ecda03e0c0d731ed6d4b0261141bbb925dfe SHA512 536bbf0c9b23eb824579955e7fce892cfc1e1d9fbcfc66810353ac4ff238e9e57361c0a46b3f3573ca8ca563331070ce55442ffea38e2a632840b6a318db1c88
104 -DIST bash43-014 3533 BLAKE2B 210d0a0af40d42342ca4e87ce866c5bb12b6f630b2921f6c187fbb289070dbc05a2bac9c7a47cf7631f7f6ddd218248ce700b3db40c33d3cc54b3069f80fbf93 SHA512 79fb50f62dbdca5e45a1359570e6d2173d442b3d4ddd4eb44809ed45ac022de4fe3f0aadd7672b4c8d9739405d51762486ee0c677b56f9c7d60e6224be84b87a
105 -DIST bash43-015 1894 BLAKE2B e8111717c9f2d8adb4301590a55837b087c3a30fcb697331d1b0903c9cce268b51c57930e99f879a8808763a947a563c9787dee04d74f4a5203418d49f5e05de SHA512 38a7af22f13f1f45705ceadf3abb52be75f3239959c2b1d57f333d137f25f14ed92c4d209b35417d449b1ec4291bbd984bb5fd11ad40375b22d2668b33fb8efb
106 -DIST bash43-016 3674 BLAKE2B 1a356023d42d94a570cf019c13f228f5a9327a92fabae762ada8b420350256aae652c46e1b9abb7cb039ee1564d3591ea64fd35f13cc699b82a8c1f48ed853b7 SHA512 52ab2966ccd42554c8bd76041e07921388220b46c93c34190197cdda38a085fd499d71e2e0a10daea130e6782ada556f35b1a37d06d023e83c4c4d665d07cd3f
107 -DIST bash43-017 1565 BLAKE2B fa1a2b066a58d77eb5376c47799a0c059135265a6569796761f15ec07d314d7c171902f9e077d1c86648243264cc7811d57c7eb58891cfb07fcbb1f4b9e8e970 SHA512 88b11f324a780823b459b1e8a0904348c56079b4103cb86025d34dbba02543b0b7fbc2397bf043c24c1363f30539a6fe9b9f9fc717be9798f466071d1d420bb9
108 -DIST bash43-018 1315 BLAKE2B 267b2a1e4c6e27ac4e496de42b2891bf97b445ce853993a46b619000fdc2c3acf8f404d10cf247b7ec72469b97d861b2bf31356ea71ff2e88d71ccf5d5973e0c SHA512 f83d8e1d6d8fa8adf1715b8d4130730a13f5cd626f75e9e4b8c63244645a45a3f1fbac03081bb9d1e46864919d1b3189a9bb6d7a5e7a8854e6270ab3269c771f
109 -DIST bash43-019 2610 BLAKE2B 7fec02f35c2d99fcaa2167e269fa9569ecdfdab8f88b21182f658f16206bebcb45cee9a1c65eb76079890b8159e760d90f7167d8beb8ac3480cb45fd161f07bc SHA512 77e6dac3079d9282f6f85940a762b0da2473ac0d35e9bad2ebc2862bf0f3c4376a6220c746c1c37de0b4d492251ec9531a62c8a042a1be5e485f8f5ae6fa0704
110 -DIST bash43-020 2777 BLAKE2B 6b8d6af840871080ad768fd899bdf559a2e2d64522f8b525e68f96f9641fc3a86729e52c72bed9a2636ba9c210f29a9697f2f35f43450e463c99c6bba3a30588 SHA512 fa06563eb46609115750ffa88098b07c608cc8b13fc31356f33e1428a4da4d2610e122e0241356afcfadfecc5ccee5db4b7cf07f74005e7f30240ada4a81b5f7
111 -DIST bash43-021 1623 BLAKE2B f394d58c914191c36bcf4e272c690c44e644d690793ac47e679f434c964dd052fdcd754282c3b164dbcde80941dcdb471dd52315c9fb96654419f26edd9a08ec SHA512 90dc85302d9bc60e68fa8cce472b7e022d8a6ccee361f97aad4cbe5f1585b4870ab9997a3e6fac420aaf84c3dce9757716eb08f4fa6b38e14bac4f2d5d503731
112 -DIST bash43-022 1782 BLAKE2B cd3e9e3ce3b7bd3902ca3253dd05fabe1fd4fd3eafcce6c21790cb6d30f8f891620cf33acda4d8496d119d5ac3ab8725fe62923c288d0ea13fe5cf9536de6e99 SHA512 721b772349f9e0cc65975e419fabe4acdb23c77796a5d8fde01f110687ea1cb7d23fb706fc0452fb3c2082958a81c95b82f277e1f8f722b1156913efd59afc30
113 -DIST bash43-023 3414 BLAKE2B 521df59dc795da45cbb7c1fd09cedc5bf71d5167adabfcbd1c30a0d8fa87b27cad0dee873c01cd9ebc1cd7f2bf71bc4190309dda3452adbfe563a41bdc3b55b9 SHA512 d45b5f5dc4682c7260c8b6ef6faa99c929d2159cc34534931790f71f76e7324376e4a5d4a2a3bc21c16c25a8206554580943e7a3f672ec5a4af16cbccd216819
114 -DIST bash43-024 1909 BLAKE2B bd9f5997e9509f70eaafa4fc4a1b508e013fb50a48d872b08c98219ea8444fbf1de8cf6ae86b97885f382231d8b6f04f9e1debc381078b4e306e341c585ca28d SHA512 eada2b4839b81f28f63a874e08c72dfee9708c0982d2447347c17770a29c8fbb3d3f8c58c8a22b0d46a9d10abbd79dec11b5815257fb39af06420ef3602f8499
115 -DIST bash43-025 3940 BLAKE2B 4b935b826c80a5704a38d066d213c43c0254bd68b5dbb35e353c6e3ce109aaf87e02efc179df6d4274dc991658822baf91177c1343f4dcd080124ce391711be6 SHA512 b4ea28ea0a24c8609d5c3a10114c5fec87ab978ec60700c36992d093e7afd976dbaee4a0d62c6e41e8ed6674c356fc26589f4c5168642dec8df8d727d7127822
116 -DIST bash43-026 1575 BLAKE2B dcd77389fe1236854210fe67cc720e33babbb1c3c54c5d994ed3a4a6073cfa4b8a8b210d9ffd1a38f16900b81cd6907bd6e2df029adac8e9b1bdc98ba0869002 SHA512 d55620c86ab4835eaf53c18033a939e00ebbef7045d1429bd6fb212be6da167c368b4c03aec6c00ba60a1363b9cf8a4828e85c8108c5476b4a342e6c57f03897
117 -DIST bash43-027 6889 BLAKE2B 64f0f71a15f3469f75cad1be4f09860b18847172c6c56d12b7163804f0b0790dd70a82c0d4359e8d1c6c6b6c9769c1128522f049e71992827f9c76329ae9afe7 SHA512 6941156db9a6ab35b2d6ddc63eec064e03da779e29f47e33b467711e3405c9adb58ad33be3ad3c77aea1e84a314d5404c8e1a8475408991f5f719b93c5a276b3
118 -DIST bash43-028 69606 BLAKE2B 467d6077ff4f377cb0f996b0eb96dbcb4a81a476fa460e0507eeddf33ded5b4d167316eed49305cf304b60f3628f4745dadc93b4692fb5f79b60ac3d7b4203a2 SHA512 4317380539e3a93167f195eddd0acf0c75a5d86d5ef243cb7f7dca43e745badc3ebbc081b099678ac17dc03d9a3ed4a3ff3c6636bb1887e73e94b8ff9ced7c88
119 -DIST bash43-029 1824 BLAKE2B 44d601556420815c3c128c46b6a50f1f82e24edee0f99654af2ba9f343576fd60fdfd985baaa5d83c00ff225aea33e8c13b4d4c679eafefd6e0c9d0c2fc88fe9 SHA512 e25783c7557c1cda8344ba779d59f83e26b90b0aca393b5f7ee389e0583ccf81eba394589e992b33eb6c969083a8a4ff7fc8ce52059cab3b71289d085d381f07
120 -DIST bash43-030 63206 BLAKE2B c551721c4f6e245dd59b61ed5185767baf5d6840123c4a0b0c4d676c540247952b0a7ad764672be7d778954f8403013e5deb19abf044933ed0efac3fbe5a7d25 SHA512 ae41a9a5326ceb8e7105e359be097e14876160f6357bfa7c5cd3c4a495a629be762c3db671754c2cffc6abb34998aad91dde4a449ba16a0c6da844bac53feca4
121 -DIST bash43-031 3689 BLAKE2B 8598e2e35e5c4dc6e358267a84b4720396d55fa2bd723d2192f0a172e3d1ec087bbc8e4b48321d26655d4f84b7fc425b1d9ae352dc4b0faf4fdd02513ecd582b SHA512 3178b4ab48860ed284bb64ac9b36b6d4d1681c0d4bc37ceeb93e73c9dd140bd0a71e86a86ae595aab43babedae79d75a4b11c57e6ad6800f43ab5f7647f6c4c9
122 -DIST bash43-032 1734 BLAKE2B 4f6d37a0758d2cbd84e3a4a5bc380abac226ca70c2567dae07f4fc297e49c14664a1c11b4a482acce695831ebd642e2bd3463047b251db9e5c138ab5c359cc1c SHA512 47afc6308bd4bed20661a87761330854508a745a1c2a7f2d661fbe0d95b00d2d5707cc04f510fcd027b3fdb065d9414697715bff33c707a56955e27341d1bfd0
123 -DIST bash43-033 7038 BLAKE2B 53791ea4aaa3b65d0b0da0227de8e694e24d8f83050bccf51011dea5334cf1028752444df8224ed0cdcb4341035a76063e752c433a8fadda6259eb329c3b1334 SHA512 3eed328960d77317e1742a9b53ccf40b304657cd535d7f283bdc24219c65ebdcb7aca3019fc8fd9e7152f42dc411625acb1b529f80e4a6c5b750b8f7cbd2e4d0
124 -DIST bash43-034 2392 BLAKE2B f6779ef5a6df8ec18313a8e95ced08cd07a37b328145e38806ccfba5176676a0dd3260a4065b1fe72285faa1bf65aefe993f03b7a57a1801c950fa3a8ebdcb29 SHA512 95d09b843287dc18845b75ac6657a2bd7bd71c31a62f922e7177368678ddf13c0f20498bc17bdf4cd5c1c34d40838174791d1e464ceca168957c68e789e34d06
125 -DIST bash43-035 1800 BLAKE2B d99d907ffaf97916a6b68061b0a5fbebc4bd53361a3b7f3b32d0da21228eca43894692779ce7e54712ca02dac5088cb930d38a9d459e8130206c2cb84c7587f2 SHA512 1ea68e7ffb15356fdcf5eed08dd7fe0e16aea2928a4510fcfafe79e926d7ac25f013641bf547bfff0401bbb7e1476a802208e4f1ccb8b02ed20c094f99e450d2
126 -DIST bash43-036 1539 BLAKE2B b28fe78f05ed2742ec060df16a8fe28b6dfccd48f9c060f7b2a136475fe47424a3ff7f9d3a8e595a119564792bcac7e474257184a920fabea8ed440c5e0da41f SHA512 089a05879b8b65c9f11c55127364a3281b651e71cbedfad6221e31dc88eca15d813986f999a22921726873db9590b7b50afcd6162027fe516c2a94e8734e3ee7
127 -DIST bash43-037 1284 BLAKE2B aa7f11383b94da283484dd92d1caf5de9cbbcf36023624cd9498c81c12d8bfa8957163749f2dfb13b02189f6fbc53ed2643f47294d170ce548855b92876c8079 SHA512 7977c0fb9142cdea259b06322092aab3231b9773cc397519bedb6f731aea02a46441c67615b31fd19c886678eb1985687d07357d15fc7f08e946404efc564966
128 -DIST bash43-038 2354 BLAKE2B 991da235fecd4e9a0d28baff0af76de721eb521d5351944341a78b34e40690757100033b571f80217656938fb63e8dbb5861f829e78c01af5725ff6360e2635a SHA512 2ef2557b17867b5820a9e5619daa1cddb3fadcff7470504c148828a3007217767da4bf540dc835cf263f9c943b2c1aa909c845f8410f69e2d04c8b3d659efee3
129 -DIST bash43-039 1531 BLAKE2B 6d2c4630f18f7d6d90051720caca30573c5f068cc390e7e0a486530d0e2495dbfd764a9ae19c088679b8a51a21ed69684c9f0b30e922042f42ed0a6caf98e0d7 SHA512 f9745a05bfbbe39f8e5af3865de3a32391d7ff291289977e23340c79a3783b4fad15bdcf8ce62478916b43fe18501c4d7c65cd54d3c20e8bb889919df48a9a19
130 -DIST bash43-040 1532 BLAKE2B a41175fd9d44d622905c0344b2a255a8c268d73fe029eaffa0dc5127f471c42b683e23ec27cbacbe033717bfc369422822d3a6ba1b4dba032d5fb42692782b64 SHA512 25a0696f1f0e78cb971afa404e0b7fe634b70d49d6a5a9d6ff5506c42063968e8ede83ad80bd0b79601363676fe3abfedc3b76984f6f9ad2e7798790682e21d0
131 -DIST bash43-041 2362 BLAKE2B 4bef094a1da2fb2ed7d47a3a99179ab1639ad3eab292a9758ce572ae8e88268e7de49efe1f8705cd3510ad4321f8bd1da432261a68aca773e66f49dd5eaa0378 SHA512 d75cdd6a1fb8aeb1a4e88f046cfea3ec493b994b96f60f27d5577b59408422bb7c51cc4525cadab821fd8c57f44fb07f811b087d077359242caff3b54cfc6819
132 -DIST bash43-042 1535 BLAKE2B 627751b309954235c25c20b5535b9e2bad531445849cda46176311118b4121c4bc7e02d8325b2a711e1db2b1a172d7a3a0241189dcee7892537d659e6074a238 SHA512 01a6601029c0a55c9bf1a4ace3f387f9d094a9b9ee3511e2113c000123d85b1d5813c369e62d5a6dd329f515ef0d67d11394a6c0e4516956387556c13d13009a
133 -DIST bash43-043 1942 BLAKE2B 6a41f518ba89c538b22caa9fc030ee8c662addd003de991088ced9767ab7962caa7e90a69b390392ad37a860598e6a33170795280c442a4a9c1c391050aadab1 SHA512 eb05e537fac08587d0755ad59218bb5a51685aefc1476d6e3feaf72acd1e08cbda512988d8c157425e7939863b313d1e36f51b32f8a8497655c6b0710a24b738
134 -DIST bash43-044 1658 BLAKE2B 91579fe95617923aaa62a1d2c62b1d772dd1a3f725795b434e321ae44ccceb2f5802494175fb61c36b04890efd466687b8cf66abdee7cfd942def08521900909 SHA512 2937ef80c99e93094e4aaa6a93d077efc3e433a4712c17e30590a0abeb5488293365cb8aa19e37d25b7d5c38d3ad26cdea12b904e5ffb2cdb16f18ab12f422fd
135 -DIST bash43-045 1312 BLAKE2B a34b02287066e74a5afefc3ce6868a3deca0eaa475e578f683a1a22885912c0967cc1ca546f6e72ec213b4a9b78159b3007a767787be18361a94035eb0e19ca0 SHA512 7b79dacff44e5358da736334d2277a2879ca1389e22e9dac50e139f30dab623bc89a56930d89e74efc468a00d051f6747ccaffcd1a30d7c737d49780b9830e3d
136 -DIST bash43-046 1494 BLAKE2B ee4b87d81ac97ed53728051f154da7d4ac575c589a1194d16fe90614cc90c1e2d136d5b91978dd6c1c8357a28d5213ab14510dc8175dca1968543c309c76bddb SHA512 c036b659fa681f8129110356bec33fad00fb8e469f3b4bcefd0b7ddf5e20030977716adf5c65f58f3ff68cd7af0bdd42392ee077100bc7f45ee123749d082f7d
137 -DIST bash43-047 4437 BLAKE2B 449204b8b9e0937cb65ef286db2fa5cad9999dd822fd55369cfc469e6e6c086a97aea7b50625e756d349341a53907d69d8a631371846c0e373efcdbb6d3cb0e0 SHA512 9332d680ac226491cf8e5986a3261eb76b53ef4b0b2a43405564b088afc0e8658077812c9177bdab7900e05394e69f3047d82ddb59553fc01ef721acfa9d5553
138 -DIST bash43-048 1612 BLAKE2B 6014935977b2ae1628dc6e9221786a2fb923590ff17b9660d1c238da251f9a0152bd4ceec0c66ea42e34dd592653c244a8df2beb02f20dc7d214b64681541ad2 SHA512 7c3963bfbc730b4592668460e86c166e727e9897c1a9235a6860a01bc90d365ef0707f0fac7ed62780dcc84e80dbe8484ec59e9e948def22f44ae03e8a169780
139 -DIST bash44-001 1896 BLAKE2B 1ff23656f2904385f34aa94c48bec2a8cd145223c74c4138bb857a6ef79ec6e5985521661170c46c5bd603ea4fb7c1d8058770b4da0165366aab7b2bbaf4709b SHA512 fa7a1b277eb3bad6ae7d2c7a2887cbf2c0eb75b7fee8ed03ec1e9d45879a2fb4b8c7cb16d6b029987493b01a461214bd9a24454a6837e7cfe180b1bc56f61caa
140 -DIST bash44-002 1946 BLAKE2B 2b7798375a629ba957c139ded809e53a43ab03258557669304441c04433693069d1fc1af03fe5516140097e5c71c07870bf8cda2309a8fd7ade4b169a8256739 SHA512 526f986057810f89080e283ff95b3a8fd24d37e4ad2f18c39f36d3a2d57956a6441d16220082157735e3c5ccf770d5016e761aa5f309129898e39277d576e6b5
141 -DIST bash44-003 1593 BLAKE2B f47eeb4d32108d6e889436ad72920c1749e13fb17439dffb8df72f334f570fcccc7956bd616ef1beec5c07c1479d9113047f8aaa21c19af3e4db21f00783dcbd SHA512 e61db89bdd1a7ae15013fe258046a343c9ea41e5a1c6d2c810947500a617fce7536b8d51194e14bb42499fe0de6d70cc9b2c81da0afdcb5a2278459f4f76d748
142 -DIST bash44-004 2350 BLAKE2B 245c88f4f7f7e0a4a571956c1a6363b8ba86b883897bd8c92297605811e418748709f9ffaa148173c9669b4dc8b71482fce9eb3b177920fd8d34b260465c72fd SHA512 7570cf15518f79230cfe91b3e58c795c16c7fb6ba6418d967355b36fb7982e7919a9eaaef9177fb605c7fb7d7efb8a8335e725c1bacffff69a098433f5adc9c7
143 -DIST bash44-005 1439 BLAKE2B 4d563b1a0b2d858a904b98fb52b38c8c806942b6c879b3a02480774b0806468f51a91ef0a26a4a9c5bc8f2a3242cd206afe786d0754449cb11adeed4ae97a90d SHA512 7546a6c90c8e8508567dde713722291477ca87c1116905b46432514a4fc632840a855b84f102591914cd4c44d5bf2eb7400866e26366fc94525fb401ea844a8f
144 -DIST bash44-006 1805 BLAKE2B aa187e52bc12dc5c34e52d6b487a0f260e3c54970ebb022c54293f409903baeb239417d671d85b16d30b327c6353ffa666dc7adb5c872ec500266339d8a9de0e SHA512 5edcd76cf97bfe289f71924ba279ff48a1167eb3cc36f811cbcc23732746f5c821d1d39d4b137b7d99d57809a4b7270a54f4a41176fcfde0708bf92ddc68b77f
145 -DIST bash44-007 4640 BLAKE2B 3b803e553ac117129db686818835ce6deb7574b38171f4c9262448e01e097933645311de003593ef3949a7ba5925172577a758b2edd281c4446f3bca62beadb8 SHA512 386c019debee414697abc648d9a77894e842bb0b7a2a71709e8b3398582f25065e68963405fa22fb77439c6b431ee94a2ecbb16734c2436af3dfb4d1b5f06fcf
146 -DIST bash44-008 2223 BLAKE2B 09c01c2821404ca8a89d9644cd7d55d2994ba4cdc15b928c1156e2a91c083b528340c27909bdd312a78f677cc94ded5888ec4eaff0d0070d575fbdde3bb326a0 SHA512 d9a8924f1c9263deab89153bb688a87f211913ebd72c8077e607db6fdddc7e5af05042dd22a9a2df593e518ea74b54ca79d20afc796e47d871827a2556e233d0
147 -DIST bash44-009 3117 BLAKE2B 1921a30e1f7c6d37cac048772f89322e2cfe6e77f3ec48d4a6bb3d7e82452b7471bef2e1fa31094a62d9a29589a8438dc875211dbab8ba204939e16810eca13b SHA512 3b01c080cf4a54658679b36c282a69a9ac48b900b19ceb42dbaf084abd395d50e5ff14db90a7fdf0c9856dad150897dca561160686c931634765782447fc076e
148 -DIST bash44-010 1670 BLAKE2B 6e0cab685ae2393a9ae7eeb91767f8ce3086e3921f2d69614e729e9bc26603b363a69083c57a43aa53669491deba663bd8c9de91571833312cc23efb05c43222 SHA512 54ff556b62fd88381e7a495db50957b016474973b3a566661c65b649a40960f2d3355221b3a71fb292128aad92a45d73d9816d63833bc416b4d15acdef391b98
149 -DIST bash44-011 1603 BLAKE2B 6bd978408140620c2d63277757c15bfe55d6b0ff5706b7b884b234308efb6cfa771888306840ce5cfd4ece5912924dbb6a321d823fa106c99ba573f47dbbb9ae SHA512 6b5b068b74978fc691749ccff5e094c768047f702430e97114f5bf342f078696f7d7616d0642d4061b062e9112dfe00a1c2309c65de4147e0e98fb52c593d844
150 -DIST bash44-012 5768 BLAKE2B 63c6f5ff2cf52a35e1bd7f0028d7cce5c2c87e65ca600d8d85bf9b197ac8dee16bed5dc1dba6b354ef560309022cfd427a08180b76effe4107b9dda2ed99b20e SHA512 4661c4c132f2ea7c9a70368301041c482d5820d8389334a7e3ae44c36fc16c171b20db2f194b7663c84d6c3dcef81aa90f050a48e205218fc7bd3395d09c6a51
151 -DIST bash44-013 1255 BLAKE2B f19be55c986bc60c395d24044c7edc67cd180d86047af59d173c1507de32534b2eed546f16164d799283d66c0d0460ff4771da6bc327bc87ebc4f01cb284f9eb SHA512 eac0a9abf59b65a59a0028d2f3c0a7dc8a0b3c04e2d2db642b69aa7c13a2dfa190f3c63f7d8a7c9400f01701e9ef84212ce668c4c44d0ccfd02cd1f8e723d831
152 -DIST bash44-014 2834 BLAKE2B 3a211d9916e16a996d709034523dc0f3775520736f481bdff8c737e1969da1719602bf0379befc685822e4931586482a30bbec69be4233da4f912c5b6333886e SHA512 11e16896aa66a1eafb12cdcea00515132789690e914c8894caefd8c80ed98c8e732428348ddbfb53495164ce4044596f5cdbc03e146dce364fc497f362a1859b
153 -DIST bash44-015 1233 BLAKE2B 5504d4a64f938ccfbb12f43455c11c6dc6a38397e5692da874a1b5de1865d19677c6f683073dbf9843869df67f96a87a6a60d2381338294d6750f2aba1580c55 SHA512 94d6fed30d4a376c29f8986d15f1b3fd65a04ee0f3d1844d010f3e51a2f9f875cd294a68fb6f0e1ffa481fb09f02055b21f2f298ebd9d88eb2f76d6c1f15de34
154 -DIST bash44-016 2069 BLAKE2B 5ac613c450d018edff4f82740655ed0e460e49b57ce1a817f0b7b0a101b9f1ab095c48904fc17789203d6bdcc1beb01dde23b4a097f36441eda5e11ab638e9bd SHA512 5acc704df3fe63b5b8055ba7bc14ae70cc23d15aefee8db6991e6c11cc8b0e10fcc67d516bc2d2fde84be26ed5c88dbf266fa164756218b60eccc2bfb4eed7d9
155 -DIST bash44-017 1143 BLAKE2B 64da515637109cd87b95e5f55857f25c2758b4a5c2620cd21250287e00767d5ca7a14fe331603cdef1ba02f622d97ee120bc0bfba463bccb113f16ebee56159f SHA512 c1d50aee953427ba0b95e48c10d2324e7413f3354ff65b9c3c1dfd14eedec55e619fcd12353e7b99b6e280f510e04d1c971b309c1a4efb97d48ddb30d69f14ac
156 -DIST bash44-018 1319 BLAKE2B abfd87f2cb5e9aeb0352bb0efbfd3ad95cbb26445e09edaa762cf1ea1fa01a00ab57c96d912ae5eaf653b66169bc54bba39fdf1d62ad45301c6599d21979ff14 SHA512 008ff44dbf916414d691c29cee29e7f636bbe79170463d76ef16ca63ecdc24a84ff4476078c28fb8788d9b1fb0572612a7e8cb30fceb55ad650f293db8361ad1
157 -DIST bash44-019 1671 BLAKE2B 3d917b1c2618b92d7a79d64a8282cda84098d7d83b8ab3e62c49ab259d6976ef953ab1bde98b9d2cd925cfbdff94b5fd5910876e8de85d40466cf5f3ceb377c4 SHA512 59984e221a7a6dbf72bf893b1b7c4a63fea34d6af1208a19f0e9e6cd59a09e4cf51890cb2d31c1502e2a2f644f584417bb59cf02c308d3250d2a98d41b63e893
158 -DIST bash44-020 5156 BLAKE2B 6f2bba1fe03eb49401af3925420ff5c090d0e7d83010c34e086f5da48fc2078ef649d775b45e3368e73fc1ebdd6f1860b33bf7021898cae158d478aa1dd18bca SHA512 e200fddd717fa33d2c56eb6713031d34891e5ebcd489a65a43ccfebf9728c1609b758ca3dffb1eed4abd3c62c6d7163ce88d8a1bb73b6d07bee99e0409365978
159 -DIST bash44-021 1810 BLAKE2B ce3f98e31aaa7db402cf2a2e571a72b9b91fad4571b35a5e8f59678485a631acf3885a19ee09ebdc6f79b39dbdafe72cc2cd91bf3c3b31ad7d3a65b5bc4bd9b3 SHA512 43a82d06a17bc30c2579a0944cb68f60bd9e3cddb9fff4a760fbf1f2f5104a99bb69c400cf63231b242c03a4684701455e603d96c9b588f2c69da02570042fec
160 -DIST bash44-022 1818 BLAKE2B 66c6e5fd33f0649ff886d1fd944cb10a06de06f0724c0cb7343c3afd50034821f1a4eeccbe9bc5c6815ce9bcdfacf5e6a83098fbd3712efc15e870928b3aa80e SHA512 385a0d1bbdff0dffec2a08021a84a5ac3695e44e1a90b0080b82737fc4a9ea924ee59b47fd5e288b69a540f4c976bf9da0db08ee2d20e170c868f802f75785fb
161 -DIST bash44-023 1557 BLAKE2B 95a21ade7e4be68d66f3862f26b574c5897055822471c8d2801b8e1f866d1d11ddd4000e967b567c3ef7949af8a88ca918ea066d52a67fc5fd4b266135f0dbbb SHA512 442efa78d365a728555ade77cc2f8501aed09f37ae10e1ac647d35299829b63caefbc5c30436d622bfef9300e9d929d7f4fafe85a59df15089881bc987fa12fd
162
163 diff --git a/app-shells/bash/bash-4.3_p48-r1.ebuild b/app-shells/bash/bash-4.3_p48-r1.ebuild
164 deleted file mode 100644
165 index 6d5d03b742..0000000000
166 --- a/app-shells/bash/bash-4.3_p48-r1.ebuild
167 +++ /dev/null
168 @@ -1,288 +0,0 @@
169 -# Copyright 1999-2017 Gentoo Foundation
170 -# Distributed under the terms of the GNU General Public License v2
171 -
172 -EAPI="5"
173 -
174 -inherit eutils flag-o-matic toolchain-funcs multilib
175 -
176 -# Official patchlevel
177 -# See ftp://ftp.cwru.edu/pub/bash/bash-4.3-patches/
178 -PLEVEL=${PV##*_p}
179 -MY_PV=${PV/_p*}
180 -MY_PV=${MY_PV/_/-}
181 -MY_P=${PN}-${MY_PV}
182 -[[ ${PV} != *_p* ]] && PLEVEL=0
183 -patches() {
184 - local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
185 - [[ ${plevel} -eq 0 ]] && return 1
186 - eval set -- {1..${plevel}}
187 - set -- $(printf "${pn}${pv/\.}-%03d " "$@")
188 - if [[ ${opt} == -s ]] ; then
189 - echo "${@/#/${DISTDIR}/}"
190 - else
191 - local u
192 - for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
193 - printf "${u}/${pn}-${pv}-patches/%s " "$@"
194 - done
195 - fi
196 -}
197 -
198 -# The version of readline this bash normally ships with.
199 -READLINE_VER="6.3"
200 -
201 -DESCRIPTION="The standard GNU Bourne again shell"
202 -HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html"
203 -SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"
204 -[[ ${PV} == *_rc* ]] && SRC_URI+=" ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz"
205 -
206 -LICENSE="GPL-3"
207 -SLOT="0"
208 -KEYWORDS="~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
209 -IUSE="afs bashlogger examples mem-scramble +net nls plugins +readline"
210 -
211 -DEPEND=">=sys-libs/ncurses-5.2-r2:0=
212 - readline? ( >=sys-libs/readline-${READLINE_VER}:0= )
213 - nls? ( virtual/libintl )"
214 -RDEPEND="${DEPEND}
215 - !<sys-apps/portage-2.1.6.7_p1
216 - !<sys-apps/paludis-0.26.0_alpha5"
217 -# we only need yacc when the .y files get patched (bash42-005)
218 -DEPEND+=" virtual/yacc"
219 -
220 -PATCHES=(
221 - "${FILESDIR}"/${PN}-4.3-mapfile-improper-array-name-validation.patch
222 - "${FILESDIR}"/${PN}-4.3-arrayfunc.patch
223 - "${FILESDIR}"/${PN}-4.3-protos.patch
224 - "${FILESDIR}"/${PN}-4.4-popd-offset-overflow.patch #600174
225 - "${FILESDIR}"/${PN}-4.0-bashintl-in-siglist.patch
226 - "${FILESDIR}"/${PN}-4.3_p39-cygwin-r2.patch
227 -)
228 -
229 -S=${WORKDIR}/${MY_P}
230 -
231 -pkg_setup() {
232 - if is-flag -malign-double ; then #7332
233 - eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
234 - eerror "as it breaks LFS (struct stat64) on x86."
235 - die "remove -malign-double from your CFLAGS mr ricer"
236 - fi
237 - if use bashlogger ; then
238 - ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs."
239 - ewarn "This will log ALL output you enter into the shell, you have been warned."
240 - fi
241 -}
242 -
243 -src_unpack() {
244 - unpack ${MY_P}.tar.gz
245 -}
246 -
247 -src_prepare() {
248 - # Include official patches
249 - [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)
250 -
251 - # Clean out local libs so we know we use system ones w/releases.
252 - if [[ ${PV} != *_rc* ]] ; then
253 - rm -rf lib/{readline,termcap}/*
254 - touch lib/{readline,termcap}/Makefile.in # for config.status
255 - sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in || die
256 - fi
257 -
258 - # Prefixify hardcoded path names. No-op for non-prefix.
259 - hprefixify pathnames.h.in
260 -
261 - # Avoid regenerating docs after patches #407985
262 - sed -i -r '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in || die
263 - touch -r . doc/*
264 -
265 - epatch "${PATCHES[@]}"
266 -
267 - # Nasty trick to set bashbug's shebang to bash instead of sh. We don't have
268 - # sh while bootstrapping for the first time, This works around bug 309825
269 - sed -i -e '1s:sh:bash:' support/bashbug.sh || die
270 -
271 - epatch_user
272 -}
273 -
274 -src_configure() {
275 - local myconf=()
276 -
277 - # For descriptions of these, see config-top.h
278 - # bashrc/#26952 bash_logout/#90488 ssh/#24762 mktemp/#574426
279 - append-cppflags \
280 - -DDEFAULT_PATH_VALUE=\'\"${EPREFIX}/usr/local/sbin:${EPREFIX}/usr/local/bin:${EPREFIX}/usr/sbin:${EPREFIX}/usr/bin:${EPREFIX}/sbin:${EPREFIX}/bin\"\' \
281 - -DSTANDARD_UTILS_PATH=\'\"${EPREFIX}/bin:${EPREFIX}/usr/bin:${EPREFIX}/sbin:${EPREFIX}/usr/sbin\"\' \
282 - -DSYS_BASHRC=\'\"${EPREFIX}/etc/bash/bashrc\"\' \
283 - -DSYS_BASH_LOGOUT=\'\"${EPREFIX}/etc/bash/bash_logout\"\' \
284 - -DNON_INTERACTIVE_LOGIN_SHELLS \
285 - -DSSH_SOURCE_BASHRC \
286 - -DUSE_MKTEMP -DUSE_MKSTEMP \
287 - $(use bashlogger && echo -DSYSLOG_HISTORY)
288 - [[ ${CHOST} == mips-sgi-irix* ]] && replace-flags -O? -O1
289 -
290 - if [[ ${CHOST} == *-aix* ]] || [[ ${CHOST} == *-hpux* ]] ; then
291 - # Avoid finding tgetent() in anything else but ncurses library,
292 - # as <termcap.h> is provided by ncurses, even during bootstrap
293 - # on AIX and HP-UX, and we would get undefined symbols like
294 - # BC, PC, UP if linking against something else.
295 - # The bash-bug is that it doesn't check for <termcap.h> provider,
296 - # and unfortunately {,n}curses is checked last.
297 - # Even if ncurses provides libcurses.so->libncurses.so symlink,
298 - # it feels more clean to link against libncurses.so directly.
299 - # (all configure-variables for tgetent() are shown here)
300 - export ac_cv_func_tgetent=no
301 - export ac_cv_lib_termcap_tgetent=no # found on HP-UX
302 - export ac_cv_lib_tinfo_tgetent=no
303 - export ac_cv_lib_curses_tgetent=no # found on AIX
304 - #export ac_cv_lib_ncurses_tgetent=no
305 -
306 - # Without /dev/fd/*, bash uses named pipes instead, but the
307 - # pipe names are not unique enough for portage's multijob.
308 - append-cppflags -DUSE_MKTEMP
309 - fi
310 -
311 - # Don't even think about building this statically without
312 - # reading Bug 7714 first. If you still build it statically,
313 - # don't come crying to us with bugs ;).
314 - #use static && export LDFLAGS="${LDFLAGS} -static"
315 - use nls || myconf+=( --disable-nls )
316 -
317 - # Historically, we always used the builtin readline, but since
318 - # our handling of SONAME upgrades has gotten much more stable
319 - # in the PM (and the readline ebuild itself preserves the old
320 - # libs during upgrades), linking against the system copy should
321 - # be safe.
322 - # Exact cached version here doesn't really matter as long as it
323 - # is at least what's in the DEPEND up above.
324 - export ac_cv_rl_version=${READLINE_VER}
325 -
326 - # Force linking with system curses ... the bundled termcap lib
327 - # sucks bad compared to ncurses. For the most part, ncurses
328 - # is here because readline needs it. But bash itself calls
329 - # ncurses in one or two small places :(.
330 -
331 - if [[ ${PV} != *_rc* ]] ; then
332 - # Use system readline only with released versions.
333 - myconf+=( --with-installed-readline=. )
334 - fi
335 -
336 - if use plugins; then
337 - case ${CHOST} in
338 - *-linux-gnu | *-solaris* | *-freebsd* )
339 - append-ldflags -Wl,-rpath,"${EPREFIX}"/usr/$(get_libdir)/bash
340 - ;;
341 - # Darwin doesn't need an rpath here (in fact doesn't grok the argument)
342 - esac
343 - else
344 - # Disable the plugins logic by hand since bash doesn't
345 - # provide a way of doing it.
346 - export ac_cv_func_dl{close,open,sym}=no \
347 - ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no
348 - sed -i \
349 - -e '/LOCAL_LDFLAGS=/s:-rdynamic::' \
350 - configure || die
351 - fi
352 - tc-export AR #444070
353 - econf \
354 - --docdir='$(datarootdir)'/doc/${PF} \
355 - --htmldir='$(docdir)/html' \
356 - --with-curses \
357 - $(use_with afs) \
358 - $(use_enable net net-redirections) \
359 - --disable-profiling \
360 - $(use_enable mem-scramble) \
361 - $(use_with mem-scramble bash-malloc) \
362 - $(use_enable readline) \
363 - $(use_enable readline history) \
364 - $(use_enable readline bang-history) \
365 - "${myconf[@]}"
366 -}
367 -
368 -src_compile() {
369 - emake
370 -
371 - if use plugins ; then
372 - emake -C examples/loadables all others
373 - fi
374 -}
375 -
376 -src_install() {
377 - local d f
378 -
379 - default
380 -
381 - dodir /bin
382 - mv "${ED}"/usr/bin/bash "${ED}"/bin/ || die
383 - dosym bash /bin/rbash
384 -
385 - insinto /etc/bash
386 - doins "${FILESDIR}"/bash_logout
387 - doins "$(prefixify_ro "${FILESDIR}"/bashrc)"
388 - keepdir /etc/bash/bashrc.d
389 - insinto /etc/skel
390 - for f in bash{_logout,_profile,rc} ; do
391 - newins "${FILESDIR}"/dot-${f} .${f}
392 - done
393 -
394 - local sed_args=(
395 - -e "s:#${USERLAND}#@::"
396 - -e '/#@/d'
397 - )
398 - if ! use readline ; then
399 - sed_args+=( #432338
400 - -e '/^shopt -s histappend/s:^:#:'
401 - -e 's:use_color=true:use_color=false:'
402 - )
403 - fi
404 - sed -i \
405 - "${sed_args[@]}" \
406 - "${ED}"/etc/skel/.bashrc \
407 - "${ED}"/etc/bash/bashrc || die
408 -
409 - if use plugins ; then
410 - exeinto /usr/$(get_libdir)/bash
411 - doexe $(echo examples/loadables/*.o | sed 's:\.o::g')
412 - insinto /usr/include/bash-plugins
413 - doins *.h builtins/*.h include/*.h lib/{glob/glob.h,tilde/tilde.h}
414 - fi
415 -
416 - if use examples ; then
417 - for d in examples/{functions,misc,scripts,startup-files} ; do
418 - exeinto /usr/share/doc/${PF}/${d}
419 - insinto /usr/share/doc/${PF}/${d}
420 - for f in ${d}/* ; do
421 - if [[ ${f##*/} != PERMISSION ]] && [[ ${f##*/} != *README ]] ; then
422 - doexe ${f}
423 - else
424 - doins ${f}
425 - fi
426 - done
427 - done
428 - fi
429 -
430 - doman doc/*.1
431 - newdoc CWRU/changelog ChangeLog
432 - dosym bash.info /usr/share/info/bashref.info
433 -}
434 -
435 -pkg_preinst() {
436 - if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]] ; then
437 - mkdir -p "${EROOT}"/etc/bash
438 - mv -f "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/
439 - fi
440 -
441 - if [[ -L ${EROOT}/bin/sh ]] ; then
442 - # rewrite the symlink to ensure that its mtime changes. having /bin/sh
443 - # missing even temporarily causes a fatal error with paludis.
444 - local target=$(readlink "${EROOT}"/bin/sh)
445 - local tmp=$(emktemp "${EROOT}"/bin)
446 - ln -sf "${target}" "${tmp}"
447 - mv -f "${tmp}" "${EROOT}"/bin/sh
448 - fi
449 -}
450 -
451 -pkg_postinst() {
452 - # If /bin/sh does not exist, provide it
453 - if [[ ! -e ${EROOT}/bin/sh ]] ; then
454 - ln -sf bash "${EROOT}"/bin/sh
455 - fi
456 -}
457
458 diff --git a/app-shells/bash/bash-4.3_p48.ebuild b/app-shells/bash/bash-4.3_p48.ebuild
459 deleted file mode 100644
460 index 2e1a2b9aba..0000000000
461 --- a/app-shells/bash/bash-4.3_p48.ebuild
462 +++ /dev/null
463 @@ -1,288 +0,0 @@
464 -# Copyright 1999-2017 Gentoo Foundation
465 -# Distributed under the terms of the GNU General Public License v2
466 -# $Id$
467 -
468 -EAPI="5"
469 -
470 -inherit eutils flag-o-matic toolchain-funcs multilib
471 -
472 -# Official patchlevel
473 -# See ftp://ftp.cwru.edu/pub/bash/bash-4.3-patches/
474 -PLEVEL=${PV##*_p}
475 -MY_PV=${PV/_p*}
476 -MY_PV=${MY_PV/_/-}
477 -MY_P=${PN}-${MY_PV}
478 -[[ ${PV} != *_p* ]] && PLEVEL=0
479 -patches() {
480 - local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
481 - [[ ${plevel} -eq 0 ]] && return 1
482 - eval set -- {1..${plevel}}
483 - set -- $(printf "${pn}${pv/\.}-%03d " "$@")
484 - if [[ ${opt} == -s ]] ; then
485 - echo "${@/#/${DISTDIR}/}"
486 - else
487 - local u
488 - for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
489 - printf "${u}/${pn}-${pv}-patches/%s " "$@"
490 - done
491 - fi
492 -}
493 -
494 -# The version of readline this bash normally ships with.
495 -READLINE_VER="6.3"
496 -
497 -DESCRIPTION="The standard GNU Bourne again shell"
498 -HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html"
499 -SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"
500 -[[ ${PV} == *_rc* ]] && SRC_URI+=" ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz"
501 -
502 -LICENSE="GPL-3"
503 -SLOT="0"
504 -KEYWORDS="~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
505 -IUSE="afs bashlogger examples mem-scramble +net nls plugins +readline vanilla"
506 -
507 -DEPEND=">=sys-libs/ncurses-5.2-r2:0=
508 - readline? ( >=sys-libs/readline-${READLINE_VER}:0= )
509 - nls? ( virtual/libintl )"
510 -RDEPEND="${DEPEND}
511 - !<sys-apps/portage-2.1.6.7_p1
512 - !<sys-apps/paludis-0.26.0_alpha5"
513 -# we only need yacc when the .y files get patched (bash42-005)
514 -DEPEND+=" virtual/yacc"
515 -
516 -PATCHES=(
517 - "${FILESDIR}"/${PN}-4.3-mapfile-improper-array-name-validation.patch
518 - "${FILESDIR}"/${PN}-4.3-arrayfunc.patch
519 - "${FILESDIR}"/${PN}-4.3-protos.patch
520 - "${FILESDIR}"/${PN}-4.0-bashintl-in-siglist.patch
521 - "${FILESDIR}"/${PN}-4.3_p39-cygwin-r2.patch
522 -)
523 -
524 -S=${WORKDIR}/${MY_P}
525 -
526 -pkg_setup() {
527 - if is-flag -malign-double ; then #7332
528 - eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
529 - eerror "as it breaks LFS (struct stat64) on x86."
530 - die "remove -malign-double from your CFLAGS mr ricer"
531 - fi
532 - if use bashlogger ; then
533 - ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs."
534 - ewarn "This will log ALL output you enter into the shell, you have been warned."
535 - fi
536 -}
537 -
538 -src_unpack() {
539 - unpack ${MY_P}.tar.gz
540 -}
541 -
542 -src_prepare() {
543 - # Include official patches
544 - [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)
545 -
546 - # Clean out local libs so we know we use system ones w/releases.
547 - if [[ ${PV} != *_rc* ]] ; then
548 - rm -rf lib/{readline,termcap}/*
549 - touch lib/{readline,termcap}/Makefile.in # for config.status
550 - sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in || die
551 - fi
552 -
553 - # Prefixify hardcoded path names. No-op for non-prefix.
554 - hprefixify pathnames.h.in
555 -
556 - # Avoid regenerating docs after patches #407985
557 - sed -i -r '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in || die
558 - touch -r . doc/*
559 -
560 - epatch "${PATCHES[@]}"
561 -
562 - # Nasty trick to set bashbug's shebang to bash instead of sh. We don't have
563 - # sh while bootstrapping for the first time, This works around bug 309825
564 - sed -i -e '1s:sh:bash:' support/bashbug.sh || die
565 -
566 - epatch_user
567 -}
568 -
569 -src_configure() {
570 - local myconf=()
571 -
572 - # For descriptions of these, see config-top.h
573 - # bashrc/#26952 bash_logout/#90488 ssh/#24762 mktemp/#574426
574 - append-cppflags \
575 - -DDEFAULT_PATH_VALUE=\'\"${EPREFIX}/usr/local/sbin:${EPREFIX}/usr/local/bin:${EPREFIX}/usr/sbin:${EPREFIX}/usr/bin:${EPREFIX}/sbin:${EPREFIX}/bin\"\' \
576 - -DSTANDARD_UTILS_PATH=\'\"${EPREFIX}/bin:${EPREFIX}/usr/bin:${EPREFIX}/sbin:${EPREFIX}/usr/sbin\"\' \
577 - -DSYS_BASHRC=\'\"${EPREFIX}/etc/bash/bashrc\"\' \
578 - -DSYS_BASH_LOGOUT=\'\"${EPREFIX}/etc/bash/bash_logout\"\' \
579 - -DNON_INTERACTIVE_LOGIN_SHELLS \
580 - -DSSH_SOURCE_BASHRC \
581 - -DUSE_MKTEMP -DUSE_MKSTEMP \
582 - $(use bashlogger && echo -DSYSLOG_HISTORY)
583 - [[ ${CHOST} == mips-sgi-irix* ]] && replace-flags -O? -O1
584 -
585 - if [[ ${CHOST} == *-aix* ]] || [[ ${CHOST} == *-hpux* ]] ; then
586 - # Avoid finding tgetent() in anything else but ncurses library,
587 - # as <termcap.h> is provided by ncurses, even during bootstrap
588 - # on AIX and HP-UX, and we would get undefined symbols like
589 - # BC, PC, UP if linking against something else.
590 - # The bash-bug is that it doesn't check for <termcap.h> provider,
591 - # and unfortunately {,n}curses is checked last.
592 - # Even if ncurses provides libcurses.so->libncurses.so symlink,
593 - # it feels more clean to link against libncurses.so directly.
594 - # (all configure-variables for tgetent() are shown here)
595 - export ac_cv_func_tgetent=no
596 - export ac_cv_lib_termcap_tgetent=no # found on HP-UX
597 - export ac_cv_lib_tinfo_tgetent=no
598 - export ac_cv_lib_curses_tgetent=no # found on AIX
599 - #export ac_cv_lib_ncurses_tgetent=no
600 -
601 - # Without /dev/fd/*, bash uses named pipes instead, but the
602 - # pipe names are not unique enough for portage's multijob.
603 - append-cppflags -DUSE_MKTEMP
604 - fi
605 -
606 - # Don't even think about building this statically without
607 - # reading Bug 7714 first. If you still build it statically,
608 - # don't come crying to us with bugs ;).
609 - #use static && export LDFLAGS="${LDFLAGS} -static"
610 - use nls || myconf+=( --disable-nls )
611 -
612 - # Historically, we always used the builtin readline, but since
613 - # our handling of SONAME upgrades has gotten much more stable
614 - # in the PM (and the readline ebuild itself preserves the old
615 - # libs during upgrades), linking against the system copy should
616 - # be safe.
617 - # Exact cached version here doesn't really matter as long as it
618 - # is at least what's in the DEPEND up above.
619 - export ac_cv_rl_version=${READLINE_VER}
620 -
621 - # Force linking with system curses ... the bundled termcap lib
622 - # sucks bad compared to ncurses. For the most part, ncurses
623 - # is here because readline needs it. But bash itself calls
624 - # ncurses in one or two small places :(.
625 -
626 - if [[ ${PV} != *_rc* ]] ; then
627 - # Use system readline only with released versions.
628 - myconf+=( --with-installed-readline=. )
629 - fi
630 -
631 - if use plugins; then
632 - case ${CHOST} in
633 - *-linux-gnu | *-solaris* | *-freebsd* )
634 - append-ldflags -Wl,-rpath,"${EPREFIX}"/usr/$(get_libdir)/bash
635 - ;;
636 - # Darwin doesn't need an rpath here (in fact doesn't grok the argument)
637 - esac
638 - else
639 - # Disable the plugins logic by hand since bash doesn't
640 - # provide a way of doing it.
641 - export ac_cv_func_dl{close,open,sym}=no \
642 - ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no
643 - sed -i \
644 - -e '/LOCAL_LDFLAGS=/s:-rdynamic::' \
645 - configure || die
646 - fi
647 - tc-export AR #444070
648 - econf \
649 - --docdir='$(datarootdir)'/doc/${PF} \
650 - --htmldir='$(docdir)/html' \
651 - --with-curses \
652 - $(use_with afs) \
653 - $(use_enable net net-redirections) \
654 - --disable-profiling \
655 - $(use_enable mem-scramble) \
656 - $(use_with mem-scramble bash-malloc) \
657 - $(use_enable readline) \
658 - $(use_enable readline history) \
659 - $(use_enable readline bang-history) \
660 - "${myconf[@]}"
661 -}
662 -
663 -src_compile() {
664 - emake
665 -
666 - if use plugins ; then
667 - emake -C examples/loadables all others
668 - fi
669 -}
670 -
671 -src_install() {
672 - local d f
673 -
674 - default
675 -
676 - dodir /bin
677 - mv "${ED}"/usr/bin/bash "${ED}"/bin/ || die
678 - dosym bash /bin/rbash
679 -
680 - insinto /etc/bash
681 - doins "${FILESDIR}"/bash_logout
682 - doins "$(prefixify_ro "${FILESDIR}"/bashrc)"
683 - keepdir /etc/bash/bashrc.d
684 - insinto /etc/skel
685 - for f in bash{_logout,_profile,rc} ; do
686 - newins "${FILESDIR}"/dot-${f} .${f}
687 - done
688 -
689 - local sed_args=(
690 - -e "s:#${USERLAND}#@::"
691 - -e '/#@/d'
692 - )
693 - if ! use readline ; then
694 - sed_args+=( #432338
695 - -e '/^shopt -s histappend/s:^:#:'
696 - -e 's:use_color=true:use_color=false:'
697 - )
698 - fi
699 - sed -i \
700 - "${sed_args[@]}" \
701 - "${ED}"/etc/skel/.bashrc \
702 - "${ED}"/etc/bash/bashrc || die
703 -
704 - if use plugins ; then
705 - exeinto /usr/$(get_libdir)/bash
706 - doexe $(echo examples/loadables/*.o | sed 's:\.o::g')
707 - insinto /usr/include/bash-plugins
708 - doins *.h builtins/*.h include/*.h lib/{glob/glob.h,tilde/tilde.h}
709 - fi
710 -
711 - if use examples ; then
712 - for d in examples/{functions,misc,scripts,startup-files} ; do
713 - exeinto /usr/share/doc/${PF}/${d}
714 - insinto /usr/share/doc/${PF}/${d}
715 - for f in ${d}/* ; do
716 - if [[ ${f##*/} != PERMISSION ]] && [[ ${f##*/} != *README ]] ; then
717 - doexe ${f}
718 - else
719 - doins ${f}
720 - fi
721 - done
722 - done
723 - fi
724 -
725 - doman doc/*.1
726 - newdoc CWRU/changelog ChangeLog
727 - dosym bash.info /usr/share/info/bashref.info
728 -}
729 -
730 -pkg_preinst() {
731 - if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]] ; then
732 - mkdir -p "${EROOT}"/etc/bash
733 - mv -f "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/
734 - fi
735 -
736 - if [[ -L ${EROOT}/bin/sh ]] ; then
737 - # rewrite the symlink to ensure that its mtime changes. having /bin/sh
738 - # missing even temporarily causes a fatal error with paludis.
739 - local target=$(readlink "${EROOT}"/bin/sh)
740 - local tmp=$(emktemp "${EROOT}"/bin)
741 - ln -sf "${target}" "${tmp}"
742 - mv -f "${tmp}" "${EROOT}"/bin/sh
743 - fi
744 -}
745 -
746 -pkg_postinst() {
747 - # If /bin/sh does not exist, provide it
748 - if [[ ! -e ${EROOT}/bin/sh ]] ; then
749 - ln -sf bash "${EROOT}"/bin/sh
750 - fi
751 -}
752
753 diff --git a/app-shells/bash/bash-4.4_p23.ebuild b/app-shells/bash/bash-4.4_p23.ebuild
754 deleted file mode 100644
755 index 437e8154ca..0000000000
756 --- a/app-shells/bash/bash-4.4_p23.ebuild
757 +++ /dev/null
758 @@ -1,259 +0,0 @@
759 -# Copyright 1999-2018 Gentoo Authors
760 -# Distributed under the terms of the GNU General Public License v2
761 -
762 -EAPI=6
763 -
764 -inherit flag-o-matic toolchain-funcs multilib prefix
765 -
766 -# Official patchlevel
767 -# See ftp://ftp.cwru.edu/pub/bash/bash-4.4-patches/
768 -PLEVEL=${PV##*_p}
769 -MY_PV=${PV/_p*}
770 -MY_PV=${MY_PV/_/-}
771 -MY_P=${PN}-${MY_PV}
772 -is_release() {
773 - case ${PV} in
774 - *_alpha*|*_beta*|*_rc*) return 1 ;;
775 - *) return 0 ;;
776 - esac
777 -}
778 -[[ ${PV} != *_p* ]] && PLEVEL=0
779 -patches() {
780 - local opt=$1 plevel=${2:-${PLEVEL}} pn=${3:-${PN}} pv=${4:-${MY_PV}}
781 - [[ ${plevel} -eq 0 ]] && return 1
782 - eval set -- {1..${plevel}}
783 - set -- $(printf "${pn}${pv/\.}-%03d " "$@")
784 - if [[ ${opt} == -s ]] ; then
785 - echo "${@/#/${DISTDIR}/}"
786 - else
787 - local u
788 - for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${pn} ; do
789 - printf "${u}/${pn}-${pv}-patches/%s " "$@"
790 - done
791 - fi
792 -}
793 -
794 -# The version of readline this bash normally ships with.
795 -READLINE_VER="7.0"
796 -
797 -DESCRIPTION="The standard GNU Bourne again shell"
798 -HOMEPAGE="http://tiswww.case.edu/php/chet/bash/bashtop.html"
799 -if is_release ; then
800 - SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz $(patches)"
801 -else
802 - SRC_URI="ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz"
803 -fi
804 -
805 -LICENSE="GPL-3"
806 -SLOT="0"
807 -KEYWORDS="~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
808 -IUSE="afs bashlogger examples mem-scramble +net nls plugins +readline"
809 -
810 -DEPEND="
811 - >=sys-libs/ncurses-5.2-r2:0=
812 - readline? ( >=sys-libs/readline-${READLINE_VER}:0= )
813 - nls? ( virtual/libintl )
814 -"
815 -RDEPEND="
816 - ${DEPEND}
817 - !<sys-apps/portage-2.1.6.7_p1
818 -"
819 -# we only need yacc when the .y files get patched (bash42-005)
820 -#DEPEND+=" virtual/yacc"
821 -
822 -S="${WORKDIR}/${MY_P}"
823 -
824 -pkg_setup() {
825 - if is-flag -malign-double ; then #7332
826 - eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
827 - eerror "as it breaks LFS (struct stat64) on x86."
828 - die "remove -malign-double from your CFLAGS mr ricer"
829 - fi
830 - if use bashlogger ; then
831 - ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs."
832 - ewarn "This will log ALL output you enter into the shell, you have been warned."
833 - fi
834 -}
835 -
836 -src_unpack() {
837 - unpack ${MY_P}.tar.gz
838 -}
839 -
840 -src_prepare() {
841 - # Include official patches
842 - [[ ${PLEVEL} -gt 0 ]] && eapply -p0 $(patches -s)
843 -
844 - eapply "${FILESDIR}/${PN}-4.4-jobs_overflow.patch" #644720
845 -
846 - # Clean out local libs so we know we use system ones w/releases.
847 - if is_release ; then
848 - rm -rf lib/{readline,termcap}/*
849 - touch lib/{readline,termcap}/Makefile.in # for config.status
850 - sed -ri -e 's:\$[(](RL|HIST)_LIBSRC[)]/[[:alpha:]]*.h::g' Makefile.in || die
851 - fi
852 -
853 - # Prefixify hardcoded path names. No-op for non-prefix.
854 - hprefixify pathnames.h.in
855 -
856 - # Avoid regenerating docs after patches #407985
857 - sed -i -r '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in || die
858 - touch -r . doc/*
859 -
860 - eapply_user
861 -}
862 -
863 -src_configure() {
864 - local myconf=(
865 - --disable-profiling
866 - --docdir='$(datarootdir)'/doc/${PF}
867 - --htmldir='$(docdir)/html'
868 - --with-curses
869 - $(use_enable mem-scramble)
870 - $(use_enable net net-redirections)
871 - $(use_enable readline)
872 - $(use_enable readline bang-history)
873 - $(use_enable readline history)
874 - $(use_with afs)
875 - $(use_with mem-scramble bash-malloc)
876 - )
877 -
878 - # For descriptions of these, see config-top.h
879 - # bashrc/#26952 bash_logout/#90488 ssh/#24762 mktemp/#574426
880 - append-cppflags \
881 - -DDEFAULT_PATH_VALUE=\'\"${EPREFIX}/usr/local/sbin:${EPREFIX}/usr/local/bin:${EPREFIX}/usr/sbin:${EPREFIX}/usr/bin:${EPREFIX}/sbin:${EPREFIX}/bin\"\' \
882 - -DSTANDARD_UTILS_PATH=\'\"${EPREFIX}/bin:${EPREFIX}/usr/bin:${EPREFIX}/sbin:${EPREFIX}/usr/sbin\"\' \
883 - -DSYS_BASHRC=\'\"${EPREFIX}/etc/bash/bashrc\"\' \
884 - -DSYS_BASH_LOGOUT=\'\"${EPREFIX}/etc/bash/bash_logout\"\' \
885 - -DNON_INTERACTIVE_LOGIN_SHELLS \
886 - -DSSH_SOURCE_BASHRC \
887 - $(use bashlogger && echo -DSYSLOG_HISTORY)
888 -
889 - # Don't even think about building this statically without
890 - # reading Bug 7714 first. If you still build it statically,
891 - # don't come crying to us with bugs ;).
892 - #use static && export LDFLAGS="${LDFLAGS} -static"
893 - use nls || myconf+=( --disable-nls )
894 -
895 - # Historically, we always used the builtin readline, but since
896 - # our handling of SONAME upgrades has gotten much more stable
897 - # in the PM (and the readline ebuild itself preserves the old
898 - # libs during upgrades), linking against the system copy should
899 - # be safe.
900 - # Exact cached version here doesn't really matter as long as it
901 - # is at least what's in the DEPEND up above.
902 - export ac_cv_rl_version=${READLINE_VER%%_*}
903 -
904 - # Force linking with system curses ... the bundled termcap lib
905 - # sucks bad compared to ncurses. For the most part, ncurses
906 - # is here because readline needs it. But bash itself calls
907 - # ncurses in one or two small places :(.
908 -
909 - if is_release ; then
910 - # Use system readline only with released versions.
911 - myconf+=( --with-installed-readline=. )
912 - fi
913 -
914 - if use plugins; then
915 - append-ldflags -Wl,-rpath,/usr/$(get_libdir)/bash
916 - else
917 - # Disable the plugins logic by hand since bash doesn't
918 - # provide a way of doing it.
919 - export ac_cv_func_dl{close,open,sym}=no \
920 - ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no
921 - sed -i \
922 - -e '/LOCAL_LDFLAGS=/s:-rdynamic::' \
923 - configure || die
924 - fi
925 - tc-export AR #444070
926 - econf "${myconf[@]}"
927 -}
928 -
929 -src_compile() {
930 - emake
931 -
932 - if use plugins ; then
933 - emake -C examples/loadables all others
934 - fi
935 -}
936 -
937 -src_install() {
938 - local d f
939 -
940 - default
941 -
942 - dodir /bin
943 - mv "${ED%/}"/usr/bin/bash "${ED%/}"/bin/ || die
944 - dosym bash /bin/rbash
945 -
946 - insinto /etc/bash
947 - doins "${FILESDIR}"/bash_logout
948 - doins "$(prefixify_ro "${FILESDIR}"/bashrc)"
949 - keepdir /etc/bash/bashrc.d
950 - insinto /etc/skel
951 - for f in bash{_logout,_profile,rc} ; do
952 - newins "${FILESDIR}"/dot-${f} .${f}
953 - done
954 -
955 - local sed_args=(
956 - -e "s:#${USERLAND}#@::"
957 - -e '/#@/d'
958 - )
959 - if ! use readline ; then
960 - sed_args+=( #432338
961 - -e '/^shopt -s histappend/s:^:#:'
962 - -e 's:use_color=true:use_color=false:'
963 - )
964 - fi
965 - sed -i \
966 - "${sed_args[@]}" \
967 - "${ED%/}"/etc/skel/.bashrc \
968 - "${ED%/}"/etc/bash/bashrc || die
969 -
970 - if use plugins ; then
971 - exeinto /usr/$(get_libdir)/bash
972 - doexe $(echo examples/loadables/*.o | sed 's:\.o::g')
973 - insinto /usr/include/bash-plugins
974 - doins *.h builtins/*.h include/*.h lib/{glob/glob.h,tilde/tilde.h}
975 - fi
976 -
977 - if use examples ; then
978 - for d in examples/{functions,misc,scripts,startup-files} ; do
979 - exeinto /usr/share/doc/${PF}/${d}
980 - insinto /usr/share/doc/${PF}/${d}
981 - for f in ${d}/* ; do
982 - if [[ ${f##*/} != PERMISSION ]] && [[ ${f##*/} != *README ]] ; then
983 - doexe ${f}
984 - else
985 - doins ${f}
986 - fi
987 - done
988 - done
989 - fi
990 -
991 - doman doc/*.1
992 - newdoc CWRU/changelog ChangeLog
993 - dosym bash.info /usr/share/info/bashref.info
994 -}
995 -
996 -pkg_preinst() {
997 - if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]] ; then
998 - mkdir -p "${EROOT}"/etc/bash
999 - mv -f "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/
1000 - fi
1001 -
1002 - if [[ -L ${EROOT}/bin/sh ]] ; then
1003 - # rewrite the symlink to ensure that its mtime changes. having /bin/sh
1004 - # missing even temporarily causes a fatal error with paludis.
1005 - local target=$(readlink "${EROOT}"/bin/sh)
1006 - local tmp=$(emktemp "${EROOT}"/bin)
1007 - ln -sf "${target}" "${tmp}"
1008 - mv -f "${tmp}" "${EROOT}"/bin/sh
1009 - fi
1010 -}
1011 -
1012 -pkg_postinst() {
1013 - # If /bin/sh does not exist, provide it
1014 - if [[ ! -e ${EROOT}/bin/sh ]] ; then
1015 - ln -sf bash "${EROOT}"/bin/sh
1016 - fi
1017 -}
1018
1019 diff --git a/app-shells/bash/files/autoconf-mktime-2.59.patch b/app-shells/bash/files/autoconf-mktime-2.59.patch
1020 deleted file mode 100644
1021 index 3ac3ad1da8..0000000000
1022 --- a/app-shells/bash/files/autoconf-mktime-2.59.patch
1023 +++ /dev/null
1024 @@ -1,197 +0,0 @@
1025 -http://bugs.gentoo.org/220040
1026 ---- configure
1027 -+++ configure
1028 -@@ -5299,26 +6059,25 @@
1029 - cat >>conftest.$ac_ext <<_ACEOF
1030 - /* end confdefs.h. */
1031 - /* Test program from Paul Eggert and Tony Leneis. */
1032 --#if TIME_WITH_SYS_TIME
1033 -+#ifdef TIME_WITH_SYS_TIME
1034 - # include <sys/time.h>
1035 - # include <time.h>
1036 - #else
1037 --# if HAVE_SYS_TIME_H
1038 -+# ifdef HAVE_SYS_TIME_H
1039 - # include <sys/time.h>
1040 - # else
1041 - # include <time.h>
1042 - # endif
1043 - #endif
1044 -
1045 --#if HAVE_STDLIB_H
1046 --# include <stdlib.h>
1047 --#endif
1048 -+#include <limits.h>
1049 -+#include <stdlib.h>
1050 -
1051 --#if HAVE_UNISTD_H
1052 -+#ifdef HAVE_UNISTD_H
1053 - # include <unistd.h>
1054 - #endif
1055 -
1056 --#if !HAVE_ALARM
1057 -+#ifndef HAVE_ALARM
1058 - # define alarm(X) /* empty */
1059 - #endif
1060 -
1061 -@@ -5335,9 +6094,9 @@
1062 - };
1063 - #define N_STRINGS (sizeof (tz_strings) / sizeof (tz_strings[0]))
1064 -
1065 --/* Fail if mktime fails to convert a date in the spring-forward gap.
1066 -+/* Return 0 if mktime fails to convert a date in the spring-forward gap.
1067 - Based on a problem report from Andreas Jaeger. */
1068 --static void
1069 -+static int
1070 - spring_forward_gap ()
1071 - {
1072 - /* glibc (up to about 1998-10-07) failed this test. */
1073 -@@ -5356,29 +6115,27 @@
1074 - tm.tm_min = 0;
1075 - tm.tm_sec = 0;
1076 - tm.tm_isdst = -1;
1077 -- if (mktime (&tm) == (time_t)-1)
1078 -- exit (1);
1079 -+ return mktime (&tm) != (time_t) -1;
1080 - }
1081 -
1082 --static void
1083 -+static int
1084 - mktime_test1 (now)
1085 - time_t now;
1086 - {
1087 - struct tm *lt;
1088 -- if ((lt = localtime (&now)) && mktime (lt) != now)
1089 -- exit (1);
1090 -+ return ! (lt = localtime (&now)) || mktime (lt) == now;
1091 - }
1092 -
1093 --static void
1094 -+static int
1095 - mktime_test (now)
1096 - time_t now;
1097 - {
1098 -- mktime_test1 (now);
1099 -- mktime_test1 ((time_t) (time_t_max - now));
1100 -- mktime_test1 ((time_t) (time_t_min + now));
1101 -+ return (mktime_test1 (now)
1102 -+ && mktime_test1 ((time_t) (time_t_max - now))
1103 -+ && mktime_test1 ((time_t) (time_t_min + now)));
1104 - }
1105 -
1106 --static void
1107 -+static int
1108 - irix_6_4_bug ()
1109 - {
1110 - /* Based on code from Ariel Faigon. */
1111 -@@ -5391,11 +6148,10 @@
1112 - tm.tm_sec = 0;
1113 - tm.tm_isdst = -1;
1114 - mktime (&tm);
1115 -- if (tm.tm_mon != 2 || tm.tm_mday != 31)
1116 -- exit (1);
1117 -+ return tm.tm_mon == 2 && tm.tm_mday == 31;
1118 - }
1119 -
1120 --static void
1121 -+static int
1122 - bigtime_test (j)
1123 - int j;
1124 - {
1125 -@@ -5417,8 +6173,39 @@
1126 - && lt->tm_wday == tm.tm_wday
1127 - && ((lt->tm_isdst < 0 ? -1 : 0 < lt->tm_isdst)
1128 - == (tm.tm_isdst < 0 ? -1 : 0 < tm.tm_isdst))))
1129 -- exit (1);
1130 -+ return 0;
1131 - }
1132 -+ return 1;
1133 -+}
1134 -+
1135 -+static int
1136 -+year_2050_test ()
1137 -+{
1138 -+ /* The correct answer for 2050-02-01 00:00:00 in Pacific time,
1139 -+ ignoring leap seconds. */
1140 -+ unsigned long int answer = 2527315200UL;
1141 -+
1142 -+ struct tm tm;
1143 -+ time_t t;
1144 -+ tm.tm_year = 2050 - 1900;
1145 -+ tm.tm_mon = 2 - 1;
1146 -+ tm.tm_mday = 1;
1147 -+ tm.tm_hour = tm.tm_min = tm.tm_sec = 0;
1148 -+ tm.tm_isdst = -1;
1149 -+
1150 -+ /* Use the portable POSIX.1 specification "TZ=PST8PDT,M4.1.0,M10.5.0"
1151 -+ instead of "TZ=America/Vancouver" in order to detect the bug even
1152 -+ on systems that don't support the Olson extension, or don't have the
1153 -+ full zoneinfo tables installed. */
1154 -+ putenv ("TZ=PST8PDT,M4.1.0,M10.5.0");
1155 -+
1156 -+ t = mktime (&tm);
1157 -+
1158 -+ /* Check that the result is either a failure, or close enough
1159 -+ to the correct answer that we can assume the discrepancy is
1160 -+ due to leap seconds. */
1161 -+ return (t == (time_t) -1
1162 -+ || (0 < t && answer - 120 <= t && t <= answer + 120));
1163 - }
1164 -
1165 - int
1166 -@@ -5432,12 +6219,15 @@
1167 - isn't worth using anyway. */
1168 - alarm (60);
1169 -
1170 -- for (time_t_max = 1; 0 < time_t_max; time_t_max *= 2)
1171 -- continue;
1172 -- time_t_max--;
1173 -- if ((time_t) -1 < 0)
1174 -- for (time_t_min = -1; (time_t) (time_t_min * 2) < 0; time_t_min *= 2)
1175 -- continue;
1176 -+ for (;;)
1177 -+ {
1178 -+ t = (time_t_max << 1) + 1;
1179 -+ if (t <= time_t_max)
1180 -+ break;
1181 -+ time_t_max = t;
1182 -+ }
1183 -+ time_t_min = - ((time_t) ~ (time_t) 0 == (time_t) -1) - time_t_max;
1184 -+
1185 - delta = time_t_max / 997; /* a suitable prime number */
1186 - for (i = 0; i < N_STRINGS; i++)
1187 - {
1188 -@@ -5445,18 +6235,22 @@
1189 - putenv (tz_strings[i]);
1190 -
1191 - for (t = 0; t <= time_t_max - delta; t += delta)
1192 -- mktime_test (t);
1193 -- mktime_test ((time_t) 1);
1194 -- mktime_test ((time_t) (60 * 60));
1195 -- mktime_test ((time_t) (60 * 60 * 24));
1196 --
1197 -- for (j = 1; 0 < j; j *= 2)
1198 -- bigtime_test (j);
1199 -- bigtime_test (j - 1);
1200 -+ if (! mktime_test (t))
1201 -+ return 1;
1202 -+ if (! (mktime_test ((time_t) 1)
1203 -+ && mktime_test ((time_t) (60 * 60))
1204 -+ && mktime_test ((time_t) (60 * 60 * 24))))
1205 -+ return 1;
1206 -+
1207 -+ for (j = 1; ; j <<= 1)
1208 -+ if (! bigtime_test (j))
1209 -+ return 1;
1210 -+ else if (INT_MAX / 2 < j)
1211 -+ break;
1212 -+ if (! bigtime_test (INT_MAX))
1213 -+ return 1;
1214 - }
1215 -- irix_6_4_bug ();
1216 -- spring_forward_gap ();
1217 -- exit (0);
1218 -+ return ! (irix_6_4_bug () && spring_forward_gap () && year_2050_test ());
1219 - }
1220 - _ACEOF
1221 - rm -f conftest$ac_exeext
1222
1223 diff --git a/app-shells/bash/files/bash-2.05b-parallel-build.patch b/app-shells/bash/files/bash-2.05b-parallel-build.patch
1224 deleted file mode 100644
1225 index 382ffd6dfd..0000000000
1226 --- a/app-shells/bash/files/bash-2.05b-parallel-build.patch
1227 +++ /dev/null
1228 @@ -1,15 +0,0 @@
1229 -Fix parallel make
1230 -
1231 -http://bugs.gentoo.org/41002
1232 -
1233 ---- a/Makefile.in
1234 -+++ b/Makefile.in
1235 -@@ -604,7 +604,7 @@
1236 -
1237 - config.h: stamp-h
1238 -
1239 --stamp-h: config.status $(srcdir)/config.h.in $(srcdir)/config-top.h $(srcdir)/config-bot.h
1240 -+stamp-h: version.h config.status $(srcdir)/config.h.in $(srcdir)/config-top.h $(srcdir)/config-bot.h
1241 - CONFIG_FILES= CONFIG_HEADERS=config.h $(SHELL) ./config.status
1242 -
1243 - config.status: $(srcdir)/configure
1244
1245 diff --git a/app-shells/bash/files/bash-3.0-configs-prefix.patch b/app-shells/bash/files/bash-3.0-configs-prefix.patch
1246 deleted file mode 100644
1247 index 394b00b83e..0000000000
1248 --- a/app-shells/bash/files/bash-3.0-configs-prefix.patch
1249 +++ /dev/null
1250 @@ -1,48 +0,0 @@
1251 ---- bash-3.0/config-top.h
1252 -+++ bash-3.0/config-top.h
1253 -@@ -52,14 +52,14 @@
1254 - /* The default value of the PATH variable. */
1255 - #ifndef DEFAULT_PATH_VALUE
1256 - #define DEFAULT_PATH_VALUE \
1257 -- "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
1258 -+ "@GENTOO_PORTAGE_EPREFIX@/usr/sbin:@GENTOO_PORTAGE_EPREFIX@/usr/bin:@GENTOO_PORTAGE_EPREFIX@/sbin:@GENTOO_PORTAGE_EPREFIX@/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
1259 - #endif
1260 -
1261 - /* The value for PATH when invoking `command -p'. This is only used when
1262 - the Posix.2 confstr () function, or CS_PATH define are not present. */
1263 - #ifndef STANDARD_UTILS_PATH
1264 - #define STANDARD_UTILS_PATH \
1265 -- "/bin:/usr/bin:/sbin:/usr/sbin"
1266 -+ "@GENTOO_PORTAGE_EPREFIX@/bin:@GENTOO_PORTAGE_EPREFIX@/usr/bin:@GENTOO_PORTAGE_EPREFIX@/sbin:@GENTOO_PORTAGE_EPREFIX@/usr/sbin:/bin:/usr/bin:/sbin:/usr/sbin"
1267 - #endif
1268 -
1269 - /* Default primary and secondary prompt strings. */
1270 -@@ -74,11 +74,11 @@
1271 -
1272 - /* System-wide .bashrc file for interactive shells. */
1273 - /* #define SYS_BASHRC "/etc/bash.bashrc" */
1274 --#define SYS_BASHRC "/etc/bash/bashrc" /* #26952 */
1275 -+#define SYS_BASHRC "@GENTOO_PORTAGE_EPREFIX@/etc/bash/bashrc" /* #26952 */
1276 -
1277 - /* System-wide .bash_logout for login shells. */
1278 - /* #define SYS_BASH_LOGOUT "/etc/bash.bash_logout" */
1279 --#define SYS_BASH_LOGOUT "/etc/bash/bash_logout" /* #90488 */
1280 -+#define SYS_BASH_LOGOUT "@GENTOO_PORTAGE_EPREFIX@/etc/bash/bash_logout" /* #90488 */
1281 -
1282 - /* Define this to make non-interactive shells begun with argv[0][0] == '-'
1283 - run the startup files when not in posix mode. */
1284 ---- bash-3.0/pathnames.h.in
1285 -+++ bash-3.0/pathnames.h.in
1286 -@@ -22,10 +22,10 @@
1287 - #define _PATHNAMES_H_
1288 -
1289 - /* The default file for hostname completion. */
1290 --#define DEFAULT_HOSTS_FILE "/etc/hosts"
1291 -+#define DEFAULT_HOSTS_FILE "@GENTOO_PORTAGE_EPREFIX@/etc/hosts"
1292 -
1293 - /* The default login shell startup file. */
1294 --#define SYS_PROFILE "/etc/profile"
1295 -+#define SYS_PROFILE "@GENTOO_PORTAGE_EPREFIX@/etc/profile"
1296 -
1297 - /* The default location of the bash debugger initialization/startup file. */
1298 - #define DEBUGGER_START_FILE "@DEBUGGER_START_FILE@"
1299
1300 diff --git a/app-shells/bash/files/bash-3.0-configs.patch b/app-shells/bash/files/bash-3.0-configs.patch
1301 deleted file mode 100644
1302 index 84e96242d8..0000000000
1303 --- a/app-shells/bash/files/bash-3.0-configs.patch
1304 +++ /dev/null
1305 @@ -1,71 +0,0 @@
1306 ---- bash-3.0/config.h.in
1307 -+++ bash-3.0/config.h.in
1308 -@@ -197,7 +197,7 @@
1309 -
1310 - /* System paths */
1311 -
1312 --#define DEFAULT_MAIL_DIRECTORY "/usr/spool/mail"
1313 -+#define DEFAULT_MAIL_DIRECTORY "/var/spool/mail"
1314 -
1315 - /* Characteristics of the system's header files and libraries that affect
1316 - the compilation environment. */
1317 ---- bash-3.0/config-bot.h
1318 -+++ bash-3.0/config-bot.h
1319 -@@ -178,4 +178,18 @@
1320 - /******************************************************************/
1321 -
1322 - /* If you don't want bash to provide a default mail file to check. */
1323 --/* #undef DEFAULT_MAIL_DIRECTORY */
1324 -+/* DP: - don't define a default DEFAULT_MAIL_DIRECTORY, because it
1325 -+ * DP: can cause a timeout on NFS mounts.
1326 -+ */
1327 -+#undef DEFAULT_MAIL_DIRECTORY
1328 -+
1329 -+/* Force pgrp synchronization
1330 -+ * (https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=81653)
1331 -+ *
1332 -+ * The session will hang cases where you 'su' (not 'su -') and
1333 -+ * then run a piped command in emacs.
1334 -+ * This problem seem to happen due to scheduler changes kernel
1335 -+ * side - although reproduceble with later 2.4 kernels, it is
1336 -+ * especially easy with 2.6 kernels.
1337 -+ */
1338 -+#define PGRP_PIPE 1
1339 ---- bash-3.0/config-top.h
1340 -+++ bash-3.0/config-top.h
1341 -@@ -52,14 +52,14 @@
1342 - /* The default value of the PATH variable. */
1343 - #ifndef DEFAULT_PATH_VALUE
1344 - #define DEFAULT_PATH_VALUE \
1345 -- "/usr/gnu/bin:/usr/local/bin:/bin:/usr/bin:."
1346 -+ "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
1347 - #endif
1348 -
1349 - /* The value for PATH when invoking `command -p'. This is only used when
1350 - the Posix.2 confstr () function, or CS_PATH define are not present. */
1351 - #ifndef STANDARD_UTILS_PATH
1352 - #define STANDARD_UTILS_PATH \
1353 -- "/bin:/usr/bin:/sbin:/usr/sbin:/etc:/usr/etc"
1354 -+ "/bin:/usr/bin:/sbin:/usr/sbin"
1355 - #endif
1356 -
1357 - /* Default primary and secondary prompt strings. */
1358 -@@ -74,14 +74,16 @@
1359 -
1360 - /* System-wide .bashrc file for interactive shells. */
1361 - /* #define SYS_BASHRC "/etc/bash.bashrc" */
1362 -+#define SYS_BASHRC "/etc/bash/bashrc" /* #26952 */
1363 -
1364 - /* System-wide .bash_logout for login shells. */
1365 - /* #define SYS_BASH_LOGOUT "/etc/bash.bash_logout" */
1366 -+#define SYS_BASH_LOGOUT "/etc/bash/bash_logout" /* #90488 */
1367 -
1368 - /* Define this to make non-interactive shells begun with argv[0][0] == '-'
1369 - run the startup files when not in posix mode. */
1370 --/* #define NON_INTERACTIVE_LOGIN_SHELLS */
1371 -+#define NON_INTERACTIVE_LOGIN_SHELLS
1372 -
1373 - /* Define this if you want bash to try to check whether it's being run by
1374 - sshd and source the .bashrc if so (like the rshd behavior). */
1375 --/* #define SSH_SOURCE_BASHRC */
1376 -+#define SSH_SOURCE_BASHRC /* #24762 */
1377
1378 diff --git a/app-shells/bash/files/bash-3.0-trap-fg-signals.patch b/app-shells/bash/files/bash-3.0-trap-fg-signals.patch
1379 deleted file mode 100644
1380 index cde18326ed..0000000000
1381 --- a/app-shells/bash/files/bash-3.0-trap-fg-signals.patch
1382 +++ /dev/null
1383 @@ -1,23 +0,0 @@
1384 -Don't barf on handled signals inside of scripts. Makes for nicer output.
1385 -
1386 -patch by Martin Schlemmer <azarah@g.o>
1387 -
1388 ---- jobs.c
1389 -+++ jobs.c
1390 -@@ -2893,11 +2893,11 @@
1391 - }
1392 - else if (IS_FOREGROUND (job))
1393 - {
1394 --#if !defined (DONT_REPORT_SIGPIPE)
1395 -- if (termsig && WIFSIGNALED (s) && termsig != SIGINT)
1396 --#else
1397 -- if (termsig && WIFSIGNALED (s) && termsig != SIGINT && termsig != SIGPIPE)
1398 --#endif
1399 -+ if (termsig && WIFSIGNALED (s) && termsig != SIGINT &&
1400 -+#if defined (DONT_REPORT_SIGPIPE)
1401 -+ termsig != SIGPIPE &&
1402 -+#endif
1403 -+ signal_is_trapped (termsig) == 0)
1404 - {
1405 - fprintf (stderr, "%s", j_strsignal (termsig));
1406 -
1407
1408 diff --git a/app-shells/bash/files/bash-3.1-bash-logger.patch b/app-shells/bash/files/bash-3.1-bash-logger.patch
1409 deleted file mode 100644
1410 index 4f6df31c45..0000000000
1411 --- a/app-shells/bash/files/bash-3.1-bash-logger.patch
1412 +++ /dev/null
1413 @@ -1,89 +0,0 @@
1414 -Add support for logging bash commands via syslog().
1415 -Useful for deploying in honeypot environments.
1416 -
1417 -http://bugs.gentoo.org/91327
1418 -http://www.nardware.co.uk/Security/html/bashlogger.htm
1419 -
1420 ---- bashhist.c
1421 -+++ bashhist.c
1422 -@@ -705,7 +705,7 @@
1423 - {
1424 - hist_last_line_added = 1;
1425 - hist_last_line_pushed = 0;
1426 -- add_history (line);
1427 -+ add_history (line, 1);
1428 - history_lines_this_session++;
1429 - }
1430 -
1431 ---- lib/readline/histexpand.c
1432 -+++ lib/readline/histexpand.c
1433 -@@ -1222,9 +1222,7 @@
1434 -
1435 - if (only_printing)
1436 - {
1437 --#if 0
1438 -- add_history (result);
1439 --#endif
1440 -+ add_history (result, 1);
1441 - return (2);
1442 - }
1443 -
1444 ---- lib/readline/histfile.c
1445 -+++ lib/readline/histfile.c
1446 -@@ -262,7 +262,7 @@
1447 - {
1448 - if (HIST_TIMESTAMP_START(line_start) == 0)
1449 - {
1450 -- add_history (line_start);
1451 -+ add_history (line_start, 0);
1452 - if (last_ts)
1453 - {
1454 - add_history_time (last_ts);
1455 ---- lib/readline/history.c
1456 -+++ lib/readline/history.c
1457 -@@ -31,6 +31,8 @@
1458 -
1459 - #include <stdio.h>
1460 -
1461 -+#include <syslog.h>
1462 -+
1463 - #if defined (HAVE_STDLIB_H)
1464 - # include <stdlib.h>
1465 - #else
1466 -@@ -246,10 +250,23 @@
1467 - /* Place STRING at the end of the history list. The data field
1468 - is set to NULL. */
1469 - void
1470 --add_history (string)
1471 -- const char *string;
1472 -+add_history (string, logme)
1473 -+ const char *string;
1474 -+ int logme; /* 0 means no sending history to syslog */
1475 - {
1476 - HIST_ENTRY *temp;
1477 -+ if (logme) {
1478 -+ char trunc[600]; /* arbitrary max size of 600 bytes */
1479 -+ if (strlen(string) < sizeof(trunc)) {
1480 -+ syslog(LOG_LOCAL5 | LOG_INFO, "HISTORY: PID=%d UID=%d %s",
1481 -+ getpid(), getuid(), string);
1482 -+ } else {
1483 -+ memcpy(trunc, string, sizeof(trunc));
1484 -+ trunc[sizeof(trunc) - 1] = '\0';
1485 -+ syslog(LOG_LOCAL5 | LOG_INFO, "HISTORY: PID=%d UID=%d %s(++TRUNC)",
1486 -+ getpid(), getuid(), trunc);
1487 -+ }
1488 -+ }
1489 -
1490 - if (history_stifled && (history_length == history_max_entries))
1491 - {
1492 ---- lib/readline/history.h
1493 -+++ lib/readline/history.h
1494 -@@ -80,7 +80,7 @@
1495 -
1496 - /* Place STRING at the end of the history list.
1497 - The associated data field (if any) is set to NULL. */
1498 --extern void add_history PARAMS((const char *));
1499 -+extern void add_history PARAMS((const char *, int ));
1500 -
1501 - /* Change the timestamp associated with the most recent history entry to
1502 - STRING. */
1503
1504 diff --git a/app-shells/bash/files/bash-3.1-gentoo.patch b/app-shells/bash/files/bash-3.1-gentoo.patch
1505 deleted file mode 100644
1506 index a3a62d108c..0000000000
1507 --- a/app-shells/bash/files/bash-3.1-gentoo.patch
1508 +++ /dev/null
1509 @@ -1,55 +0,0 @@
1510 -Collection of fixes from mandrake
1511 -
1512 ---- bash-3.1/doc/builtins.1
1513 -+++ bash-3.1/doc/builtins.1
1514 -@@ -8,8 +8,5 @@
1515 - let, local, logout, popd, printf, pushd, pwd, read, readonly, return, set,
1516 - shift, shopt, source, suspend, test, times, trap, type, typeset,
1517 - ulimit, umask, unalias, unset, wait \- bash built-in commands, see \fBbash\fR(1)
1518 --.SH BASH BUILTIN COMMANDS
1519 --.nr zZ 1
1520 --.so bash.1
1521 - .SH SEE ALSO
1522 - bash(1), sh(1)
1523 ---- bash-3.1/Makefile.in
1524 -+++ bash-3.1/Makefile.in
1525 -@@ -658,7 +658,7 @@
1526 -
1527 - config.h: stamp-h
1528 -
1529 --stamp-h: config.status $(srcdir)/config.h.in $(srcdir)/config-top.h $(srcdir)/config-bot.h
1530 -+stamp-h: version.h config.status $(srcdir)/config.h.in $(srcdir)/config-top.h $(srcdir)/config-bot.h
1531 - CONFIG_FILES= CONFIG_HEADERS=config.h $(SHELL) ./config.status
1532 -
1533 - config.status: $(srcdir)/configure
1534 -@@ -666,7 +666,7 @@
1535 -
1536 - # comment out for distribution
1537 - $(srcdir)/configure: $(srcdir)/configure.in $(srcdir)/aclocal.m4 $(srcdir)/config.h.in
1538 -- cd $(srcdir) && autoconf
1539 -+ cd $(srcdir)
1540 -
1541 - # for chet
1542 - reconfig: force
1543 ---- bash-3.1/parse.y
1544 -+++ bash-3.1/parse.y
1545 -@@ -389,7 +389,9 @@
1546 - }
1547 - ;
1548 -
1549 --word_list: WORD
1550 -+word_list:
1551 -+ { $$ = (WORD_LIST *)NULL; }
1552 -+ | WORD
1553 - { $$ = make_word_list ($1, (WORD_LIST *)NULL); }
1554 - | word_list WORD
1555 - { $$ = make_word_list ($2, $1); }
1556 -@@ -1186,7 +1186,7 @@
1557 -
1558 - #if defined (READLINE)
1559 - char *current_readline_prompt = (char *)NULL;
1560 --char *current_readline_line = (char *)NULL;
1561 -+unsigned char *current_readline_line = (unsigned char *)NULL;
1562 - int current_readline_line_index = 0;
1563 -
1564 - static int
1565
1566 diff --git a/app-shells/bash/files/bash-3.2-dev-fd-test-as-user.patch b/app-shells/bash/files/bash-3.2-dev-fd-test-as-user.patch
1567 deleted file mode 100644
1568 index 8aca776716..0000000000
1569 --- a/app-shells/bash/files/bash-3.2-dev-fd-test-as-user.patch
1570 +++ /dev/null
1571 @@ -1,26 +0,0 @@
1572 -diff -ur bash-3.2.orig/aclocal.m4 bash-3.2/aclocal.m4
1573 ---- bash-3.2.orig/aclocal.m4 2006-12-30 20:00:31 +0000
1574 -+++ bash-3.2/aclocal.m4 2006-12-30 20:02:02 +0000
1575 -@@ -1544,7 +1544,8 @@
1576 - if test -d /dev/fd && test -r /dev/fd/0 < /dev/null; then
1577 - # check for systems like FreeBSD 5 that only provide /dev/fd/[012]
1578 - exec 3</dev/null
1579 -- if test -r /dev/fd/3; then
1580 -+ # bash test builtin always works here, so we use the test binary
1581 -+ if `which test || echo test` -e /dev/fd/3; then
1582 - bash_cv_dev_fd=standard
1583 - else
1584 - bash_cv_dev_fd=absent
1585 -diff -ur bash-3.2.orig/configure bash-3.2/configure
1586 ---- bash-3.2.orig/configure 2006-12-30 20:03:24 +0000
1587 -+++ bash-3.2/configure 2006-12-30 20:01:50 +0000
1588 -@@ -27179,7 +27179,8 @@
1589 - if test -d /dev/fd && test -r /dev/fd/0 < /dev/null; then
1590 - # check for systems like FreeBSD 5 that only provide /dev/fd/[012]
1591 - exec 3</dev/null
1592 -- if test -r /dev/fd/3; then
1593 -+ # bash test builtin always works here, so we use the test binary
1594 -+ if `which test || echo test` -e /dev/fd/3; then
1595 - bash_cv_dev_fd=standard
1596 - else
1597 - bash_cv_dev_fd=absent
1598
1599 diff --git a/app-shells/bash/files/bash-3.2-getcwd-interix.patch b/app-shells/bash/files/bash-3.2-getcwd-interix.patch
1600 deleted file mode 100644
1601 index 5290ab21ca..0000000000
1602 --- a/app-shells/bash/files/bash-3.2-getcwd-interix.patch
1603 +++ /dev/null
1604 @@ -1,51 +0,0 @@
1605 -reported upstream on 23 Apr 2009:
1606 -http://lists.gnu.org/archive/html/bug-bash/2009-04/msg00142.html
1607 -
1608 -diff -ru bash-3.2.orig/config-bot.h bash-3.2/config-bot.h
1609 ---- bash-3.2.orig/config-bot.h 2008-02-13 15:55:26 +0100
1610 -+++ bash-3.2/config-bot.h 2008-02-13 15:58:05 +0100
1611 -@@ -78,6 +78,12 @@
1612 - # undef HAVE_GETCWD
1613 - #endif
1614 -
1615 -+/* on interix the getcwd we ship, just allocs a buffer
1616 -+ * and calls the real getcwd. */
1617 -+#if defined (__INTERIX)
1618 -+# define getcwd xgetcwd
1619 -+#endif
1620 -+
1621 - #if !defined (HAVE_DEV_FD) && defined (NAMED_PIPES_MISSING)
1622 - # undef PROCESS_SUBSTITUTION
1623 - #endif
1624 -diff -ru bash-3.2.orig/lib/sh/getcwd.c bash-3.2/lib/sh/getcwd.c
1625 ---- bash-3.2.orig/lib/sh/getcwd.c 2008-02-13 15:55:27 +0100
1626 -+++ bash-3.2/lib/sh/getcwd.c 2008-02-13 16:09:41 +0100
1627 -@@ -93,6 +93,7 @@
1628 - size_t size;
1629 - #endif /* !__STDC__ */
1630 - {
1631 -+#if !defined(__INTERIX)
1632 - static const char dots[]
1633 - = "../../../../../../../../../../../../../../../../../../../../../../../\
1634 - ../../../../../../../../../../../../../../../../../../../../../../../../../../\
1635 -@@ -290,6 +291,20 @@
1636 - errno = e;
1637 - }
1638 - return ((char *)NULL);
1639 -+#else /* defined(__INTERIX) */
1640 -+ /* use the real getcwd. */
1641 -+ #undef getcwd
1642 -+
1643 -+ char * buffer = buf;
1644 -+
1645 -+ if(!size)
1646 -+ size = PATH_MAX * 2; // some safety zone. windows will refuse paths before they get longer!
1647 -+
1648 -+ if(!buffer)
1649 -+ buffer = malloc(sizeof(char) * size);
1650 -+
1651 -+ return getcwd(buffer, size);
1652 -+#endif
1653 - }
1654 -
1655 - #if defined (TEST)
1656
1657 diff --git a/app-shells/bash/files/bash-3.2-interix-stdint.patch b/app-shells/bash/files/bash-3.2-interix-stdint.patch
1658 deleted file mode 100644
1659 index 3d27b5595b..0000000000
1660 --- a/app-shells/bash/files/bash-3.2-interix-stdint.patch
1661 +++ /dev/null
1662 @@ -1,59 +0,0 @@
1663 -intmax_t and uintmax_t should be looked for in stdint.h on interix
1664 -
1665 -reported upstream on 23 Apr 2009:
1666 -http://lists.gnu.org/archive/html/bug-bash/2009-04/msg00142.html
1667 -
1668 -diff -ru bash-3.2.orig/configure.in bash-3.2/configure.in
1669 ---- bash-3.2.orig/configure.in Fri Jan 18 16:50:36 2008
1670 -+++ bash-3.2/configure.in Fri Jan 18 16:53:09 2008
1671 -@@ -869,8 +869,8 @@
1672 - BASH_CHECK_TYPE(clock_t, [#include <sys/times.h>], long)
1673 - BASH_CHECK_TYPE(sigset_t, [#include <signal.h>], int)
1674 - BASH_CHECK_TYPE(quad_t, , long, HAVE_QUAD_T)
1675 --BASH_CHECK_TYPE(intmax_t, , $bash_cv_type_long_long)
1676 --BASH_CHECK_TYPE(uintmax_t, , $bash_cv_type_unsigned_long_long)
1677 -+BASH_CHECK_TYPE(intmax_t, [#include <stdint.h>], $bash_cv_type_long_long)
1678 -+BASH_CHECK_TYPE(uintmax_t, [#include <stdint.h>], $bash_cv_type_unsigned_long_long)
1679 - if test "$ac_cv_header_sys_socket_h" = "yes"; then
1680 - BASH_CHECK_TYPE(socklen_t, [#include <sys/socket.h>], int, HAVE_SOCKLEN_T)
1681 - fi
1682 -diff -ru -x config* bash-3.2.orig/bashtypes.h bash-3.2/bashtypes.h
1683 ---- bash-3.2.orig/bashtypes.h Fri Jan 18 17:12:07 2008
1684 -+++ bash-3.2/bashtypes.h Fri Jan 18 17:12:38 2008
1685 -@@ -35,4 +35,8 @@
1686 - # include <inttypes.h>
1687 - #endif
1688 -
1689 -+#if defined (HAVE_STDINT_H)
1690 -+# include <stdint.h>
1691 -+#endif
1692 -+
1693 - #endif /* _BASHTYPES_H_ */
1694 -diff -ru -x config* bash-3.2.orig/lib/sh/strtoimax.c bash-3.2/lib/sh/strtoimax.c
1695 ---- bash-3.2.orig/lib/sh/strtoimax.c Fri Jan 18 17:12:06 2008
1696 -+++ bash-3.2/lib/sh/strtoimax.c Fri Jan 18 17:17:45 2008
1697 -@@ -25,6 +25,10 @@
1698 - # include <inttypes.h>
1699 - #endif
1700 -
1701 -+#if HAVE_STDINT_H
1702 -+# include <stdint.h>
1703 -+#endif
1704 -+
1705 - #if HAVE_STDLIB_H
1706 - # include <stdlib.h>
1707 - #endif
1708 -diff -ru -x config* bash-3.2.orig/lib/sh/strtoumax.c bash-3.2/lib/sh/strtoumax.c
1709 ---- bash-3.2.orig/lib/sh/strtoumax.c Fri Jan 18 17:12:06 2008
1710 -+++ bash-3.2/lib/sh/strtoumax.c Fri Jan 18 17:24:20 2008
1711 -@@ -25,6 +25,10 @@
1712 - # include <inttypes.h>
1713 - #endif
1714 -
1715 -+#if HAVE_STDINT_H
1716 -+# include <stdint.h>
1717 -+#endif
1718 -+
1719 - #if HAVE_STDLIB_H
1720 - # include <stdlib.h>
1721 - #endif
1722
1723 diff --git a/app-shells/bash/files/bash-3.2-ldflags-for-build.patch b/app-shells/bash/files/bash-3.2-ldflags-for-build.patch
1724 deleted file mode 100644
1725 index 2dc1dd6ef7..0000000000
1726 --- a/app-shells/bash/files/bash-3.2-ldflags-for-build.patch
1727 +++ /dev/null
1728 @@ -1,37 +0,0 @@
1729 -http://bugs.gentoo.org/211947
1730 -
1731 -fix from Takashi YOSHII: dont use target ldflags for build apps
1732 -
1733 ---- bash/builtins/Makefile.in
1734 -+++ bash/builtins/Makefile.in
1735 -@@ -63,7 +63,7 @@
1736 -
1737 - LIBS = @LIBS@
1738 - LDFLAGS = @LDFLAGS@ $(LOCAL_LDFLAGS) $(CFLAGS)
1739 --LDFLAGS_FOR_BUILD = $(LDFLAGS)
1740 -+LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@ $(LOCAL_LDFLAGS) $(CFLAGS_FOR_BUILD)
1741 - LOCAL_LDFLAGS = @LOCAL_LDFLAGS@
1742 - #LIBS_FOR_BUILD = @LIBS_FOR_BUILD@
1743 - LIBS_FOR_BUILD = $(LIBS)
1744 ---- bash/support/Makefile.in
1745 -+++ bash/support/Makefile.in
1746 -@@ -58,7 +58,7 @@
1747 -
1748 - LOCAL_LDFLAGS = @LOCAL_LDFLAGS@
1749 - LDFLAGS = @LDFLAGS@ $(LOCAL_LDFLAGS) $(CFLAGS)
1750 --LDFLAGS_FOR_BUILD = $(LDFLAGS)
1751 -+LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@ $(LOCAL_LDFLAGS) $(CFLAGS_FOR_BUILD)
1752 -
1753 - INCLUDES = -I${BUILD_DIR} -I${topdir}
1754 -
1755 ---- bash/Makefile.in
1756 -+++ bash/Makefile.in
1757 -@@ -143,7 +143,7 @@
1758 - CCFLAGS_FOR_BUILD = $(BASE_CCFLAGS) $(CPPFLAGS_FOR_BUILD) $(CFLAGS_FOR_BUILD)
1759 -
1760 - LDFLAGS = @LDFLAGS@ $(STATIC_LD) $(LOCAL_LDFLAGS) $(PROFILE_FLAGS) $(CFLAGS)
1761 --LDFLAGS_FOR_BUILD = $(LDFLAGS)
1762 -+LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@ $(LOCAL_LDFLAGS) $(CFLAGS_FOR_BUILD)
1763 -
1764 - INCLUDES = -I. @RL_INCLUDE@ -I$(srcdir) -I$(BASHINCDIR) -I$(LIBSRC) $(INTL_INC)
1765 -
1766
1767 diff --git a/app-shells/bash/files/bash-3.2-loadables.patch b/app-shells/bash/files/bash-3.2-loadables.patch
1768 deleted file mode 100644
1769 index cd0e1e1a8e..0000000000
1770 --- a/app-shells/bash/files/bash-3.2-loadables.patch
1771 +++ /dev/null
1772 @@ -1,239 +0,0 @@
1773 ---- bash-3.2/examples/loadables/basename.c
1774 -+++ bash-3.2/examples/loadables/basename.c
1775 -@@ -11,6 +11,7 @@
1776 - #include <stdio.h>
1777 - #include "builtins.h"
1778 - #include "shell.h"
1779 -+#include "common.h"
1780 -
1781 - basename_builtin (list)
1782 - WORD_LIST *list;
1783 ---- bash-3.2/examples/loadables/cut.c
1784 -+++ bash-3.2/examples/loadables/cut.c
1785 -@@ -63,6 +63,7 @@
1786 - #include "builtins.h"
1787 - #include "shell.h"
1788 - #include "bashgetopt.h"
1789 -+#include "common.h"
1790 -
1791 - #if !defined (errno)
1792 - extern int errno;
1793 ---- bash-3.2/examples/loadables/dirname.c
1794 -+++ bash-3.2/examples/loadables/dirname.c
1795 -@@ -11,6 +11,7 @@
1796 - #include <stdio.h>
1797 - #include "builtins.h"
1798 - #include "shell.h"
1799 -+#include "common.h"
1800 -
1801 - dirname_builtin (list)
1802 - WORD_LIST *list;
1803 ---- bash-3.2/examples/loadables/finfo.c
1804 -+++ bash-3.2/examples/loadables/finfo.c
1805 -@@ -12,6 +12,7 @@
1806 - #include <pwd.h>
1807 - #include <grp.h>
1808 - #include <errno.h>
1809 -+#include <time.h>
1810 -
1811 - #include "bashansi.h"
1812 - #include "shell.h"
1813 ---- bash-3.2/examples/loadables/head.c
1814 -+++ bash-3.2/examples/loadables/head.c
1815 -@@ -21,6 +21,7 @@
1816 - #include "builtins.h"
1817 - #include "shell.h"
1818 - #include "bashgetopt.h"
1819 -+#include "common.h"
1820 -
1821 - #if !defined (errno)
1822 - extern int errno;
1823 ---- bash-3.2/examples/loadables/ln.c
1824 -+++ bash-3.2/examples/loadables/ln.c
1825 -@@ -18,6 +18,7 @@
1826 - #include "builtins.h"
1827 - #include "shell.h"
1828 - #include "bashgetopt.h"
1829 -+#include "common.h"
1830 -
1831 - #if !defined (errno)
1832 - extern int errno;
1833 ---- bash-3.2/examples/loadables/logname.c
1834 -+++ bash-3.2/examples/loadables/logname.c
1835 -@@ -11,6 +11,7 @@
1836 -
1837 - #include "builtins.h"
1838 - #include "shell.h"
1839 -+#include "common.h"
1840 -
1841 - #if !defined (errno)
1842 - extern int errno;
1843 ---- bash-3.2/examples/loadables/mkdir.c
1844 -+++ bash-3.2/examples/loadables/mkdir.c
1845 -@@ -16,6 +16,7 @@
1846 - #include "builtins.h"
1847 - #include "shell.h"
1848 - #include "bashgetopt.h"
1849 -+#include "common.h"
1850 -
1851 - #if !defined (errno)
1852 - extern int errno;
1853 ---- bash-3.2/examples/loadables/pathchk.c
1854 -+++ bash-3.2/examples/loadables/pathchk.c
1855 -@@ -45,6 +45,7 @@
1856 - #include "stdc.h"
1857 - #include "bashgetopt.h"
1858 - #include "maxpath.h"
1859 -+#include "common.h"
1860 -
1861 - #if !defined (errno)
1862 - extern int errno;
1863 ---- bash-3.2/examples/loadables/print.c
1864 -+++ bash-3.2/examples/loadables/print.c
1865 -@@ -17,6 +17,8 @@
1866 - #include "builtins.h"
1867 - #include "stdc.h"
1868 - #include "bashgetopt.h"
1869 -+#include "builtext.h"
1870 -+#include "common.h"
1871 -
1872 - #if !defined (errno)
1873 - extern int errno;
1874 ---- bash-3.2/examples/loadables/printenv.c
1875 -+++ bash-3.2/examples/loadables/printenv.c
1876 -@@ -11,6 +11,7 @@
1877 - #include "builtins.h"
1878 - #include "shell.h"
1879 - #include "bashgetopt.h"
1880 -+#include "common.h"
1881 -
1882 - extern char **export_env;
1883 -
1884 ---- bash-3.2/examples/loadables/push.c
1885 -+++ bash-3.2/examples/loadables/push.c
1886 -@@ -11,6 +11,7 @@
1887 - #include "shell.h"
1888 - #include "jobs.h"
1889 - #include "bashgetopt.h"
1890 -+#include "common.h"
1891 -
1892 - #ifndef errno
1893 - extern int errno;
1894 ---- bash-3.2/examples/loadables/realpath.c
1895 -+++ bash-3.2/examples/loadables/realpath.c
1896 -@@ -34,6 +34,7 @@
1897 - #include "builtins.h"
1898 - #include "shell.h"
1899 - #include "bashgetopt.h"
1900 -+#include "common.h"
1901 -
1902 - #ifndef errno
1903 - extern int errno;
1904 -@@ -67,14 +68,14 @@
1905 - vflag = 1;
1906 - break;
1907 - default:
1908 -- usage();
1909 -+ builtin_usage();
1910 - }
1911 - }
1912 -
1913 - list = loptend;
1914 -
1915 - if (list == 0)
1916 -- usage();
1917 -+ builtin_usage();
1918 -
1919 - for (es = EXECUTION_SUCCESS; list; list = list->next) {
1920 - p = list->word->word;
1921 ---- bash-3.2/examples/loadables/rmdir.c
1922 -+++ bash-3.2/examples/loadables/rmdir.c
1923 -@@ -8,6 +8,7 @@
1924 - #include <errno.h>
1925 - #include "builtins.h"
1926 - #include "shell.h"
1927 -+#include "common.h"
1928 -
1929 - #if !defined (errno)
1930 - extern int errno;
1931 ---- bash-3.2/examples/loadables/sleep.c
1932 -+++ bash-3.2/examples/loadables/sleep.c
1933 -@@ -27,6 +27,7 @@
1934 -
1935 - #include "shell.h"
1936 - #include "builtins.h"
1937 -+#include "common.h"
1938 -
1939 - #define RETURN(x) \
1940 - do { \
1941 ---- bash-3.2/examples/loadables/tee.c
1942 -+++ bash-3.2/examples/loadables/tee.c
1943 -@@ -22,6 +22,7 @@
1944 - #include "builtins.h"
1945 - #include "shell.h"
1946 - #include "bashgetopt.h"
1947 -+#include "common.h"
1948 -
1949 - #if !defined (errno)
1950 - extern int errno;
1951 ---- bash-3.2/examples/loadables/truefalse.c
1952 -+++ bash-3.2/examples/loadables/truefalse.c
1953 -@@ -1,5 +1,7 @@
1954 - /* true and false builtins */
1955 -
1956 -+#include <config.h>
1957 -+
1958 - #include "bashtypes.h"
1959 - #include "shell.h"
1960 - #include "builtins.h"
1961 ---- bash-3.2/examples/loadables/tty.c
1962 -+++ bash-3.2/examples/loadables/tty.c
1963 -@@ -8,6 +8,7 @@
1964 - #include "builtins.h"
1965 - #include "shell.h"
1966 - #include "bashgetopt.h"
1967 -+#include "common.h"
1968 -
1969 - extern char *ttyname ();
1970 -
1971 ---- bash-3.2/examples/loadables/uname.c
1972 -+++ bash-3.2/examples/loadables/uname.c
1973 -@@ -27,6 +27,7 @@
1974 - #include "builtins.h"
1975 - #include "shell.h"
1976 - #include "bashgetopt.h"
1977 -+#include "common.h"
1978 -
1979 - #define FLAG_SYSNAME 0x01 /* -s */
1980 - #define FLAG_NODENAME 0x02 /* -n */
1981 ---- bash-3.2/examples/loadables/unlink.c
1982 -+++ bash-3.2/examples/loadables/unlink.c
1983 -@@ -14,6 +14,7 @@
1984 -
1985 - #include "builtins.h"
1986 - #include "shell.h"
1987 -+#include "common.h"
1988 -
1989 - #ifndef errno
1990 - extern int errno;
1991 ---- bash-3.2/examples/loadables/whoami.c
1992 -+++ bash-3.2/examples/loadables/whoami.c
1993 -@@ -8,6 +8,7 @@
1994 - #include "builtins.h"
1995 - #include "shell.h"
1996 - #include "bashgetopt.h"
1997 -+#include "common.h"
1998 -
1999 - whoami_builtin (list)
2000 - WORD_LIST *list;
2001 ---- bash-3.2/examples/loadables/Makefile.in
2002 -+++ bash-3.2/examples/loadables/Makefile.in
2003 -@@ -68,7 +68,7 @@
2004 - SHOBJ_CC = @SHOBJ_CC@
2005 - SHOBJ_CFLAGS = @SHOBJ_CFLAGS@
2006 - SHOBJ_LD = @SHOBJ_LD@
2007 --SHOBJ_LDFLAGS = @SHOBJ_LDFLAGS@
2008 -+SHOBJ_LDFLAGS = @SHOBJ_LDFLAGS@ @LDFLAGS@
2009 - SHOBJ_XLDFLAGS = @SHOBJ_XLDFLAGS@
2010 - SHOBJ_LIBS = @SHOBJ_LIBS@
2011 - SHOBJ_STATUS = @SHOBJ_STATUS@
2012
2013 diff --git a/app-shells/bash/files/bash-3.2-parallel-build.patch b/app-shells/bash/files/bash-3.2-parallel-build.patch
2014 deleted file mode 100644
2015 index 0ee0491062..0000000000
2016 --- a/app-shells/bash/files/bash-3.2-parallel-build.patch
2017 +++ /dev/null
2018 @@ -1,16 +0,0 @@
2019 -http://bugs.gentoo.org/189671
2020 -http://lists.gnu.org/archive/html/bug-bash/2007-08/msg00081.html
2021 -
2022 ---- bash-3.2/Makefile.in
2023 -+++ bash-3.2/Makefile.in
2024 -@@ -584,7 +584,9 @@
2025 - @( { test "${RL_LIBDIR}" = "${libdir}" && exit 0; } || \
2026 - cd ${RL_LIBDIR} && $(MAKE) $(MFLAGS) libreadline.a) || exit 1
2027 -
2028 --$(HISTORY_LIBRARY): config.h $(HISTORY_SOURCE)
2029 -+# prevent parallel build race conditions in the lib/readline/ subdir
2030 -+# by depending on libreadline.a when applicable
2031 -+$(HISTORY_LIBRARY): config.h $(HISTORY_SOURCE) $(READLINE_DEP)
2032 - @echo making $@ in ${HIST_LIBDIR}
2033 - @( { test "${HIST_LIBDIR}" = "${libdir}" && exit 0; } || \
2034 - cd ${HIST_LIBDIR} && $(MAKE) $(MFLAGS) libhistory.a) || exit 1
2035
2036 diff --git a/app-shells/bash/files/bash-3.2-process-subst.patch b/app-shells/bash/files/bash-3.2-process-subst.patch
2037 deleted file mode 100644
2038 index bd0b3f4e17..0000000000
2039 --- a/app-shells/bash/files/bash-3.2-process-subst.patch
2040 +++ /dev/null
2041 @@ -1,12 +0,0 @@
2042 -Fix process substitution on BSD
2043 -
2044 ---- execute_cmd.c
2045 -+++ execute_cmd.c
2046 -@@ -2672,6 +2672,7 @@
2047 -
2048 - do_piping (pipe_in, pipe_out);
2049 -
2050 -+ subshell_environment = 0;
2051 - if (async)
2052 - subshell_environment |= SUBSHELL_ASYNC;
2053 - if (pipe_in != NO_PIPE || pipe_out != NO_PIPE)
2054
2055 diff --git a/app-shells/bash/files/bash-3.2-protos.patch b/app-shells/bash/files/bash-3.2-protos.patch
2056 deleted file mode 100644
2057 index 0a9ea74adf..0000000000
2058 --- a/app-shells/bash/files/bash-3.2-protos.patch
2059 +++ /dev/null
2060 @@ -1,57 +0,0 @@
2061 -move prototypes around so they show up when needed
2062 -
2063 ---- a/jobs.h
2064 -+++ b/jobs.h
2065 -@@ -182,6 +182,7 @@
2066 -
2067 - extern int count_all_jobs __P((void));
2068 -
2069 -+extern void close_pgrp_pipe __P((void));
2070 - extern void terminate_current_pipeline __P((void));
2071 - extern void terminate_stopped_jobs __P((void));
2072 - extern void hangup_all_jobs __P((void));
2073 ---- a/lib/glob/strmatch.c
2074 -+++ b/lib/glob/strmatch.c
2075 -@@ -25,9 +25,6 @@
2076 - #include "strmatch.h"
2077 -
2078 - extern int xstrmatch __P((char *, char *, int));
2079 --#if defined (HAVE_MULTIBYTE)
2080 --extern int internal_wstrmatch __P((wchar_t *, wchar_t *, int));
2081 --#endif
2082 -
2083 - int
2084 - strmatch (pattern, string, flags)
2085 ---- a/lib/glob/strmatch.h
2086 -+++ b/lib/glob/strmatch.h
2087 -@@ -57,6 +57,7 @@
2088 -
2089 - #if HANDLE_MULTIBYTE
2090 - extern int wcsmatch __P((wchar_t *, wchar_t *, int));
2091 -+extern int internal_wstrmatch __P((wchar_t *, wchar_t *, int));
2092 - #endif
2093 -
2094 - #endif /* _STRMATCH_H */
2095 ---- a/quit.h
2096 -+++ b/quit.h
2097 -@@ -21,6 +21,8 @@
2098 - #if !defined (_QUIT_H_)
2099 - #define _QUIT_H_
2100 -
2101 -+#include "sig.h"
2102 -+
2103 - /* Non-zero means SIGINT has already ocurred. */
2104 - extern volatile int interrupt_state;
2105 - extern volatile int terminating_signal;
2106 ---- a/support/bashversion.c
2107 -+++ b/support/bashversion.c
2108 -@@ -47,6 +47,9 @@
2109 - extern char *dist_version;
2110 - extern int patch_level;
2111 -
2112 -+extern char *shell_version_string __P((void));
2113 -+extern void show_shell_version __P((int));
2114 -+
2115 - char *shell_name = "bash";
2116 - char *progname;
2117 -
2118
2119 diff --git a/app-shells/bash/files/bash-3.2-session-leader.patch b/app-shells/bash/files/bash-3.2-session-leader.patch
2120 deleted file mode 100644
2121 index 82f7d98063..0000000000
2122 --- a/app-shells/bash/files/bash-3.2-session-leader.patch
2123 +++ /dev/null
2124 @@ -1,65 +0,0 @@
2125 -http://bugs.gentoo.org/231775
2126 -http://lists.gnu.org/archive/html/bug-bash/2008-07/msg00010.html
2127 -
2128 -A parent bash shell sometimes will set the session leader tty (using tcsetpgrp)
2129 -back to itself, taking control away from a child bash shell, due to a race
2130 -condition. A result is that the child can then not then execute some commands
2131 -(like stty) from its init script (e.g. .bashrc). The result I (and others)
2132 -have seen is that the bash shell will hang while reading the init script.
2133 -
2134 -*** jobs.c.20080704 2008-07-10 15:14:13.000000000 -0400
2135 ---- jobs.c 2008-07-10 15:17:59.000000000 -0400
2136 -***************
2137 -*** 266,269 ****
2138 ---- 266,270 ----
2139 - static void set_job_running __P((int));
2140 - static void setjstatus __P((int));
2141 -+ static int maybe_give_terminal_to __P((pid_t, pid_t, int));
2142 - static void mark_all_jobs_as_dead __P((void));
2143 - static void mark_dead_jobs_as_notified __P((int));
2144 -***************
2145 -*** 637,641 ****
2146 - */
2147 - if (job_control && newjob->pgrp && (subshell_environment&SUBSHELL_ASYNC) == 0)
2148 -! give_terminal_to (newjob->pgrp, 0);
2149 - }
2150 - }
2151 ---- 638,642 ----
2152 - */
2153 - if (job_control && newjob->pgrp && (subshell_environment&SUBSHELL_ASYNC) == 0)
2154 -! maybe_give_terminal_to (shell_pgrp, newjob->pgrp, 0);
2155 - }
2156 - }
2157 -***************
2158 -*** 3833,3836 ****
2159 ---- 3834,3863 ----
2160 - }
2161 -
2162 -+ /* Give terminal to NPGRP iff it's currently owned by OPGRP. FLAGS are the
2163 -+ flags to pass to give_terminal_to(). */
2164 -+ static int
2165 -+ maybe_give_terminal_to (opgrp, npgrp, flags)
2166 -+ pid_t opgrp, npgrp;
2167 -+ int flags;
2168 -+ {
2169 -+ int tpgrp;
2170 -+
2171 -+ tpgrp = tcgetpgrp (shell_tty);
2172 -+ if (tpgrp == npgrp)
2173 -+ {
2174 -+ terminal_pgrp = npgrp;
2175 -+ return 0;
2176 -+ }
2177 -+ else if (tpgrp != opgrp)
2178 -+ {
2179 -+ #if defined (DEBUG)
2180 -+ internal_warning ("maybe_give_terminal_to: terminal pgrp == %d shell pgrp = %d", tpgrp, opgrp);
2181 -+ #endif
2182 -+ return -1;
2183 -+ }
2184 -+ else
2185 -+ return (give_terminal_to (npgrp, flags));
2186 -+ }
2187 -+
2188 - /* Clear out any jobs in the job array. This is intended to be used by
2189 - children of the shell, who should not have any job structures as baggage
2190
2191 diff --git a/app-shells/bash/files/bash-3.2-ulimit.patch b/app-shells/bash/files/bash-3.2-ulimit.patch
2192 deleted file mode 100644
2193 index a0975cb6e9..0000000000
2194 --- a/app-shells/bash/files/bash-3.2-ulimit.patch
2195 +++ /dev/null
2196 @@ -1,13 +0,0 @@
2197 -add missing docs for -e and -r options
2198 -
2199 ---- builtins/ulimit.def
2200 -+++ builtins/ulimit.def
2201 -@@ -24,7 +24,7 @@
2202 - $BUILTIN ulimit
2203 - $FUNCTION ulimit_builtin
2204 - $DEPENDS_ON !_MINIX
2205 --$SHORT_DOC ulimit [-SHacdfilmnpqstuvx] [limit]
2206 -+$SHORT_DOC ulimit [-SHacdefilmnpqrstuvx] [limit]
2207 - Ulimit provides control over the resources available to processes
2208 - started by the shell, on systems that allow such control. If an
2209 - option is given, it is interpreted as follows:
2210
2211 diff --git a/app-shells/bash/files/bash-4.0-bashintl-in-siglist.patch b/app-shells/bash/files/bash-4.0-bashintl-in-siglist.patch
2212 deleted file mode 100644
2213 index 14b0662019..0000000000
2214 --- a/app-shells/bash/files/bash-4.0-bashintl-in-siglist.patch
2215 +++ /dev/null
2216 @@ -1,12 +0,0 @@
2217 -http://lists.gnu.org/archive/html/bug-bash/2009-06/msg00016.html
2218 -
2219 ---- siglist.c.orig 2009-06-22 17:40:04.000000000 +0200
2220 -+++ siglist.c 2009-06-22 17:42:21.000000000 +0200
2221 -@@ -33,6 +33,7 @@
2222 - #endif
2223 -
2224 - #include "xmalloc.h"
2225 -+#include "bashintl.h"
2226 -
2227 - char *sys_siglist[NSIG];
2228 -
2229
2230 diff --git a/app-shells/bash/files/bash-4.0-cflags_for_build.patch b/app-shells/bash/files/bash-4.0-cflags_for_build.patch
2231 deleted file mode 100644
2232 index 954a4a93d4..0000000000
2233 --- a/app-shells/bash/files/bash-4.0-cflags_for_build.patch
2234 +++ /dev/null
2235 @@ -1,23 +0,0 @@
2236 -In non-cross-builds, LDFLAGS_FOR_BUILD contain CFLAGS via LDFLAGS.
2237 -So CFLAGS_FOR_BUILD also have to contain CFLAGS, to allow 32bit
2238 -builds on x86_64 multilib hosts using CFLAGS=-m32.
2239 ---- configure.in.orig 2009-09-23 09:38:11.925846236 +0200
2240 -+++ configure.in 2009-09-23 09:39:02.346543283 +0200
2241 -@@ -466,6 +466,7 @@
2242 -
2243 - if test "X$cross_compiling" = "Xno"; then
2244 - CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-"$CPPFLAGS"}
2245 -+ CFLAGS_FOR_BUILD=${CFLAGS_FOR_BUILD-'$(CFLAGS)'}
2246 - LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-'$(LDFLAGS)'}
2247 - else
2248 - CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-""}
2249 ---- configure.orig 2009-02-09 14:33:13.000000000 +0100
2250 -+++ configure 2009-09-23 09:40:00.816540401 +0200
2251 -@@ -5103,6 +5103,7 @@
2252 -
2253 - if test "X$cross_compiling" = "Xno"; then
2254 - CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-"$CPPFLAGS"}
2255 -+ CFLAGS_FOR_BUILD=${CFLAGS_FOR_BUILD-'$(CFLAGS)'}
2256 - LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-'$(LDFLAGS)'}
2257 - else
2258 - CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-""}
2259
2260 diff --git a/app-shells/bash/files/bash-4.0-childmax-pids.patch b/app-shells/bash/files/bash-4.0-childmax-pids.patch
2261 deleted file mode 100644
2262 index 87f875a9ca..0000000000
2263 --- a/app-shells/bash/files/bash-4.0-childmax-pids.patch
2264 +++ /dev/null
2265 @@ -1,123 +0,0 @@
2266 -Initial report:
2267 -http://lists.gnu.org/archive/html/bug-bash/2012-07/msg00054.html
2268 -Small testcase breaking on AIX, requires maxuproc > 128
2269 - $ /usr/sbin/lsattr -E -l sys0 | grep maxuproc
2270 -http://lists.gnu.org/archive/html/bug-bash/2012-07/msg00080.html
2271 -
2272 - 7/24
2273 - ----
2274 -configure.in
2275 - - interix: define RECYCLES_PIDS. Based on a report from Michael
2276 - Haubenwallner <michael.haubenwallner@×××××××.at>
2277 -
2278 - 7/26
2279 - ----
2280 -jobs.c
2281 - - make_child: call bgp_delete on the newly-created pid unconditionally.
2282 - Some systems reuse pids before cycling through an entire set of
2283 - CHILD_MAX/_SC_CHILD_MAX unique pids. This is no longer dependent
2284 - on RECYCLES_PIDS. Based on a report from Michael Haubenwallner
2285 - <michael.haubenwallner@×××××××.at>
2286 -
2287 - 7/28
2288 - ----
2289 -subst.c
2290 - - command_substitute: make sure last_made_pid gets reset if make_child
2291 - fails
2292 -
2293 -execute_cmd.c
2294 - - execute_command_internal: case cm_simple: decide whether or not to
2295 - wait_for a child if already_making_children is non-zero, indicates
2296 - that there is an unwaited-for child. More of fix for bug report
2297 - from Michael Haubenwallner <michael.haubenwallner@×××××××.at>
2298 -
2299 -jobs.c
2300 - - make_child: call delete_old_job (new_pid) unconditionally, don't
2301 - bother to check whether or not pid wrap occurred. Rest of fix for
2302 - bug report from Michael Haubenwallner
2303 - <michael.haubenwallner@×××××××.at>
2304 -
2305 -#diff --git a/configure.in b/configure.in
2306 -#index df91278..646abee 100644
2307 -#--- a/configure.in
2308 -#+++ b/configure.in
2309 -#@@ -1067,7 +1067,7 @@ linux*) LOCAL_LDFLAGS=-rdynamic # allow dynamic loading
2310 -# *qnx*) LOCAL_CFLAGS="-Dqnx -F -3s" LOCAL_LDFLAGS="-3s" LOCAL_LIBS="-lunix -lncurses" ;;
2311 -# powerux*) LOCAL_LIBS="-lgen" ;;
2312 -# cygwin*) LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
2313 -#-opennt*|interix*) LOCAL_CFLAGS="-DNO_MAIN_ENV_ARG -DBROKEN_DIRENT_D_INO -D_POSIX_SOURCE -D_ALL_SOURCE" ;;
2314 -#+opennt*|interix*) LOCAL_CFLAGS="-DNO_MAIN_ENV_ARG -DBROKEN_DIRENT_D_INO -D_POSIX_SOURCE -D_ALL_SOURCE -DRECYCLES_PIDS" ;;
2315 -# esac
2316 -#
2317 -# dnl Stanza for OS/compiler pair-specific flags
2318 -diff --git a/configure b/configure
2319 -index 0e62d6f..d913772 100755
2320 ---- a/configure
2321 -+++ b/configure
2322 -@@ -15760,7 +15760,7 @@ linux*) LOCAL_LDFLAGS=-rdynamic # allow dynamic loading
2323 - *qnx*) LOCAL_CFLAGS="-Dqnx -F -3s" LOCAL_LDFLAGS="-3s" LOCAL_LIBS="-lunix -lncurses" ;;
2324 - powerux*) LOCAL_LIBS="-lgen" ;;
2325 - cygwin*) LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
2326 --opennt*|interix*) LOCAL_CFLAGS="-DNO_MAIN_ENV_ARG -DBROKEN_DIRENT_D_INO -D_POSIX_SOURCE -D_ALL_SOURCE" ;;
2327 -+opennt*|interix*) LOCAL_CFLAGS="-DNO_MAIN_ENV_ARG -DBROKEN_DIRENT_D_INO -D_POSIX_SOURCE -D_ALL_SOURCE -DRECYCLES_PIDS" ;;
2328 - esac
2329 -
2330 - case "${host_os}-${CC}" in
2331 -diff --git a/execute_cmd.c b/execute_cmd.c
2332 -index 5beddef..8615b0b 100644
2333 ---- a/execute_cmd.c
2334 -+++ b/execute_cmd.c
2335 -@@ -775,9 +782,11 @@ execute_command_internal (command, asynchronous, pipe_in, pipe_out,
2336 - the child. */
2337 -
2338 - /* XXX - this is something to watch out for if there are problems
2339 -- when the shell is compiled without job control. */
2340 -- if (already_making_children && pipe_out == NO_PIPE &&
2341 -- last_made_pid != last_pid)
2342 -+ when the shell is compiled without job control. Don't worry about
2343 -+ whether or not last_made_pid == last_pid; already_making_children
2344 -+ tells us whether or not there are unwaited-for children to wait
2345 -+ for and reap. */
2346 -+ if (already_making_children && pipe_out == NO_PIPE)
2347 - {
2348 - stop_pipeline (asynchronous, (COMMAND *)NULL);
2349 -
2350 -diff --git a/jobs.c b/jobs.c
2351 -index 18b189d..d190e82 100644
2352 ---- a/jobs.c
2353 -+++ b/jobs.c
2354 -@@ -1898,15 +1898,13 @@ make_child (command, async_p)
2355 - last_asynchronous_pid = 1;
2356 - #endif
2357 -
2358 -- if (pid_wrap > 0)
2359 -- delete_old_job (pid);
2360 -+ /* Delete the saved status for any job containing this PID in case it's
2361 -+ been reused. */
2362 -+ delete_old_job (pid);
2363 -
2364 --#if !defined (RECYCLES_PIDS)
2365 -- /* Only check for saved status if we've saved more than CHILD_MAX
2366 -- statuses, unless the system recycles pids. */
2367 -- if ((js.c_reaped + bgpids.npid) >= js.c_childmax)
2368 --#endif
2369 -- bgp_delete (pid); /* new process, discard any saved status */
2370 -+ /* Perform the check for pid reuse unconditionally. Some systems reuse
2371 -+ PIDs before giving a process CHILD_MAX/_SC_CHILD_MAX unique ones. */
2372 -+ bgp_delete (pid); /* new process, discard any saved status */
2373 -
2374 - last_made_pid = pid;
2375 -
2376 -diff --git a/subst.c b/subst.c
2377 -index 057c992..e772dd7 100644
2378 ---- a/subst.c
2379 -+++ b/subst.c
2380 -@@ -5332,6 +5332,8 @@ command_substitute (string, quoted)
2381 - sys_error (_("cannot make child for command substitution"));
2382 - error_exit:
2383 -
2384 -+ last_made_pid = old_pid;
2385 -+
2386 - FREE (istring);
2387 - close (fildes[0]);
2388 - close (fildes[1]);
2389
2390 diff --git a/app-shells/bash/files/bash-4.0-configs-prefix.patch b/app-shells/bash/files/bash-4.0-configs-prefix.patch
2391 deleted file mode 100644
2392 index c6ada7c7fa..0000000000
2393 --- a/app-shells/bash/files/bash-4.0-configs-prefix.patch
2394 +++ /dev/null
2395 @@ -1,15 +0,0 @@
2396 ---- bash-4.0/pathnames.h.in
2397 -+++ bash-4.0/pathnames.h.in
2398 -@@ -22,10 +22,10 @@
2399 - #define _PATHNAMES_H_
2400 -
2401 - /* The default file for hostname completion. */
2402 --#define DEFAULT_HOSTS_FILE "/etc/hosts"
2403 -+#define DEFAULT_HOSTS_FILE "@GENTOO_PORTAGE_EPREFIX@/etc/hosts"
2404 -
2405 - /* The default login shell startup file. */
2406 --#define SYS_PROFILE "/etc/profile"
2407 -+#define SYS_PROFILE "@GENTOO_PORTAGE_EPREFIX@/etc/profile"
2408 -
2409 - /* The default location of the bash debugger initialization/startup file. */
2410 - #define DEBUGGER_START_FILE "@DEBUGGER_START_FILE@"
2411
2412 diff --git a/app-shells/bash/files/bash-4.0-configure.patch b/app-shells/bash/files/bash-4.0-configure.patch
2413 deleted file mode 100644
2414 index e57cb6b240..0000000000
2415 --- a/app-shells/bash/files/bash-4.0-configure.patch
2416 +++ /dev/null
2417 @@ -1,25 +0,0 @@
2418 -http://bugs.gentoo.org/304901
2419 -
2420 -newer patches touch configure ... we don't want autotool deps, so update
2421 -the files ourselves
2422 -
2423 ---- bash-4.0/configure
2424 -+++ bash-4.0/configure
2425 -@@ -5806,7 +5806,7 @@
2426 - # static version specified as -llibname to override the
2427 - # dynamic version
2428 - case "${host_os}" in
2429 -- darwin[89]*) READLINE_LIB='${READLINE_LIBRARY}' ;;
2430 -+ darwin[89]*|darwin10*) READLINE_LIB='${READLINE_LIBRARY}' ;;
2431 - *) READLINE_LIB=-lreadline ;;
2432 - esac
2433 - fi
2434 -@@ -5847,7 +5847,7 @@
2435 - # static version specified as -llibname to override the
2436 - # dynamic version
2437 - case "${host_os}" in
2438 -- darwin[89]*) HISTORY_LIB='${HISTORY_LIBRARY}' ;;
2439 -+ darwin[89]*|darwin10*) HISTORY_LIB='${HISTORY_LIBRARY}' ;;
2440 - *) HISTORY_LIB=-lhistory ;;
2441 - esac
2442 - fi
2443
2444 diff --git a/app-shells/bash/files/bash-4.0-interix-access-suacomp.patch b/app-shells/bash/files/bash-4.0-interix-access-suacomp.patch
2445 deleted file mode 100644
2446 index f48babf764..0000000000
2447 --- a/app-shells/bash/files/bash-4.0-interix-access-suacomp.patch
2448 +++ /dev/null
2449 @@ -1,50 +0,0 @@
2450 -diff -ru -x '*.Po' -x '*.Plo' bash-4.0.orig/lib/readline/complete.c bash-4.0/lib/readline/complete.c
2451 ---- bash-4.0.orig/lib/readline/complete.c 2009-08-25 10:57:39 +0200
2452 -+++ bash-4.0/lib/readline/complete.c 2009-08-25 11:35:09 +0200
2453 -@@ -52,6 +52,10 @@
2454 - #include <pwd.h>
2455 - #endif
2456 -
2457 -+/* can't include externs.h here - so directly define this one. this
2458 -+ * is required to fix interix access() which behaves totally stupid */
2459 -+extern int sh_eaccess(char*,int);
2460 -+
2461 - #include "posixdir.h"
2462 - #include "posixstat.h"
2463 -
2464 -@@ -554,7 +558,7 @@
2465 - #endif
2466 - else if (S_ISREG (finfo.st_mode))
2467 - {
2468 -- if (access (filename, X_OK) == 0)
2469 -+ if (sh_eaccess (filename, X_OK) == 0)
2470 - character = '*';
2471 - }
2472 - return (character);
2473 -diff -ru -x '*.Po' -x '*.Plo' bash-4.0.orig/lib/sh/eaccess.c bash-4.0/lib/sh/eaccess.c
2474 ---- bash-4.0.orig/lib/sh/eaccess.c 2009-08-25 10:57:40 +0200
2475 -+++ bash-4.0/lib/sh/eaccess.c 2009-08-25 16:34:38 +0200
2476 -@@ -203,7 +203,7 @@
2477 -
2478 - #if defined (HAVE_EACCESS) /* FreeBSD */
2479 - return (eaccess (path, mode));
2480 --#elif defined (EFF_ONLY_OK) /* SVR4(?), SVR4.2 */
2481 -+#elif defined (EFF_ONLY_OK) && !defined(__INTERIX) /* SVR4(?), SVR4.2 */
2482 - return access (path, mode|EFF_ONLY_OK);
2483 - #else
2484 - if (mode == F_OK)
2485 -@@ -214,8 +214,13 @@
2486 - return (sh_euidaccess (path, mode));
2487 - # endif
2488 -
2489 -+/* on interix, use stataccess always, since access on interix behaves bad:
2490 -+ * whenever a process has appropriate priviledges (speaking in windows terms),
2491 -+ * success is reported, even if the bits are not set. */
2492 -+#ifndef __INTERIX
2493 - if (current_user.uid == current_user.euid && current_user.gid == current_user.egid)
2494 - return (access (path, mode));
2495 -+#endif
2496 -
2497 - return (sh_stataccess (path, mode));
2498 - #endif
2499 -
2500
2501 diff --git a/app-shells/bash/files/bash-4.0-interix-access.patch b/app-shells/bash/files/bash-4.0-interix-access.patch
2502 deleted file mode 100644
2503 index a515735234..0000000000
2504 --- a/app-shells/bash/files/bash-4.0-interix-access.patch
2505 +++ /dev/null
2506 @@ -1,103 +0,0 @@
2507 -diff -ru -x '*.Po' -x '*.Plo' bash-4.0.orig/findcmd.c bash-4.0/findcmd.c
2508 ---- bash-4.0.orig/findcmd.c 2009-08-25 10:57:38 +0200
2509 -+++ bash-4.0/findcmd.c 2009-08-25 11:12:37 +0200
2510 -@@ -111,7 +111,7 @@
2511 -
2512 - /* Root only requires execute permission for any of owner, group or
2513 - others to be able to exec a file, and can read any file. */
2514 -- if (current_user.euid == (uid_t)0)
2515 -+ if (current_user.euid == (uid_t)ROOT_UID)
2516 - {
2517 - r |= FS_READABLE;
2518 - if (finfo.st_mode & S_IXUGO)
2519 -diff -ru -x '*.Po' -x '*.Plo' bash-4.0.orig/lib/readline/complete.c bash-4.0/lib/readline/complete.c
2520 ---- bash-4.0.orig/lib/readline/complete.c 2009-08-25 10:57:39 +0200
2521 -+++ bash-4.0/lib/readline/complete.c 2009-08-25 11:35:09 +0200
2522 -@@ -52,6 +52,10 @@
2523 - #include <pwd.h>
2524 - #endif
2525 -
2526 -+/* can't include externs.h here - so directly define this one. this
2527 -+ * is required to fix interix access() which behaves totally stupid */
2528 -+extern int sh_eaccess(char*,int);
2529 -+
2530 - #include "posixdir.h"
2531 - #include "posixstat.h"
2532 -
2533 -@@ -554,7 +558,7 @@
2534 - #endif
2535 - else if (S_ISREG (finfo.st_mode))
2536 - {
2537 -- if (access (filename, X_OK) == 0)
2538 -+ if (sh_eaccess (filename, X_OK) == 0)
2539 - character = '*';
2540 - }
2541 - return (character);
2542 -diff -ru -x '*.Po' -x '*.Plo' bash-4.0.orig/lib/sh/eaccess.c bash-4.0/lib/sh/eaccess.c
2543 ---- bash-4.0.orig/lib/sh/eaccess.c 2009-08-25 10:57:40 +0200
2544 -+++ bash-4.0/lib/sh/eaccess.c 2009-08-25 16:34:38 +0200
2545 -@@ -141,7 +141,7 @@
2546 - if (sh_stat (path, &st) < 0)
2547 - return (-1);
2548 -
2549 -- if (current_user.euid == 0)
2550 -+ if (current_user.euid == ROOT_UID)
2551 - {
2552 - /* Root can read or write any file. */
2553 - if ((mode & X_OK) == 0)
2554 -@@ -203,7 +203,7 @@
2555 -
2556 - #if defined (HAVE_EACCESS) /* FreeBSD */
2557 - return (eaccess (path, mode));
2558 --#elif defined (EFF_ONLY_OK) /* SVR4(?), SVR4.2 */
2559 -+#elif defined (EFF_ONLY_OK) && !defined(__INTERIX) /* SVR4(?), SVR4.2 */
2560 - return access (path, mode|EFF_ONLY_OK);
2561 - #else
2562 - if (mode == F_OK)
2563 -@@ -214,8 +214,13 @@
2564 - return (sh_euidaccess (path, mode));
2565 - # endif
2566 -
2567 -+/* on interix, use stataccess always, since access on interix behaves bad:
2568 -+ * whenever a process has appropriate priviledges (speaking in windows terms),
2569 -+ * success is reported, even if the bits are not set. */
2570 -+#ifndef __INTERIX
2571 - if (current_user.uid == current_user.euid && current_user.gid == current_user.egid)
2572 - return (access (path, mode));
2573 -+#endif
2574 -
2575 - return (sh_stataccess (path, mode));
2576 - #endif
2577 -diff -ru -x '*.Po' -x '*.Plo' bash-4.0.orig/parse.y bash-4.0/parse.y
2578 ---- bash-4.0.orig/parse.y 2009-08-25 10:57:41 +0200
2579 -+++ bash-4.0/parse.y 2009-08-25 11:27:04 +0200
2580 -@@ -4990,9 +4990,9 @@
2581 -
2582 - case '$':
2583 - t = temp = (char *)xmalloc (3);
2584 -- if ((promptvars || posixly_correct) && (current_user.euid != 0))
2585 -+ if ((promptvars || posixly_correct) && (current_user.euid != ROOT_UID))
2586 - *t++ = '\\';
2587 -- *t++ = current_user.euid == 0 ? '#' : '$';
2588 -+ *t++ = current_user.euid == ROOT_UID ? '#' : '$';
2589 - *t = '\0';
2590 - goto add_string;
2591 -
2592 -diff -ru -x '*.Po' -x '*.Plo' bash-4.0.orig/shell.h bash-4.0/shell.h
2593 ---- bash-4.0.orig/shell.h 2009-08-25 10:57:42 +0200
2594 -+++ bash-4.0/shell.h 2009-08-25 11:11:39 +0200
2595 -@@ -41,6 +41,14 @@
2596 - #include "pathnames.h"
2597 - #include "externs.h"
2598 -
2599 -+#ifndef __INTERIX
2600 -+# define ROOT_UID 0
2601 -+# define ROOT_GID 0
2602 -+#else
2603 -+# define ROOT_UID 197108
2604 -+# define ROOT_GID 131616
2605 -+#endif
2606 -+
2607 - extern int EOF_Reached;
2608 -
2609 - #define NO_PIPE -1
2610
2611 diff --git a/app-shells/bash/files/bash-4.0-interix-x64.patch b/app-shells/bash/files/bash-4.0-interix-x64.patch
2612 deleted file mode 100644
2613 index 5e3f900919..0000000000
2614 --- a/app-shells/bash/files/bash-4.0-interix-x64.patch
2615 +++ /dev/null
2616 @@ -1,40 +0,0 @@
2617 -diff -ru bash-4.0.orig/shell.c bash-4.0/shell.c
2618 ---- bash-4.0.orig/shell.c 2009-10-06 09:39:27 +0200
2619 -+++ bash-4.0/shell.c 2009-10-06 10:17:47 +0200
2620 -@@ -357,6 +357,36 @@
2621 - #ifdef __OPENNT
2622 - char **env;
2623 -
2624 -+#ifdef __INTERIX
2625 -+ /* on x64 interix, microsoft introduced freaky environment names
2626 -+ * like COMMONPROGRAMFILES(X86) - (yes, _with_ those braces) ...
2627 -+ * simply handle them, by transforming all '(' and ')' in the existing
2628 -+ * environment to '_'s ... */
2629 -+#define _ENV_RPL(var, end, srch, rpl) \
2630 -+ while(var) { \
2631 -+ char * _p_fnd = strchr(var, srch); \
2632 -+ \
2633 -+ if(!_p_fnd || _p_fnd >= end) \
2634 -+ break; \
2635 -+ \
2636 -+ *_p_fnd = rpl; \
2637 -+ }
2638 -+
2639 -+ {
2640 -+ char ** _pe = environ;
2641 -+
2642 -+ while(_pe && *_pe) {
2643 -+ char * _p_eq = strchr(*_pe, '=');
2644 -+
2645 -+ if(_p_eq) {
2646 -+ _ENV_RPL(*_pe, _p_eq, '(', '_');
2647 -+ _ENV_RPL(*_pe, _p_eq, ')', '_');
2648 -+ }
2649 -+ ++_pe;
2650 -+ }
2651 -+ }
2652 -+#endif
2653 -+
2654 - env = environ;
2655 - #endif /* __OPENNT */
2656 -
2657
2658 diff --git a/app-shells/bash/files/bash-4.0-interix.patch b/app-shells/bash/files/bash-4.0-interix.patch
2659 deleted file mode 100644
2660 index 1949b12b45..0000000000
2661 --- a/app-shells/bash/files/bash-4.0-interix.patch
2662 +++ /dev/null
2663 @@ -1,14 +0,0 @@
2664 -diff -ru bash-4.0.orig/lib/sh/getcwd.c bash-4.0/lib/sh/getcwd.c
2665 ---- bash-4.0.orig/lib/sh/getcwd.c 2009-05-06 11:34:51 +0200
2666 -+++ bash-4.0/lib/sh/getcwd.c 2009-05-06 11:47:01 +0200
2667 -@@ -50,6 +50,10 @@
2668 -
2669 - #include <xmalloc.h>
2670 -
2671 -+/* make sure this agrees with externs.h!
2672 -+ * for some reason we cannot include it... */
2673 -+#define MP_RMDOT 0x04
2674 -+
2675 - #if !defined (errno)
2676 - extern int errno;
2677 - #endif /* !errno */
2678
2679 diff --git a/app-shells/bash/files/bash-4.0-ldflags-for-build.patch b/app-shells/bash/files/bash-4.0-ldflags-for-build.patch
2680 deleted file mode 100644
2681 index 089264f97e..0000000000
2682 --- a/app-shells/bash/files/bash-4.0-ldflags-for-build.patch
2683 +++ /dev/null
2684 @@ -1,15 +0,0 @@
2685 -http://bugs.gentoo.org/211947
2686 -
2687 -fix from Takashi YOSHII: dont use target ldflags for build apps
2688 -
2689 ---- bash/Makefile.in
2690 -+++ bash/Makefile.in
2691 -@@ -143,7 +143,7 @@
2692 - CCFLAGS_FOR_BUILD = $(BASE_CCFLAGS) $(CPPFLAGS_FOR_BUILD) $(CFLAGS_FOR_BUILD)
2693 -
2694 - LDFLAGS = @LDFLAGS@ $(STATIC_LD) $(LOCAL_LDFLAGS) $(PROFILE_FLAGS) $(CFLAGS)
2695 --LDFLAGS_FOR_BUILD = $(LDFLAGS)
2696 -+LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@ $(LOCAL_LDFLAGS) $(CFLAGS_FOR_BUILD)
2697 -
2698 - INCLUDES = -I. @RL_INCLUDE@ -I$(srcdir) -I$(BASHINCDIR) -I$(LIBSRC) $(INTL_INC)
2699 -
2700
2701 diff --git a/app-shells/bash/files/bash-4.0-negative-return.patch b/app-shells/bash/files/bash-4.0-negative-return.patch
2702 deleted file mode 100644
2703 index 32affa18c1..0000000000
2704 --- a/app-shells/bash/files/bash-4.0-negative-return.patch
2705 +++ /dev/null
2706 @@ -1,33 +0,0 @@
2707 -http://lists.gnu.org/archive/html/bug-bash/2009-02/msg00158.html
2708 -
2709 -make `return` accept negative values again
2710 -
2711 -hack by me (vapier@g.o) ... i'm not familiar with bash source code, so
2712 -i imagine this isn't the best way to do it ...
2713 -
2714 ---- bash/builtins/return.def
2715 -+++ bash/builtins/return.def
2716 -@@ -60,9 +60,23 @@
2717 - return_builtin (list)
2718 - WORD_LIST *list;
2719 - {
2720 -+ int neg = 0;
2721 -+ if (list && list->word && list->word->word) {
2722 -+ char *word = list->word->word;
2723 -+ if (*word == '-') {
2724 -+ while (*word++)
2725 -+ if (!isdigit(*word))
2726 -+ break;
2727 -+ if (!*word)
2728 -+ neg = 1;
2729 -+ }
2730 -+ }
2731 -+
2732 -+ if (!neg) {
2733 - if (no_options (list))
2734 - return (EX_USAGE);
2735 - list = loptend; /* skip over possible `--' */
2736 -+ }
2737 -
2738 - return_catch_value = get_exitstat (list);
2739 -
2740
2741 diff --git a/app-shells/bash/files/bash-4.0-parallel-build.patch b/app-shells/bash/files/bash-4.0-parallel-build.patch
2742 deleted file mode 100644
2743 index 8384e2c901..0000000000
2744 --- a/app-shells/bash/files/bash-4.0-parallel-build.patch
2745 +++ /dev/null
2746 @@ -1,65 +0,0 @@
2747 -http://bugs.gentoo.org/267613
2748 -
2749 -add missing dep
2750 -
2751 -patch by Peter Alfredsen
2752 -
2753 ---- bash-4.0/Makefile.in
2754 -+++ bash-4.0/Makefile.in
2755 -@@ -1022,10 +1022,11 @@
2756 - subst.o: flags.h jobs.h siglist.h execute_cmd.h ${BASHINCDIR}/filecntl.h trap.h pathexp.h
2757 - subst.o: mailcheck.h input.h $(DEFSRC)/getopt.h $(DEFSRC)/common.h
2758 - subst.o: bashline.h bashhist.h ${GLOB_LIBSRC}/strmatch.h
2759 - subst.o: ${BASHINCDIR}/chartypes.h
2760 - subst.o: ${BASHINCDIR}/shmbutil.h
2761 -+subst.o: ${DEFDIR}/builtext.h
2762 - test.o: bashtypes.h ${BASHINCDIR}/posixstat.h ${BASHINCDIR}/filecntl.h
2763 - test.o: shell.h syntax.h config.h bashjmp.h ${BASHINCDIR}/posixjmp.h command.h ${BASHINCDIR}/stdc.h error.h
2764 - test.o: general.h xmalloc.h bashtypes.h variables.h arrayfunc.h conftypes.h array.h hashlib.h
2765 - test.o: quit.h ${BASHINCDIR}/maxpath.h unwind_prot.h dispose_cmd.h
2766 - test.o: make_cmd.h subst.h sig.h pathnames.h externs.h test.h
2767 -
2768 -http://bugs.gentoo.org/284633
2769 -
2770 -and another ...
2771 -
2772 ---- bash-4.0/lib/sh/Makefile.in
2773 -+++ bash-4.0/lib/sh/Makefile.in
2774 -@@ -136,6 +136,9 @@
2775 - ${BUILD_DIR}/version.h: ${BUILD_DIR}/config.h ${BUILD_DIR}/Makefile Makefile
2776 - -( cd ${BUILD_DIR} && ${MAKE} ${MFLAGS} version.h )
2777 -
2778 -+${BUILD_DIR}/pathnames.h: ${BUILD_DIR}/config.h ${BUILD_DIR}/Makefile Makefile
2779 -+ -( cd ${BUILD_DIR} && ${MAKE} ${MFLAGS} pathnames.h )
2780 -+
2781 - # rules for losing makes, like SunOS
2782 - casemod.o: casemod.c
2783 - clktck.o: clktck.c
2784 -
2785 -http://bugs.gentoo.org/300143
2786 -
2787 -and another ...
2788 -
2789 ---- bash-4.0/lib/glob/Makefile.in
2790 -+++ bash-4.0/lib/glob/Makefile.in
2791 -@@ -119,6 +119,11 @@
2792 - mostlyclean: clean
2793 - -( cd doc && $(MAKE) $(MFLAGS) $@ )
2794 -
2795 -+# Dependencies
2796 -+
2797 -+${BUILD_DIR}/pathnames.h: ${BUILD_DIR}/config.h ${BUILD_DIR}/Makefile Makefile
2798 -+ -( cd ${BUILD_DIR} && ${MAKE} ${MFLAGS} pathnames.h )
2799 -+
2800 - ######################################################################
2801 - # #
2802 - # Dependencies for the object files which make up this library. #
2803 -@@ -136,7 +141,7 @@
2804 - strmatch.o: $(BUILD_DIR)/config.h
2805 - strmatch.o: $(BASHINCDIR)/stdc.h
2806 -
2807 --glob.o: $(BUILD_DIR)/config.h
2808 -+glob.o: $(BUILD_DIR)/config.h $(topdir)/shell.h $(BUILD_DIR)/pathnames.h
2809 - glob.o: $(topdir)/bashtypes.h $(BASHINCDIR)/ansi_stdlib.h $(topdir)/bashansi.h
2810 - glob.o: $(BASHINCDIR)/posixstat.h $(BASHINCDIR)/memalloc.h
2811 - glob.o: strmatch.h glob.h
2812
2813 diff --git a/app-shells/bash/files/bash-4.1-blocking-namedpipe.patch b/app-shells/bash/files/bash-4.1-blocking-namedpipe.patch
2814 deleted file mode 100644
2815 index 224583dd6d..0000000000
2816 --- a/app-shells/bash/files/bash-4.1-blocking-namedpipe.patch
2817 +++ /dev/null
2818 @@ -1,14 +0,0 @@
2819 -Breaks on platforms without /dev/fd/ like AIX, so named pipes are used instead:
2820 -bash -c 'for x in {0..9}; do echo $x; done > >(cnt=0; while read line; do let cnt=cnt+1; done; echo $cnt)'
2821 -
2822 ---- subst.c.orig 2013-10-31 15:33:56.243896345 +0100
2823 -+++ subst.c 2013-10-31 15:34:14.285099859 +0100
2824 -@@ -4839,7 +4839,7 @@
2825 -
2826 - #if !defined (HAVE_DEV_FD)
2827 - /* Open the named pipe in the child. */
2828 -- fd = open (pathname, open_for_read_in_child ? O_RDONLY|O_NONBLOCK : O_WRONLY);
2829 -+ fd = open (pathname, open_for_read_in_child ? O_RDONLY : O_WRONLY);
2830 - if (fd < 0)
2831 - {
2832 - /* Two separate strings for ease of translation. */
2833
2834 diff --git a/app-shells/bash/files/bash-4.1-fbsd-eaccess.patch b/app-shells/bash/files/bash-4.1-fbsd-eaccess.patch
2835 deleted file mode 100644
2836 index 576a8a47a6..0000000000
2837 --- a/app-shells/bash/files/bash-4.1-fbsd-eaccess.patch
2838 +++ /dev/null
2839 @@ -1,29 +0,0 @@
2840 -Bash built-in test fails to correctly report exeuctable status for non-
2841 -executable files when run by root on FreeBSD.
2842 -
2843 -See http://bugs.gentoo.org/303411
2844 -
2845 -Patch from Johan Hattne <johan.hattne@×××××××××××××.edu>
2846 ---- lib/sh/eaccess.c.orig
2847 -+++ lib/sh/eaccess.c
2848 -@@ -198,11 +198,19 @@
2849 - char *path;
2850 - int mode;
2851 - {
2852 -+ struct stat s;
2853 -+ int ret;
2854 -+
2855 - if (path_is_devfd (path))
2856 - return (sh_stataccess (path, mode));
2857 -
2858 - #if defined (HAVE_EACCESS) /* FreeBSD */
2859 -- return (eaccess (path, mode));
2860 -+ if (stat (path, &s) != 0)
2861 -+ return (-1);
2862 -+ ret = eaccess (path, mode);
2863 -+ if (mode == X_OK && ret == 0 && !S_ISDIR(s.st_mode) && geteuid() == 0)
2864 -+ return ((s.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH)) == 0 ? -1 : 0);
2865 -+ return (ret);
2866 - #elif defined (EFF_ONLY_OK) /* SVR4(?), SVR4.2 */
2867 - return access (path, mode|EFF_ONLY_OK);
2868 - #else
2869
2870 diff --git a/app-shells/bash/files/bash-4.1-interix-access-suacomp.patch b/app-shells/bash/files/bash-4.1-interix-access-suacomp.patch
2871 deleted file mode 100644
2872 index bc14b11ee2..0000000000
2873 --- a/app-shells/bash/files/bash-4.1-interix-access-suacomp.patch
2874 +++ /dev/null
2875 @@ -1,40 +0,0 @@
2876 -diff -ru bash-4.1.orig/lib/readline/complete.c bash-4.1/lib/readline/complete.c
2877 ---- bash-4.1.orig/lib/readline/complete.c 2010-07-26 15:05:13 +0200
2878 -+++ bash-4.1/lib/readline/complete.c 2010-07-26 15:10:34 +0200
2879 -@@ -52,6 +52,10 @@
2880 - #include <pwd.h>
2881 - #endif
2882 -
2883 -+/* can't include externs.h here - so directly define this one. this
2884 -+ * is required to fix interix access() which behaves totally stupid */
2885 -+extern int sh_eaccess(char*,int);
2886 -+
2887 - #include "posixdir.h"
2888 - #include "posixstat.h"
2889 -
2890 -@@ -571,7 +575,7 @@
2891 - #endif
2892 - else if (S_ISREG (finfo.st_mode))
2893 - {
2894 -- if (access (filename, X_OK) == 0)
2895 -+ if (sh_eaccess (filename, X_OK) == 0)
2896 - character = '*';
2897 - }
2898 - return (character);
2899 -diff -ru bash-4.1.orig/lib/sh/eaccess.c bash-4.1/lib/sh/eaccess.c
2900 ---- bash-4.1.orig/lib/sh/eaccess.c 2010-07-26 15:05:15 +0200
2901 -+++ bash-4.1/lib/sh/eaccess.c 2010-07-26 15:06:58 +0200
2902 -@@ -222,8 +222,13 @@
2903 - return (sh_euidaccess (path, mode));
2904 - # endif
2905 -
2906 -+/* on interix, use stataccess always, since access on interix behaves bad:
2907 -+ * whenever a process has appropriate priviledges (speaking in windows terms),
2908 -+ * success is reported, even if the bits are not set. */
2909 -+#ifndef __INTERIX
2910 - if (current_user.uid == current_user.euid && current_user.gid == current_user.egid)
2911 - return (access (path, mode));
2912 -+#endif
2913 -
2914 - return (sh_stataccess (path, mode));
2915 - #endif
2916
2917 diff --git a/app-shells/bash/files/bash-4.1-interix-stdint.patch b/app-shells/bash/files/bash-4.1-interix-stdint.patch
2918 deleted file mode 100644
2919 index 6ecb65a428..0000000000
2920 --- a/app-shells/bash/files/bash-4.1-interix-stdint.patch
2921 +++ /dev/null
2922 @@ -1,34 +0,0 @@
2923 -intmax_t and uintmax_t should be looked for in stdint.h on interix
2924 -
2925 -reported upstream on 23 Apr 2009:
2926 -http://lists.gnu.org/archive/html/bug-bash/2009-04/msg00142.html
2927 -
2928 -MODIFIED PATCH, since some of the hunks are upstream now (not all!)
2929 -
2930 -diff -ru bash-3.2.orig/configure.in bash-3.2/configure.in
2931 ---- bash-3.2.orig/configure.in Fri Jan 18 16:50:36 2008
2932 -+++ bash-3.2/configure.in Fri Jan 18 16:53:09 2008
2933 -@@ -869,8 +869,8 @@
2934 - BASH_CHECK_TYPE(clock_t, [#include <sys/times.h>], long)
2935 - BASH_CHECK_TYPE(sigset_t, [#include <signal.h>], int)
2936 - BASH_CHECK_TYPE(quad_t, , long, HAVE_QUAD_T)
2937 --BASH_CHECK_TYPE(intmax_t, , $bash_cv_type_long_long)
2938 --BASH_CHECK_TYPE(uintmax_t, , $bash_cv_type_unsigned_long_long)
2939 -+BASH_CHECK_TYPE(intmax_t, [#include <stdint.h>], $bash_cv_type_long_long)
2940 -+BASH_CHECK_TYPE(uintmax_t, [#include <stdint.h>], $bash_cv_type_unsigned_long_long)
2941 - if test "$ac_cv_header_sys_socket_h" = "yes"; then
2942 - BASH_CHECK_TYPE(socklen_t, [#include <sys/socket.h>], int, HAVE_SOCKLEN_T)
2943 - fi
2944 -diff -ru -x config* bash-3.2.orig/bashtypes.h bash-3.2/bashtypes.h
2945 ---- bash-3.2.orig/bashtypes.h Fri Jan 18 17:12:07 2008
2946 -+++ bash-3.2/bashtypes.h Fri Jan 18 17:12:38 2008
2947 -@@ -35,4 +35,8 @@
2948 - # include <inttypes.h>
2949 - #endif
2950 -
2951 -+#if defined (HAVE_STDINT_H)
2952 -+# include <stdint.h>
2953 -+#endif
2954 -+
2955 - #endif /* _BASHTYPES_H_ */
2956 -
2957
2958 diff --git a/app-shells/bash/files/bash-4.1-parallel-build.patch b/app-shells/bash/files/bash-4.1-parallel-build.patch
2959 deleted file mode 100644
2960 index ae44bcc0cf..0000000000
2961 --- a/app-shells/bash/files/bash-4.1-parallel-build.patch
2962 +++ /dev/null
2963 @@ -1,23 +0,0 @@
2964 ---- bash-4.1/lib/glob/Makefile.in
2965 -+++ bash-4.1/lib/glob/Makefile.in
2966 -@@ -119,6 +119,11 @@
2967 - mostlyclean: clean
2968 - -( cd doc && $(MAKE) $(MFLAGS) $@ )
2969 -
2970 -+# Dependencies
2971 -+
2972 -+${BUILD_DIR}/pathnames.h: ${BUILD_DIR}/config.h ${BUILD_DIR}/Makefile Makefile
2973 -+ -( cd ${BUILD_DIR} && ${MAKE} ${MFLAGS} pathnames.h )
2974 -+
2975 - ######################################################################
2976 - # #
2977 - # Dependencies for the object files which make up this library. #
2978 -@@ -136,7 +141,7 @@
2979 - strmatch.o: $(BUILD_DIR)/config.h
2980 - strmatch.o: $(BASHINCDIR)/stdc.h
2981 -
2982 --glob.o: $(BUILD_DIR)/config.h
2983 -+glob.o: $(BUILD_DIR)/config.h $(topdir)/shell.h $(BUILD_DIR)/pathnames.h
2984 - glob.o: $(topdir)/bashtypes.h $(BASHINCDIR)/ansi_stdlib.h $(topdir)/bashansi.h
2985 - glob.o: $(BASHINCDIR)/posixstat.h $(BASHINCDIR)/memalloc.h
2986 - glob.o: strmatch.h glob.h
2987
2988 diff --git a/app-shells/bash/files/bash-4.2-darwin13.patch b/app-shells/bash/files/bash-4.2-darwin13.patch
2989 deleted file mode 100644
2990 index 670e11a3e9..0000000000
2991 --- a/app-shells/bash/files/bash-4.2-darwin13.patch
2992 +++ /dev/null
2993 @@ -1,41 +0,0 @@
2994 -https://lists.gnu.org/archive/html/bug-bash/2013-07/msg00011.html
2995 -https://github.com/Homebrew/homebrew/commit/5bfaa0553c8318c268cab1a169f0b6d2487e7fee#diff-13b7da79ca811b00c712f3fc37bc8cc3R61
2996 -
2997 -(Fixed in next bash release)
2998 -
2999 -From 481ac7aca4763deb475ee134884a7ab719f7b152 Mon Sep 17 00:00:00 2001
3000 -From: Jeremy Olexa <darkside@g.o>
3001 -Date: Wed, 15 Jan 2014 21:25:24 -0600
3002 -Subject: [PATCH] fix polite_directory_format on osx 10.9
3003 -
3004 ----
3005 - parse.y | 11 ++++++++++-
3006 - 1 file changed, 10 insertions(+), 1 deletion(-)
3007 -
3008 -diff --git a/parse.y b/parse.y
3009 -index dc78e7e..88f0417 100644
3010 ---- a/parse.y
3011 -+++ b/parse.y
3012 -@@ -5271,9 +5271,18 @@ decode_prompt_string (string)
3013 - #undef ROOT_PATH
3014 - #undef DOUBLE_SLASH_ROOT
3015 - else
3016 -+ {
3017 - /* polite_directory_format is guaranteed to return a string
3018 - no longer than PATH_MAX - 1 characters. */
3019 -- strcpy (t_string, polite_directory_format (t_string));
3020 -+ /* polite_directory_format might simply return the pointer to
3021 -+ t_string strcpy(3) tells dst and src may not overlap, OS X 10.9
3022 -+ asserts this and triggers an abort trap if that's the case */
3023 -+ temp = polite_directory_format (t_string);
3024 -+ if (temp != t_string)
3025 -+ strcpy (t_string, temp);
3026 -+ }
3027 -+
3028 -+
3029 -
3030 - temp = trim_pathname (t_string, PATH_MAX - 1);
3031 - /* If we're going to be expanding the prompt string later,
3032 ---
3033 -1.8.3.4 (Apple Git-47)
3034 -
3035
3036 diff --git a/app-shells/bash/files/bash-4.2-execute-job-control.patch b/app-shells/bash/files/bash-4.2-execute-job-control.patch
3037 deleted file mode 100644
3038 index 82b73e5157..0000000000
3039 --- a/app-shells/bash/files/bash-4.2-execute-job-control.patch
3040 +++ /dev/null
3041 @@ -1,24 +0,0 @@
3042 -fix build when job control is disabled
3043 -
3044 -http://lists.gnu.org/archive/html/bug-bash/2011-06/msg00110.html
3045 -http://lists.gnu.org/archive/html/bug-bash/2011-07/msg00057.html
3046 -http://lists.gnu.org/archive/html/bug-bash/2011-09/msg00039.html
3047 -https://bugs.gentoo.org/383237
3048 -
3049 -should be fixed in next release of bash ...
3050 -
3051 ---- a/execute_cmd.c
3052 -+++ b/execute_cmd.c
3053 -@@ -2202,7 +2202,11 @@
3054 - /* If the `lastpipe' option is set with shopt, and job control is not
3055 - enabled, execute the last element of non-async pipelines in the
3056 - current shell environment. */
3057 -- if (lastpipe_opt && job_control == 0 && asynchronous == 0 && pipe_out == NO_PIPE && prev > 0)
3058 -+ if (lastpipe_opt &&
3059 -+#if defined(JOB_CONTROL)
3060 -+ job_control == 0 &&
3061 -+#endif
3062 -+ asynchronous == 0 && pipe_out == NO_PIPE && prev > 0)
3063 - {
3064 - lstdin = move_to_high_fd (0, 0, 255);
3065 - if (lstdin > 0)
3066
3067 diff --git a/app-shells/bash/files/bash-4.2-freebsd-pipe-open-eintr.patch b/app-shells/bash/files/bash-4.2-freebsd-pipe-open-eintr.patch
3068 deleted file mode 100644
3069 index e146b26f49..0000000000
3070 --- a/app-shells/bash/files/bash-4.2-freebsd-pipe-open-eintr.patch
3071 +++ /dev/null
3072 @@ -1,18 +0,0 @@
3073 -Work around named-pipe race-condition on FreeBSD
3074 -
3075 -https://bugs.gentoo.org/show_bug.cgi?id=447810
3076 -Patch by Yuta SATOH
3077 -
3078 ---- redir.c
3079 -+++ redir.c
3080 -@@ -632,7 +632,9 @@
3081 - }
3082 - else
3083 - {
3084 -- fd = open (filename, flags, mode);
3085 -+ do {
3086 -+ fd = open (filename, flags, mode);
3087 -+ } while ((fd < 0) && (errno == EINTR));
3088 - #if defined (AFS)
3089 - if ((fd < 0) && (errno == EACCES))
3090 - {
3091
3092 diff --git a/app-shells/bash/files/bash-4.2-no-readline.patch b/app-shells/bash/files/bash-4.2-no-readline.patch
3093 deleted file mode 100644
3094 index 14eb6bf421..0000000000
3095 --- a/app-shells/bash/files/bash-4.2-no-readline.patch
3096 +++ /dev/null
3097 @@ -1,19 +0,0 @@
3098 -fix building when readline is disabled
3099 -
3100 ---- a/builtins/complete.def
3101 -+++ b/builtins/complete.def
3102 -@@ -49,6 +49,8 @@ $END
3103 -
3104 - #include <config.h>
3105 -
3106 -+#ifdef READLINE
3107 -+
3108 - #include <stdio.h>
3109 -
3110 - #include "../bashtypes.h"
3111 -@@ -867,3 +869,5 @@ compopt_builtin (list)
3112 -
3113 - return (ret);
3114 - }
3115 -+
3116 -+#endif
3117
3118 diff --git a/app-shells/bash/files/bash-4.2-parallel-build.patch b/app-shells/bash/files/bash-4.2-parallel-build.patch
3119 deleted file mode 100644
3120 index ab2de86206..0000000000
3121 --- a/app-shells/bash/files/bash-4.2-parallel-build.patch
3122 +++ /dev/null
3123 @@ -1,106 +0,0 @@
3124 -https://lists.gnu.org/archive/html/bug-bash/2011-10/msg00036.html
3125 -
3126 -the current yacc rules allow multiple runs to generate the same files. usually
3127 -this doesn't come up as the generated files are shipped in the tarball, but
3128 -when you modify parse.y (applying a patch or developing or whatever), you can
3129 -hit this problem.
3130 -
3131 -simple way of showing this:
3132 - make -j y.tab.{c,h}
3133 -a correct system would not show the yacc parser running twice :)
3134 -
3135 -simple patch is to have the .h file depend on the .c file, and have the .h file
3136 -itself issue a dummy rule (to avoid make thinking things changed).
3137 -
3138 ---- a/Makefile.in
3139 -+++ b/Makefile.in
3140 -@@ -579,16 +579,17 @@
3141 -
3142 - # old rules
3143 - GRAM_H = parser-built
3144 --y.tab.o: y.tab.c ${GRAM_H} command.h ${BASHINCDIR}/stdc.h input.h
3145 -+y.tab.o: y.tab.h y.tab.c ${GRAM_H} command.h ${BASHINCDIR}/stdc.h input.h
3146 - ${GRAM_H}: y.tab.h
3147 - @-if test -f y.tab.h ; then \
3148 - cmp -s $@ y.tab.h 2>/dev/null || cp -p y.tab.h $@; \
3149 - fi
3150 --y.tab.c y.tab.h: parse.y
3151 -+y.tab.c: parse.y
3152 - # -if test -f y.tab.h; then mv -f y.tab.h old-y.tab.h; fi
3153 - $(YACC) -d $(srcdir)/parse.y
3154 - touch parser-built
3155 - # -if cmp -s old-y.tab.h y.tab.h; then mv old-y.tab.h y.tab.h; else cp -p y.tab.h ${GRAM_H}; fi
3156 -+y.tab.h: y.tab.c ; @true
3157 -
3158 - # experimental new rules - work with GNU make but not BSD (or OSF) make
3159 - #y.tab.o: y.tab.c y.tab.h
3160 -
3161 -https://lists.gnu.org/archive/html/bug-bash/2011-10/msg00037.html
3162 -
3163 -the current code generates a bunch of local libraries in subdirs and then
3164 -links bash against that. those subdirs sometimes need version.h. so they
3165 -have a rule to change back up to the parent dir and build version.h (which is
3166 -fine). the trouble is that the top level objects and the subdirs are allowed
3167 -to build in parallel, so it's possible for multiple children to see that
3168 -version.h is not available and that it needs to be created, so they all do.
3169 -
3170 -there is even more trouble is that version.h depends on all the top level
3171 -sources, some of which are compiled (like syntax.c). so these parallel
3172 -children all kick off a job to generate syntax.c which in turn requires the
3173 -mksyntax helper executable. obviously multiple processes rm-ing, compiling,
3174 -and linking the same files quickly falls apart.
3175 -
3176 -so tweak the subdirs to all depend on the .build target which in turn depends
3177 -on all of these top level files being generated. now the subdirs won't try and
3178 -recursively enter the top level.
3179 -
3180 -(noticed by David James)
3181 -
3182 ---- a/Makefile.in
3183 -+++ b/Makefile.in
3184 -@@ -597,6 +598,11 @@
3185 - # $(YACC) -d $(srcdir)/parse.y
3186 - # -if cmp -s old-y.tab.h y.tab.h; then mv old-y.tab.h y.tab.h; fi
3187 -
3188 -+# Subdirs will often times want version.h, so they'll change back up to
3189 -+# the top level and try to create it. This causes parallel build issues
3190 -+# so just force top level sanity before we descend.
3191 -+$(LIBDEP): .build
3192 -+
3193 - $(READLINE_LIBRARY): config.h $(READLINE_SOURCE)
3194 - @echo making $@ in ${RL_LIBDIR}
3195 - @( { test "${RL_LIBDIR}" = "${libdir}" && exit 0; } || \
3196 -
3197 -http://lists.gnu.org/archive/html/bug-bash/2011-10/msg00107.html
3198 -
3199 -the top level Makefile will recurse into the defdir for multiple targets
3200 -(libbuiltins.a, common.o, bashgetopt.o, builtext.h), and since these do
3201 -not have any declared interdependencies, parallel makes will recurse into
3202 -the subdir and build the respective targets.
3203 -
3204 -nothing depends on common.o or bashgetopt.o, so those targets don't get
3205 -used normally. this leaves libbuiltins.a and builtext.h. at a glance,
3206 -this shouldn't be a big deal, but when we look closer, there's a subtle
3207 -failure lurking.
3208 -
3209 -most of the objects in the defdir need to be generated which means they
3210 -need to build+link the local mkbuiltins helper. the builtext.h header
3211 -also needs to be generated by the mkbuiltins helper. so when the top
3212 -level launches a child for libbuiltins.a and a child for builtext.h, we
3213 -can hit a race condition where the two try to generate mkbuiltins, and
3214 -the build randomly fails.
3215 -
3216 -so update libbuiltins.a to depend on builtext.h. this should be fairly
3217 -simple since it's only a single target.
3218 -
3219 ---- a/Makefile.in
3220 -+++ b/Makefile.in
3221 -@@ -674,7 +674,7 @@
3222 - $(RM) $@
3223 - ./mksyntax$(EXEEXT) -o $@
3224 -
3225 --$(BUILTINS_LIBRARY): $(BUILTIN_DEFS) $(BUILTIN_C_SRC) config.h ${BASHINCDIR}/memalloc.h version.h
3226 -+$(BUILTINS_LIBRARY): $(BUILTIN_DEFS) $(BUILTIN_C_SRC) config.h ${BASHINCDIR}/memalloc.h ${DEFDIR}/builtext.h version.h
3227 - @(cd $(DEFDIR) && $(MAKE) $(MFLAGS) DEBUG=${DEBUG} libbuiltins.a ) || exit 1
3228 -
3229 - # these require special rules to circumvent make builtin rules
3230
3231 diff --git a/app-shells/bash/files/bash-4.2-read-retry.patch b/app-shells/bash/files/bash-4.2-read-retry.patch
3232 deleted file mode 100644
3233 index 44903c68af..0000000000
3234 --- a/app-shells/bash/files/bash-4.2-read-retry.patch
3235 +++ /dev/null
3236 @@ -1,41 +0,0 @@
3237 -https://bugs.gentoo.org/447810
3238 -
3239 -fix from upstream to workaround broken BSD kernels
3240 -
3241 -commit 208fdb509e072977ae7a621e916dfcd32c76047d
3242 -Author: Chet Ramey <chet@××××××××××××××.edu>
3243 -Date: Mon Mar 4 08:09:29 2013 -0500
3244 -
3245 - commit bash-20130201 snapshot
3246 -
3247 -diff --git a/redir.c b/redir.c
3248 -index d7da2f3..aa3d16d 100644
3249 ---- a/redir.c
3250 -+++ b/redir.c
3251 -@@ -650,7 +650,7 @@ redir_open (filename, flags, mode, ri)
3252 - int flags, mode;
3253 - enum r_instruction ri;
3254 - {
3255 -- int fd, r;
3256 -+ int fd, r, e;
3257 -
3258 - r = find_string_in_alist (filename, _redir_special_filenames, 1);
3259 - if (r >= 0)
3260 -@@ -666,7 +666,16 @@ redir_open (filename, flags, mode, ri)
3261 - }
3262 - else
3263 - {
3264 -- fd = open (filename, flags, mode);
3265 -+ do
3266 -+ {
3267 -+ fd = open (filename, flags, mode);
3268 -+ e = errno;
3269 -+ if (fd < 0 && e == EINTR)
3270 -+ QUIT;
3271 -+ errno = e;
3272 -+ }
3273 -+ while (fd < 0 && errno == EINTR);
3274 -+
3275 - #if defined (AFS)
3276 - if ((fd < 0) && (errno == EACCES))
3277 - {
3278
3279 diff --git a/app-shells/bash/files/bash-4.2-speed-up-read-N.patch b/app-shells/bash/files/bash-4.2-speed-up-read-N.patch
3280 deleted file mode 100644
3281 index b96ad0c887..0000000000
3282 --- a/app-shells/bash/files/bash-4.2-speed-up-read-N.patch
3283 +++ /dev/null
3284 @@ -1,112 +0,0 @@
3285 -http://lists.gnu.org/archive/html/bug-bash/2012-11/msg00034.html
3286 -
3287 -From 530d4988afd68ea9d2cf1b0267d4dc821d0d204f Mon Sep 17 00:00:00 2001
3288 -From: Mike Frysinger <vapier@g.o>
3289 -Date: Mon, 19 Nov 2012 17:58:51 -0500
3290 -Subject: [PATCH] bash: speed up `read -N`
3291 -
3292 -Rather than using 1 byte reads, use the existing cache read logic.
3293 -This could be sped up more, but this change is not as invasive and
3294 -should (hopefully) be fairly safe.
3295 -
3296 -Signed-off-by: Mike Frysinger <vapier@g.o>
3297 ----
3298 - builtins/read.def | 21 ++++++++++++++++-----
3299 - externs.h | 1 +
3300 - lib/sh/zread.c | 15 +++++++++++++--
3301 - 3 files changed, 30 insertions(+), 7 deletions(-)
3302 -
3303 -diff --git a/builtins/read.def b/builtins/read.def
3304 -index e32dec7..81a1b3f 100644
3305 ---- a/builtins/read.def
3306 -+++ b/builtins/read.def
3307 -@@ -457,7 +457,10 @@ read_builtin (list)
3308 - interrupt_immediately++;
3309 - terminate_immediately++;
3310 -
3311 -- unbuffered_read = (nchars > 0) || (delim != '\n') || input_is_pipe;
3312 -+ if ((nchars > 0) && !input_is_tty && ignore_delim)
3313 -+ unbuffered_read = 2;
3314 -+ else if ((nchars > 0) || (delim != '\n') || input_is_pipe)
3315 -+ unbuffered_read = 1;
3316 -
3317 - if (prompt && edit == 0)
3318 - {
3319 -@@ -505,10 +508,18 @@ read_builtin (list)
3320 - print_ps2 = 0;
3321 - }
3322 -
3323 -- if (unbuffered_read)
3324 -- retval = zread (fd, &c, 1);
3325 -- else
3326 -- retval = zreadc (fd, &c);
3327 -+ switch (unbuffered_read)
3328 -+ {
3329 -+ case 2:
3330 -+ retval = zreadcn (fd, &c, nchars - nr);
3331 -+ break;
3332 -+ case 1:
3333 -+ retval = zread (fd, &c, 1);
3334 -+ break;
3335 -+ default:
3336 -+ retval = zreadc (fd, &c);
3337 -+ break;
3338 -+ }
3339 -
3340 - if (retval <= 0)
3341 - {
3342 -diff --git a/externs.h b/externs.h
3343 -index 09244fa..a5ad645 100644
3344 ---- a/externs.h
3345 -+++ b/externs.h
3346 -@@ -479,6 +479,7 @@ extern ssize_t zread __P((int, char *, size_t));
3347 - extern ssize_t zreadretry __P((int, char *, size_t));
3348 - extern ssize_t zreadintr __P((int, char *, size_t));
3349 - extern ssize_t zreadc __P((int, char *));
3350 -+extern ssize_t zreadcn __P((int, char *, int));
3351 - extern ssize_t zreadcintr __P((int, char *));
3352 - extern void zreset __P((void));
3353 - extern void zsyncfd __P((int));
3354 -diff --git a/lib/sh/zread.c b/lib/sh/zread.c
3355 -index 5db21a9..af7d02b 100644
3356 ---- a/lib/sh/zread.c
3357 -+++ b/lib/sh/zread.c
3358 -@@ -101,15 +101,18 @@ static char lbuf[128];
3359 - static size_t lind, lused;
3360 -
3361 - ssize_t
3362 --zreadc (fd, cp)
3363 -+zreadcn (fd, cp, len)
3364 - int fd;
3365 - char *cp;
3366 -+ int len;
3367 - {
3368 - ssize_t nr;
3369 -
3370 - if (lind == lused || lused == 0)
3371 - {
3372 -- nr = zread (fd, lbuf, sizeof (lbuf));
3373 -+ if (len > sizeof (lbuf))
3374 -+ len = sizeof (lbuf);
3375 -+ nr = zread (fd, lbuf, len);
3376 - lind = 0;
3377 - if (nr <= 0)
3378 - {
3379 -@@ -123,6 +126,14 @@ zreadc (fd, cp)
3380 - return 1;
3381 - }
3382 -
3383 -+ssize_t
3384 -+zreadc (fd, cp)
3385 -+ int fd;
3386 -+ char *cp;
3387 -+{
3388 -+ return zreadcn (fd, cp, sizeof (lbuf));
3389 -+}
3390 -+
3391 - /* Don't mix calls to zreadc and zreadcintr in the same function, since they
3392 - use the same local buffer. */
3393 - ssize_t
3394 ---
3395 -1.7.12.4
3396 -
3397
3398 diff --git a/app-shells/bash/files/bash-4.3-append-process-segfault.patch b/app-shells/bash/files/bash-4.3-append-process-segfault.patch
3399 deleted file mode 100644
3400 index 6c9b2e8306..0000000000
3401 --- a/app-shells/bash/files/bash-4.3-append-process-segfault.patch
3402 +++ /dev/null
3403 @@ -1,18 +0,0 @@
3404 -https://lists.gnu.org/archive/html/bug-bash/2014-08/msg00048.html
3405 -
3406 -*** ../bash-4.3-patched/execute_cmd.c 2014-07-30 10:26:52.000000000 -0400
3407 ---- execute_cmd.c 2014-08-11 16:55:57.000000000 -0400
3408 -***************
3409 -*** 2406,2410 ****
3410 - {
3411 - #if defined (JOB_CONTROL)
3412 -! append_process (savestring (the_printed_command), dollar_dollar_pid, exec_result, lastpipe_jid);
3413 - #endif
3414 - lstdin = wait_for (lastpid);
3415 ---- 2433,2438 ----
3416 - {
3417 - #if defined (JOB_CONTROL)
3418 -! if (INVALID_JOB (lastpipe_jid) == 0)
3419 -! append_process (savestring (the_printed_command_except_trap), dollar_dollar_pid, exec_result, lastpipe_jid);
3420 - #endif
3421 - lstdin = wait_for (lastpid);
3422
3423 diff --git a/app-shells/bash/files/bash-4.3-arrayfunc.patch b/app-shells/bash/files/bash-4.3-arrayfunc.patch
3424 deleted file mode 100644
3425 index f44d184784..0000000000
3426 --- a/app-shells/bash/files/bash-4.3-arrayfunc.patch
3427 +++ /dev/null
3428 @@ -1,15 +0,0 @@
3429 -http://lists.gnu.org/archive/html/bug-bash/2014-11/msg00178.html
3430 -
3431 -diff --git a/arrayfunc.c b/arrayfunc.c
3432 -index 804e6da..0f900aa 100644
3433 ---- a/arrayfunc.c
3434 -+++ b/arrayfunc.c
3435 -@@ -498,7 +498,7 @@ assign_compound_array_list (var, nlist, flags)
3436 -
3437 - for (list = nlist; list; list = list->next)
3438 - {
3439 -- iflags = flags;
3440 -+ iflags = (flags & ~ASS_APPEND);
3441 - w = list->word->word;
3442 -
3443 - /* We have a word of the form [ind]=value */
3444
3445 diff --git a/app-shells/bash/files/bash-4.3-compat-lvl.patch b/app-shells/bash/files/bash-4.3-compat-lvl.patch
3446 deleted file mode 100644
3447 index 5734687ffe..0000000000
3448 --- a/app-shells/bash/files/bash-4.3-compat-lvl.patch
3449 +++ /dev/null
3450 @@ -1,13 +0,0 @@
3451 -https://lists.gnu.org/archive/html/bug-bash/2014-06/msg00046.html
3452 -
3453 ---- a/builtins/shopt.def
3454 -+++ b/builtins/shopt.def
3455 -@@ -160,7 +160,7 @@ static struct {
3456 - { "compat32", &shopt_compat32, set_compatibility_level },
3457 - { "compat40", &shopt_compat40, set_compatibility_level },
3458 - { "compat41", &shopt_compat41, set_compatibility_level },
3459 -- { "compat42", &shopt_compat41, set_compatibility_level },
3460 -+ { "compat42", &shopt_compat42, set_compatibility_level },
3461 - #if defined (READLINE)
3462 - { "complete_fullquote", &complete_fullquote, (shopt_set_func_t *)NULL},
3463 - { "direxpand", &dircomplete_expand, shopt_set_complete_direxpand },
3464
3465 diff --git a/app-shells/bash/files/bash-4.3-mapfile-improper-array-name-validation.patch b/app-shells/bash/files/bash-4.3-mapfile-improper-array-name-validation.patch
3466 deleted file mode 100644
3467 index 20bf340fdb..0000000000
3468 --- a/app-shells/bash/files/bash-4.3-mapfile-improper-array-name-validation.patch
3469 +++ /dev/null
3470 @@ -1,13 +0,0 @@
3471 -http://lists.gnu.org/archive/html/bug-bash/2014-11/msg00097.html
3472 -
3473 ---- bash-4.3/builtins/mapfile.def
3474 -+++ bash-4.3/builtins/mapfile.def
3475 -@@ -339,7 +339,7 @@
3476 - else
3477 - array_name = list->word->word;
3478 -
3479 -- if (legal_identifier (array_name) == 0 && valid_array_reference (array_name) == 0)
3480 -+ if (legal_identifier (array_name) == 0)
3481 - {
3482 - sh_invalidid (array_name);
3483 - return (EXECUTION_FAILURE);
3484
3485 diff --git a/app-shells/bash/files/bash-4.3-parse-time-keyword.patch b/app-shells/bash/files/bash-4.3-parse-time-keyword.patch
3486 deleted file mode 100644
3487 index cd516e5c66..0000000000
3488 --- a/app-shells/bash/files/bash-4.3-parse-time-keyword.patch
3489 +++ /dev/null
3490 @@ -1,30 +0,0 @@
3491 -https://lists.gnu.org/archive/html/bug-bash/2014-06/msg00034.html
3492 -
3493 -*** ../bash-4.3-patched/parse.y 2014-04-07 11:56:12.000000000 -0400
3494 ---- parse.y 2014-06-11 10:25:53.000000000 -0400
3495 -***************
3496 -*** 2789,2797 ****
3497 - case OR_OR:
3498 - case '&':
3499 - case DO:
3500 - case THEN:
3501 - case ELSE:
3502 - case '{': /* } */
3503 -! case '(': /* ) */
3504 - case BANG: /* ! time pipeline */
3505 - case TIME: /* time time pipeline */
3506 ---- 2789,2802 ----
3507 - case OR_OR:
3508 - case '&':
3509 -+ case WHILE:
3510 - case DO:
3511 -+ case UNTIL:
3512 -+ case IF:
3513 - case THEN:
3514 -+ case ELIF:
3515 - case ELSE:
3516 - case '{': /* } */
3517 -! case '(': /* )( */
3518 -! case ')': /* only valid in case statement */
3519 - case BANG: /* ! time pipeline */
3520 - case TIME: /* time time pipeline */
3521
3522 diff --git a/app-shells/bash/files/bash-4.3-protos.patch b/app-shells/bash/files/bash-4.3-protos.patch
3523 deleted file mode 100644
3524 index 7af84ff707..0000000000
3525 --- a/app-shells/bash/files/bash-4.3-protos.patch
3526 +++ /dev/null
3527 @@ -1,10 +0,0 @@
3528 ---- a/redir.c
3529 -+++ b/redir.c
3530 -@@ -31,6 +31,7 @@
3531 - #endif
3532 - #include "filecntl.h"
3533 - #include "posixstat.h"
3534 -+#include "trap.h"
3535 -
3536 - #if defined (HAVE_UNISTD_H)
3537 - # include <unistd.h>
3538
3539 diff --git a/app-shells/bash/files/bash-4.3-term-cleanup.patch b/app-shells/bash/files/bash-4.3-term-cleanup.patch
3540 deleted file mode 100644
3541 index be7a5def76..0000000000
3542 --- a/app-shells/bash/files/bash-4.3-term-cleanup.patch
3543 +++ /dev/null
3544 @@ -1,47 +0,0 @@
3545 -http://lists.gnu.org/archive/html/bug-bash/2014-09/msg00031.html
3546 -
3547 -*** ../bash-4.3-patched/bashline.c 2014-05-14 09:22:39.000000000 -0400
3548 ---- bashline.c 2014-09-08 11:28:56.000000000 -0400
3549 -***************
3550 -*** 203,206 ****
3551 ---- 203,207 ----
3552 - extern int array_needs_making;
3553 - extern int posixly_correct, no_symbolic_links;
3554 -+ extern int sigalrm_seen;
3555 - extern char *current_prompt_string, *ps1_prompt;
3556 - extern STRING_INT_ALIST word_token_alist[];
3557 -***************
3558 -*** 4209,4214 ****
3559 - /* If we're going to longjmp to top_level, make sure we clean up readline.
3560 - check_signals will call QUIT, which will eventually longjmp to top_level,
3561 -! calling run_interrupt_trap along the way. */
3562 -! if (interrupt_state)
3563 - rl_cleanup_after_signal ();
3564 - bashline_reset_event_hook ();
3565 ---- 4262,4268 ----
3566 - /* If we're going to longjmp to top_level, make sure we clean up readline.
3567 - check_signals will call QUIT, which will eventually longjmp to top_level,
3568 -! calling run_interrupt_trap along the way. The check for sigalrm_seen is
3569 -! to clean up the read builtin's state. */
3570 -! if (terminating_signal || interrupt_state || sigalrm_seen)
3571 - rl_cleanup_after_signal ();
3572 - bashline_reset_event_hook ();
3573 -*** ../bash-4.3-patched/sig.c 2014-01-10 15:06:06.000000000 -0500
3574 ---- sig.c 2014-09-08 11:26:33.000000000 -0400
3575 -***************
3576 -*** 533,538 ****
3577 - /* Set the event hook so readline will call it after the signal handlers
3578 - finish executing, so if this interrupted character input we can get
3579 -! quick response. */
3580 -! if (interactive_shell && interactive && no_line_editing == 0)
3581 - bashline_set_event_hook ();
3582 - #endif
3583 ---- 533,540 ----
3584 - /* Set the event hook so readline will call it after the signal handlers
3585 - finish executing, so if this interrupted character input we can get
3586 -! quick response. If readline is active or has modified the terminal we
3587 -! need to set this no matter what the signal is, though the check for
3588 -! RL_STATE_TERMPREPPED is possibly redundant. */
3589 -! if (RL_ISSTATE (RL_STATE_SIGHANDLER) || RL_ISSTATE (RL_STATE_TERMPREPPED))
3590 - bashline_set_event_hook ();
3591 - #endif
3592
3593 diff --git a/app-shells/bash/files/bash-4.3_p39-cygwin-r2.patch b/app-shells/bash/files/bash-4.3_p39-cygwin-r2.patch
3594 deleted file mode 100644
3595 index 1a0ffc36fa..0000000000
3596 --- a/app-shells/bash/files/bash-4.3_p39-cygwin-r2.patch
3597 +++ /dev/null
3598 @@ -1,690 +0,0 @@
3599 -based on Cygwin bash-4.3.39-2.src package
3600 -
3601 ---- origsrc/bash-4.3/bashline.c 2015-06-01 22:41:57.804475900 -0600
3602 -+++ src/bash-4.3/bashline.c 2015-06-02 22:22:59.745114200 -0600
3603 -@@ -264,6 +274,11 @@ int no_empty_command_completion;
3604 - are the only possible matches, even if FIGNORE says to. */
3605 - int force_fignore = 1;
3606 -
3607 -+#if __CYGWIN__
3608 -+/* If set, shorten "foo.exe" to "foo" when they are the same file. */
3609 -+int completion_strip_exe;
3610 -+#endif /* __CYGWIN__ */
3611 -+
3612 - /* Perform spelling correction on directory names during word completion */
3613 - int dircomplete_spelling = 0;
3614 -
3615 -@@ -2109,6 +2127,21 @@ globword:
3616 -
3617 - if (match && executable_completion ((searching_path ? val : cval), searching_path))
3618 - {
3619 -+#if __CYGWIN__
3620 -+ if (completion_strip_exe)
3621 -+ {
3622 -+ size_t val_len = strlen (val);
3623 -+ char *candidate;
3624 -+ if (val_len > 4 && !strcasecmp (&val[val_len - 4], ".exe")
3625 -+ && (candidate = strdup (val)))
3626 -+ {
3627 -+ candidate[val_len - 4] = '\0';
3628 -+ if (same_file (val, candidate, NULL, NULL))
3629 -+ temp[strlen (temp) - 4] = '\0';
3630 -+ free (candidate);
3631 -+ }
3632 -+ }
3633 -+#endif
3634 - if (cval != val)
3635 - free (cval);
3636 - free (val);
3637 -@@ -2844,6 +2877,17 @@ test_for_directory (name)
3638 - int r;
3639 -
3640 - fn = bash_tilde_expand (name, 0);
3641 -+#if __CYGWIN__
3642 -+ /* stat("//server") can only be successful as a directory, but takes
3643 -+ a several-second timeout to fail. It is much faster to assume
3644 -+ that //server is a valid name than it is to wait for the stat,
3645 -+ even though it gives false positives on bad names. */
3646 -+ if (fn[0] == '/' && fn[1] == '/' && ! strchr (&fn[2], '/'))
3647 -+ {
3648 -+ free (fn);
3649 -+ return 1;
3650 -+ }
3651 -+#endif /* __CYGWIN__ */
3652 - r = file_isdir (fn);
3653 - free (fn);
3654 -
3655 ---- origsrc/bash-4.3/builtins/set.def 2015-06-01 22:41:57.850941500 -0600
3656 -+++ src/bash-4.3/builtins/set.def 2015-06-02 22:22:59.760951100 -0600
3657 -@@ -56,6 +56,13 @@ extern int dont_save_function_defs;
3658 - #if defined (READLINE)
3659 - extern int no_line_editing;
3660 - #endif /* READLINE */
3661 -+#if __CYGWIN__
3662 -+extern int igncr;
3663 -+static int set_minus_o_option_maybe (int, const char *, int);
3664 -+# define INTERACTIVE_ONLY ,1
3665 -+#else /* ! __CYGWIN__ */
3666 -+# define INTERACTIVE_ONLY
3667 -+#endif
3668 -
3669 - $BUILTIN set
3670 - $FUNCTION set_builtin
3671 -@@ -92,6 +99,9 @@ Options:
3672 - #if defined (HISTORY)
3673 - history enable command history
3674 - #endif
3675 -+#if __CYGWIN__
3676 -+ igncr on cygwin, ignore \r in line endings
3677 -+#endif
3678 - ignoreeof the shell will not exit upon reading EOF
3679 - interactive-comments
3680 - allow comments to appear in interactive commands
3681 -@@ -188,29 +198,41 @@ const struct {
3682 - int *variable;
3683 - setopt_set_func_t *set_func;
3684 - setopt_get_func_t *get_func;
3685 -+#if __CYGWIN__
3686 -+ /* Cygwin users have taken to exporting SHELLOPTS for the
3687 -+ cygwin-specific igncr. As a result, we need to make sure
3688 -+ SHELLOPTS parsing does not turn on interactive options when
3689 -+ exported from an interactive shell, but parsed in a
3690 -+ non-interactive setting, since some interactive options violate
3691 -+ POSIX /bin/sh rules. */
3692 -+ int interactive_only;
3693 -+#endif /* __CYGWIN__ */
3694 - } o_options[] = {
3695 - { "allexport", 'a', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
3696 - #if defined (BRACE_EXPANSION)
3697 - { "braceexpand",'B', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
3698 - #endif
3699 - #if defined (READLINE)
3700 -- { "emacs", '\0', (int *)NULL, set_edit_mode, get_edit_mode },
3701 -+ { "emacs", '\0', (int *)NULL, set_edit_mode, get_edit_mode INTERACTIVE_ONLY},
3702 - #endif
3703 - { "errexit", 'e', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
3704 - { "errtrace", 'E', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
3705 - { "functrace", 'T', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
3706 - { "hashall", 'h', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
3707 - #if defined (BANG_HISTORY)
3708 -- { "histexpand", 'H', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
3709 -+ { "histexpand", 'H', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL INTERACTIVE_ONLY},
3710 - #endif /* BANG_HISTORY */
3711 - #if defined (HISTORY)
3712 -- { "history", '\0', &enable_history_list, bash_set_history, (setopt_get_func_t *)NULL },
3713 -+ { "history", '\0', &enable_history_list, bash_set_history, (setopt_get_func_t *)NULL INTERACTIVE_ONLY},
3714 -+#endif
3715 -+#if __CYGWIN__
3716 -+ { "igncr", '\0', &igncr, NULL, (setopt_get_func_t *)NULL },
3717 - #endif
3718 - { "ignoreeof", '\0', &ignoreeof, set_ignoreeof, (setopt_get_func_t *)NULL },
3719 - { "interactive-comments", '\0', &interactive_comments, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
3720 - { "keyword", 'k', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
3721 - #if defined (JOB_CONTROL)
3722 -- { "monitor", 'm', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
3723 -+ { "monitor", 'm', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL INTERACTIVE_ONLY},
3724 - #endif
3725 - { "noclobber", 'C', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
3726 - { "noexec", 'n', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
3727 -@@ -229,7 +251,7 @@ const struct {
3728 - { "privileged", 'p', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
3729 - { "verbose", 'v', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
3730 - #if defined (READLINE)
3731 -- { "vi", '\0', (int *)NULL, set_edit_mode, get_edit_mode },
3732 -+ { "vi", '\0', (int *)NULL, set_edit_mode, get_edit_mode INTERACTIVE_ONLY},
3733 - #endif
3734 - { "xtrace", 'x', (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
3735 - {(char *)NULL, 0 , (int *)NULL, (setopt_set_func_t *)NULL, (setopt_get_func_t *)NULL },
3736 -@@ -416,6 +438,15 @@ int
3737 - set_minus_o_option (on_or_off, option_name)
3738 - int on_or_off;
3739 - char *option_name;
3740 -+#if __CYGWIN__
3741 -+{
3742 -+ /* See cygwin comments above. */
3743 -+ return set_minus_o_option_maybe (on_or_off, option_name, 0);
3744 -+}
3745 -+static int
3746 -+set_minus_o_option_maybe (int on_or_off, const char *option_name,
3747 -+ int avoid_interactive)
3748 -+#endif /* __CYGWIN__ */
3749 - {
3750 - register int i;
3751 -
3752 -@@ -423,6 +454,10 @@ set_minus_o_option (on_or_off, option_na
3753 - {
3754 - if (STREQ (option_name, o_options[i].name))
3755 - {
3756 -+#if __CYGWIN__
3757 -+ if (o_options[i].interactive_only && avoid_interactive)
3758 -+ return EXECUTION_SUCCESS;
3759 -+#endif /* __CYGWIN__ */
3760 - if (o_options[i].letter == 0)
3761 - {
3762 - SET_BINARY_O_OPTION_VALUE (i, on_or_off, option_name);
3763 -@@ -548,7 +583,11 @@ parse_shellopts (value)
3764 - vptr = 0;
3765 - while (vname = extract_colon_unit (value, &vptr))
3766 - {
3767 -+#if __CYGWIN__
3768 -+ set_minus_o_option_maybe (FLAG_ON, vname, !interactive_shell);
3769 -+#else /* !__CYGWIN__ */
3770 - set_minus_o_option (FLAG_ON, vname);
3771 -+#endif
3772 - free (vname);
3773 - }
3774 - }
3775 ---- origsrc/bash-4.3/builtins/shopt.def 2013-02-27 07:43:20.000000000 -0700
3776 -+++ src/bash-4.3/builtins/shopt.def 2015-06-02 22:22:59.760951100 -0600
3777 -@@ -91,6 +91,11 @@ extern int glob_star;
3778 - extern int glob_asciirange;
3779 - extern int lastpipe_opt;
3780 -
3781 -+#if __CYGWIN__
3782 -+extern int completion_strip_exe;
3783 -+#endif
3784 -+
3785 -+
3786 - #if defined (EXTENDED_GLOB)
3787 - extern int extended_glob;
3788 - #endif
3789 -@@ -161,6 +166,9 @@ static struct {
3790 - { "compat40", &shopt_compat40, set_compatibility_level },
3791 - { "compat41", &shopt_compat41, set_compatibility_level },
3792 - { "compat42", &shopt_compat42, set_compatibility_level },
3793 -+#if __CYGWIN__
3794 -+ { "completion_strip_exe", &completion_strip_exe, NULL },
3795 -+#endif
3796 - #if defined (READLINE)
3797 - { "complete_fullquote", &complete_fullquote, (shopt_set_func_t *)NULL},
3798 - { "direxpand", &dircomplete_expand, shopt_set_complete_direxpand },
3799 ---- origsrc/bash-4.3/doc/bash.1 2014-02-06 07:03:52.000000000 -0700
3800 -+++ src/bash-4.3/doc/bash.1 2015-06-02 22:22:59.760951100 -0600
3801 -@@ -1658,6 +1658,14 @@ subsequently reset.
3802 - Expands to the effective user ID of the current user, initialized at
3803 - shell startup. This variable is readonly.
3804 - .TP
3805 -+.B EXECIGNORE
3806 -+A colon-separated list of extended glob (see \fBPattern Matching\fP)
3807 -+patterns. Files with full paths matching one of these patterns are
3808 -+not considered executable for the purposes of completion and PATH
3809 -+searching, but the \fB[\fP, \fB[[\fP, and \fBtest\fP builtins are not
3810 -+affected. Use this variable to deal with systems that set the
3811 -+executable bit on files that are not actually executable.
3812 -+.TP
3813 - .B FUNCNAME
3814 - An array variable containing the names of all shell functions
3815 - currently in the execution call stack.
3816 -@@ -3308,6 +3316,10 @@ the character
3817 - .B ``.''
3818 - at the start of a name or immediately following a slash
3819 - must be matched explicitly, unless the shell option
3820 -+.B completion_strip_exe
3821 -+If set, whenever bash sees `foo.exe' during completion, it checks if
3822 -+`foo' is the same file and strips the suffix.
3823 -+.TP 8
3824 - .B dotglob
3825 - is set.
3826 - When matching a pathname, the slash character must always be
3827 ---- origsrc/bash-4.3/doc/bashref.texi 2014-02-22 11:20:36.000000000 -0700
3828 -+++ src/bash-4.3/doc/bashref.texi 2015-06-02 22:22:59.776306300 -0600
3829 -@@ -4992,6 +4992,10 @@ filenames.
3830 - This variable is set by default, which is the default Bash behavior in
3831 - versions through 4.2.
3832 -
3833 -+@item completion_strip_exe
3834 -+If set, whenever bash sees `foo.exe' during completion, it checks if
3835 -+`foo' is the same file and strips the suffix.
3836 -+
3837 - @item direxpand
3838 - If set, Bash
3839 - replaces directory names with the results of word expansion when performing
3840 -@@ -5578,6 +5582,14 @@ Similar to @code{BASH_ENV}; used when th
3841 - The numeric effective user id of the current user. This variable
3842 - is readonly.
3843 -
3844 -+@item EXECIGNORE
3845 -+A colon-separated list of extended glob ((@pxref{Pattern Matching})
3846 -+patterns. Files with full paths matching one of these patterns are
3847 -+not considered executable for the purposes of completion and PATH
3848 -+searching, but the @code{[}, @code{[[}, and @code{test} builtins are
3849 -+not affected. Use this variable to deal with systems that set the
3850 -+executable bit on files that are not actually executable.
3851 -+
3852 - @item FCEDIT
3853 - The editor used as a default by the @option{-e} option to the @code{fc}
3854 - builtin command.
3855 ---- origsrc/bash-4.3/execute_cmd.c 2015-06-01 22:41:57.242554200 -0600
3856 -+++ src/bash-4.3/execute_cmd.c 2015-06-02 22:22:59.776306300 -0600
3857 -@@ -58,6 +58,7 @@ extern int errno;
3858 - #endif
3859 -
3860 - #define NEED_FPURGE_DECL
3861 -+#define NEED_SH_SETLINEBUF_DECL /* used in externs.h */
3862 -
3863 - #include "bashansi.h"
3864 - #include "bashintl.h"
3865 ---- origsrc/bash-4.3/expr.c 2014-01-03 06:55:00.000000000 -0700
3866 -+++ src/bash-4.3/expr.c 2015-06-02 22:22:59.776306300 -0600
3867 -@@ -83,6 +83,7 @@
3868 -
3869 - #include "shell.h"
3870 - #include "typemax.h" /* INTMAX_MAX, INTMAX_MIN */
3871 -+#define exp2 exp2_
3872 -
3873 - /* Because of the $((...)) construct, expressions may include newlines.
3874 - Here is a macro which accepts newlines, tabs and spaces as whitespace. */
3875 ---- origsrc/bash-4.3/findcmd.c 2012-10-15 05:45:04.000000000 -0600
3876 -+++ src/bash-4.3/findcmd.c 2015-06-02 22:22:59.776306300 -0600
3877 -@@ -48,6 +48,8 @@
3878 - extern int errno;
3879 - #endif
3880 -
3881 -+#include <glob/strmatch.h>
3882 -+
3883 - extern int posixly_correct;
3884 - extern int last_command_exit_value;
3885 -
3886 -@@ -77,6 +79,38 @@ int check_hashed_filenames;
3887 - containing the file of interest. */
3888 - int dot_found_in_search = 0;
3889 -
3890 -+static struct ignorevar execignore =
3891 -+{
3892 -+ "EXECIGNORE",
3893 -+ (struct ign *)0,
3894 -+ 0,
3895 -+ (char *)0,
3896 -+ (sh_iv_item_func_t *)0,
3897 -+};
3898 -+
3899 -+void
3900 -+setup_exec_ignore (char *varname)
3901 -+{
3902 -+ setup_ignore_patterns (&execignore);
3903 -+}
3904 -+
3905 -+/* Return whether we should never consider file executable
3906 -+ * even if the system tells us it is. */
3907 -+static int
3908 -+is_on_exec_blacklist (char *name)
3909 -+{
3910 -+ struct ign *p;
3911 -+ int flags = FNM_EXTMATCH | FNM_CASEFOLD;
3912 -+
3913 -+ for (p = execignore.ignores; p && p->val; p++)
3914 -+ {
3915 -+ if (strmatch (p->val, (char *)name, flags) != FNM_NOMATCH)
3916 -+ return (1);
3917 -+ }
3918 -+
3919 -+ return (0);
3920 -+}
3921 -+
3922 - /* Return some flags based on information about this file.
3923 - The EXISTS bit is non-zero if the file is found.
3924 - The EXECABLE bit is non-zero the file is executble.
3925 -@@ -104,7 +138,7 @@ file_status (name)
3926 - file access mechanisms into account. eaccess uses the effective
3927 - user and group IDs, not the real ones. We could use sh_eaccess,
3928 - but we don't want any special treatment for /dev/fd. */
3929 -- if (eaccess (name, X_OK) == 0)
3930 -+ if (!is_on_exec_blacklist (name) && eaccess (name, X_OK) == 0)
3931 - r |= FS_EXECABLE;
3932 - if (eaccess (name, R_OK) == 0)
3933 - r |= FS_READABLE;
3934 ---- origsrc/bash-4.3/findcmd.h 2012-01-14 16:56:25.000000000 -0700
3935 -+++ src/bash-4.3/findcmd.h 2015-06-02 22:22:59.776306300 -0600
3936 -@@ -31,5 +31,6 @@ extern char *find_user_command __P((cons
3937 - extern char *find_path_file __P((const char *));
3938 - extern char *search_for_command __P((const char *, int));
3939 - extern char *user_command_matches __P((const char *, int, int));
3940 -+extern void setup_exec_ignore __P((char *));
3941 -
3942 - #endif /* _FINDCMD_H_ */
3943 ---- origsrc/bash-4.3/general.c 2014-01-30 14:46:15.000000000 -0700
3944 -+++ src/bash-4.3/general.c 2015-06-02 22:22:59.791899800 -0600
3945 -@@ -44,6 +44,10 @@
3946 -
3947 - #include <tilde/tilde.h>
3948 -
3949 -+#ifdef __CYGWIN__
3950 -+# include <sys/cygwin.h>
3951 -+#endif
3952 -+
3953 - #if !defined (errno)
3954 - extern int errno;
3955 - #endif /* !errno */
3956 -@@ -632,7 +636,8 @@ make_absolute (string, dot_path)
3957 - {
3958 - char pathbuf[PATH_MAX + 1];
3959 -
3960 -- cygwin_conv_to_full_posix_path (string, pathbuf);
3961 -+ cygwin_conv_path (CCP_WIN_A_TO_POSIX | CCP_ABSOLUTE, string, pathbuf,
3962 -+ sizeof pathbuf);
3963 - result = savestring (pathbuf);
3964 - }
3965 - #else
3966 ---- origsrc/bash-4.3/include/posixjmp.h 2012-12-23 20:20:50.000000000 -0700
3967 -+++ src/bash-4.3/include/posixjmp.h 2015-06-02 22:22:59.791899800 -0600
3968 -@@ -27,13 +27,15 @@
3969 -
3970 - #if defined (HAVE_POSIX_SIGSETJMP)
3971 - # define procenv_t sigjmp_buf
3972 --# if !defined (__OPENNT)
3973 -+# if !defined (__OPENNT) && !defined __CYGWIN__
3974 - # undef setjmp
3975 - # define setjmp(x) sigsetjmp((x), 1)
3976 --# define setjmp_nosigs(x) sigsetjmp((x), 0)
3977 - # undef longjmp
3978 - # define longjmp(x, n) siglongjmp((x), (n))
3979 --# endif /* !__OPENNT */
3980 -+# endif /* !__OPENNT && !__CYGWIN__ */
3981 -+# if !defined (__OPENNT)
3982 -+# define setjmp_nosigs(x) sigsetjmp((x), 0)
3983 -+# endif /* !__OPENNT */
3984 - #else
3985 - # define procenv_t jmp_buf
3986 - # define setjmp_nosigs setjmp
3987 ---- origsrc/bash-4.3/input.c 2014-02-07 07:13:08.000000000 -0700
3988 -+++ src/bash-4.3/input.c 2015-06-02 22:22:59.791899800 -0600
3989 -@@ -44,6 +44,10 @@
3990 - #include "quit.h"
3991 - #include "trap.h"
3992 -
3993 -+#if __CYGWIN__
3994 -+int igncr;
3995 -+#endif
3996 -+
3997 - #if !defined (errno)
3998 - extern int errno;
3999 - #endif /* !errno */
4000 -@@ -561,6 +565,19 @@ buffered_getchar ()
4001 - {
4002 - CHECK_TERMSIG;
4003 -
4004 -+#if __CYGWIN__
4005 -+ /* shopt igncr means to discard carriage returns from input stream.
4006 -+ If cr is the only character in the buffer, then recurse to pick
4007 -+ up the next character; otherwise flatten the buffer. */
4008 -+ if (igncr)
4009 -+ {
4010 -+ int ch;
4011 -+ while ((ch = bufstream_getc (buffers[bash_input.location.buffered_fd]))
4012 -+ == '\r')
4013 -+ ;
4014 -+ return ch;
4015 -+ }
4016 -+#endif /* __CYGWIN__ */
4017 - #if !defined (DJGPP)
4018 - return (bufstream_getc (buffers[bash_input.location.buffered_fd]));
4019 - #else
4020 ---- origsrc/bash-4.3/lib/sh/pathphys.c 2013-05-28 13:33:58.000000000 -0600
4021 -+++ src/bash-4.3/lib/sh/pathphys.c 2015-06-02 22:22:59.823097800 -0600
4022 -@@ -35,6 +35,7 @@
4023 - #include <stdio.h>
4024 - #include <chartypes.h>
4025 - #include <errno.h>
4026 -+#include <stdlib.h>
4027 -
4028 - #include "shell.h"
4029 -
4030 -@@ -76,6 +77,10 @@ sh_physpath (path, flags)
4031 - char *path;
4032 - int flags;
4033 - {
4034 -+#if __CYGWIN__
4035 -+ /* realpath does this correctly without all the hassle */
4036 -+ return realpath (path, NULL);
4037 -+#else
4038 - char tbuf[PATH_MAX+1], linkbuf[PATH_MAX+1];
4039 - char *result, *p, *q, *qsave, *qbase, *workpath;
4040 - int double_slash_path, linklen, nlink;
4041 -@@ -214,11 +219,7 @@ error:
4042 - {
4043 - q = result;
4044 - /* Duplicating some code here... */
4045 --#if defined (__CYGWIN__)
4046 -- qbase = (ISALPHA((unsigned char)workpath[0]) && workpath[1] == ':') ? workpath + 3 : workpath + 1;
4047 --#else
4048 - qbase = workpath + 1;
4049 --#endif
4050 - double_slash_path = DOUBLE_SLASH (workpath);
4051 - qbase += double_slash_path;
4052 -
4053 -@@ -249,6 +250,7 @@ error:
4054 - }
4055 -
4056 - return (result);
4057 -+#endif /* ! __CYGWIN__ */
4058 - }
4059 -
4060 - char *
4061 ---- origsrc/bash-4.3/lib/sh/tmpfile.c 2013-12-18 15:50:13.000000000 -0700
4062 -+++ src/bash-4.3/lib/sh/tmpfile.c 2015-06-02 22:22:59.823097800 -0600
4063 -@@ -96,7 +96,7 @@ get_tmpdir (flags)
4064 - if (tdir && (file_iswdir (tdir) == 0 || strlen (tdir) > PATH_MAX))
4065 - tdir = 0;
4066 -
4067 -- if (tdir == 0)
4068 -+ if (tdir == 0 || !file_iswdir (tdir))
4069 - tdir = get_sys_tmpdir ();
4070 -
4071 - #if defined (HAVE_PATHCONF) && defined (_PC_NAME_MAX)
4072 -@@ -118,14 +118,15 @@ sh_mktmpname (nameroot, flags)
4073 - struct stat sb;
4074 - int r, tdlen;
4075 -
4076 -- filename = (char *)xmalloc (PATH_MAX + 1);
4077 -+ filename = NULL;
4078 - tdir = get_tmpdir (flags);
4079 - tdlen = strlen (tdir);
4080 -
4081 - lroot = nameroot ? nameroot : DEFAULT_NAMEROOT;
4082 -
4083 - #ifdef USE_MKTEMP
4084 -- sprintf (filename, "%s/%s.XXXXXX", tdir, lroot);
4085 -+ if (asprintf (&filename, "%s/%s.XXXXXX", tdir, lroot) < 0)
4086 -+ return NULL;
4087 - if (mktemp (filename) == 0)
4088 - {
4089 - free (filename);
4090 -@@ -138,7 +139,9 @@ sh_mktmpname (nameroot, flags)
4091 - (unsigned long) time ((time_t *)0) ^
4092 - (unsigned long) dollar_dollar_pid ^
4093 - (unsigned long) ((flags & MT_USERANDOM) ? random () : ntmpfiles++);
4094 -- sprintf (filename, "%s/%s-%lu", tdir, lroot, filenum);
4095 -+ free (filename);
4096 -+ if (asprintf (&filename, "%s/%s-%lu", tdir, lroot, filenum) < 0)
4097 -+ return NULL;
4098 - if (tmpnamelen > 0 && tmpnamelen < 32)
4099 - filename[tdlen + 1 + tmpnamelen] = '\0';
4100 - # ifdef HAVE_LSTAT
4101 -@@ -163,14 +166,19 @@ sh_mktmpfd (nameroot, flags, namep)
4102 - char *filename, *tdir, *lroot;
4103 - int fd, tdlen;
4104 -
4105 -- filename = (char *)xmalloc (PATH_MAX + 1);
4106 -+ filename = NULL;
4107 - tdir = get_tmpdir (flags);
4108 - tdlen = strlen (tdir);
4109 -
4110 - lroot = nameroot ? nameroot : DEFAULT_NAMEROOT;
4111 -
4112 - #ifdef USE_MKSTEMP
4113 -- sprintf (filename, "%s/%s.XXXXXX", tdir, lroot);
4114 -+ if (asprintf (&filename, "%s/%s.XXXXXX", tdir, lroot) < 0)
4115 -+ {
4116 -+ if (namep)
4117 -+ *namep = NULL;
4118 -+ return -1;
4119 -+ }
4120 - fd = mkstemp (filename);
4121 - if (fd < 0 || namep == 0)
4122 - {
4123 -@@ -187,7 +195,13 @@ sh_mktmpfd (nameroot, flags, namep)
4124 - (unsigned long) time ((time_t *)0) ^
4125 - (unsigned long) dollar_dollar_pid ^
4126 - (unsigned long) ((flags & MT_USERANDOM) ? random () : ntmpfiles++);
4127 -- sprintf (filename, "%s/%s-%lu", tdir, lroot, filenum);
4128 -+ free (filename);
4129 -+ if (asprintf (&filename, "%s/%s-%lu", tdir, lroot, filenum) < 0)
4130 -+ {
4131 -+ if (namep)
4132 -+ *namep = NULL;
4133 -+ return -1;
4134 -+ }
4135 - if (tmpnamelen > 0 && tmpnamelen < 32)
4136 - filename[tdlen + 1 + tmpnamelen] = '\0';
4137 - fd = open (filename, BASEOPENFLAGS | ((flags & MT_READWRITE) ? O_RDWR : O_WRONLY), 0600);
4138 ---- origsrc/bash-4.3/parse.y 2015-06-01 22:41:58.022560000 -0600
4139 -+++ src/bash-4.3/parse.y 2015-06-02 22:22:59.838697600 -0600
4140 -@@ -1531,14 +1531,20 @@ yy_string_get ()
4141 - string = bash_input.location.string;
4142 -
4143 - /* If the string doesn't exist, or is empty, EOF found. */
4144 -- if (string && *string)
4145 -+ while (string && *string)
4146 - {
4147 - c = *string++;
4148 - bash_input.location.string = string;
4149 -+#if __CYGWIN__
4150 -+ {
4151 -+ extern int igncr;
4152 -+ if (igncr && c == '\r')
4153 -+ continue;
4154 -+ }
4155 -+#endif
4156 - return (c);
4157 - }
4158 -- else
4159 -- return (EOF);
4160 -+ return (EOF);
4161 - }
4162 -
4163 - static int
4164 -@@ -2305,7 +2311,7 @@ shell_getc (remove_quoted_newline)
4165 - if (n <= 2) /* we have to save 1 for the newline added below */
4166 - {
4167 - if (truncating == 0)
4168 -- internal_warning("shell_getc: shell_input_line_size (%zu) exceeds SIZE_MAX (%llu): line truncated", shell_input_line_size, SIZE_MAX);
4169 -+ internal_warning("shell_getc: shell_input_line_size (%zu) exceeds SIZE_MAX (%zu): line truncated", shell_input_line_size, SIZE_MAX);
4170 - shell_input_line[i] = '\0';
4171 - truncating = 1;
4172 - }
4173 -@@ -3587,7 +3593,6 @@ parse_comsub (qc, open, close, lenp, fla
4174 -
4175 - while (count)
4176 - {
4177 --comsub_readchar:
4178 - ch = shell_getc (qc != '\'' && (tflags & (LEX_INCOMMENT|LEX_PASSNEXT)) == 0);
4179 -
4180 - if (ch == EOF)
4181 ---- origsrc/bash-4.3/pathexp.h 2009-01-04 12:32:40.000000000 -0700
4182 -+++ src/bash-4.3/pathexp.h 2015-06-02 22:22:59.838697600 -0600
4183 -@@ -86,7 +86,7 @@ struct ign {
4184 - typedef int sh_iv_item_func_t __P((struct ign *));
4185 -
4186 - struct ignorevar {
4187 -- char *varname; /* FIGNORE or GLOBIGNORE */
4188 -+ char *varname; /* FIGNORE or GLOBIGNORE or EXECIGNORE */
4189 - struct ign *ignores; /* Store the ignore strings here */
4190 - int num_ignores; /* How many are there? */
4191 - char *last_ignoreval; /* Last value of variable - cached for speed */
4192 ---- origsrc/bash-4.3/subst.c 2015-06-01 22:41:57.367407300 -0600
4193 -+++ src/bash-4.3/subst.c 2015-06-02 22:22:59.838697600 -0600
4194 -@@ -41,6 +41,7 @@
4195 - #include "posixstat.h"
4196 - #include "bashintl.h"
4197 -
4198 -+#define NEED_SH_SETLINEBUF_DECL /* used in externs.h */
4199 - #include "shell.h"
4200 - #include "parser.h"
4201 - #include "flags.h"
4202 -@@ -5268,6 +5269,13 @@ read_comsub (fd, quoted, rflag)
4203 - #endif
4204 - continue;
4205 - }
4206 -+#if __CYGWIN__
4207 -+ {
4208 -+ extern int igncr;
4209 -+ if (igncr && c == '\r')
4210 -+ continue;
4211 -+ }
4212 -+#endif /* __CYGWIN__ */
4213 -
4214 - /* Add the character to ISTRING, possibly after resizing it. */
4215 - RESIZE_MALLOCED_BUFFER (istring, istring_index, 2, istring_size, DEFAULT_ARRAY_SIZE);
4216 -@@ -5385,6 +5393,28 @@ command_substitute (string, quoted)
4217 - goto error_exit;
4218 - }
4219 -
4220 -+#if __CYGWIN__
4221 -+ /* Passing a pipe through std fds can cause hangs when talking to a
4222 -+ non-cygwin child. Move it. */
4223 -+ if (fildes[0] < 3)
4224 -+ {
4225 -+ int fd = fcntl (fildes[0], F_DUPFD, 3);
4226 -+ close (fildes[0]);
4227 -+ fildes[0] = fd;
4228 -+ }
4229 -+ if (fildes[1] < 3)
4230 -+ {
4231 -+ int fd = fcntl (fildes[1], F_DUPFD, 3);
4232 -+ close (fildes[1]);
4233 -+ fildes[1] = fd;
4234 -+ }
4235 -+ if (fildes[0] < 0 || fildes[1] < 0)
4236 -+ {
4237 -+ sys_error (_("cannot make pipe for command substitution"));
4238 -+ goto error_exit;
4239 -+ }
4240 -+#endif /* __CYGWIN__ */
4241 -+
4242 - old_pid = last_made_pid;
4243 - #if defined (JOB_CONTROL)
4244 - old_pipeline_pgrp = pipeline_pgrp;
4245 ---- origsrc/bash-4.3/variables.c 2015-06-01 22:41:57.928984100 -0600
4246 -+++ src/bash-4.3/variables.c 2015-06-02 22:22:59.854339600 -0600
4247 -@@ -4681,6 +4681,8 @@ static struct name_and_function special_
4248 - { "COMP_WORDBREAKS", sv_comp_wordbreaks },
4249 - #endif
4250 -
4251 -+ { "EXECIGNORE", sv_execignore },
4252 -+
4253 - { "FUNCNEST", sv_funcnest },
4254 -
4255 - { "GLOBIGNORE", sv_globignore },
4256 -@@ -4879,6 +4881,13 @@ sv_globignore (name)
4257 - setup_glob_ignore (name);
4258 - }
4259 -
4260 -+/* What to do when EXECIGNORE changes. */
4261 -+void
4262 -+sv_execignore (char *name)
4263 -+{
4264 -+ setup_exec_ignore (name);
4265 -+}
4266 -+
4267 - #if defined (READLINE)
4268 - void
4269 - sv_comp_wordbreaks (name)
4270 -@@ -4952,7 +4961,7 @@ sv_winsize (name)
4271 - /* Update the value of HOME in the export environment so tilde expansion will
4272 - work on cygwin. */
4273 - #if defined (__CYGWIN__)
4274 --sv_home (name)
4275 -+void sv_home (name)
4276 - char *name;
4277 - {
4278 - array_needs_making = 1;
4279 ---- origsrc/bash-4.3/variables.h 2014-01-08 13:33:29.000000000 -0700
4280 -+++ src/bash-4.3/variables.h 2015-06-02 22:22:59.854339600 -0600
4281 -@@ -372,6 +372,7 @@ extern void sv_ifs __P((char *));
4282 - extern void sv_path __P((char *));
4283 - extern void sv_mail __P((char *));
4284 - extern void sv_funcnest __P((char *));
4285 -+extern void sv_execignore __P((char *));
4286 - extern void sv_globignore __P((char *));
4287 - extern void sv_ignoreeof __P((char *));
4288 - extern void sv_strict_posix __P((char *));
4289
4290 diff --git a/app-shells/bash/files/bash-4.4-history-alloclist.patch b/app-shells/bash/files/bash-4.4-history-alloclist.patch
4291 deleted file mode 100644
4292 index 8072bde5e2..0000000000
4293 --- a/app-shells/bash/files/bash-4.4-history-alloclist.patch
4294 +++ /dev/null
4295 @@ -1,26 +0,0 @@
4296 -*** ../bash-4.4/lib/readline/history.c 2015-12-28 13:50:31.000000000 -0500
4297 ---- lib/readline/history.c 2016-09-30 14:28:40.000000000 -0400
4298 -***************
4299 -*** 58,61 ****
4300 ---- 58,63 ----
4301 - #define DEFAULT_HISTORY_INITIAL_SIZE 502
4302 -
4303 -+ #define MAX_HISTORY_INITIAL_SIZE 8192
4304 -+
4305 - /* The number of slots to increase the_history by. */
4306 - #define DEFAULT_HISTORY_GROW_SIZE 50
4307 -***************
4308 -*** 308,312 ****
4309 - {
4310 - if (history_stifled && history_max_entries > 0)
4311 -! history_size = history_max_entries + 2;
4312 - else
4313 - history_size = DEFAULT_HISTORY_INITIAL_SIZE;
4314 ---- 310,316 ----
4315 - {
4316 - if (history_stifled && history_max_entries > 0)
4317 -! history_size = (history_max_entries > MAX_HISTORY_INITIAL_SIZE)
4318 -! ? MAX_HISTORY_INITIAL_SIZE
4319 -! : history_max_entries + 2;
4320 - else
4321 - history_size = DEFAULT_HISTORY_INITIAL_SIZE;
4322
4323 diff --git a/app-shells/bash/files/bash-4.4-jobs_overflow.patch b/app-shells/bash/files/bash-4.4-jobs_overflow.patch
4324 deleted file mode 100644
4325 index 8753d62ec6..0000000000
4326 --- a/app-shells/bash/files/bash-4.4-jobs_overflow.patch
4327 +++ /dev/null
4328 @@ -1,14 +0,0 @@
4329 -https://lists.gnu.org/archive/html/bug-bash/2017-12/msg00025.html
4330 -https://bugs.gentoo.org/644720
4331 -
4332 ---- bash-4.4/jobs.c
4333 -+++ bash-4.4/jobs.c
4334 -@@ -750,7 +750,7 @@
4335 - else
4336 - nsize = bgpids.nalloc;
4337 -
4338 -- while (nsize < js.c_childmax)
4339 -+ while (nsize < (ps_index_t)js.c_childmax)
4340 - nsize *= 2;
4341 -
4342 - if (bgpids.nalloc < js.c_childmax)
4343
4344 diff --git a/app-shells/bash/files/bash-4.4-popd-offset-overflow.patch b/app-shells/bash/files/bash-4.4-popd-offset-overflow.patch
4345 deleted file mode 100644
4346 index c6ef19d03f..0000000000
4347 --- a/app-shells/bash/files/bash-4.4-popd-offset-overflow.patch
4348 +++ /dev/null
4349 @@ -1,30 +0,0 @@
4350 -https://bugs.gentoo.org/600174
4351 -https://lists.gnu.org/archive/html/bug-bash/2016-11/msg00099.html
4352 -
4353 -*** ../bash-4.4-patched/builtins/pushd.def 2016-01-25 13:31:49.000000000 -0500
4354 ---- builtins/pushd.def 2016-10-28 10:46:49.000000000 -0400
4355 -***************
4356 -*** 366,370 ****
4357 - }
4358 -
4359 -! if (which > directory_list_offset || (directory_list_offset == 0 && which == 0))
4360 - {
4361 - pushd_error (directory_list_offset, which_word ? which_word : "");
4362 ---- 366,370 ----
4363 - }
4364 -
4365 -! if (which > directory_list_offset || (which < -directory_list_offset) || (directory_list_offset == 0 && which == 0))
4366 - {
4367 - pushd_error (directory_list_offset, which_word ? which_word : "");
4368 -***************
4369 -*** 388,391 ****
4370 ---- 388,396 ----
4371 - of the list into place. */
4372 - i = (direction == '+') ? directory_list_offset - which : which;
4373 -+ if (i < 0 || i > directory_list_offset)
4374 -+ {
4375 -+ pushd_error (directory_list_offset, which_word ? which_word : "");
4376 -+ return (EXECUTION_FAILURE);
4377 -+ }
4378 - free (pushd_directory_list[i]);
4379 - directory_list_offset--;
4380
4381 diff --git a/app-shells/bash/files/bash-4.x-deferred-heredocs.patch b/app-shells/bash/files/bash-4.x-deferred-heredocs.patch
4382 deleted file mode 100644
4383 index 698d277a3d..0000000000
4384 --- a/app-shells/bash/files/bash-4.x-deferred-heredocs.patch
4385 +++ /dev/null
4386 @@ -1,47 +0,0 @@
4387 -http://bugs.gentoo.org/310197
4388 -http://lists.gnu.org/archive/html/bug-bash/2010-03/msg00063.html
4389 -
4390 -fix heredocs handling in `set` output
4391 -
4392 -*** ../bash-4.1-patched/print_cmd.c 2009-09-16 15:32:26.000000000 -0400
4393 ---- print_cmd.c 2010-03-22 21:15:30.000000000 -0400
4394 -***************
4395 -*** 114,117 ****
4396 ---- 114,123 ----
4397 - #define CHECK_XTRACE_FP xtrace_fp = (xtrace_fp ? xtrace_fp : stderr)
4398 -
4399 -+ #define PRINT_DEFERRED_HEREDOCS(x) \
4400 -+ do { \
4401 -+ if (deferred_heredocs) \
4402 -+ print_deferred_heredocs (x); \
4403 -+ } while (0)
4404 -+
4405 - /* Non-zero means the stuff being printed is inside of a function def. */
4406 - static int inside_function_def;
4407 -***************
4408 -*** 561,571 ****
4409 - {
4410 - print_for_command_head (for_command);
4411 --
4412 - cprintf (";");
4413 - newline ("do\n");
4414 - indentation += indentation_amount;
4415 - make_command_string_internal (for_command->action);
4416 - semicolon ();
4417 - indentation -= indentation_amount;
4418 - newline ("done");
4419 - }
4420 ---- 566,578 ----
4421 - {
4422 - print_for_command_head (for_command);
4423 - cprintf (";");
4424 - newline ("do\n");
4425 -+
4426 - indentation += indentation_amount;
4427 - make_command_string_internal (for_command->action);
4428 -+ PRINT_DEFERRED_HEREDOCS ("");
4429 - semicolon ();
4430 - indentation -= indentation_amount;
4431 -+
4432 - newline ("done");
4433 - }
4434
4435 diff --git a/app-shells/bash/files/bash-eol-pushback.patch b/app-shells/bash/files/bash-eol-pushback.patch
4436 deleted file mode 100644
4437 index 964b91f51e..0000000000
4438 --- a/app-shells/bash/files/bash-eol-pushback.patch
4439 +++ /dev/null
4440 @@ -1,11 +0,0 @@
4441 -*** ../bash-20140912/parse.y 2014-08-26 15:09:42.000000000 -0400
4442 ---- parse.y 2014-09-24 22:47:28.000000000 -0400
4443 -***************
4444 -*** 2959,2962 ****
4445 ---- 2959,2964 ----
4446 - word_desc_to_read = (WORD_DESC *)NULL;
4447 -
4448 -+ eol_ungetc_lookahead = 0;
4449 -+
4450 - current_token = '\n'; /* XXX */
4451 - last_read_token = '\n';
4452
4453 diff --git a/app-shells/bash/files/bash_logout b/app-shells/bash/files/bash_logout
4454 deleted file mode 100644
4455 index 50a79331c0..0000000000
4456 --- a/app-shells/bash/files/bash_logout
4457 +++ /dev/null
4458 @@ -1,9 +0,0 @@
4459 -# /etc/bash/bash_logout
4460 -
4461 -# This file is sourced when a login shell terminates.
4462 -
4463 -# You may wish to clear everyone's screen when they logout.
4464 -#clear
4465 -
4466 -# Or maybe you want to leave a thoughtful note.
4467 -#fortune
4468
4469 diff --git a/app-shells/bash/files/bashrc b/app-shells/bash/files/bashrc
4470 deleted file mode 100644
4471 index 03694691d4..0000000000
4472 --- a/app-shells/bash/files/bashrc
4473 +++ /dev/null
4474 @@ -1,113 +0,0 @@
4475 -# /etc/bash/bashrc
4476 -#
4477 -# This file is sourced by all *interactive* bash shells on startup,
4478 -# including some apparently interactive shells such as scp and rcp
4479 -# that can't tolerate any output. So make sure this doesn't display
4480 -# anything or bad things will happen !
4481 -
4482 -
4483 -# Test for an interactive shell. There is no need to set anything
4484 -# past this point for scp and rcp, and it's important to refrain from
4485 -# outputting anything in those cases.
4486 -if [[ $- != *i* ]] ; then
4487 - # Shell is non-interactive. Be done now!
4488 - return
4489 -fi
4490 -
4491 -# Bash won't get SIGWINCH if another process is in the foreground.
4492 -# Enable checkwinsize so that bash will check the terminal size when
4493 -# it regains control. #65623
4494 -# http://cnswww.cns.cwru.edu/~chet/bash/FAQ (E11)
4495 -shopt -s checkwinsize
4496 -
4497 -# Disable completion when the input buffer is empty. i.e. Hitting tab
4498 -# and waiting a long time for bash to expand all of $PATH.
4499 -shopt -s no_empty_cmd_completion
4500 -
4501 -# Enable history appending instead of overwriting when exiting. #139609
4502 -shopt -s histappend
4503 -
4504 -# Save each command to the history file as it's executed. #517342
4505 -# This does mean sessions get interleaved when reading later on, but this
4506 -# way the history is always up to date. History is not synced across live
4507 -# sessions though; that is what `history -n` does.
4508 -# Disabled by default due to concerns related to system recovery when $HOME
4509 -# is under duress, or lives somewhere flaky (like NFS). Constantly syncing
4510 -# the history will halt the shell prompt until it's finished.
4511 -#PROMPT_COMMAND='history -a'
4512 -
4513 -# Change the window title of X terminals
4514 -case ${TERM} in
4515 - [aEkx]term*|rxvt*|gnome*|konsole*|interix)
4516 - PS1='\[\033]0;\u@\h:\w\007\]'
4517 - ;;
4518 - screen*)
4519 - PS1='\[\033k\u@\h:\w\033\\\]'
4520 - ;;
4521 - *)
4522 - unset PS1
4523 - ;;
4524 -esac
4525 -
4526 -# Set colorful PS1 only on colorful terminals.
4527 -# dircolors --print-database uses its own built-in database
4528 -# instead of using /etc/DIR_COLORS. Try to use the external file
4529 -# first to take advantage of user additions.
4530 -# We run dircolors directly due to its changes in file syntax and
4531 -# terminal name patching.
4532 -use_color=false
4533 -if type -P dircolors >/dev/null ; then
4534 - # Enable colors for ls, etc. Prefer ~/.dir_colors #64489
4535 - LS_COLORS=
4536 - if [[ -f ~/.dir_colors ]] ; then
4537 - eval "$(dircolors -b ~/.dir_colors)"
4538 - elif [[ -f /etc/DIR_COLORS ]] ; then
4539 - eval "$(dircolors -b /etc/DIR_COLORS)"
4540 - else
4541 - eval "$(dircolors -b)"
4542 - fi
4543 - # Note: We always evaluate the LS_COLORS setting even when it's the
4544 - # default. If it isn't set, then `ls` will only colorize by default
4545 - # based on file attributes and ignore extensions (even the compiled
4546 - # in defaults of dircolors). #583814
4547 - if [[ -n ${LS_COLORS:+set} ]] ; then
4548 - use_color=true
4549 - else
4550 - # Delete it if it's empty as it's useless in that case.
4551 - unset LS_COLORS
4552 - fi
4553 -else
4554 - # Some systems (e.g. BSD & embedded) don't typically come with
4555 - # dircolors so we need to hardcode some terminals in here.
4556 - case ${TERM} in
4557 - [aEkx]term*|rxvt*|gnome*|konsole*|screen|cons25|*color) use_color=true;;
4558 - esac
4559 -fi
4560 -
4561 -if ${use_color} ; then
4562 - if [[ ${EUID} == 0 ]] ; then
4563 - PS1+='\[\033[01;31m\]\h\[\033[01;34m\] \w \$\[\033[00m\] '
4564 - else
4565 - PS1+='\[\033[01;32m\]\u@\h\[\033[01;34m\] \w \$\[\033[00m\] '
4566 - fi
4567 -
4568 - #BSD#@export CLICOLOR=1
4569 - #GNU#@alias ls='ls --color=auto'
4570 - alias grep='grep --colour=auto'
4571 - alias egrep='egrep --colour=auto'
4572 - alias fgrep='fgrep --colour=auto'
4573 -else
4574 - if [[ ${EUID} == 0 ]] ; then
4575 - # show root@ when we don't have colors
4576 - PS1+='\u@\h \w \$ '
4577 - else
4578 - PS1+='\u@\h \w \$ '
4579 - fi
4580 -fi
4581 -
4582 -for sh in /etc/bash/bashrc.d/* ; do
4583 - [[ -r ${sh} ]] && source "${sh}"
4584 -done
4585 -
4586 -# Try to keep environment pollution down, EPA loves us.
4587 -unset use_color sh
4588
4589 diff --git a/app-shells/bash/files/bashrc-prefix.patch b/app-shells/bash/files/bashrc-prefix.patch
4590 deleted file mode 100644
4591 index 04ebb10fc5..0000000000
4592 --- a/app-shells/bash/files/bashrc-prefix.patch
4593 +++ /dev/null
4594 @@ -1,40 +0,0 @@
4595 ---- bashrc
4596 -+++ bashrc
4597 -@@ -1,4 +1,4 @@
4598 --# /etc/bash/bashrc
4599 -+# @GENTOO_PORTAGE_EPREFIX@/etc/bash/bashrc
4600 - #
4601 - # This file is sourced by all *interactive* bash shells on startup,
4602 - # including some apparently interactive shells such as scp and rcp
4603 -@@ -48,7 +48,7 @@
4604 - safe_term=${TERM//[^[:alnum:]]/?} # sanitize TERM
4605 - match_lhs=""
4606 - [[ -f ~/.dir_colors ]] && match_lhs="${match_lhs}$(<~/.dir_colors)"
4607 --[[ -f /etc/DIR_COLORS ]] && match_lhs="${match_lhs}$(</etc/DIR_COLORS)"
4608 -+[[ -f "@GENTOO_PORTAGE_EPREFIX@"/etc/DIR_COLORS ]] && match_lhs="${match_lhs}$(<"@GENTOO_PORTAGE_EPREFIX@"/etc/DIR_COLORS)"
4609 - [[ -z ${match_lhs} ]] \
4610 - && type -P dircolors >/dev/null \
4611 - && match_lhs=$(dircolors --print-database)
4612 -@@ -56,15 +56,13 @@
4613 -
4614 - if ${use_color} ; then
4615 - # Enable colors for ls, etc. Prefer ~/.dir_colors #64489
4616 -- if type -P dircolors >/dev/null ; then
4617 -- if [[ -f ~/.dir_colors ]] ; then
4618 -- eval $(dircolors -b ~/.dir_colors)
4619 -- elif [[ -f /etc/DIR_COLORS ]] ; then
4620 -- eval $(dircolors -b /etc/DIR_COLORS)
4621 -- fi
4622 -- fi
4623 --
4624 -- if [[ ${EUID} == 0 ]] ; then
4625 -+ if [[ -f ~/.dir_colors ]] ; then
4626 -+ eval $("@GENTOO_PORTAGE_EPREFIX@"/usr/bin/dircolors -b ~/.dir_colors);
4627 -+ elif [[ -f "@GENTOO_PORTAGE_EPREFIX@"/etc/DIR_COLORS ]] ; then
4628 -+ eval $("@GENTOO_PORTAGE_EPREFIX@"/usr/bin/dircolors -b "@GENTOO_PORTAGE_EPREFIX@"/etc/DIR_COLORS)
4629 -+ fi
4630 -+
4631 -+ if [[ ${EUID} == 0 ]] ; then
4632 - PS1='\[\033[01;31m\]\h\[\033[01;34m\] \W \$\[\033[00m\] '
4633 - else
4634 - PS1='\[\033[01;32m\]\u@\h\[\033[01;34m\] \w \$\[\033[00m\] '
4635
4636 diff --git a/app-shells/bash/files/bashrc-r2 b/app-shells/bash/files/bashrc-r2
4637 deleted file mode 100644
4638 index c9bd88e858..0000000000
4639 --- a/app-shells/bash/files/bashrc-r2
4640 +++ /dev/null
4641 @@ -1,108 +0,0 @@
4642 -# /etc/bash/bashrc
4643 -#
4644 -# This file is sourced by all *interactive* bash shells on startup,
4645 -# including some apparently interactive shells such as scp and rcp
4646 -# that can't tolerate any output. So make sure this doesn't display
4647 -# anything or bad things will happen !
4648 -
4649 -
4650 -# Test for an interactive shell. There is no need to set anything
4651 -# past this point for scp and rcp, and it's important to refrain from
4652 -# outputting anything in those cases.
4653 -if [[ $- != *i* ]] ; then
4654 - # Shell is non-interactive. Be done now!
4655 - return
4656 -fi
4657 -
4658 -# Bash won't get SIGWINCH if another process is in the foreground.
4659 -# Enable checkwinsize so that bash will check the terminal size when
4660 -# it regains control. #65623
4661 -# http://cnswww.cns.cwru.edu/~chet/bash/FAQ (E11)
4662 -shopt -s checkwinsize
4663 -
4664 -# Disable completion when the input buffer is empty. i.e. Hitting tab
4665 -# and waiting a long time for bash to expand all of $PATH.
4666 -shopt -s no_empty_cmd_completion
4667 -
4668 -# Enable history appending instead of overwriting when exiting. #139609
4669 -shopt -s histappend
4670 -
4671 -# Save each command to the history file as it's executed. #517342
4672 -# This does mean sessions get interleaved when reading later on, but this
4673 -# way the history is always up to date. History is not synced across live
4674 -# sessions though; that is what `history -n` does.
4675 -# Disabled by default due to concerns related to system recovery when $HOME
4676 -# is under duress, or lives somewhere flaky (like NFS). Constantly syncing
4677 -# the history will halt the shell prompt until it's finished.
4678 -#PROMPT_COMMAND='history -a'
4679 -
4680 -# Change the window title of X terminals
4681 -case ${TERM} in
4682 - xterm*|rxvt*|Eterm*|aterm|kterm|gnome*|interix|konsole*)
4683 - PS1='\[\033]0;\u@\h:\w\007\]'
4684 - ;;
4685 - screen*)
4686 - PS1='\[\033k\u@\h:\w\033\\\]'
4687 - ;;
4688 - *)
4689 - unset PS1
4690 - ;;
4691 -esac
4692 -
4693 -use_color=false
4694 -#BSD#@# BSD doesn't typically come with dircolors so we need
4695 -#BSD#@# to hardcode some terminals in here.
4696 -#BSD#@case ${TERM} in
4697 -#BSD#@ xterm*|rxvt*|Eterm|aterm|kterm|gnome*|screen|cons25) use_color=true;;
4698 -#BSD#@esac
4699 -
4700 -# Set colorful PS1 only on colorful terminals.
4701 -# dircolors --print-database uses its own built-in database
4702 -# instead of using /etc/DIR_COLORS. Try to use the external file
4703 -# first to take advantage of user additions. Use internal bash
4704 -# globbing instead of external grep binary.
4705 -safe_term=${TERM//[^[:alnum:]]/?} # sanitize TERM
4706 -match_lhs=""
4707 -[[ -f ~/.dir_colors ]] && match_lhs="${match_lhs}$(<~/.dir_colors)"
4708 -[[ -f /etc/DIR_COLORS ]] && match_lhs="${match_lhs}$(</etc/DIR_COLORS)"
4709 -[[ -z ${match_lhs} ]] \
4710 - && type -P dircolors >/dev/null \
4711 - && match_lhs=$(dircolors --print-database)
4712 -[[ $'\n'${match_lhs} == *$'\n'"TERM "${safe_term}* ]] && use_color=true
4713 -
4714 -if ${use_color} ; then
4715 - # Enable colors for ls, etc. Prefer ~/.dir_colors #64489
4716 - if type -P dircolors >/dev/null ; then
4717 - if [[ -f ~/.dir_colors ]] ; then
4718 - eval $(dircolors -b ~/.dir_colors)
4719 - elif [[ -f /etc/DIR_COLORS ]] ; then
4720 - eval $(dircolors -b /etc/DIR_COLORS)
4721 - fi
4722 - fi
4723 -
4724 - if [[ ${EUID} == 0 ]] ; then
4725 - PS1+='\[\033[01;31m\]\h\[\033[01;34m\] \W \$\[\033[00m\] '
4726 - else
4727 - PS1+='\[\033[01;32m\]\u@\h\[\033[01;34m\] \w \$\[\033[00m\] '
4728 - fi
4729 -
4730 - #BSD#@export CLICOLOR=1
4731 - #GNU#@alias ls='ls --color=auto'
4732 - alias grep='grep --colour=auto'
4733 - alias egrep='egrep --colour=auto'
4734 - alias fgrep='fgrep --colour=auto'
4735 -else
4736 - if [[ ${EUID} == 0 ]] ; then
4737 - # show root@ when we don't have colors
4738 - PS1+='\u@\h \W \$ '
4739 - else
4740 - PS1+='\u@\h \w \$ '
4741 - fi
4742 -fi
4743 -
4744 -for sh in /etc/bash/bashrc.d/* ; do
4745 - [[ -r ${sh} ]] && source "${sh}"
4746 -done
4747 -
4748 -# Try to keep environment pollution down, EPA loves us.
4749 -unset use_color safe_term match_lhs sh
4750
4751 diff --git a/app-shells/bash/files/bashrc-r2-prefix.patch b/app-shells/bash/files/bashrc-r2-prefix.patch
4752 deleted file mode 100644
4753 index b7a39ac965..0000000000
4754 --- a/app-shells/bash/files/bashrc-r2-prefix.patch
4755 +++ /dev/null
4756 @@ -1,37 +0,0 @@
4757 ---- bashrc-r2
4758 -+++ bashrc-r2
4759 -@@ -1,4 +1,4 @@
4760 --# /etc/bash/bashrc
4761 -+# @GENTOO_PORTAGE_EPREFIX@/etc/bash/bashrc
4762 - #
4763 - # This file is sourced by all *interactive* bash shells on startup,
4764 - # including some apparently interactive shells such as scp and rcp
4765 -@@ -64,7 +64,7 @@
4766 - safe_term=${TERM//[^[:alnum:]]/?} # sanitize TERM
4767 - match_lhs=""
4768 - [[ -f ~/.dir_colors ]] && match_lhs="${match_lhs}$(<~/.dir_colors)"
4769 --[[ -f /etc/DIR_COLORS ]] && match_lhs="${match_lhs}$(</etc/DIR_COLORS)"
4770 -+[[ -f @GENTOO_PORTAGE_EPREFIX@/etc/DIR_COLORS ]] && match_lhs="${match_lhs}$(<@GENTOO_PORTAGE_EPREFIX@/etc/DIR_COLORS)"
4771 - [[ -z ${match_lhs} ]] \
4772 - && type -P dircolors >/dev/null \
4773 - && match_lhs=$(dircolors --print-database)
4774 -@@ -75,8 +75,8 @@
4775 - if type -P dircolors >/dev/null ; then
4776 - if [[ -f ~/.dir_colors ]] ; then
4777 - eval $(dircolors -b ~/.dir_colors)
4778 -- elif [[ -f /etc/DIR_COLORS ]] ; then
4779 -- eval $(dircolors -b /etc/DIR_COLORS)
4780 -+ elif [[ -f @GENTOO_PORTAGE_EPREFIX@/etc/DIR_COLORS ]] ; then
4781 -+ eval $(dircolors -b @GENTOO_PORTAGE_EPREFIX@/etc/DIR_COLORS)
4782 - fi
4783 - fi
4784 -
4785 -@@ -100,7 +100,7 @@
4786 - fi
4787 - fi
4788 -
4789 --for sh in /etc/bash/bashrc.d/* ; do
4790 -+for sh in @GENTOO_PORTAGE_EPREFIX@/etc/bash/bashrc.d/* ; do
4791 - [[ -r ${sh} ]] && source "${sh}"
4792 - done
4793 -
4794
4795 diff --git a/app-shells/bash/files/dot-bash_logout b/app-shells/bash/files/dot-bash_logout
4796 deleted file mode 100644
4797 index 44b6f79ca8..0000000000
4798 --- a/app-shells/bash/files/dot-bash_logout
4799 +++ /dev/null
4800 @@ -1,6 +0,0 @@
4801 -# /etc/skel/.bash_logout
4802 -
4803 -# This file is sourced when a login shell terminates.
4804 -
4805 -# Clear the screen for security's sake.
4806 -clear
4807
4808 diff --git a/app-shells/bash/files/dot-bash_profile b/app-shells/bash/files/dot-bash_profile
4809 deleted file mode 100644
4810 index 1de05a45e3..0000000000
4811 --- a/app-shells/bash/files/dot-bash_profile
4812 +++ /dev/null
4813 @@ -1,7 +0,0 @@
4814 -# /etc/skel/.bash_profile
4815 -
4816 -# This file is sourced by bash for login shells. The following line
4817 -# runs your .bashrc and is recommended by the bash info pages.
4818 -if [[ -f ~/.bashrc ]] ; then
4819 - . ~/.bashrc
4820 -fi
4821
4822 diff --git a/app-shells/bash/files/dot-bashrc b/app-shells/bash/files/dot-bashrc
4823 deleted file mode 100644
4824 index 34dbd8c892..0000000000
4825 --- a/app-shells/bash/files/dot-bashrc
4826 +++ /dev/null
4827 @@ -1,18 +0,0 @@
4828 -# /etc/skel/.bashrc
4829 -#
4830 -# This file is sourced by all *interactive* bash shells on startup,
4831 -# including some apparently interactive shells such as scp and rcp
4832 -# that can't tolerate any output. So make sure this doesn't display
4833 -# anything or bad things will happen !
4834 -
4835 -
4836 -# Test for an interactive shell. There is no need to set anything
4837 -# past this point for scp and rcp, and it's important to refrain from
4838 -# outputting anything in those cases.
4839 -if [[ $- != *i* ]] ; then
4840 - # Shell is non-interactive. Be done now!
4841 - return
4842 -fi
4843 -
4844 -
4845 -# Put your fun stuff here.
4846
4847 diff --git a/app-shells/bash/metadata.xml b/app-shells/bash/metadata.xml
4848 deleted file mode 100644
4849 index 9b5e498670..0000000000
4850 --- a/app-shells/bash/metadata.xml
4851 +++ /dev/null
4852 @@ -1,19 +0,0 @@
4853 -<?xml version="1.0" encoding="UTF-8"?>
4854 -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
4855 -<pkgmetadata>
4856 -<maintainer type="project">
4857 - <email>base-system@g.o</email>
4858 - <name>Gentoo Base System</name>
4859 -</maintainer>
4860 -<use>
4861 - <flag name="bashlogger">Log ALL commands typed into bash; should ONLY be
4862 - used in restricted environments such as honeypots</flag>
4863 - <flag name="mem-scramble">Build with custom malloc/free overwriting allocated/freed memory</flag>
4864 - <flag name="net">Enable /dev/tcp/host/port redirection</flag>
4865 - <flag name="plugins">Add support for loading builtins at runtime via
4866 - 'enable'</flag>
4867 -</use>
4868 -<upstream>
4869 - <remote-id type="cpe">cpe:/a:gnu:bash</remote-id>
4870 -</upstream>
4871 -</pkgmetadata>