Gentoo Archives: gentoo-commits

From: Benda XU <heroxbd@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/android:master commit in: sys-libs/glibc/files/2.6/, sys-libs/glibc/, sys-libs/glibc/files/2.12/, ...
Date: Wed, 30 Aug 2017 09:23:04
Message-Id: 1504084932.d6d4d907547bae4aeac27d4cc49c7143736dde79.heroxbd@gentoo
1 commit: d6d4d907547bae4aeac27d4cc49c7143736dde79
2 Author: Benda Xu <heroxbd <AT> gentoo <DOT> org>
3 AuthorDate: Wed Aug 30 09:22:12 2017 +0000
4 Commit: Benda XU <heroxbd <AT> gentoo <DOT> org>
5 CommitDate: Wed Aug 30 09:22:12 2017 +0000
6 URL: https://gitweb.gentoo.org/proj/android.git/commit/?id=d6d4d907
7
8 python, portage, glibc: merged into gentoo main repo.
9
10 dev-lang/python/ChangeLog | 1041 -------
11 dev-lang/python/ChangeLog-2011 | 2583 -----------------
12 dev-lang/python/Manifest | 50 -
13 dev-lang/python/files/CVE-2013-4238_py27.patch | 247 --
14 dev-lang/python/files/CVE-2013-4238_py33.patch | 241 --
15 dev-lang/python/files/pydoc.conf | 7 -
16 dev-lang/python/files/pydoc.init | 25 -
17 dev-lang/python/files/python-2.5-tcl86.patch | 11 -
18 dev-lang/python/files/python-2.7-issue16248.patch | 19 -
19 dev-lang/python/files/python-2.7-issue18851.patch | 287 --
20 .../python/files/python-2.7.5-library-path.patch | 25 -
21 .../files/python-2.7.5-nonfatal-compileall.patch | 18 -
22 .../files/python-2.7.5-re_unsigned_ptrdiff.patch | 23 -
23 ...ython-2.7.6-recvfrom_into_buffer_overflow.patch | 17 -
24 .../files/python-2.7.9-ncurses-pkg-config.patch | 13 -
25 .../python/files/python-3.2-CVE-2013-2099.patch | 51 -
26 .../python/files/python-3.2-CVE-2014-1912.patch | 51 -
27 .../python/files/python-3.2-CVE-2014-4616.patch | 39 -
28 dev-lang/python/files/python-3.2-issue16248.patch | 19 -
29 .../python/files/python-3.3-CVE-2013-2099.patch | 51 -
30 .../python/files/python-3.3-CVE-2014-4616.patch | 52 -
31 .../files/python-3.3.5-ncurses-pkg-config.patch | 40 -
32 .../files/python-3.4.3-ncurses-pkg-config.patch | 13 -
33 dev-lang/python/files/python-config-2.4-r1 | 58 -
34 dev-lang/python/metadata.xml | 10 -
35 dev-lang/python/python-2.6.9.ebuild | 371 ---
36 dev-lang/python/python-2.7.9-r1.ebuild | 358 ---
37 dev-lang/python/python-2.7.9-r2.ebuild | 362 ---
38 dev-lang/python/python-3.2.5-r6.ebuild | 384 ---
39 dev-lang/python/python-3.3.5-r1.ebuild | 325 ---
40 dev-lang/python/python-3.4.0.ebuild | 320 ---
41 dev-lang/python/python-3.4.1.ebuild | 319 ---
42 dev-lang/python/python-3.4.2.ebuild | 319 ---
43 dev-lang/python/python-3.4.3.ebuild | 318 ---
44 sys-apps/portage/Manifest | 16 -
45 ...ert-URI-changes-related-to-docbook-schema.patch | 39 -
46 sys-apps/portage/files/README.RESCUE | 2 -
47 .../files/portage-2.3.0-ldconfig-path.patch | 34 -
48 .../files/portage-2.3.0-prefix-path-only.patch | 44 -
49 sys-apps/portage/files/portage-2.3.0_rc1.patch | 52 -
50 sys-apps/portage/metadata.xml | 20 -
51 sys-apps/portage/portage-2.3.0.ebuild | 364 ---
52 sys-apps/portage/portage-2.3.0_rc1-r1.ebuild | 368 ---
53 sys-apps/portage/portage-2.3.1.ebuild | 367 ---
54 sys-apps/portage/portage-2.3.2.ebuild | 366 ---
55 sys-apps/portage/portage-2.3.3.ebuild | 369 ---
56 sys-libs/glibc/Manifest | 62 -
57 .../glibc/files/2.10/glibc-2.10-gentoo-chk_fail.c | 315 --
58 .../glibc-2.10-hardened-configure-picdefault.patch | 30 -
59 .../glibc-2.10-hardened-inittls-nosysenter.patch | 274 --
60 .../2.10/glibc-2.10-hardened-ssp-compat.patch | 168 --
61 .../glibc/files/2.11/glibc-2.11-hardened-pie.patch | 40 -
62 .../glibc/files/2.12/glibc-2.12-hardened-pie.patch | 39 -
63 .../2.15/glibc-2.15-localstatedir-backport.patch | 13 -
64 .../glibc/files/2.16/glibc-2.16-hardened-pie.patch | 39 -
65 .../glibc/files/2.17/glibc-2.17-hardened-pie.patch | 42 -
66 .../files/2.17/glibc-2.17-runtime-prefix.patch | 162 --
67 .../files/2.17/glibc-2.17-shadow-prefix.patch | 33 -
68 sys-libs/glibc/files/2.17/locale-gen_prefix.patch | 77 -
69 sys-libs/glibc/files/2.17/vdso-disable.patch | 34 -
70 sys-libs/glibc/files/2.17/vdso.patch | 17 -
71 .../files/2.19/glibc-2.19-configurable-paths.patch | 2115 --------------
72 .../glibc-2.19-hardened-configure-picdefault.patch | 30 -
73 .../2.19/glibc-2.19-ia64-gcc-4.8-reloc-hack.patch | 32 -
74 .../glibc/files/2.19/glibc-2.19-vdso-disable.patch | 37 -
75 .../files/2.20/glibc-2.20-configurable-paths.patch | 3012 --------------------
76 .../glibc/files/2.20/glibc-2.20-gentoo-chk_fail.c | 299 --
77 .../files/2.20/glibc-2.20-gentoo-stack_chk_fail.c | 2 -
78 .../glibc-2.20-hardened-inittls-nosysenter.patch | 306 --
79 .../glibc/files/2.20/glibc-2.20-vdso-disable.patch | 20 -
80 .../glibc-2.3.3-localedef-fix-trampoline.patch | 68 -
81 .../files/2.5/glibc-2.5-gentoo-stack_chk_fail.c | 311 --
82 .../glibc-2.5-hardened-configure-picdefault.patch | 29 -
83 .../glibc-2.5-hardened-inittls-nosysenter.patch | 283 --
84 .../glibc/files/2.5/glibc-2.5-hardened-pie.patch | 39 -
85 .../files/2.6/glibc-2.6-gentoo-stack_chk_fail.c | 321 ---
86 .../glibc-2.6-hardened-inittls-nosysenter.patch | 273 --
87 .../glibc-2.7-hardened-inittls-nosysenter.patch | 273 --
88 sys-libs/glibc/files/eblits/common.eblit | 380 ---
89 sys-libs/glibc/files/eblits/pkg_postinst.eblit | 27 -
90 sys-libs/glibc/files/eblits/pkg_preinst.eblit | 63 -
91 sys-libs/glibc/files/eblits/pkg_pretend.eblit | 157 -
92 sys-libs/glibc/files/eblits/pkg_setup.eblit | 9 -
93 sys-libs/glibc/files/eblits/src_compile.eblit | 24 -
94 sys-libs/glibc/files/eblits/src_configure.eblit | 263 --
95 sys-libs/glibc/files/eblits/src_install.eblit | 244 --
96 sys-libs/glibc/files/eblits/src_prepare.eblit | 63 -
97 sys-libs/glibc/files/eblits/src_test.eblit | 30 -
98 sys-libs/glibc/files/eblits/src_unpack.eblit | 121 -
99 sys-libs/glibc/files/nscd | 64 -
100 sys-libs/glibc/files/nscd.service | 15 -
101 sys-libs/glibc/files/nscd.tmpfilesd | 4 -
102 sys-libs/glibc/files/nsswitch.conf | 24 -
103 sys-libs/glibc/glibc-2.15-r1.ebuild | 233 --
104 sys-libs/glibc/glibc-2.15-r2.ebuild | 225 --
105 sys-libs/glibc/glibc-2.15-r3.ebuild | 227 --
106 sys-libs/glibc/glibc-2.17.ebuild | 228 --
107 sys-libs/glibc/glibc-2.19-r1.ebuild | 227 --
108 sys-libs/glibc/metadata.xml | 11 -
109 99 files changed, 21542 deletions(-)
110
111 diff --git a/dev-lang/python/ChangeLog b/dev-lang/python/ChangeLog
112 deleted file mode 100644
113 index 022a456..0000000
114 --- a/dev-lang/python/ChangeLog
115 +++ /dev/null
116 @@ -1,1041 +0,0 @@
117 -# ChangeLog for dev-lang/python
118 -# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
119 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/ChangeLog,v 1.818 2015/04/23 19:25:27 floppym Exp $
120 -
121 - 23 Apr 2015; Mike Gilbert <floppym@g.o> python-2.6.9.ebuild:
122 - Fix dep on eselect-python.
123 -
124 -*python-2.6.9 (23 Apr 2015)
125 -
126 - 23 Apr 2015; Mike Gilbert <floppym@g.o> +files/python-2.5-tcl86.patch,
127 - +python-2.6.9.ebuild:
128 - Restore python-2.6.9, without keywords.
129 -
130 - 31 Mar 2015; Ulrich Müller <ulm@g.o> python-2.7.9-r1.ebuild,
131 - python-2.7.9-r2.ebuild, python-3.2.5-r6.ebuild, python-3.3.5-r1.ebuild,
132 - python-3.4.0.ebuild, python-3.4.1.ebuild, python-3.4.2.ebuild,
133 - python-3.4.3.ebuild:
134 - Update dependency after package move of eselect modules to app-eselect.
135 -
136 - 03 Mar 2015; Mike Frysinger <vapier@g.o>
137 - +files/python-2.7.9-ncurses-pkg-config.patch,
138 - +files/python-3.3.5-ncurses-pkg-config.patch,
139 - +files/python-3.4.3-ncurses-pkg-config.patch, python-2.7.9-r2.ebuild,
140 - python-3.3.5-r1.ebuild, python-3.4.3.ebuild:
141 - Use pkg-config to locate ncurses headers to fix cross-compiling.
142 -
143 -*python-3.4.3 (03 Mar 2015)
144 -
145 - 03 Mar 2015; Mike Gilbert <floppym@g.o> +python-3.4.3.ebuild:
146 - Version bump.
147 -
148 - 09 Feb 2015; Mike Frysinger <vapier@g.o> python-2.7.9-r1.ebuild,
149 - python-3.4.1.ebuild:
150 - Mark arm64/m68k/s390/sh stable.
151 -
152 -*python-2.7.9-r2 (07 Feb 2015)
153 -
154 - 07 Feb 2015; Mike Gilbert <floppym@g.o> +python-2.7.9-r2.ebuild:
155 - Drop 61_all_process_data.patch, fixes musl build, bug 539210.
156 -
157 - 07 Feb 2015; Mike Gilbert <floppym@g.o> -python-2.7.7.ebuild,
158 - -python-2.7.8.ebuild:
159 - Remove old.
160 -
161 - 09 Jan 2015; Tobias Klausmann <klausman@g.o> python-2.7.9-r1.ebuild:
162 - Stable on alpha, bug 532232
163 -
164 - 30 Dec 2014; Markus Meier <maekke@g.o> python-2.7.9-r1.ebuild:
165 - arm stable, bug #532232
166 -
167 - 26 Dec 2014; Agostino Sarubbo <ago@g.o> python-2.7.9-r1.ebuild:
168 - Stable for sparc, wrt bug #532232
169 -
170 - 25 Dec 2014; Agostino Sarubbo <ago@g.o> python-2.7.9-r1.ebuild:
171 - Stable for ia64, wrt bug #532232
172 -
173 -*python-2.7.9-r1 (24 Dec 2014)
174 -
175 - 24 Dec 2014; Mike Gilbert <floppym@g.o> +python-2.7.9-r1.ebuild,
176 - -python-2.7.9.ebuild:
177 - Revbump for ensurepip change.
178 -
179 - 24 Dec 2014; Mike Gilbert <floppym@g.o> python-2.7.9.ebuild:
180 - Pass --without-ensurepip to configure.
181 -
182 - 24 Dec 2014; Agostino Sarubbo <ago@g.o> python-2.7.9.ebuild:
183 - Stable for ppc64, wrt bug #532232
184 -
185 - 24 Dec 2014; Agostino Sarubbo <ago@g.o> python-2.7.9.ebuild:
186 - Stable for ppc, wrt bug #532232
187 -
188 - 23 Dec 2014; Agostino Sarubbo <ago@g.o> python-2.7.9.ebuild:
189 - Stable for x86, wrt bug #532232
190 -
191 - 23 Dec 2014; Agostino Sarubbo <ago@g.o> python-2.7.9.ebuild:
192 - Stable for amd64, wrt bug #532232
193 -
194 - 22 Dec 2014; Jeroen Roovers <jer@g.o> python-2.7.9.ebuild:
195 - Stable for HPPA (bug #532232).
196 -
197 -*python-2.7.9 (14 Dec 2014)
198 -
199 - 14 Dec 2014; Mike Gilbert <floppym@g.o> +python-2.7.9.ebuild:
200 - Version bump.
201 -
202 - 11 Dec 2014; Michał Górny <mgorny@g.o> python-3.2.5-r6.ebuild:
203 - Add a postinst explaining that Python 3.2 is not supported.
204 -
205 - 11 Nov 2014; Markus Meier <maekke@g.o> python-3.4.1.ebuild:
206 - arm stable, bug #522322
207 -
208 - 02 Nov 2014; Agostino Sarubbo <ago@g.o> python-3.4.1.ebuild:
209 - Stable for alpha, wrt bug #522322
210 -
211 - 29 Oct 2014; Agostino Sarubbo <ago@g.o> python-3.4.1.ebuild:
212 - Stable for sparc, wrt bug #522322
213 -
214 - 28 Oct 2014; Agostino Sarubbo <ago@g.o> python-3.4.1.ebuild:
215 - Stable for ia64, wrt bug #522322
216 -
217 - 27 Oct 2014; Agostino Sarubbo <ago@g.o> python-3.4.1.ebuild:
218 - Stable for ppc64, wrt bug #522322
219 -
220 - 18 Oct 2014; Agostino Sarubbo <ago@g.o> python-3.4.1.ebuild:
221 - Stable for ppc, wrt bug #522322
222 -
223 -*python-3.4.2 (12 Oct 2014)
224 -
225 - 12 Oct 2014; Mike Gilbert <floppym@g.o> +python-3.4.2.ebuild:
226 - Version bump. Thanks to Arfrever for updating the patchset.
227 -
228 - 12 Oct 2014; Dirkjan Ochtman <djc@g.o> files/pydoc.init:
229 - Remove net dependency from pydoc init scripts (fixes bug 439662)
230 -
231 - 12 Oct 2014; Agostino Sarubbo <ago@g.o> python-3.4.1.ebuild:
232 - Stable for x86, wrt bug #522322
233 -
234 - 10 Oct 2014; Agostino Sarubbo <ago@g.o> python-3.4.1.ebuild:
235 - Stable for amd64, wrt bug #522322
236 -
237 - 26 Sep 2014; Jeroen Roovers <jer@g.o> python-3.4.1.ebuild:
238 - Stable for HPPA (bug #522322).
239 -
240 - 22 Sep 2014; Mike Gilbert <floppym@g.o> python-2.7.8.ebuild:
241 - New patchset, should resolve bug 523072. Thanks for Arfrever for the updates.
242 -
243 - 09 Sep 2014; Mike Frysinger <vapier@g.o> python-2.7.7.ebuild,
244 - python-3.3.5-r1.ebuild:
245 - Mark m68k/s390/sh stable.
246 -
247 - 18 Aug 2014; Dirkjan Ochtman <djc@g.o> -python-3.3.4.ebuild:
248 - Additional cleanup for bug 514686
249 -
250 - 18 Aug 2014; Dirkjan Ochtman <djc@g.o> -python-2.7.5-r3.ebuild,
251 - -python-2.7.5-r4.ebuild, -python-2.7.6-r1.ebuild, -python-2.7.6.ebuild,
252 - -python-3.2.5-r3.ebuild, -python-3.3.2-r2.ebuild, -python-3.3.3.ebuild,
253 - -python-3.4.0_rc1.ebuild, -python-3.4.0_rc3.ebuild:
254 - Cleanup for bug 500518
255 -
256 - 09 Aug 2014; Agostino Sarubbo <ago@g.o> python-2.7.7.ebuild,
257 - python-3.2.5-r6.ebuild, python-3.3.5-r1.ebuild:
258 - Stable for ppc64, wrt bug #500518
259 -
260 - 08 Aug 2014; Agostino Sarubbo <ago@g.o> python-2.7.7.ebuild,
261 - python-3.2.5-r6.ebuild, python-3.3.5-r1.ebuild:
262 - Stable for ppc, wrt bug #500518
263 -
264 - 04 Aug 2014; Raúl Porcel <armin76@g.o> python-2.7.7.ebuild,
265 - python-3.2.5-r6.ebuild, python-3.3.5-r1.ebuild:
266 - arm64/ia64/sparc stable wrt #500518
267 -
268 - 03 Aug 2014; Markus Meier <maekke@g.o> python-3.3.5-r1.ebuild:
269 - arm stable, bug #500518
270 -
271 - 03 Aug 2014; Markus Meier <maekke@g.o> python-3.2.5-r6.ebuild:
272 - arm stable, bug #500518
273 -
274 - 03 Aug 2014; Markus Meier <maekke@g.o> python-2.7.7.ebuild:
275 - arm stable, bug #500518
276 -
277 - 02 Aug 2014; Agostino Sarubbo <ago@g.o> python-2.7.7.ebuild,
278 - python-3.2.5-r6.ebuild, python-3.3.5-r1.ebuild:
279 - Stable for x86, wrt bug #500518
280 -
281 - 02 Aug 2014; Agostino Sarubbo <ago@g.o> python-2.7.7.ebuild,
282 - python-3.2.5-r6.ebuild, python-3.3.5-r1.ebuild:
283 - Stable for amd64, wrt bug #500518
284 -
285 - 31 Jul 2014; Tobias Klausmann <klausman@g.o> python-3.2.5-r6.ebuild:
286 - Stable on alpha, bug #500518
287 -
288 - 31 Jul 2014; Tobias Klausmann <klausman@g.o> python-2.7.7.ebuild:
289 - Stable on alpha, bug #500518
290 -
291 - 31 Jul 2014; Tobias Klausmann <klausman@g.o> python-3.3.5-r1.ebuild:
292 - Stable on alpha, bug #500518
293 -
294 - 31 Jul 2014; Jeroen Roovers <jer@g.o> python-3.2.5-r6.ebuild:
295 - Stable for HPPA (bug #500518).
296 -
297 - 31 Jul 2014; Jeroen Roovers <jer@g.o> python-3.3.5-r1.ebuild:
298 - Stable for HPPA (bug #500518).
299 -
300 - 30 Jul 2014; Jeroen Roovers <jer@g.o> python-2.7.7.ebuild:
301 - Stable for HPPA (bug #500518).
302 -
303 -*python-2.7.8 (29 Jul 2014)
304 -
305 - 29 Jul 2014; Patrick McLean <chutzpah@g.o> +python-2.7.8.ebuild:
306 - Version bump.
307 -
308 -*python-3.2.5-r6 (29 Jul 2014)
309 -
310 - 29 Jul 2014; Sergey Popov <pinkbyte@g.o> -python-3.2.5-r5.ebuild,
311 - +python-3.2.5-r6.ebuild, +files/python-3.2-CVE-2014-1912.patch:
312 - Revision bump: backport patch for CVE-2014-1912, bug #500518. Drop old
313 - revision. Acked by Python team
314 -
315 -*python-3.3.5-r1 (29 Jul 2014)
316 -*python-3.2.5-r5 (29 Jul 2014)
317 -
318 - 29 Jul 2014; Sergey Popov <pinkbyte@g.o> -python-3.2.5-r4.ebuild,
319 - +python-3.2.5-r5.ebuild, -python-3.3.5.ebuild, +python-3.3.5-r1.ebuild,
320 - +files/python-3.2-CVE-2014-4616.patch, +files/python-3.3-CVE-2014-4616.patch:
321 - Revision bump: add patch for CVE-2014-4616, bug #514686. Drop old revisions.
322 - Acked by Python team
323 -
324 - 18 Jul 2014; Tobias Klausmann <klausman@g.o> python-2.7.6.ebuild:
325 - Stable on alpha, bug #504742
326 -
327 - 06 Jul 2014; Michał Górny <mgorny@g.o> -files/CVE-2013-4238_py26.patch,
328 - -files/python-2.5-tcl86.patch, -python-2.6.8-r3.ebuild, -python-2.6.9.ebuild:
329 - Remove python:2.6 and relevant patches.
330 -
331 -*python-2.7.7 (28 Jun 2014)
332 -*python-3.4.1 (28 Jun 2014)
333 -
334 - 28 Jun 2014; Mike Gilbert <floppym@g.o> +python-2.7.7.ebuild,
335 - +python-3.4.1.ebuild:
336 - Version bumps.
337 -
338 - 15 Jun 2014; Akinori Hattori <hattya@g.o> python-2.7.6.ebuild:
339 - ia64 stable wrt bug #504742
340 -
341 - 14 Jun 2014; Pawel Hajdan jr <phajdan.jr@g.o> python-2.7.6.ebuild:
342 - x86 stable wrt bug #504742
343 -
344 - 24 May 2014; Markos Chandras <hwoarang@g.o> python-2.7.6.ebuild:
345 - Stable on amd64 wrt bug #504742
346 -
347 -*python-3.2.5-r4 (10 May 2014)
348 -
349 - 10 May 2014; Mike Gilbert <floppym@g.o> +python-3.2.5-r4.ebuild,
350 - python-2.7.6-r1.ebuild, python-3.3.5.ebuild, python-3.4.0.ebuild:
351 - Add optional dependency on dev-tcltk/tix, bug 413393 by John Keeping.
352 -
353 -*python-2.7.6-r1 (25 Apr 2014)
354 -
355 - 25 Apr 2014; Patrick McLean <chutzpah@g.o> +python-2.7.6-r1.ebuild,
356 - +files/python-2.7.6-recvfrom_into_buffer_overflow.patch:
357 - Revision bump, add patch for CVE-2014-1912 (bug #500518)
358 -
359 - 06 Apr 2014; Mike Frysinger <vapier@g.o> python-2.7.6.ebuild:
360 - Mark arm64/m68k/s390/sh stable.
361 -
362 - 01 Apr 2014; Markus Meier <maekke@g.o> python-2.7.6.ebuild:
363 - arm stable, bug #504742
364 -
365 - 30 Mar 2014; Mike Gilbert <floppym@g.o> python-3.4.0.ebuild:
366 - Update postinst message; python.eclass does not support 3.4.
367 -
368 - 28 Mar 2014; Mike Gilbert <floppym@g.o> python-3.2.5-r3.ebuild:
369 - Backport readline-6.3 fixes to python-3.2.5, bug 505416.
370 -
371 -*python-3.4.0 (28 Mar 2014)
372 -
373 - 28 Mar 2014; Mike Gilbert <floppym@g.o> +python-3.4.0.ebuild:
374 - Version bump. Permanently drop the 'doc' use flag.
375 -
376 -*python-3.3.5 (28 Mar 2014)
377 -
378 - 28 Mar 2014; Mike Gilbert <floppym@g.o> +python-3.3.5.ebuild:
379 - Version bump.
380 -
381 - 20 Mar 2014; Jeroen Roovers <jer@g.o> python-2.7.6.ebuild:
382 - Stable for HPPA (bug #504742).
383 -
384 - 18 Mar 2014; Agostino Sarubbo <ago@g.o> python-3.3.3.ebuild:
385 - Stable for ia64, wrt bug #497758
386 -
387 - 16 Mar 2014; Mike Gilbert <floppym@g.o> python-2.6.9.ebuild:
388 - Backport fix for bug 503180.
389 -
390 -*python-3.4.0_rc3 (15 Mar 2014)
391 -
392 - 15 Mar 2014; Mike Gilbert <floppym@g.o> +python-3.4.0_rc3.ebuild:
393 - Bump.
394 -
395 - 15 Mar 2014; Mike Gilbert <floppym@g.o> python-2.7.6.ebuild:
396 - Backport upstream fixes for bug 503180.
397 -
398 - 01 Mar 2014; Mike Gilbert <floppym@g.o> python-3.4.0_rc1.ebuild:
399 - Disable ensurepip.
400 -
401 -*python-3.4.0_rc1 (17 Feb 2014)
402 -
403 - 17 Feb 2014; Mike Gilbert <floppym@g.o> +python-3.4.0_rc1.ebuild:
404 - Version bump for testing. Thanks to Arfrever for the patches.
405 -
406 -*python-3.3.4 (17 Feb 2014)
407 -
408 - 17 Feb 2014; Mike Gilbert <floppym@g.o> +python-3.3.4.ebuild:
409 - Version bump. Thanks to Arfrever for maintaining the patchset.
410 -
411 - 08 Feb 2014; Mike Gilbert <floppym@g.o> python-3.3.3.ebuild:
412 - Add workaround for race condition when generating Python-ast.c and Python-
413 - ast.h. Thanks to Arfrever.
414 -
415 - 05 Feb 2014; Mike Frysinger <vapier@g.o> python-3.3.3.ebuild:
416 - Mark arm64/m68k/s390/sh stable.
417 -
418 - 26 Jan 2014; Agostino Sarubbo <ago@g.o> python-3.3.3.ebuild:
419 - Stable for sparc, wrt bug #497758
420 -
421 - 26 Jan 2014; Agostino Sarubbo <ago@g.o> python-3.3.3.ebuild:
422 - Stable for x86, wrt bug #497758
423 -
424 - 20 Jan 2014; Agostino Sarubbo <ago@g.o> python-3.3.3.ebuild:
425 - Stable for ppc, wrt bug #497758
426 -
427 - 19 Jan 2014; Markus Meier <maekke@g.o> python-3.3.3.ebuild:
428 - arm stable, bug #497758
429 -
430 - 19 Jan 2014; Agostino Sarubbo <ago@g.o> python-3.3.3.ebuild:
431 - Stable for ppc64, wrt bug #497758
432 -
433 - 18 Jan 2014; Agostino Sarubbo <ago@g.o> python-3.3.3.ebuild:
434 - Stable for alpha, wrt bug #497758
435 -
436 - 18 Jan 2014; Pacho Ramos <pacho@g.o> python-3.3.3.ebuild:
437 - amd64 stable, bug #497758
438 -
439 - 18 Jan 2014; Mike Frysinger <vapier@g.o> python-2.7.6.ebuild:
440 - Fix cross-compiling tests that try to read /dev/ paths.
441 -
442 - 18 Jan 2014; Mike Frysinger <vapier@g.o> python-2.7.5-r3.ebuild,
443 - python-2.7.5-r4.ebuild, python-2.7.6.ebuild, python-3.3.2-r2.ebuild,
444 - python-3.3.3.ebuild:
445 - Add arm64 love.
446 -
447 - 16 Jan 2014; Mike Frysinger <vapier@g.o> python-3.3.2-r2.ebuild:
448 - Mark m68k/s390/sh stable.
449 -
450 - 15 Jan 2014; Agostino Sarubbo <ago@g.o> python-3.3.2-r2.ebuild:
451 - Stable for ia64, wrt bug #474128
452 -
453 - 11 Jan 2014; Jeroen Roovers <jer@g.o> python-3.3.3.ebuild:
454 - Stable for HPPA (bug #497758).
455 -
456 - 05 Jan 2014; Agostino Sarubbo <ago@g.o> python-3.3.2-r2.ebuild:
457 - Stable for ppc64, wrt bug #474128
458 -
459 - 05 Jan 2014; Agostino Sarubbo <ago@g.o> python-3.3.2-r2.ebuild:
460 - Stable for ppc, wrt bug #474128
461 -
462 - 30 Dec 2013; Mike Gilbert <floppym@g.o> python-2.6.8-r3.ebuild,
463 - python-2.6.9.ebuild, python-2.7.5-r3.ebuild, python-2.7.5-r4.ebuild,
464 - python-2.7.6.ebuild, python-3.2.5-r3.ebuild, python-3.3.2-r2.ebuild,
465 - python-3.3.3.ebuild:
466 - Don't die on broken sem_open if threads flag is disabled.
467 -
468 - 30 Dec 2013; Mike Gilbert <floppym@g.o> python-2.6.8-r3.ebuild,
469 - python-2.6.9.ebuild, python-2.7.5-r3.ebuild, python-2.7.5-r4.ebuild,
470 - python-2.7.6.ebuild, python-3.2.5-r3.ebuild, python-3.3.2-r2.ebuild,
471 - python-3.3.3.ebuild:
472 - Die if sem_open is detected as broken, bug 496328.
473 -
474 - 26 Dec 2013; Markus Meier <maekke@g.o> python-3.3.2-r2.ebuild:
475 - arm stable, bug #474128
476 -
477 -*python-2.6.9 (25 Dec 2013)
478 -
479 - 25 Dec 2013; Mike Gilbert <floppym@g.o> +python-2.6.9.ebuild:
480 - Bump for security bug 495224.
481 -
482 - 15 Dec 2013; Agostino Sarubbo <ago@g.o> python-3.3.2-r2.ebuild:
483 - Stable for sparc, wrt bug #474128
484 -
485 - 13 Dec 2013; Matt Turner <mattst88@g.o> python-3.3.2-r2.ebuild:
486 - alpha stable, bug 474128.
487 -
488 - 08 Dec 2013; Pacho Ramos <pacho@g.o> python-3.3.2-r2.ebuild:
489 - x86 stable, bug #474128
490 -
491 - 07 Dec 2013; Mike Frysinger <vapier@g.o> python-2.7.6.ebuild,
492 - python-3.3.3.ebuild:
493 - Drop redundant die statements with EAPI=4.
494 -
495 -*python-2.7.6 (01 Dec 2013)
496 -
497 - 01 Dec 2013; Mike Gilbert <floppym@g.o> +python-2.7.6.ebuild:
498 - Version bump. Thanks to Arfrever for the patches.
499 -
500 - 30 Nov 2013; Jeroen Roovers <jer@g.o> python-3.3.2-r2.ebuild:
501 - Stable for HPPA (bug #474128).
502 -
503 - 30 Nov 2013; Pacho Ramos <pacho@g.o> python-3.3.2-r2.ebuild:
504 - amd64 stable, bug #474128
505 -
506 - 23 Nov 2013; Jeroen Roovers <jer@g.o> python-3.3.2-r2.ebuild,
507 - python-3.3.3.ebuild:
508 - Typo.
509 -
510 - 23 Nov 2013; Mike Gilbert <floppym@g.o> python-3.3.2-r2.ebuild,
511 - python-3.3.3.ebuild:
512 - Update the postinst upgrade message.
513 -
514 -*python-3.3.3 (21 Nov 2013)
515 -
516 - 21 Nov 2013; Mike Gilbert <floppym@g.o> +python-3.3.3.ebuild:
517 - Version bump. Thanks to Arfrever for maintaining the patchset.
518 -
519 -*python-2.7.5-r4 (26 Oct 2013)
520 -
521 - 26 Oct 2013; Mike Gilbert <floppym@g.o>
522 - +files/python-2.7-issue18851.patch, +python-2.7.5-r4.ebuild:
523 - Apply patch to fix regression in subprocess module, bug 489378.
524 -
525 -*python-2.7.5-r3 (16 Oct 2013)
526 -*python-3.2.5-r3 (16 Oct 2013)
527 -
528 - 16 Oct 2013; Mike Gilbert <floppym@g.o>
529 - +files/python-2.7-issue16248.patch, +files/python-3.2-issue16248.patch,
530 - +python-2.7.5-r3.ebuild, +python-3.2.5-r3.ebuild, -python-2.7.5-r2.ebuild,
531 - -python-3.2.5-r2.ebuild:
532 - Apply upstream fix for regression in Tkinter, bug 488208 by jlec.
533 -
534 - 10 Oct 2013; Dirkjan Ochtman <djc@g.o> -files/python-3.2.3-x32.patch,
535 - -python-2.6.8-r1.ebuild, -python-2.6.8-r2.ebuild, -python-2.7.3-r2.ebuild,
536 - -python-2.7.3-r3.ebuild, -python-2.7.5-r1.ebuild, -python-2.7.5.ebuild,
537 - -python-3.2.3-r1.ebuild, -python-3.2.3-r2.ebuild, -python-3.2.3.ebuild,
538 - -python-3.2.4.ebuild, -python-3.2.5-r1.ebuild, -python-3.2.5.ebuild,
539 - -python-3.3.1.ebuild, -python-3.3.2-r1.ebuild, -python-3.3.2.ebuild:
540 - Remove old versions of python.
541 -
542 - 26 Sep 2013; Mike Gilbert <floppym@g.o>
543 - +files/python-2.7.5-nonfatal-compileall.patch, python-2.7.5-r2.ebuild:
544 - Apply cross-compile fixes to python-2.7.5.
545 -
546 - 26 Sep 2013; Mike Gilbert <floppym@g.o> python-3.3.2-r2.ebuild:
547 - Fix/simplify cross-compiles.
548 -
549 - 26 Sep 2013; Mike Gilbert <floppym@g.o> python-3.3.2-r2.ebuild:
550 - Depend on xz-utils (_lzma module).
551 -
552 - 05 Sep 2013; Mike Gilbert <floppym@g.o>
553 - -files/CVE-2013-4238_py32.patch:
554 - Drop another patch.
555 -
556 - 05 Sep 2013; Michał Górny <mgorny@g.o> -files/linux2.patch,
557 - -files/python-2.4.4-test-cross.patch, -files/python-2.5-cross-printf.patch,
558 - -files/python-2.6-chflags-cross.patch, -files/python-2.6-test-cross.patch,
559 - -files/python-3-distutils-egg-utf8.patch, -files/python-3.2-soname_typo.patch,
560 - -python-2.5.4-r5.ebuild, -python-2.5.4-r6.ebuild, -python-3.1.5-r1.ebuild,
561 - -python-3.1.5.ebuild:
562 - Remove Python 2.5 and 3.1. Purge old patches.
563 -
564 - 05 Sep 2013; Mike Gilbert <floppym@g.o> python-3.3.2-r2.ebuild:
565 - Disable network tests, bug 483656.
566 -
567 - 28 Aug 2013; Mike Gilbert <floppym@g.o> python-2.7.3-r2.ebuild,
568 - python-2.7.3-r3.ebuild, python-2.7.5-r1.ebuild, python-2.7.5-r2.ebuild,
569 - python-2.7.5.ebuild, python-3.2.3-r1.ebuild, python-3.2.3-r2.ebuild,
570 - python-3.2.3.ebuild, python-3.2.4.ebuild, python-3.2.5-r1.ebuild,
571 - python-3.2.5-r2.ebuild, python-3.2.5.ebuild, python-3.3.1.ebuild,
572 - python-3.3.2-r1.ebuild, python-3.3.2-r2.ebuild, python-3.3.2.ebuild:
573 - Drop extensions usedep from sqlite dep; sqlite is dropping the use flag.
574 -
575 - 26 Aug 2013; Michał Górny <mgorny@g.o> python-2.5.4-r6.ebuild:
576 - Replace internal eclass functions with a simple sed.
577 -
578 - 23 Aug 2013; Agostino Sarubbo <ago@g.o> python-2.6.8-r3.ebuild,
579 - python-2.7.5-r2.ebuild, python-3.2.5-r2.ebuild:
580 - Stable for sparc, wrt bug #480856
581 -
582 - 23 Aug 2013; Agostino Sarubbo <ago@g.o> python-2.6.8-r3.ebuild,
583 - python-2.7.5-r2.ebuild, python-3.2.5-r2.ebuild:
584 - Stable for sh, wrt bug #480856
585 -
586 - 23 Aug 2013; Agostino Sarubbo <ago@g.o> python-2.6.8-r3.ebuild,
587 - python-2.7.5-r2.ebuild, python-3.2.5-r2.ebuild:
588 - Stable for s390, wrt bug #480856
589 -
590 - 23 Aug 2013; Agostino Sarubbo <ago@g.o> python-2.6.8-r3.ebuild,
591 - python-2.7.5-r2.ebuild, python-3.2.5-r2.ebuild:
592 - Stable for ppc, wrt bug #480856
593 -
594 - 23 Aug 2013; Agostino Sarubbo <ago@g.o> python-2.6.8-r3.ebuild,
595 - python-2.7.5-r2.ebuild, python-3.2.5-r2.ebuild:
596 - Stable for ppc64, wrt bug #480856
597 -
598 - 23 Aug 2013; Agostino Sarubbo <ago@g.o> python-2.6.8-r3.ebuild,
599 - python-2.7.5-r2.ebuild, python-3.2.5-r2.ebuild:
600 - Stable for ia64, wrt bug #480856
601 -
602 - 23 Aug 2013; Agostino Sarubbo <ago@g.o> python-2.6.8-r3.ebuild,
603 - python-2.7.5-r2.ebuild, python-3.2.5-r2.ebuild:
604 - Stable for arm, wrt bug #480856
605 -
606 - 23 Aug 2013; Agostino Sarubbo <ago@g.o> python-2.6.8-r3.ebuild,
607 - python-2.7.5-r2.ebuild, python-3.2.5-r2.ebuild:
608 - Stable for alpha, wrt bug #480856
609 -
610 - 23 Aug 2013; Agostino Sarubbo <ago@g.o> python-2.6.8-r3.ebuild,
611 - python-2.7.5-r2.ebuild, python-3.2.5-r2.ebuild:
612 - Stable for x86, wrt bug #480856
613 -
614 - 23 Aug 2013; Agostino Sarubbo <ago@g.o> python-2.6.8-r3.ebuild,
615 - python-2.7.5-r2.ebuild, python-3.2.5-r2.ebuild:
616 - Stable for amd64, wrt bug #480856
617 -
618 - 20 Aug 2013; Jeroen Roovers <jer@g.o> python-2.6.8-r3.ebuild,
619 - python-2.7.5-r2.ebuild, python-3.2.5-r2.ebuild:
620 - Stable for HPPA (bug #480856).
621 -
622 -*python-2.7.5-r2 (18 Aug 2013)
623 -*python-3.2.5-r2 (18 Aug 2013)
624 -*python-2.6.8-r3 (18 Aug 2013)
625 -
626 - 18 Aug 2013; Mike Gilbert <floppym@g.o>
627 - +files/CVE-2013-4238_py26.patch, +files/CVE-2013-4238_py27.patch,
628 - +files/CVE-2013-4238_py32.patch, +files/CVE-2013-4238_py33.patch,
629 - +python-2.6.8-r3.ebuild, +python-2.7.5-r2.ebuild, +python-3.2.5-r2.ebuild,
630 - -files/CVE-2013-4073_py33.patch, python-3.3.2-r2.ebuild:
631 - Apply fix for CVE-2013-4238, bug 480856.
632 -
633 -*python-3.3.2-r2 (18 Aug 2013)
634 -
635 - 18 Aug 2013; Mike Gilbert <floppym@g.o>
636 - +files/CVE-2013-4073_py33.patch, +python-3.3.2-r2.ebuild:
637 - Use Arfrever's patchset, bug 354877. Apply fix for CVS-2013-4238, bug 480856.
638 -
639 - 06 Aug 2013; Agostino Sarubbo <ago@g.o> python-2.7.5.ebuild:
640 - Stable for s390, wrt bug #475424
641 -
642 - 06 Aug 2013; Agostino Sarubbo <ago@g.o> python-3.2.5-r1.ebuild:
643 - Stable for s390, wrt bug #469988
644 -
645 - 03 Aug 2013; Agostino Sarubbo <ago@g.o> python-2.7.5.ebuild:
646 - Stable for sparc, wrt bug #475424
647 -
648 - 22 Jul 2013; Agostino Sarubbo <ago@g.o> python-3.2.5-r1.ebuild:
649 - Stable for sparc, wrt bug #469988
650 -
651 - 21 Jul 2013; Agostino Sarubbo <ago@g.o> python-3.2.5-r1.ebuild:
652 - Stable for sh, wrt bug #469988
653 -
654 -*python-2.7.5-r1 (12 Jul 2013)
655 -
656 - 12 Jul 2013; Mike Gilbert <floppym@g.o>
657 - +files/python-2.7.5-re_unsigned_ptrdiff.patch, +python-2.7.5-r1.ebuild:
658 - Apply patch to fix regex crash, bug 476426 by Fabio Rossi.
659 -
660 - 07 Jul 2013; Agostino Sarubbo <ago@g.o> python-3.2.5-r1.ebuild:
661 - Stable for ia64, wrt bug #469988
662 -
663 - 07 Jul 2013; Agostino Sarubbo <ago@g.o> python-2.7.5.ebuild:
664 - Stable for ia64, wrt bug #475424
665 -
666 - 07 Jul 2013; Agostino Sarubbo <ago@g.o> python-3.2.5-r1.ebuild:
667 - Stable for arm, wrt bug #469988
668 -
669 - 07 Jul 2013; Agostino Sarubbo <ago@g.o> python-2.7.5.ebuild:
670 - Stable for arm, wrt bug #475424
671 -
672 - 06 Jul 2013; Mike Gilbert <floppym@g.o> -python-2.7.4.ebuild:
673 - Remove old.
674 -
675 - 06 Jul 2013; Mike Gilbert <floppym@g.o> python-2.7.5.ebuild:
676 - Move uclibc test removal after everything else, bug 475972.
677 -
678 - 06 Jul 2013; Agostino Sarubbo <ago@g.o> python-3.2.5-r1.ebuild:
679 - Stable for alpha, wrt bug #469988
680 -
681 - 04 Jul 2013; Agostino Sarubbo <ago@g.o> python-3.2.5-r1.ebuild:
682 - Stable for ppc64, wrt bug #469988
683 -
684 - 04 Jul 2013; Jeroen Roovers <jer@g.o> python-3.2.5-r1.ebuild:
685 - Stable for HPPA (bug #469988).
686 -
687 - 04 Jul 2013; Agostino Sarubbo <ago@g.o> python-2.7.5.ebuild:
688 - Stable for ppc64, wrt bug #475424
689 -
690 - 04 Jul 2013; Agostino Sarubbo <ago@g.o> python-3.2.5-r1.ebuild:
691 - Stable for ppc, wrt bug #469988
692 -
693 - 04 Jul 2013; Agostino Sarubbo <ago@g.o> python-2.7.5.ebuild:
694 - Stable for ppc, wrt bug #475424
695 -
696 - 03 Jul 2013; Agostino Sarubbo <ago@g.o> python-3.2.5-r1.ebuild:
697 - Stable for x86, wrt bug #469988
698 -
699 - 03 Jul 2013; Agostino Sarubbo <ago@g.o> python-3.2.5-r1.ebuild:
700 - Stable for amd64, wrt bug #469988
701 -
702 -*python-3.2.5-r1 (03 Jul 2013)
703 -*python-3.3.2-r1 (03 Jul 2013)
704 -
705 - 03 Jul 2013; Mike Gilbert <floppym@g.o>
706 - +files/python-3.2-CVE-2013-2099.patch, +files/python-3.3-CVE-2013-2099.patch,
707 - +python-3.2.5-r1.ebuild, +python-3.3.2-r1.ebuild:
708 - Add patch to fix CVE-2013-2099, bug 469988.
709 -
710 - 02 Jul 2013; Jeroen Roovers <jer@g.o> python-2.7.5.ebuild:
711 - Stable for HPPA (bug #475424).
712 -
713 - 02 Jul 2013; Tobias Klausmann <klausman@g.o> python-2.7.5.ebuild:
714 - Stable on alpha, bug #475424
715 -
716 - 02 Jul 2013; Agostino Sarubbo <ago@g.o> python-2.7.5.ebuild:
717 - Stable for x86, wrt bug #475424
718 -
719 - 02 Jul 2013; Agostino Sarubbo <ago@g.o> python-2.7.5.ebuild:
720 - Stable for amd64, wrt bug #475424
721 -
722 -*python-2.6.8-r2 (30 Jun 2013)
723 -*python-2.5.4-r6 (30 Jun 2013)
724 -
725 - 30 Jun 2013; Mike Gilbert <floppym@g.o> +files/python-2.5-tcl86.patch,
726 - +python-2.5.4-r6.ebuild, +python-2.6.8-r2.ebuild:
727 - Apply patch to allow old python versions to use tk-8.6, bug 454342. Also fix
728 - the python shebang in idle2.5 and pydoc2.5, bugs 275241 and 383009.
729 -
730 - 30 Jun 2013; Mike Gilbert <floppym@g.o> -python-2.5.4-r4.ebuild,
731 - -python-2.6.8.ebuild, python-2.5.4-r5.ebuild, python-2.6.8-r1.ebuild:
732 - Place upper bound on dev-lang/tk dep, bug 454342. Also stabilize on m68k since
733 - nobody is responding on bug 458318.
734 -
735 - 28 Jun 2013; Mike Gilbert <floppym@g.o>
736 - +files/python-2.7.5-library-path.patch, python-2.7.5.ebuild:
737 - Fix library paths when not cross-compiling. Should resolve bug 474882. Thanks
738 - to Arfrever for finding the upstream commit.
739 -
740 -*python-2.7.5 (25 May 2013)
741 -*python-3.2.5 (25 May 2013)
742 -
743 - 25 May 2013; Mike Gilbert <floppym@g.o> +python-2.7.5.ebuild,
744 - +python-3.2.5.ebuild, python-2.6.8-r1.ebuild, python-2.7.3-r3.ebuild,
745 - python-3.2.3-r2.ebuild:
746 - Version bump. Also resolves bug 462288 and 471124.
747 -
748 -*python-3.3.2 (21 May 2013)
749 -
750 - 21 May 2013; Patrick McLean <chutz@g.o> -python-3.3.0.ebuild,
751 - -python-3.3.0-r1.ebuild, +python-3.3.2.ebuild:
752 - Version bump to 3.3.2, clean out old 3.3 versions preparing for unmasking.
753 -
754 - 18 May 2013; Magnus Granberg <zorry@g.o> python-2.7.4.ebuild,
755 - python-3.2.4.ebuild, python-3.3.1.ebuild:
756 - Add fix to support pax emutramp on libffi
757 -
758 - 09 May 2013; Mike Gilbert <floppym@g.o> python-2.7.4.ebuild:
759 - Don't build the 'maninstall' target; this installs generic symlinks python.1
760 - and python2.1, which we manage using eselect-python. Bug 469148 by Alphat-PC.
761 -
762 - 09 May 2013; Michał Górny <mgorny@g.o> python-2.5.4-r5.ebuild,
763 - python-2.6.8-r1.ebuild, python-2.7.4.ebuild, python-3.1.5-r1.ebuild,
764 - python-3.2.4.ebuild, python-3.3.1.ebuild:
765 - Add epatch_user wrt bug #447714.
766 -
767 - 01 May 2013; Mike Gilbert <floppym@g.o> python-3.2.4.ebuild:
768 - Enable byte-compilation during tests.
769 -
770 - 01 May 2013; Mike Gilbert <floppym@g.o> python-2.7.4.ebuild,
771 - python-3.2.4.ebuild:
772 - Use Arfrever's patches. Remove some unnecessary || die.
773 -
774 - 28 Apr 2013; Patrick McLean <chutzpah@g.o> python-3.3.1.ebuild:
775 - Re-add patch from Arfrever to fix compilation on non-UTF-8 platforms, drop
776 - patches that are no longer needed.
777 -
778 -*python-3.3.1 (28 Apr 2013)
779 -
780 - 28 Apr 2013; Patrick McLean <chutzpah@g.o> +python-3.3.1.ebuild:
781 - Version bump. Add new patch to fix import tests from Arferver.
782 -
783 -*python-3.2.4 (27 Apr 2013)
784 -
785 - 27 Apr 2013; Mike Gilbert <floppym@g.o> +python-3.2.4.ebuild:
786 - Version bump. Fails tests at the moment.
787 -
788 - 27 Apr 2013; Mike Gilbert <floppym@g.o> python-2.7.4.ebuild:
789 - Downgrade to EAPI 4.
790 -
791 - 27 Apr 2013; Mike Gilbert <floppym@g.o> python-2.7.4.ebuild:
792 - Increment patchset.
793 -
794 - 13 Apr 2013; Agostino Sarubbo <ago@g.o> python-2.5.4-r5.ebuild,
795 - python-2.6.8-r1.ebuild, python-2.7.3-r3.ebuild, python-3.1.5-r1.ebuild,
796 - python-3.2.3-r2.ebuild:
797 - Stable for s390, wrt bug #458318
798 -
799 - 07 Apr 2013; Mike Gilbert <floppym@g.o> python-2.7.4.ebuild:
800 - Adjust the sys-libs/db dep and add some || die.
801 -
802 - 07 Apr 2013; Michał Górny <mgorny@g.o> python-2.6.8-r1.ebuild,
803 - python-2.7.3-r3.ebuild, python-2.7.4.ebuild:
804 - Fix wininst removal typo. Fixes bug #462862.
805 -
806 -*python-2.7.4 (07 Apr 2013)
807 -
808 - 07 Apr 2013; Mike Gilbert <floppym@g.o> +python-2.7.4.ebuild:
809 - Version bump.
810 -
811 - 31 Mar 2013; Agostino Sarubbo <ago@g.o> python-2.5.4-r5.ebuild,
812 - python-2.6.8-r1.ebuild, python-2.7.3-r3.ebuild, python-3.1.5-r1.ebuild,
813 - python-3.2.3-r2.ebuild:
814 - Stable for sh, wrt bug #458318
815 -
816 - 31 Mar 2013; Agostino Sarubbo <ago@g.o> python-2.5.4-r5.ebuild,
817 - python-2.6.8-r1.ebuild, python-2.7.3-r3.ebuild, python-3.1.5-r1.ebuild,
818 - python-3.2.3-r2.ebuild:
819 - Stable for sparc, wrt bug #458318
820 -
821 - 28 Mar 2013; Agostino Sarubbo <ago@g.o> python-2.5.4-r5.ebuild,
822 - python-2.6.8-r1.ebuild, python-2.7.3-r3.ebuild, python-3.1.5-r1.ebuild,
823 - python-3.2.3-r2.ebuild:
824 - Stable for ia64, wrt bug #458318
825 -
826 - 26 Mar 2013; Mike Frysinger <vapier@g.o> python-2.6.8-r1.ebuild,
827 - python-2.7.3-r3.ebuild, python-3.1.5-r1.ebuild, python-3.2.3-r2.ebuild,
828 - python-3.3.0-r1.ebuild:
829 - When cross-compiling, run the configures in parallel for a nice speed up
830 - #462264 by SpanKY.
831 -
832 - 24 Mar 2013; Mike Gilbert <floppym@g.o> python-3.3.0-r1.ebuild,
833 - python-3.3.0.ebuild:
834 - Add hard blocker on <sys-apps/sandbox-2.6-r1 to ensure we don't hit bug
835 - 364877.
836 -
837 - 23 Mar 2013; Agostino Sarubbo <ago@g.o> python-2.5.4-r5.ebuild,
838 - python-2.6.8-r1.ebuild, python-2.7.3-r3.ebuild, python-3.1.5-r1.ebuild,
839 - python-3.2.3-r2.ebuild:
840 - Stable for alpha, wrt bug #458318
841 -
842 - 23 Mar 2013; Agostino Sarubbo <ago@g.o> python-2.5.4-r5.ebuild,
843 - python-2.6.8-r1.ebuild, python-2.7.3-r3.ebuild, python-3.1.5-r1.ebuild,
844 - python-3.2.3-r2.ebuild:
845 - Stable for arm, wrt bug #458318
846 -
847 - 21 Mar 2013; Jeroen Roovers <jer@g.o> python-2.5.4-r5.ebuild,
848 - python-2.6.8-r1.ebuild, python-2.7.3-r3.ebuild, python-3.1.5-r1.ebuild,
849 - python-3.2.3-r2.ebuild:
850 - Stable for HPPA (bug #458318).
851 -
852 - 19 Mar 2013; Mike Frysinger <vapier@g.o> python-2.7.3-r3.ebuild,
853 - python-3.2.3-r2.ebuild, python-3.3.0-r1.ebuild:
854 - Install the python gdb module in the right place #443510 by Jan Pobrislo.
855 -
856 - 19 Mar 2013; Mike Frysinger <vapier@g.o> python-2.7.3-r2.ebuild,
857 - python-2.7.3-r3.ebuild, python-3.2.3-r1.ebuild, python-3.2.3-r2.ebuild,
858 - python-3.2.3.ebuild, python-3.3.0-r1.ebuild, python-3.3.0.ebuild:
859 - Export ac_cv_have_long_long_format=yes when cross-compiling #362945 by
860 - Patrick.
861 -
862 - 19 Mar 2013; Mike Frysinger <vapier@g.o> python-2.7.3-r2.ebuild,
863 - python-2.7.3-r3.ebuild, python-3.2.3-r1.ebuild, python-3.2.3-r2.ebuild,
864 - python-3.2.3.ebuild, python-3.3.0-r1.ebuild, python-3.3.0.ebuild:
865 - Set ac_cv_buggy_getaddrinfo=no when cross-compiling.
866 -
867 - 19 Mar 2013; Mike Frysinger <vapier@g.o> python-2.5.4-r4.ebuild,
868 - python-2.5.4-r5.ebuild, python-2.6.8-r1.ebuild, python-2.6.8.ebuild,
869 - python-2.7.3-r2.ebuild, python-2.7.3-r3.ebuild, python-3.1.5-r1.ebuild,
870 - python-3.1.5.ebuild, python-3.2.3-r1.ebuild, python-3.2.3-r2.ebuild,
871 - python-3.2.3.ebuild, python-3.3.0-r1.ebuild, python-3.3.0.ebuild:
872 - Add hardened to IUSE since we `use` it #447264 by Alphat-PC.
873 -
874 - 18 Mar 2013; Agostino Sarubbo <ago@g.o> python-2.5.4-r5.ebuild,
875 - python-2.6.8-r1.ebuild, python-2.7.3-r3.ebuild, python-3.1.5-r1.ebuild,
876 - python-3.2.3-r2.ebuild:
877 - Stable for ppc64, wrt bug #458318
878 -
879 - 18 Mar 2013; Agostino Sarubbo <ago@g.o> python-2.5.4-r5.ebuild,
880 - python-2.6.8-r1.ebuild, python-2.7.3-r3.ebuild, python-3.1.5-r1.ebuild,
881 - python-3.2.3-r2.ebuild:
882 - Stable for ppc, wrt bug #458318
883 -
884 - 18 Mar 2013; Agostino Sarubbo <ago@g.o> python-2.5.4-r5.ebuild,
885 - python-2.6.8-r1.ebuild, python-2.7.3-r3.ebuild, python-3.1.5-r1.ebuild,
886 - python-3.2.3-r2.ebuild:
887 - Stable for x86, wrt bug #458318
888 -
889 - 18 Mar 2013; Agostino Sarubbo <ago@g.o> python-2.5.4-r5.ebuild,
890 - python-2.6.8-r1.ebuild, python-2.7.3-r3.ebuild, python-3.1.5-r1.ebuild,
891 - python-3.2.3-r2.ebuild:
892 - Stable for amd64, wrt bug #458318
893 -
894 - 19 Dec 2012; Mike Gilbert <floppym@g.o> python-2.5.4-r5.ebuild,
895 - python-2.6.8-r1.ebuild, python-2.7.3-r3.ebuild, python-3.1.5-r1.ebuild,
896 - python-3.2.3-r2.ebuild, python-3.3.0-r1.ebuild:
897 - Don't depend on dev-lang/python. Bug 447752.
898 -
899 - 03 Dec 2012; Mike Gilbert <floppym@g.o> python-2.5.4-r5.ebuild:
900 - Copy eselect_python logic from more recent ebuilds.
901 -
902 - 02 Dec 2012; Michał Górny <mgorny@g.o> python-2.5.4-r5.ebuild,
903 - python-2.6.8-r1.ebuild, python-2.7.3-r3.ebuild, python-3.1.5-r1.ebuild,
904 - python-3.2.3-r2.ebuild, python-3.3.0-r1.ebuild:
905 - Stop renaming python-config wrt bug #445592. Keep a symlink for compatibility.
906 -
907 - 01 Dec 2012; Michał Górny <mgorny@g.o> python-2.5.4-r5.ebuild,
908 - python-2.6.8-r1.ebuild, python-2.7.3-r3.ebuild, python-3.1.5-r1.ebuild,
909 - python-3.2.3-r2.ebuild, python-3.3.0-r1.ebuild:
910 - Use python-any-r1 to clearly enforce build-time Python dependency.
911 -
912 - 30 Nov 2012; Michał Górny <mgorny@g.o> python-2.5.4-r5.ebuild,
913 - python-2.6.8-r1.ebuild, python-2.7.3-r3.ebuild, python-3.1.5-r1.ebuild,
914 - python-3.2.3-r2.ebuild, python-3.3.0-r1.ebuild:
915 - Fix byte-compiling the installed epython module when installing a new Python
916 - version.
917 -
918 -*python-2.7.3-r3 (30 Nov 2012)
919 -*python-3.3.0-r1 (30 Nov 2012)
920 -*python-2.6.8-r1 (30 Nov 2012)
921 -*python-2.5.4-r5 (30 Nov 2012)
922 -*python-3.2.3-r2 (30 Nov 2012)
923 -*python-3.1.5-r1 (30 Nov 2012)
924 -
925 - 30 Nov 2012; Michał Górny <mgorny@g.o> +python-2.5.4-r5.ebuild,
926 - +python-2.6.8-r1.ebuild, +python-2.7.3-r3.ebuild, +python-3.1.5-r1.ebuild,
927 - +python-3.2.3-r2.ebuild, +python-3.3.0-r1.ebuild:
928 - Introduce a cleaned up, -r1-quality Python ebuilds. Stop using python.eclass,
929 - install epython module for python-exec.
930 -
931 - 14 Oct 2012; Raúl Porcel <armin76@g.o> python-3.1.5.ebuild:
932 - ia64/m68k/s390/sh/sparc stable
933 -
934 - 06 Oct 2012; Markus Meier <maekke@g.o> python-3.1.5.ebuild:
935 - arm stable, bug #427544
936 -
937 - 02 Oct 2012; Jeroen Roovers <jer@g.o> python-3.1.5.ebuild:
938 - Stable for HPPA (bug #427548).
939 -
940 - 02 Oct 2012; Jeroen Roovers <jer@g.o> python-3.2.3-r1.ebuild:
941 - Stable for HPPA (bug #427548).
942 -
943 - 02 Oct 2012; Mike Gilbert <floppym@g.o> python-3.3.0.ebuild:
944 - Bump patchset revision for bug 436904. Drop wide-unicode use flag.
945 -
946 - 30 Sep 2012; Raúl Porcel <armin76@g.o> python-3.2.3.ebuild:
947 - alpha/ia64/m68k/s390/sh/sparc stable wrt #427548
948 -
949 - 30 Sep 2012; Dirkjan Ochtman <djc@g.o> python-3.3.0.ebuild:
950 - Fix 3.3 slot.
951 -
952 - 30 Sep 2012; Dirkjan Ochtman <djc@g.o> -python-2.6.6-r2.ebuild,
953 - -python-2.6.7-r2.ebuild, -python-2.7.2-r3.ebuild, -python-2.7.3.ebuild,
954 - -python-2.7.3-r1.ebuild, -python-3.1.4-r3.ebuild, -python-3.1.4-r4.ebuild,
955 - -python-3.2.2.ebuild, -python-3.2.2-r1.ebuild:
956 - Remove old versions.
957 -
958 -*python-3.3.0 (30 Sep 2012)
959 -
960 - 30 Sep 2012; Dirkjan Ochtman <djc@g.o> +python-3.3.0.ebuild:
961 - Add tentative python-3.3 ebuild. Some tests still fail.
962 -
963 - 27 Sep 2012; Matt Turner <mattst88@g.o> python-3.1.5.ebuild,
964 - python-3.2.3-r1.ebuild:
965 - Stable on alpha, bug 427548.
966 -
967 - 03 Aug 2012; Anthony G. Basile <blueness@g.o> python-3.2.3.ebuild:
968 - Stable arm, bug #427548
969 -
970 - 30 Jul 2012; Mike Frysinger <vapier@g.o> python-2.5.4-r4.ebuild,
971 - python-2.6.6-r2.ebuild, python-2.6.7-r2.ebuild, python-2.6.8.ebuild,
972 - python-2.7.2-r3.ebuild, python-2.7.3-r1.ebuild, python-2.7.3-r2.ebuild,
973 - python-2.7.3.ebuild, python-3.1.4-r3.ebuild, python-3.1.4-r4.ebuild,
974 - python-3.1.5.ebuild, python-3.2.2-r1.ebuild, python-3.2.2.ebuild,
975 - python-3.2.3-r1.ebuild, python-3.2.3.ebuild:
976 - Make sure $PKG_CONFIG is respected.
977 -
978 - 29 Jul 2012; Raúl Porcel <armin76@g.o> python-2.7.3-r2.ebuild:
979 - alpha/ia64/m68k/s390/sh/sparc stable wrt #419575
980 -
981 - 03 Jul 2012; Brent Baude <ranger@g.o> python-2.7.3-r2.ebuild:
982 - Marking python-2.7.3-r2 ppc for bug 419575
983 -
984 - 22 Jun 2012; Brent Baude <ranger@g.o> python-2.7.3-r2.ebuild:
985 - Marking python-2.7.3-r2 ppc64 for bug 419575
986 -
987 - 17 Jun 2012; Markus Meier <maekke@g.o> python-2.7.3-r2.ebuild:
988 - arm stable, bug #419575
989 -
990 - 17 Jun 2012; Jeff Horelick <jdhore@g.o> python-2.7.3-r2.ebuild:
991 - marked x86 per bug 419575
992 -
993 - 14 Jun 2012; Jeroen Roovers <jer@g.o> python-2.7.3-r2.ebuild:
994 - Stable for HPPA (bug #419575).
995 -
996 - 11 Jun 2012; Agostino Sarubbo <ago@g.o> python-2.7.3-r2.ebuild:
997 - Stable for amd64, wrt bug #419575
998 -
999 - 04 Jun 2012; Mike Frysinger <vapier@g.o> +files/python-3.2.3-x32.patch,
1000 - python-3.2.3.ebuild, python-3.2.3-r1.ebuild:
1001 - Fix posix subprocess module on x32.
1002 -
1003 - 26 May 2012; Raúl Porcel <armin76@g.o> python-2.6.8.ebuild,
1004 - python-2.7.3-r1.ebuild:
1005 - ia64/m68k/s390/sh/sparc stable wrt #396329
1006 -
1007 - 26 May 2012; Markus Meier <maekke@g.o> python-2.6.8.ebuild,
1008 - python-2.7.3-r1.ebuild:
1009 - arm stable, bug #396329
1010 -
1011 - 17 May 2012; Jeff Horelick <jdhore@g.o> python-2.6.8.ebuild,
1012 - python-2.7.3-r1.ebuild, python-3.1.5.ebuild, python-3.2.3.ebuild:
1013 - marked x86 per bug 396329
1014 -
1015 - 15 May 2012; Jeroen Roovers <jer@g.o> python-3.1.4-r3.ebuild,
1016 - python-3.1.5.ebuild, python-3.2.2.ebuild, python-3.2.3.ebuild:
1017 - Marked ~hppa until it is ready.
1018 -
1019 - 15 May 2012; Jeroen Roovers <jer@g.o> python-2.6.8.ebuild,
1020 - python-3.1.5.ebuild, python-3.2.3.ebuild:
1021 - Stable for HPPA (bug #396329).
1022 -
1023 - 14 May 2012; Jeroen Roovers <jer@g.o> python-2.7.3-r1.ebuild:
1024 - Stable for HPPA (bug #396329).
1025 -
1026 - 14 May 2012; Mark Loeser <halcy0n@g.o> python-2.6.8.ebuild,
1027 - python-2.7.3-r1.ebuild, python-3.1.5.ebuild, python-3.2.3.ebuild:
1028 - Stable for ppc/ppc64; bug #369329
1029 -
1030 - 14 May 2012; Agostino Sarubbo <ago@g.o> python-2.6.8.ebuild,
1031 - python-2.7.3-r1.ebuild, python-3.1.5.ebuild, python-3.2.3.ebuild:
1032 - Stable for amd64, wrt bug #396329
1033 -
1034 - 12 May 2012; Tobias Klausmann <klausman@g.o> python-2.6.8.ebuild:
1035 - Stable on alpha, bug #396329
1036 -
1037 - 12 May 2012; Tobias Klausmann <klausman@g.o> python-2.7.3-r1.ebuild:
1038 - Stable on alpha, bug #396329
1039 -
1040 - 03 May 2012; Jeff Horelick <jdhore@g.o> python-2.5.4-r4.ebuild,
1041 - python-2.6.6-r2.ebuild, python-2.6.7-r2.ebuild, python-2.6.8.ebuild,
1042 - python-2.7.2-r3.ebuild, python-2.7.3.ebuild, python-2.7.3-r1.ebuild,
1043 - python-2.7.3-r2.ebuild, python-3.1.4-r3.ebuild, python-3.1.4-r4.ebuild,
1044 - python-3.1.5.ebuild, python-3.2.2.ebuild, python-3.2.2-r1.ebuild,
1045 - python-3.2.3.ebuild, python-3.2.3-r1.ebuild:
1046 - dev-util/pkgconfig -> virtual/pkgconfig
1047 -
1048 - 03 May 2012; Mike Gilbert <floppym@g.o> python-3.2.3-r1.ebuild:
1049 - Revert to previous patchset due to bug 414333.
1050 -
1051 - 01 May 2012; Mike Gilbert <floppym@g.o> +python-2.7.3-r2.ebuild,
1052 - +python-3.2.3-r1.ebuild:
1053 - Restore ebuilds now that mirrors have the files.
1054 -
1055 - 01 May 2012; Mike Gilbert <floppym@g.o> -python-2.7.3-r2.ebuild,
1056 - -python-3.2.3-r1.ebuild:
1057 - Drop ebuilds until the patchsets get mirrored.
1058 -
1059 -*python-3.2.3-r1 (01 May 2012)
1060 -*python-2.7.3-r2 (01 May 2012)
1061 -
1062 - 01 May 2012; Mike Gilbert <floppym@g.o> +python-2.7.3-r2.ebuild,
1063 - +python-3.2.3-r1.ebuild:
1064 - Drop several patches that upstream has not accepted.
1065 -
1066 - 28 Apr 2012; Mike Gilbert <floppym@g.o> python-2.6.8.ebuild,
1067 - python-2.7.3-r1.ebuild, python-3.1.5.ebuild, python-3.2.3.ebuild:
1068 - Document reason for pax marking. Bug 413751.
1069 -
1070 - 28 Apr 2012; Mike Gilbert <floppym@g.o> python-2.6.8.ebuild,
1071 - python-2.7.3-r1.ebuild, python-3.1.5.ebuild, python-3.2.3.ebuild:
1072 - Drop sys-apps/paxctl dep and restore fbsd keywords. Bug 413671 should be
1073 - resolved by not calling pax-mark on libpython.
1074 -
1075 - 28 Apr 2012; Alexis Ballier <aballier@g.o> python-2.6.8.ebuild,
1076 - python-2.7.3-r1.ebuild, python-3.1.5.ebuild, python-3.2.3.ebuild:
1077 - remove fbsd keywords on ebuilds depending on sys-apps/paxctl which doesnt
1078 - build and isnt keyworded
1079 -
1080 - 26 Apr 2012; Mike Gilbert <floppym@g.o> python-2.6.8.ebuild,
1081 - python-2.7.3-r1.ebuild, python-3.1.5.ebuild, python-3.2.3.ebuild:
1082 - Restore djc's fix for bug 368207.
1083 -
1084 - 26 Apr 2012; Mike Gilbert <floppym@g.o> python-2.6.8.ebuild,
1085 - python-2.7.3-r1.ebuild, python-3.1.5.ebuild, python-3.2.3.ebuild:
1086 - Don't pax-mark libpython.so. Bug 413671.
1087 -
1088 - 26 Apr 2012; Mike Gilbert <floppym@g.o> python-2.6.8.ebuild,
1089 - python-2.7.3-r1.ebuild, python-3.1.5.ebuild, python-3.2.3.ebuild:
1090 - Re-add dependency on sys-apps/paxctl due to bug 413671.
1091 -
1092 -*python-3.1.5 (26 Apr 2012)
1093 -*python-2.7.3-r1 (26 Apr 2012)
1094 -*python-3.2.3 (26 Apr 2012)
1095 -*python-2.6.8 (26 Apr 2012)
1096 -
1097 - 26 Apr 2012; Mike Gilbert <floppym@g.o> +python-2.6.8.ebuild,
1098 - +python-2.7.3-r1.ebuild, +python-3.1.5.ebuild, +python-3.2.3.ebuild:
1099 - Version bumps for security bug 396329. Ebuilds and patchsets based on work by
1100 - Arfrever in Progress overlay.
1101 -
1102 - 26 Apr 2012; Alexis Ballier <aballier@g.o> python-3.2.2-r1.ebuild:
1103 - keyword ~amd64-fbsd
1104 -
1105 - 26 Apr 2012; Alexis Ballier <aballier@g.o> python-2.7.3.ebuild:
1106 - keyword ~amd64-fbsd
1107 -
1108 -*python-2.7.3 (12 Apr 2012)
1109 -
1110 - 12 Apr 2012; Dirkjan Ochtman <djc@g.o> +python-2.7.3.ebuild:
1111 - Version bump to 2.7.3, addressing bugs 368207, 301691.
1112 -
1113 -*python-3.1.4-r4 (21 Mar 2012)
1114 -*python-3.2.2-r1 (21 Mar 2012)
1115 -
1116 - 21 Mar 2012; Mike Gilbert <floppym@g.o>
1117 - +files/python-3-distutils-egg-utf8.patch, +python-3.1.4-r4.ebuild,
1118 - +python-3.2.2-r1.ebuild:
1119 - Resolve distutils issue with unicode characters in egg-info files. Patch
1120 - backported by mgorny. Bug 343721.
1121 -
1122 - 07 Mar 2012; Brent Baude <ranger@g.o> python-3.2.2.ebuild:
1123 - Marking python-3.2.2 ppc for bug 403875
1124 -
1125 - 05 Mar 2012; Jeff Horelick <jdhore@g.o> python-3.2.2.ebuild:
1126 - marked x86 per bug 403875
1127 -
1128 - 05 Mar 2012; Samuli Suominen <ssuominen@g.o> python-2.5.4-r4.ebuild:
1129 - Remove obsolete sys-devel/gcc[libffi] built_with_use check wrt #406927 by
1130 - Michael Weber
1131 -
1132 - 03 Mar 2012; Brent Baude <ranger@g.o> python-3.2.2.ebuild:
1133 - Marking python-3.2.2 ppc64 for bug 403875
1134 -
1135 - 18 Feb 2012; Jeroen Roovers <jer@g.o> python-3.2.2.ebuild:
1136 - Stable for HPPA (bug #403875).
1137 -
1138 - 17 Feb 2012; Agostino Sarubbo <ago@g.o> python-3.2.2.ebuild:
1139 - Stable for amd64, wrt bug #403875
1140 -
1141 - 15 Feb 2012; Dirkjan Ochtman <djc@g.o> -python-2.7.1-r1.ebuild,
1142 - -python-3.1.3-r1.ebuild:
1143 - Remove some old versions.
1144 -
1145 - 13 Feb 2012; Kacper Kowalik <xarthisius@g.o> python-2.7.2-r3.ebuild,
1146 - python-3.1.4-r3.ebuild:
1147 - ppc64 stable wrt #387849
1148 -
1149 - 10 Feb 2012; Patrick Lauer <patrick@g.o> -python-2.4.6.ebuild:
1150 - Removing last python-2.4 ebuilds. Was nice having you around ...
1151 -
1152 - 01 Feb 2012; Brent Baude <ranger@g.o> python-2.7.2-r3.ebuild,
1153 - python-3.1.4-r3.ebuild:
1154 - Marking -2.7.2-r3 and -3.1.4-r3 for bug 387849
1155 -
1156 - 01 Jan 2012; Andreas K. Huettel <dilfridge@g.o> +ChangeLog-2011:
1157 - Split ChangeLog. For older entries, please see ChangeLog-2011.
1158
1159 diff --git a/dev-lang/python/ChangeLog-2011 b/dev-lang/python/ChangeLog-2011
1160 deleted file mode 100644
1161 index 7e2ecbc..0000000
1162 --- a/dev-lang/python/ChangeLog-2011
1163 +++ /dev/null
1164 @@ -1,2583 +0,0 @@
1165 -# ChangeLog for dev-lang/python
1166 -# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
1167 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/ChangeLog-2011,v 1.1 2012/01/01 20:25:25 dilfridge Exp $
1168 -
1169 - 14 Dec 2011; Mike Gilbert <floppym@g.o> python-2.5.4-r4.ebuild:
1170 - Apply linux3 platform workaround. Fixes bug 394143.
1171 -
1172 - 13 Dec 2011; Dirkjan Ochtman <djc@g.o> files/linux2.patch:
1173 - Prune back linux2.patch to prevent race conditions (bug 394547).
1174 -
1175 - 09 Dec 2011; Mike Frysinger <vapier@g.o> python-3.2.2.ebuild:
1176 - Replace hardcoded /lib64 searching with /<abi_libdir> paths.
1177 -
1178 - 01 Dec 2011; Dirkjan Ochtman <djc@g.o> python-2.7.2-r3.ebuild,
1179 - python-3.1.4-r3.ebuild, python-3.2.2.ebuild:
1180 - Fix autogen problems (bug 355733).
1181 -
1182 - 01 Dec 2011; Dirkjan Ochtman <djc@g.o> -python-2.7.2-r2.ebuild,
1183 - -python-3.1.4-r2.ebuild, -python-3.2-r2.ebuild:
1184 - Remove old versions from the tree.
1185 -
1186 - 26 Nov 2011; Mike Gilbert <floppym@g.o> python-2.6.7-r2.ebuild,
1187 - python-2.7.2-r2.ebuild, python-2.7.2-r3.ebuild, python-3.1.4-r2.ebuild,
1188 - python-3.1.4-r3.ebuild:
1189 - Remove reference to snapshots in python overlay.
1190 -
1191 - 31 Oct 2011; Mike Frysinger <vapier@g.o> python-2.6.7-r2.ebuild,
1192 - python-2.7.2-r2.ebuild, python-2.7.2-r3.ebuild, python-3.1.4-r2.ebuild,
1193 - python-3.1.4-r3.ebuild, python-3.2-r2.ebuild, python-3.2.2.ebuild:
1194 - Drop unnecessary USE=kernel_linux check in plat-linux3 setup.
1195 -
1196 - 30 Oct 2011; Raúl Porcel <armin76@g.o> python-2.7.2-r3.ebuild:
1197 - alpha/ia64/s390/sh/sparc stable wrt #387849
1198 -
1199 - 27 Oct 2011; Tony Vroon <chainsaw@g.o> python-2.7.2-r3.ebuild,
1200 - python-3.1.4-r3.ebuild:
1201 - Marked stable on AMD64; objections in arch testing by Ian "idella4" Delaney &
1202 - Agostino "ago" Sarubbo in bug #387849 were overridden by request of Dirkjan
1203 - Ochtman.
1204 -
1205 - 27 Oct 2011; Jesus Rivero <neurogeek@g.o> python-2.4.6.ebuild,
1206 - python-2.5.4-r4.ebuild, python-2.6.6-r2.ebuild, python-2.7.1-r1.ebuild,
1207 - python-3.1.3-r1.ebuild, python-3.2-r2.ebuild, python-3.2.2.ebuild,
1208 - files/pydoc.conf, files/pydoc.init:
1209 - Changes to pydoc conf.d and init.d files wrt bug #361867. Patch by
1210 - Arfrever
1211 -
1212 - 26 Oct 2011; Jeroen Roovers <jer@g.o> python-3.1.4-r3.ebuild:
1213 - Stable for HPPA (bug #387849).
1214 -
1215 - 26 Oct 2011; Jeroen Roovers <jer@g.o> python-2.7.2-r3.ebuild:
1216 - Stable for HPPA (bug #387849).
1217 -
1218 - 24 Oct 2011; Markus Meier <maekke@g.o> python-2.7.2-r3.ebuild:
1219 - arm stable, bug #387849
1220 -
1221 - 23 Oct 2011; Markus Meier <maekke@g.o> python-3.1.4-r3.ebuild:
1222 - x86 stable, bug #387849
1223 -
1224 - 23 Oct 2011; Markus Meier <maekke@g.o> python-2.7.2-r3.ebuild:
1225 - x86 stable, bug #387849
1226 -
1227 -*python-3.2.2 (16 Sep 2011)
1228 -
1229 - 16 Sep 2011; Dirkjan Ochtman <djc@g.o> +python-3.2.2.ebuild:
1230 - Version bump to 3.2.2 (fixes bug 375051).
1231 -
1232 -*python-3.1.4-r3 (16 Sep 2011)
1233 -*python-2.7.2-r3 (16 Sep 2011)
1234 -
1235 - 16 Sep 2011; Dirkjan Ochtman <djc@g.o> +files/linux2.patch,
1236 - +python-2.7.2-r3.ebuild, +python-3.1.4-r3.ebuild:
1237 - Set sys.platform to linux2 even on linux3 (bug 375257).
1238 -
1239 - 16 Sep 2011; Dirkjan Ochtman <djc@g.o> -python-2.6.5-r3.ebuild,
1240 - -python-2.7.1-r2.ebuild:
1241 - Remove old versions.
1242 -
1243 - 27 Aug 2011; Jesus Rivero <neurogeek@g.o> python-2.7.2-r2.ebuild,
1244 - python-3.1.3-r1.ebuild, python-3.1.4-r2.ebuild:
1245 - Change to generic license
1246 -
1247 - 23 Aug 2011; Jesus Rivero <neurogeek@g.o> python-3.2-r2.ebuild,
1248 - +files/python-3.2-soname_typo.patch:
1249 - Applied patch from upstream, wrt bug #376303. Fixed License
1250 -
1251 - 07 Aug 2011; Naohiro Aota <naota@g.o> python-2.6.7-r2.ebuild,
1252 - python-2.7.2-r2.ebuild, python-3.1.4-r2.ebuild, python-3.2-r2.ebuild:
1253 - Move more linux3 compat hack into kernel_linux check. Bug #374579
1254 -
1255 - 05 Aug 2011; Naohiro Aota <naota@g.o> python-2.6.7-r2.ebuild,
1256 - python-2.7.2-r2.ebuild, python-3.1.4-r2.ebuild, python-3.2-r2.ebuild:
1257 - Move linux3 compat hack into kernel_linux check. Bug #374579
1258 -
1259 -*python-3.2-r2 (24 Jul 2011)
1260 -*python-3.1.4-r2 (24 Jul 2011)
1261 -*python-2.7.2-r2 (24 Jul 2011)
1262 -*python-2.6.7-r2 (24 Jul 2011)
1263 -
1264 - 24 Jul 2011; Jesus Rivero <neurogeek@g.o> -python-2.6.7-r1.ebuild,
1265 - +python-2.6.7-r2.ebuild, -python-2.7.2-r1.ebuild, +python-2.7.2-r2.ebuild,
1266 - -python-3.1.4-r1.ebuild, +python-3.1.4-r2.ebuild, -python-3.2-r1.ebuild,
1267 - +python-3.2-r2.ebuild:
1268 - Revbump N. 2 for all testing versions of Python wrt bug #374579 and linux-3
1269 -
1270 -*python-3.2-r1 (22 Jul 2011)
1271 -*python-3.1.4-r1 (22 Jul 2011)
1272 -*python-2.7.2-r1 (22 Jul 2011)
1273 -*python-2.6.7-r1 (22 Jul 2011)
1274 -
1275 - 22 Jul 2011; Jesus Rivero <neurogeek@g.o> -python-2.6.7.ebuild,
1276 - +python-2.6.7-r1.ebuild, -python-2.7.2.ebuild, +python-2.7.2-r1.ebuild,
1277 - -python-3.1.4.ebuild, +python-3.1.4-r1.ebuild, -python-3.2.ebuild,
1278 - +python-3.2-r1.ebuild:
1279 - Revbump for all testing versions of Python wrt bug #374579 and linux-3
1280 -
1281 - 27 Jun 2011; Dirkjan Ochtman <djc@g.o> python-2.7.2.ebuild,
1282 - python-3.2.ebuild:
1283 - Bump required autoconf version to 2.65 (bug 372461).
1284 -
1285 -*python-3.1.4 (27 Jun 2011)
1286 -*python-2.7.2 (27 Jun 2011)
1287 -*python-2.6.7 (27 Jun 2011)
1288 -
1289 - 27 Jun 2011; Dirkjan Ochtman <djc@g.o> +python-2.6.7.ebuild,
1290 - +python-2.7.2.ebuild, +python-3.1.4.ebuild:
1291 - Version bumps. Ebuilds and patchsets by Arfrever.
1292 -
1293 -*python-2.7.1-r2 (17 May 2011)
1294 -
1295 - 17 May 2011; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1296 - +python-2.7.1-r2.ebuild:
1297 - Use PyXML only after calling xml.use_pyxml().
1298 -
1299 - 17 May 2011; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1300 - python-2.4.6.ebuild, python-2.5.4-r4.ebuild, python-2.6.5-r3.ebuild,
1301 - python-2.6.6-r2.ebuild, python-2.7.1-r1.ebuild, python-3.1.3-r1.ebuild,
1302 - python-3.2.ebuild, files/pydoc.init:
1303 - Use target pydoc script in pydoc init.d script (bug #361867).
1304 -
1305 - 22 Apr 2011; Raúl Porcel <armin76@g.o> python-2.7.1-r1.ebuild:
1306 - alpha/ia64/m68k/s390/sh stable wrt #358717
1307 -
1308 - 18 Apr 2011; Thomas Kahle <tomka@g.o> python-2.7.1-r1.ebuild:
1309 - x86 stable per bug 358717
1310 -
1311 - 05 Apr 2011; Ulrich Mueller <ulm@g.o> python-2.4.6.ebuild,
1312 - python-2.5.4-r4.ebuild, python-2.6.5-r3.ebuild, python-2.6.6-r1.ebuild,
1313 - python-2.6.6-r2.ebuild, python-2.7.1-r1.ebuild, python-3.1.2-r4.ebuild,
1314 - python-3.1.3-r1.ebuild, python-3.2.ebuild:
1315 - Don't PROVIDE virtual/python, bug 358849.
1316 -
1317 - 04 Apr 2011; Jeroen Roovers <jer@g.o> python-2.7.1-r1.ebuild:
1318 - Stable for HPPA (bug #358717).
1319 -
1320 - 04 Apr 2011; Michael Weber <xmw@g.o> python-2.7.1-r1.ebuild:
1321 - arm/sparc stable (bug 358717)
1322 -
1323 - 25 Mar 2011; Kacper Kowalik <xarthisius@g.o> python-2.7.1-r1.ebuild:
1324 - ppc64 stable wrt #358717
1325 -
1326 - 24 Mar 2011; Christoph Mende <angelos@g.o> python-2.7.1-r1.ebuild:
1327 - Stable on amd64 wrt bug #358717
1328 -
1329 - 22 Mar 2011; Brent Baude <ranger@g.o> python-2.7.1-r1.ebuild:
1330 - Marking python-2.7.1-r1 ppc for bug 358717
1331 -
1332 - 18 Mar 2011; Mike Frysinger <vapier@g.o> python-2.4.6.ebuild,
1333 - python-2.5.4-r4.ebuild, python-2.6.5-r3.ebuild, python-2.6.6-r1.ebuild,
1334 - python-2.6.6-r2.ebuild, python-2.7.1-r1.ebuild, python-3.1.2-r4.ebuild,
1335 - python-3.1.3-r1.ebuild, python-3.2.ebuild:
1336 - Drop useless calls to prep_ml_includes #357727.
1337 -
1338 - 26 Feb 2011; Raúl Porcel <armin76@g.o> python-2.6.6-r2.ebuild:
1339 - alpha/arm/ia64/m68k/s390/sh/sparc stable wrt #355927
1340 -
1341 - 26 Feb 2011; Markos Chandras <hwoarang@g.o> python-2.6.6-r2.ebuild,
1342 - python-3.1.3-r1.ebuild:
1343 - Stable on amd64 wrt bug #355927
1344 -
1345 - 24 Feb 2011; Pawel Hajdan jr <phajdan.jr@g.o>
1346 - python-2.6.6-r2.ebuild, python-3.1.3-r1.ebuild:
1347 - x86 stable wrt security bug #355927
1348 -
1349 - 23 Feb 2011; Kacper Kowalik <xarthisius@g.o>
1350 - python-2.6.6-r2.ebuild, python-3.1.3-r1.ebuild:
1351 - ppc/ppc64 stable wrt #355927
1352 -
1353 - 23 Feb 2011; Jeroen Roovers <jer@g.o> python-2.6.6-r2.ebuild,
1354 - python-3.1.3-r1.ebuild:
1355 - Stable for HPPA (bug #355927).
1356 -
1357 -*python-3.2 (21 Feb 2011)
1358 -
1359 - 21 Feb 2011; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1360 - +python-3.2.ebuild:
1361 - Version bump.
1362 -
1363 -*python-3.1.3-r1 (21 Feb 2011)
1364 -
1365 - 21 Feb 2011; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1366 - -python-3.1.3.ebuild, +python-3.1.3-r1.ebuild:
1367 - Fix regression in unicodedata.normalize() (Python issue #10254). Fix
1368 - NameError in logging.handlers.TimedRotatingFileHandler.__init__() (Gentoo bug
1369 - #350400, Python issue #10810). Don't skip test_ctypes tests on hardened/PAX
1370 - (Gentoo bug #348745).
1371 -
1372 -*python-2.7.1-r1 (21 Feb 2011)
1373 -
1374 - 21 Feb 2011; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1375 - -python-2.7.ebuild, -python-2.7.1.ebuild, +python-2.7.1-r1.ebuild:
1376 - Fix incompatible API change in xmlrpclib.Transport.parse_response() (Gentoo
1377 - bug #347465, Python issue #8194). Fix regression in unicodedata.normalize()
1378 - (Python issue #10254). Don't skip test_ctypes tests on hardened/PAX (Gentoo
1379 - bug #348745).
1380 -
1381 -*python-2.6.6-r2 (21 Feb 2011)
1382 -
1383 - 21 Feb 2011; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1384 - +python-2.6.6-r2.ebuild:
1385 - Fix DoS vulnerability in smtpd (Python issue #9129). Fix regression in
1386 - unicodedata.normalize() (Python issue #10254). Don't skip test_ctypes tests
1387 - on hardened/PAX (Gentoo bug #348745).
1388 -
1389 - 20 Feb 2011; Raúl Porcel <armin76@g.o> python-2.6.6-r1.ebuild:
1390 - ia64/m68k/s390/sh/sparc stable wrt #342927
1391 -
1392 - 06 Jan 2011; Brent Baude <ranger@g.o> python-2.6.6-r1.ebuild:
1393 - Marking python-2.6.6-r1 ppc for bug 342927
1394 -
1395 - 01 Jan 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@g.o>
1396 - python-2.6.6-r1.ebuild:
1397 - Non-maintainer commit.
1398 - Reverting commit that broke stage generation for python-2.6.6-r1 as it wasn't
1399 - reverted before - bug 347867.
1400 - This commit was accepted by Arfrever.
1401 -
1402 - 29 Dec 2010; Markos Chandras <hwoarang@g.o> python-2.6.6-r1.ebuild:
1403 - Stable on amd64 wrt bug #342927
1404 -
1405 - 27 Dec 2010; Brent Baude <ranger@g.o> python-2.6.6-r1.ebuild:
1406 - Marking python-2.6.6-r1 ppc64 for bug 342927
1407 -
1408 - 27 Dec 2010; Brent Baude <ranger@g.o> python-3.1.2-r4.ebuild:
1409 - Marking python-3.1.2-r4 ppc64 for bug 325593
1410 -
1411 - 22 Dec 2010; Tobias Klausmann <klausman@g.o> python-2.6.6-r1.ebuild:
1412 - Stable on alpha, bug #342927
1413 -
1414 - 21 Dec 2010; Markus Meier <maekke@g.o> python-2.6.6-r1.ebuild:
1415 - arm stable, bug #342927
1416 -
1417 - 16 Dec 2010; Jesus Rivero <neurogeek@g.o> python-2.4.6.ebuild,
1418 - python-2.5.4-r4.ebuild, python-2.7.ebuild, python-2.7.1.ebuild,
1419 - python-3.1.3.ebuild:
1420 - Reverting commit that broke stage generation - bug 347867.
1421 -
1422 - 14 Dec 2010; Jeroen Roovers <jer@g.o> python-2.6.6-r1.ebuild:
1423 - Stable for HPPA (bug #342927).
1424 -
1425 - 07 Dec 2010; Pawel Hajdan jr <phajdan.jr@g.o>
1426 - python-2.6.6-r1.ebuild:
1427 - x86 stable wrt bug #342927
1428 -
1429 - 06 Dec 2010; Jorge Manuel B. S. Vicetto <jmbsvicetto@g.o>
1430 - python-2.6.5-r3.ebuild, python-3.1.2-r4.ebuild:
1431 - Non-maintainer commit.
1432 - Reverting commit that broke stage generation - bug 347867.
1433 -
1434 - 01 Dec 2010; <sping@g.o> python-2.4.6.ebuild, python-2.5.4-r4.ebuild,
1435 - python-2.6.5-r3.ebuild, python-2.6.6-r1.ebuild, python-2.7.ebuild,
1436 - python-2.7.1.ebuild, python-3.1.2-r4.ebuild, python-3.1.3.ebuild:
1437 - Save/restore active Python version across calls to pkg_postrm() of the ebuild
1438 - about to be replaced. Ensure /usr/bin/python symlink.
1439 -
1440 - 29 Nov 2010; <sping@g.o> python-2.7.1.ebuild, python-3.1.3.ebuild:
1441 - Remove eselect_python_update() from 2.7.1 and 3.1.3
1442 -
1443 -*python-3.1.3 (28 Nov 2010)
1444 -*python-2.7.1 (28 Nov 2010)
1445 -
1446 - 28 Nov 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1447 - +python-2.7.1.ebuild, +python-3.1.3.ebuild:
1448 - Version bumps. 2.7: Enable loadable sqlite extensions (bug #335505).
1449 -
1450 - 27 Nov 2010; Sebastian Pipping <sping@g.o> python-2.4.6.ebuild,
1451 - python-2.5.4-r4.ebuild, python-2.6.5-r3.ebuild, python-2.6.6-r1.ebuild,
1452 - python-2.7.ebuild, python-3.1.2-r4.ebuild:
1453 - Disable auto-bumping of active Python version by removing
1454 - eselect_python_update() and its invocation as explained and announced on
1455 - gentoo-dev
1456 -
1457 - 27 Oct 2010; Dirkjan Ochtman <djc@g.o> -python-2.6.4-r1.ebuild,
1458 - -python-2.6.5-r2.ebuild, -python-3.1.2-r3.ebuild:
1459 - Remove old versions.
1460 -
1461 - 27 Oct 2010; Dirkjan Ochtman <djc@g.o> python-2.6.6-r1.ebuild:
1462 - Disable test___all__ to fix bug 321075.
1463 -
1464 - 13 Oct 2010; Dirkjan Ochtman <djc@g.o> python-2.6.6-r1.ebuild:
1465 - Use mirrors for the patch set.
1466 -
1467 -*python-2.6.6-r1 (12 Oct 2010)
1468 -
1469 - 12 Oct 2010; Dirkjan Ochtman <djc@g.o> -python-2.6.6.ebuild,
1470 - +python-2.6.6-r1.ebuild:
1471 - 2.6.6-r1 actually has the rwx-mmap patch and the portage blocker.
1472 -
1473 - 11 Oct 2010; Dirkjan Ochtman <djc@g.o> python-2.6.6.ebuild:
1474 - Block 2.6.6 on portage-2.1.9 (earlier portage suffers from bug 330937).
1475 -
1476 -*python-2.6.6 (08 Oct 2010)
1477 -
1478 - 08 Oct 2010; Dirkjan Ochtman <djc@g.o> +python-2.6.6.ebuild:
1479 - Version bump to 2.6.6 (bug 334425).
1480 -
1481 - 15 Aug 2010; Jeroen Roovers <jer@g.o> python-3.1.2-r4.ebuild:
1482 - Stable for HPPA (bug #325593).
1483 -
1484 - 11 Aug 2010; Joseph Jezak <josejx@g.o> python-2.6.5-r3.ebuild,
1485 - python-3.1.2-r4.ebuild:
1486 - Marked ppc/ppc64 stable for bug #325593.
1487 -
1488 - 08 Aug 2010; Raúl Porcel <armin76@g.o> python-2.6.5-r3.ebuild:
1489 - alpha/arm/ia64/m68k/s390/sh/sparc stable wrt #325593
1490 -
1491 - 06 Aug 2010; Markos Chandras <hwoarang@g.o> python-2.6.5-r3.ebuild,
1492 - python-3.1.2-r4.ebuild:
1493 - Stable on amd64 wrt bug #325593
1494 -
1495 - 06 Aug 2010; Jeroen Roovers <jer@g.o> python-2.6.5-r3.ebuild:
1496 - Stable for HPPA (bug #325593).
1497 -
1498 - 06 Aug 2010; Christian Faulhammer <fauli@g.o>
1499 - python-3.1.2-r4.ebuild:
1500 - stable x86, security bug 325593
1501 -
1502 - 06 Aug 2010; Christian Faulhammer <fauli@g.o>
1503 - python-2.6.5-r3.ebuild:
1504 - stable x86, security bug 325593
1505 -
1506 - 02 Aug 2010; Brian Harring <ferringb@g.o>
1507 - -python-2.6.5_p20100801.ebuild, -python-2.7_p20100801.ebuild,
1508 - -python-3.1.2_p20100801.ebuild:
1509 - Remove untested versions, one of which flat out breaks emerge (bug 330937).
1510 - These should not be re-added without going through devrel/qa.
1511 -
1512 -*python-3.1.2_p20100801 (02 Aug 2010)
1513 -*python-2.7_p20100801 (02 Aug 2010)
1514 -*python-2.6.5_p20100801 (02 Aug 2010)
1515 -
1516 - 02 Aug 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1517 - +python-2.6.5_p20100801.ebuild, +python-2.7_p20100801.ebuild,
1518 - +python-3.1.2_p20100801.ebuild:
1519 - Improve usage of mmap in _ctypes module (bug #329499). Fix handling of
1520 - environmental variables (bug #329705). Backport some fixes from release
1521 - branches.
1522 -
1523 - 31 Jul 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1524 - python-2.6.4-r1.ebuild, python-2.6.5-r2.ebuild, python-2.6.5-r3.ebuild,
1525 - python-2.7.ebuild, python-3.1.2-r3.ebuild, python-3.1.2-r4.ebuild:
1526 - Revert wrong change in _ctypes module (bug #329499).
1527 -
1528 - 30 Jul 2010; Jeroen Roovers <jer@g.o> python-3.1.2-r3.ebuild:
1529 - Stable for HPPA (bug #320043).
1530 -
1531 - 25 Jul 2010; <solar@g.o> python-2.6.4-r1.ebuild,
1532 - python-2.6.5-r2.ebuild, python-2.6.5-r3.ebuild, python-2.7.ebuild,
1533 - python-3.1.2-r3.ebuild, python-3.1.2-r4.ebuild:
1534 - - The Modules/_ctypes/malloc_closure.c misuses a mmap() call trying to set
1535 - a mem segment to rwx when it does not need it. Bug 329499
1536 -
1537 - 22 Jul 2010; Markus Meier <maekke@g.o> python-2.6.5-r2.ebuild:
1538 - arm stable, bug #319723
1539 -
1540 - 18 Jul 2010; <nixnut@g.o> python-3.1.2-r3.ebuild:
1541 - ppc stable #320043
1542 -
1543 - 17 Jul 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1544 - python-3.1.2-r4.ebuild:
1545 - Fix parallel installation (bug #328009).
1546 -
1547 - 15 Jul 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1548 - python-3.1.2-r4.ebuild:
1549 - Fix building with some locales (bug #328047).
1550 -
1551 -*python-3.1.2-r4 (12 Jul 2010)
1552 -
1553 - 12 Jul 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1554 - +python-3.1.2-r4.ebuild:
1555 - Fix segmentation fault with non-module encodings directory on PYTHONPATH (bug #314883).
1556 - Fix building with Linux <2.6.9 headers (bug #317937). Fix httplib.HTTPResponse.read()
1557 - (bug #321545). Fix vulnerabilities in audioop module (bug #325593). Backport some
1558 - fixes from 3.1 branch.
1559 -
1560 -*python-2.6.5-r3 (12 Jul 2010)
1561 -
1562 - 12 Jul 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1563 - +python-2.6.5-r3.ebuild:
1564 - Fix building with Linux <2.6.9 headers (bug #317937). Fix httplib.HTTPResponse.read()
1565 - (bug #321545). Fix vulnerabilities in audioop module (bug #325593). Backport some
1566 - fixes from 2.6 branch.
1567 -
1568 -*python-2.7 (04 Jul 2010)
1569 -
1570 - 04 Jul 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1571 - +python-2.7.ebuild:
1572 - Version bump.
1573 -
1574 - 22 Jun 2010; Christian Faulhammer <fauli@g.o>
1575 - python-2.6.5-r2.ebuild:
1576 - stable x86, bug 319723
1577 -
1578 - 04 Jun 2010; Pawel Hajdan jr <phajdan.jr@g.o>
1579 - python-3.1.2-r3.ebuild:
1580 - x86 stable wrt bug #320043
1581 -
1582 - 04 Jun 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1583 - python-3.1.2-r3.ebuild:
1584 - Disable tests with USE="-threads" (bug #322755).
1585 -
1586 - 26 May 2010; Markos Chandras <hwoarang@g.o> python-3.1.2-r3.ebuild:
1587 - Stable on amd64 wrt bug #320043
1588 -
1589 - 25 May 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1590 - python-2.4.6.ebuild, python-2.5.4-r4.ebuild, python-2.6.4-r1.ebuild,
1591 - python-2.6.5-r2.ebuild, python-3.1.2-r3.ebuild:
1592 - Work around bug #321145.
1593 -
1594 - 24 May 2010; <nixnut@g.o> python-2.6.5-r2.ebuild:
1595 - ppc stable #319723
1596 -
1597 - 23 May 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1598 - python-2.4.6.ebuild, python-2.5.4-r4.ebuild, python-2.6.5-r2.ebuild,
1599 - python-3.1.2-r3.ebuild:
1600 - Support FEATURES="test-fail-continue". Don't install byte-compiled Python
1601 - modules (bug #301915).
1602 -
1603 - 21 May 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1604 - python-2.6.5-r2.ebuild:
1605 - amd64 stable (tested by rullzer) (bug #319723).
1606 -
1607 - 14 May 2010; Jeroen Roovers <jer@g.o> python-2.6.5-r2.ebuild:
1608 - Stable for HPPA (bug #319723).
1609 -
1610 - 02 May 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1611 - python-3.1.2-r3.ebuild:
1612 - Don't use ebeep() (bug #318091).
1613 -
1614 -*python-3.1.2-r3 (01 May 2010)
1615 -
1616 - 01 May 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1617 - +python-3.1.2-r3.ebuild:
1618 - Don't add GENTOO_PYTHON_WRAPPER_SCRIPT_PATH to os.environ (bug #315919).
1619 - Backport some fixes from 3.1 branch. Use EAPI="3".
1620 -
1621 -*python-2.6.5-r2 (01 May 2010)
1622 -
1623 - 01 May 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1624 - +python-2.6.5-r2.ebuild:
1625 - Don't add GENTOO_PYTHON_WRAPPER_SCRIPT_PATH to os.environ (bug #315919).
1626 - Fix failure of test_zlib with zlib 1.2.4 (Python issue #8193). Backport
1627 - some fixes from 2.6 branch.
1628 -
1629 -*python-3.1.2-r2 (11 Apr 2010)
1630 -
1631 - 11 Apr 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1632 - +python-3.1.2-r2.ebuild:
1633 - Use correct types of pointers. Fix failure of test_zlib with zlib 1.2.4
1634 - (Python issue #8193).
1635 -
1636 -*python-3.1.2-r1 (25 Mar 2010)
1637 -
1638 - 25 Mar 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1639 - +python-3.1.2-r1.ebuild:
1640 - Allow str subclasses to override __str__ method (Python issue #1583863).
1641 - Fix argument validation in sys.setfilesystemencoding() (Python issue #8226).
1642 -
1643 -*python-2.6.5-r1 (25 Mar 2010)
1644 -
1645 - 25 Mar 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1646 - +python-2.6.5-r1.ebuild:
1647 - Allow unicode subclasses to override __unicode__ method (Python issue #1583863).
1648 - Fix thread creation in low memory condition (Python issue #7544).
1649 - Fix unicodedata.normalize (Python issue #1054943). Set sys.executable to
1650 - empty string when program name is invalid (Python issue #7774).
1651 -
1652 - 25 Mar 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1653 - python-2.6.5.ebuild, python-3.1.2.ebuild:
1654 - Unset variables after using them to avoid affecting child processes.
1655 -
1656 -*python-3.1.2 (22 Mar 2010)
1657 -
1658 - 22 Mar 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1659 - +python-3.1.2.ebuild:
1660 - Version bump. Fixed bugs: #189283, #279234, #300961, #301848, #302519.
1661 - Respect GENTOO_PYTHON_PROCESS_NAME, GENTOO_PYTHON_WRAPPER_SCRIPT_PATH and
1662 - GENTOO_PYTHON_TARGET_SCRIPT_PATH environmental variables.
1663 -
1664 -*python-2.6.5 (21 Mar 2010)
1665 -
1666 - 21 Mar 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1667 - +python-2.6.5.ebuild:
1668 - Version bump. Fixed bugs: #189283, #279234, #282859, #300961, #301848.
1669 - Respect GENTOO_PYTHON_PROCESS_NAME, GENTOO_PYTHON_WRAPPER_SCRIPT_PATH and
1670 - GENTOO_PYTHON_TARGET_SCRIPT_PATH environmental variables.
1671 -
1672 - 20 Mar 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1673 - python-2.4.6.ebuild, python-2.5.4-r4.ebuild, python-2.6.4-r1.ebuild,
1674 - python-3.1.1-r1.ebuild:
1675 - Use -fwrapv (bug #297276). Install email module with USE="build".
1676 -
1677 - 10 Mar 2010; Joseph Jezak <josejx@g.o> python-2.6.4-r1.ebuild:
1678 - Marked ppc/ppc64 stable for bug #306793.
1679 -
1680 - 07 Mar 2010; Samuli Suominen <ssuominen@g.o>
1681 - python-2.6.4-r1.ebuild:
1682 - amd64 stable wrt #306793
1683 -
1684 - 07 Mar 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1685 - python-2.4.6.ebuild, python-2.5.4-r4.ebuild, python-2.6.4.ebuild,
1686 - python-2.6.4-r1.ebuild:
1687 - Delete no longer needed recommendation (bug #307887).
1688 -
1689 - 04 Mar 2010; Raúl Porcel <armin76@g.o> python-2.6.4-r1.ebuild:
1690 - alpha/arm/ia64/m68k/s390/sh/sparc stable wrt #306793
1691 -
1692 - 04 Mar 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1693 - python-3.1.1-r1.ebuild:
1694 - Depend on >=app-admin/python-updater-0.8, which supports packages
1695 - installable for multiple versions of Python.
1696 -
1697 - 26 Feb 2010; Jeroen Roovers <jer@g.o> python-2.6.4-r1.ebuild:
1698 - Stable for HPPA (bug #306793).
1699 -
1700 - 25 Feb 2010; Christian Faulhammer <fauli@g.o>
1701 - python-2.6.4-r1.ebuild:
1702 - stable x86, bug 306793
1703 -
1704 - 21 Feb 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1705 - python-2.4.6.ebuild, python-2.5.4-r4.ebuild, python-2.6.4-r1.ebuild,
1706 - python-3.1.1-r1.ebuild:
1707 - Don't install idle${SLOT} and idlelib module with USE="-tk" (bug #237788).
1708 - Enable "ssl" USE flag by default via IUSE (bug #304891).
1709 -
1710 - 13 Feb 2010; Raúl Porcel <armin76@g.o> python-2.5.4-r4.ebuild:
1711 - alpha/ia64/m68k/s390/sh/sparc stable wrt #303005
1712 -
1713 - 10 Feb 2010; Jeroen Roovers <jer@g.o> python-2.5.4-r4.ebuild:
1714 - Stable for HPPA (bug #303005).
1715 -
1716 - 10 Feb 2010; Joseph Jezak <josejx@g.o> python-2.5.4-r4.ebuild:
1717 - Marked ppc stable for bug #303005.
1718 -
1719 - 07 Feb 2010; Markus Meier <maekke@g.o> python-2.5.4-r4.ebuild:
1720 - arm/x86 stable, bug #303005
1721 -
1722 - 04 Feb 2010; Brent Baude <ranger@g.o> python-2.5.4-r4.ebuild:
1723 - Marking python-2.5.4-r4 ppc64 for bug 303005
1724 -
1725 - 01 Feb 2010; Markos Chandras <hwoarang@g.o> python-2.5.4-r4.ebuild:
1726 - Stable on amd64 wrt bug #303005
1727 -
1728 -*python-2.6.4-r1 (26 Jan 2010)
1729 -
1730 - 26 Jan 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1731 - +python-2.6.4-r1.ebuild:
1732 - Respect PYTHONDONTWRITEBYTECODE / sys.dont_write_bytecode in distutils.
1733 - Check availability of nis headers before building of nis module (bug #288110).
1734 - Use pkg-config found by AC_PATH_TOOL() to avoid problem during crosscompilation
1735 - (bug #299044). Don't ignore __cmp__() of metaclasses.
1736 -
1737 - 12 Jan 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1738 - python-2.4.6.ebuild, python-2.5.4-r3.ebuild, python-2.5.4-r4.ebuild,
1739 - python-2.6.4.ebuild, python-3.1.1-r1.ebuild:
1740 - Fix building with Portage <2.1.7 (bug #300671).
1741 -
1742 - 01 Jan 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1743 - python-3.1.1-r1.ebuild:
1744 - Respect PYTHONDONTWRITEBYTECODE / sys.dont_write_bytecode in distutils.
1745 - Check availability of nis headers before building of nis module (bug #288110).
1746 - Use pkg-config found by AC_PATH_TOOL() to avoid problem during crosscompilation
1747 - (bug #299044). Depend on >=app-admin/eselect-python-20091230, which allows
1748 - wrapper scipts generated by python_generate_wrapper_scripts() and requiring
1749 - Python-2-specific target scripts to work correctly, when Python 3 is set as
1750 - main active version of Python.
1751 -
1752 -*python-2.5.4-r4 (01 Jan 2010)
1753 -
1754 - 01 Jan 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1755 - +python-2.5.4-r4.ebuild:
1756 - Use external libffi (bug #209673). Respect PYTHONDONTWRITEBYTECODE in
1757 - distutils. Check availability of nis headers before building of nis
1758 - module (bug #288110).
1759 -
1760 - 01 Jan 2010; Brent Baude <ranger@g.o> python-2.6.4.ebuild:
1761 - Marking python-2.6.4 ppc64 for bug 295066
1762 -
1763 - 20 Dec 2009; Raúl Porcel <armin76@g.o> python-2.6.4.ebuild:
1764 - alpha/ia64/m68k/s390/sh/sparc stable wrt #295066
1765 -
1766 - 19 Dec 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1767 - python-2.6.4.ebuild:
1768 - Restrict tests from test_httpservers (bug #293201).
1769 -
1770 - 19 Dec 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1771 - python-3.1.1-r1.ebuild:
1772 - Use --with-computed-gotos (bug #296574).
1773 -
1774 - 13 Dec 2009; Raúl Porcel <armin76@g.o> python-2.6.4.ebuild,
1775 - python-3.1.1-r1.ebuild:
1776 - Add ~m68k, thanks to kolla for testing
1777 -
1778 - 09 Dec 2009; nixnut <nixnut@g.o> python-2.6.4.ebuild:
1779 - ppc stable #295066
1780 -
1781 - 06 Dec 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1782 - python-2.4.6.ebuild, python-2.5.4-r3.ebuild, python-2.6.2-r1.ebuild,
1783 - python-2.6.2-r2.ebuild, python-2.6.3.ebuild, python-2.6.4.ebuild,
1784 - python-3.1.1-r1.ebuild, metadata.xml:
1785 - Remove "ucs2" USE flag and add "wide-unicode" USE flag (bug #293135).
1786 -
1787 - 04 Dec 2009; Jeroen Roovers <jer@g.o> python-2.6.4.ebuild:
1788 - Stable for HPPA (bug #295066).
1789 -
1790 - 03 Dec 2009; Markus Meier <maekke@g.o> python-2.6.4.ebuild:
1791 - amd64/arm/x86 stable, bug #295066
1792 -
1793 - 29 Nov 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1794 - python-2.6.4.ebuild, python-3.1.1-r1.ebuild:
1795 - _ctypes module doesn't work with GCC's internal libffi.
1796 -
1797 - 07 Nov 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1798 - python-3.1.1-r1.ebuild:
1799 - Make logging module ignore absence of multiprocessing module (bug
1800 - #291109).
1801 -
1802 -*python-2.6.4 (30 Oct 2009)
1803 -
1804 - 30 Oct 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1805 - +python-2.6.4.ebuild:
1806 - Version bump.
1807 -
1808 - 24 Oct 2009; Alexey Shvetsov <alexxy@g.o> python-2.6.3.ebuild,
1809 - python-3.1.1-r1.ebuild:
1810 - Add ~mips keyword #287383
1811 -
1812 - 19 Oct 2009; Raúl Porcel <armin76@g.o> python-2.6.2-r1.ebuild:
1813 - s390/sh stable wrt #277645
1814 -
1815 - 17 Oct 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1816 - python-2.5.4-r3.ebuild, python-2.6.3.ebuild, python-3.1.1-r1.ebuild:
1817 - Fix paths passed to python_mod_optimize() and python_mod_cleanup() (bug
1818 - #288354).
1819 -
1820 - 14 Oct 2009; Samuli Suominen <ssuominen@g.o>
1821 - python-3.1.1-r1.ebuild:
1822 - Keyword ~sparc-fbsd wrt #287383.
1823 -
1824 - 14 Oct 2009; Alexis Ballier <aballier@g.o> python-2.6.3.ebuild:
1825 - keyword ~sparc-fbsd
1826 -
1827 - 03 Oct 2009; Fabian Groffen <grobian@g.o> python-2.4.6.ebuild,
1828 - python-2.5.4-r3.ebuild, python-2.6.2-r2.ebuild, python-2.6.3.ebuild,
1829 - python-3.1.1-r1.ebuild:
1830 - Python's _locale module needs libintl, which on non-Linux is in gettext,
1831 - depend on virtual/libintl for that case
1832 -
1833 -*python-2.6.3 (02 Oct 2009)
1834 -
1835 - 02 Oct 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1836 - +python-2.6.3.ebuild:
1837 - Version bump.
1838 -
1839 - 02 Oct 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1840 - python-2.6.2-r2.ebuild, python-3.1.1-r1.ebuild:
1841 - Remove a workaround for missing keywords.
1842 -
1843 - 27 Sep 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1844 - python-2.4.6.ebuild, python-2.5.4-r3.ebuild, python-2.6.2-r2.ebuild,
1845 - python-3.1.1-r1.ebuild:
1846 - Enable "ncurses" and "readline" USE flags by default. Don't activate
1847 - Python 2 when Python 3 is already active. Ensure that Python 2 is
1848 - installed.
1849 -
1850 - 27 Sep 2009; nixnut <nixnut@g.o> python-2.6.2-r1.ebuild:
1851 - ppc stable #277645
1852 -
1853 - 25 Sep 2009; Zac Medico <zmedico@g.o> python-3.1.1.ebuild,
1854 - python-3.1.1-r1.ebuild:
1855 - For python 3, don't remove the encodings directory with USE=build, in
1856 - order to avoid 'Fatal Python error: Py_Initialize: can't initialize sys
1857 - standard streams ImportError: No module named encodings.utf_8'.
1858 -
1859 - 23 Sep 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1860 - python-2.4.6.ebuild, python-2.5.4-r3.ebuild, python-2.6.2-r2.ebuild:
1861 - Fix handling of USE="-berkdb".
1862 -
1863 - 23 Sep 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1864 - python-2.4.6.ebuild, python-2.5.4-r3.ebuild, python-2.6.2-r2.ebuild,
1865 - python-3.1.1-r1.ebuild:
1866 - Add dependency on app-misc/mime-types which is used by mimetypes module.
1867 - Reported by Dirkjan Ochtman.
1868 -
1869 -*python-3.1.1-r1 (22 Sep 2009)
1870 -*python-2.6.2-r2 (22 Sep 2009)
1871 -
1872 - 22 Sep 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1873 - +python-2.6.2-r2.ebuild, +python-3.1.1-r1.ebuild:
1874 - Use external libffi on some architectures (bug #209673).
1875 -
1876 - 22 Sep 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1877 - python-2.4.6.ebuild, python-2.5.4-r3.ebuild, python-2.6.2-r1.ebuild:
1878 - Restrict sys-libs/db dependencies and add warnings (bug #285553).
1879 -
1880 - 21 Sep 2009; Tom Gall <tgall@g.o> python-2.6.2-r1.ebuild:
1881 - stable for ppc64, bug #277645
1882 -
1883 - 17 Sep 2009; Jeroen Roovers <jer@g.o> python-2.6.2-r1.ebuild:
1884 - Stable for HPPA (bug #277645).
1885 -
1886 - 06 Sep 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1887 - -files/python-config-2.4, -python-3.1.ebuild:
1888 - Delete old ebuild and old python-config.
1889 -
1890 - 05 Sep 2009; Raúl Porcel <armin76@g.o> python-2.6.2-r1.ebuild:
1891 - ia64/sparc stable wrt #277645
1892 -
1893 - 01 Sep 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1894 - python-2.6.2-r1.ebuild:
1895 - Fix building on arm OABI (bug #266703).
1896 -
1897 - 30 Aug 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1898 - python-2.4.6.ebuild, python-2.5.4-r3.ebuild, python-2.6.2-r1.ebuild,
1899 - python-3.1.1.ebuild:
1900 - Reenable test_math.py and test_pow.py on alpha (bug #282786).
1901 -
1902 - 28 Aug 2009; Raúl Porcel <armin76@g.o> python-2.6.2-r1.ebuild:
1903 - arm/m68k stable wrt #277645
1904 -
1905 - 26 Aug 2009; Tobias Klausmann <klausman@g.o>
1906 - python-2.6.2-r1.ebuild:
1907 - Stable on alpha, bug #277645
1908 -
1909 - 26 Aug 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1910 - python-2.6.2-r1.ebuild, python-3.1.1.ebuild:
1911 - Skip test_math.py on alpha (bug #282786).
1912 -
1913 - 25 Aug 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1914 - python-2.6.2-r1.ebuild, python-3.1.1.ebuild:
1915 - Fix building of Python 2.6.2-r1 with USE=-threads (bug #282518). Fix
1916 - building with USE=build or USE=-xml (bug #282259). Small updates.
1917 -
1918 - 21 Aug 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1919 - python-2.5.4-r3.ebuild, python-2.6.2-r1.ebuild, python-3.1.1.ebuild:
1920 - Add missing dependency on >=dev-libs/expat-2 and non-zero exit status of
1921 - setup.py when building of extensions has failed (bug #281968).
1922 -
1923 -*python-3.1.1 (17 Aug 2009)
1924 -
1925 - 17 Aug 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1926 - +python-3.1.1.ebuild:
1927 - Version bump. Don't install sqlite3 and _sqlite3 modules with USE="-sqlite"
1928 - (bug #236466).
1929 -
1930 - 16 Aug 2009; Christian Faulhammer <fauli@g.o>
1931 - python-2.6.2-r1.ebuild:
1932 - stable x86, bug 277645
1933 -
1934 - 04 Aug 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1935 - python-3.1.ebuild:
1936 - Fix building with sys-libs/db headers containing non-UTF-8 characters (bug
1937 - #280001).
1938 -
1939 - 02 Aug 2009; Jeremy Olexa <darkside@g.o> metadata.xml:
1940 - Be more verbose about the 'threads' USE flag.
1941 -
1942 -*python-3.1 (01 Aug 2009)
1943 -
1944 - 01 Aug 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1945 - +python-3.1.ebuild:
1946 - Version bump (bug #250186).
1947 -
1948 - 01 Aug 2009; Zac Medico <zmedico@g.o> python-2.6.2-r1.ebuild:
1949 - Bug #248081 - Fix tests not to assume that stdin is a tty.
1950 -
1951 - 31 Jul 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1952 - python-2.5.4-r3.ebuild, python-2.6.2-r1.ebuild:
1953 - Skip test_ctypes on systems with PAX (bug #234498).
1954 -
1955 - 30 Jul 2009; Jeremy Olexa <darkside@g.o> python-2.6.2-r1.ebuild:
1956 - amd64 stable, bug 277645
1957 -
1958 - 19 Jul 2009; Raúl Porcel <armin76@g.o> python-2.5.4-r3.ebuild:
1959 - arm/ia64/m68k/s390/sh/sparc stable wrt #275311
1960 -
1961 - 17 Jul 2009; nixnut <nixnut@g.o> python-2.5.4-r3.ebuild:
1962 - ppc stable #275311
1963 -
1964 - 05 Jul 2009; Markus Meier <maekke@g.o> python-2.5.4-r3.ebuild:
1965 - amd64 stable, bug #275311
1966 -
1967 - 04 Jul 2009; Brent Baude <ranger@g.o> python-2.5.4-r3.ebuild:
1968 - stable ppc64, bug 275311
1969 -
1970 - 30 Jun 2009; Christian Faulhammer <fauli@g.o>
1971 - python-2.5.4-r3.ebuild:
1972 - stable x86, bug 275311
1973 -
1974 - 28 Jun 2009; Tobias Klausmann <klausman@g.o>
1975 - python-2.5.4-r3.ebuild:
1976 - Stable on alpha, bug #275311
1977 -
1978 - 26 Jun 2009; Jeroen Roovers <jer@g.o> python-2.5.4-r3.ebuild:
1979 - Stable for HPPA (bug #275311).
1980 -
1981 -*python-2.6.2-r1 (28 May 2009)
1982 -
1983 - 28 May 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
1984 - +python-2.6.2-r1.ebuild:
1985 - Install libpython2.6.a in /usr/lib instead of /usr/lib/python2.6/config
1986 - (bug #252372). Fix building with Subversion 1.7.
1987 -
1988 - 27 May 2009; Raúl Porcel <armin76@g.o> python-2.4.6.ebuild:
1989 - arm/ia64/m68k/s390/sh/sparc stable wrt #252317
1990 -
1991 - 25 May 2009; Markus Meier <maekke@g.o> python-2.4.6.ebuild:
1992 - amd64 stable, bug #252317
1993 -
1994 - 25 May 2009; Christian Faulhammer <fauli@g.o> python-2.4.6.ebuild:
1995 - stable x86, security bug 252317
1996 -
1997 -*python-2.5.4-r3 (25 May 2009)
1998 -
1999 - 25 May 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
2000 - +python-2.5.4-r3.ebuild:
2001 - Install libpython2.5.a in /usr/lib instead of /usr/lib/python2.5/config
2002 - (bug #252372). Fix building with Subversion 1.7. Use `eselect python`
2003 - instead of alternatives.eclass.
2004 -
2005 - 25 May 2009; Brent Baude <ranger@g.o> python-2.4.6.ebuild:
2006 - Marking python-2.4.6 ppc64 and ppc for bug 252317
2007 -
2008 - 24 May 2009; Jeroen Roovers <jer@g.o> python-2.4.6.ebuild:
2009 - Stable for HPPA (bug #252317).
2010 -
2011 - 24 May 2009; Tobias Klausmann <klausman@g.o> python-2.4.6.ebuild:
2012 - Stable on alpha, bug #252317
2013 -
2014 - 24 May 2009; Tobias Klausmann <klausman@g.o> python-2.4.6.ebuild:
2015 - Keyworded on alpha, bug #252317
2016 -
2017 -*python-2.4.6 (24 May 2009)
2018 -
2019 - 24 May 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
2020 - +python-2.4.6.ebuild:
2021 - Version bump (bug #252317).
2022 -
2023 - 24 Apr 2009; Raúl Porcel <armin76@g.o> python-2.5.4-r2.ebuild:
2024 - arm/ia64/m68k/s390/sh/sparc stable wrt #265790
2025 -
2026 - 22 Apr 2009; Jeroen Roovers <jer@g.o> python-2.5.4-r2:
2027 - Stable for HPPA (bug #265790).
2028 -
2029 - 19 Apr 2009; Markus Meier <maekke@g.o> python-2.5.4-r2:
2030 - amd64/x86 stable, bug #265790
2031 -
2032 - 19 Apr 2009; Brent Baude <ranger@g.o> python-2.5.4-r2.ebuild:
2033 - Marking python-2.5.4-r2 ppc64 and ppc for bug 265790
2034 -
2035 -*python-2.6.2 (18 Apr 2009)
2036 -
2037 - 18 Apr 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@g.o>
2038 - +python-2.6.2.ebuild:
2039 - Version bump (bug #266596).
2040 -
2041 - 18 Apr 2009; Tobias Klausmann <klausman@g.o>
2042 - python-2.5.4-r2.ebuild:
2043 - Stable on alpha, bug #265790
2044 -
2045 - 17 Apr 2009; Joshua Kinard <kumba@g.o> python-2.6-r5.ebuild,
2046 - python-2.6.1-r1.ebuild:
2047 - Python 2.6 has a build failure on MIPS for now. Dropping our unstable
2048 - keywords until it's fixed by upstream or if Upstreams latest patch on
2049 - their bug is added. Refer to #266471 for Gentoo for the tracker, or
2050 - http://bugs.python.org/issue4305 for the Python issue.
2051 -
2052 - 12 Apr 2009; Mike Frysinger <vapier@g.o>
2053 - +files/python-2.6-chflags-cross.patch,
2054 - +files/python-2.6-cross-patch-tweak.patch, python-2.6.1-r1.ebuild:
2055 - Fix up cross-compiling with python-2.6.
2056 -
2057 - 26 Mar 2009; Zac Medico <zmedico@g.o> python-2.5.2-r7.ebuild,
2058 - python-2.5.2-r8.ebuild, python-2.5.4-r2.ebuild, python-2.6-r5.ebuild,
2059 - python-2.6.1-r1.ebuild:
2060 - In src_test, redirect stdin from /dev/tty as a workaround for bug #248081.
2061 -
2062 -*python-2.6.1-r1 (21 Mar 2009)
2063 -
2064 - 21 Mar 2009; Jesus Rivero <neurogeek@g.o> -python-2.6.1.ebuild,
2065 - +python-2.6.1-r1.ebuild:
2066 - Fixed typo in sqlite3 extension. Removed old version
2067 -
2068 - 26 Feb 2009; Mike Frysinger <vapier@g.o>
2069 - +files/python-2.5-cross-printf.patch, python-2.5.2-r7.ebuild,
2070 - python-2.5.2-r8.ebuild, python-2.5.4-r2.ebuild:
2071 - Fix cross-compilation with %zd printf tests #239110 by xeb and #184308 by
2072 - Joel Martin.
2073 -
2074 - 26 Feb 2009; Mike Frysinger <vapier@g.o> python-2.4.4-r5.ebuild,
2075 - python-2.4.4-r6.ebuild, python-2.4.4-r14.ebuild, python-2.4.4-r15.ebuild,
2076 - python-2.5.2-r7.ebuild, python-2.5.2-r8.ebuild, python-2.5.4-r2.ebuild,
2077 - python-2.6-r5.ebuild, python-2.6.1.ebuild:
2078 - Drop host python ver check when cross-compiling since we build up a local
2079 - hostpython, and pass CBUILD to the hostpython configure so it detects the
2080 - full name of the compiler.
2081 -
2082 - 10 Feb 2009; <neurogeek@g.o> python-2.6-r5.ebuild,
2083 - python-2.6.1.ebuild:
2084 - Python 2.6 series. Added +xml use flag to standarize.
2085 -
2086 - 10 Feb 2009; <neurogeek@g.o> python-2.5.2-r7.ebuild,
2087 - python-2.5.2-r8.ebuild, python-2.5.4-r2.ebuild:
2088 - Python 2.5 series. Added +xml use flag to standarize.
2089 -
2090 - 10 Feb 2009; <neurogeek@g.o> python-2.4.4-r5.ebuild,
2091 - python-2.4.4-r6.ebuild, python-2.4.4-r14.ebuild, python-2.4.4-r15.ebuild:
2092 - Python 2.4.4 series. Added +xml use flag to standarize.
2093 -
2094 -*python-2.5.4-r2 (24 Jan 2009)
2095 -
2096 - 24 Jan 2009; Jesus Rivero <neurogeek@g.o> -python-2.5.4-r1.ebuild,
2097 - +python-2.5.4-r2.ebuild:
2098 - Fixed line breaks errors in ebuild. Removed older version. Closes Bug
2099 - #255946. Thanks Walter and Steve for helping
2100 -
2101 -*python-2.5.4-r1 (22 Jan 2009)
2102 -
2103 - 22 Jan 2009; Jesus Rivero <neurogeek@g.o>
2104 - files/python-2.5.2_turkish.patch, files/python-2.6_turkish.patch,
2105 - -python-2.5.4.ebuild, +python-2.5.4-r1.ebuild:
2106 - Rev bump. Patch bundle updated to fix turkish locale patch. Updated older
2107 - patches too and removed previous version.
2108 -
2109 -*python-2.5.4 (21 Jan 2009)
2110 -
2111 - 21 Jan 2009; Jesus Rivero <neurogeek@g.o> +python-2.5.4.ebuild:
2112 - Version bump. Some of the patches used in previous versions are not
2113 - needed.
2114 -
2115 - 24 Dec 2008; Jesus Rivero <neurogeek@g.o> python-2.6-r5.ebuild,
2116 - python-2.6.1.ebuild:
2117 - Added dev-python/python-docs:2.6
2118 -
2119 -*python-2.6.1 (13 Dec 2008)
2120 -
2121 - 13 Dec 2008; Jesus Rivero <neurogeek@g.o>
2122 - +files/python-2.6_turkish.patch, +python-2.6.1.ebuild:
2123 - Version bump
2124 -
2125 - 09 Dec 2008; Mike Frysinger <vapier@g.o> python-2.5.2-r8.ebuild,
2126 - python-2.6-r5.ebuild:
2127 - Set expat to default to on.
2128 -
2129 - 08 Dec 2008; Mike Frysinger <vapier@g.o> python-2.5.2-r8.ebuild,
2130 - python-2.6-r5.ebuild:
2131 - Make dev-libs/expat optional via USE=expat.
2132 -
2133 - 06 Dec 2008; Jesus Rivero <neurogeek@g.o>
2134 - +files/python-2.5.2_turkish.patch, python-2.5.2-r8.ebuild:
2135 - Fixed support for tr_TR locale. Bug #250075. Thanks to Serkan
2136 -
2137 -*python-2.6-r5 (17 Nov 2008)
2138 -
2139 - 17 Nov 2008; <neurogeek@g.o> -python-2.6-r4.ebuild,
2140 - +python-2.6-r5.ebuild:
2141 - Revision bump. Fixes Bug #219238. Removed older version
2142 -
2143 - 26 Oct 2008; Ali Polatel <hawking@g.o> python-2.4.4-r5.ebuild,
2144 - python-2.4.4-r6.ebuild, python-2.4.4-r14.ebuild, python-2.4.4-r15.ebuild,
2145 - python-2.5.2-r7.ebuild, python-2.5.2-r8.ebuild:
2146 - Use python_{en,dis}able_pyc.
2147 -
2148 -*python-2.6-r4 (26 Oct 2008)
2149 -
2150 - 26 Oct 2008; Ali Polatel <hawking@g.o> +python-2.6-r4.ebuild:
2151 - Revbump. Updated patchset to use PYTHONDONTWRITEBYTECODE instead of
2152 - PYTHON_DONT_COMPILE.
2153 -
2154 - 25 Oct 2008; Ali Polatel <hawking@g.o> python-2.5.2-r7.ebuild,
2155 - python-2.5.2-r8.ebuild, python-2.6-r3.ebuild:
2156 - Nuke the useless bootstrap USE flag for >=python-2.5. Thanks to Arfrever.
2157 -
2158 -*python-2.6-r3 (25 Oct 2008)
2159 -
2160 - 25 Oct 2008; Ali Polatel <hawking@g.o> -python-2.6-r2.ebuild,
2161 - +python-2.6-r3.ebuild:
2162 - Revbump. Bump eselect-python DEPEND to fix bug 240149. Don't install empty
2163 - directories.
2164 -
2165 -*python-2.6-r2 (07 Oct 2008)
2166 -
2167 - 07 Oct 2008; Ali Polatel <hawking@g.o> -python-2.6-r1.ebuild,
2168 - +python-2.6-r2.ebuild:
2169 - Revbump. Bump to EAPI 2 and some minor fixes. Drop old.
2170 -
2171 -*python-2.6-r1 (06 Oct 2008)
2172 -
2173 - 06 Oct 2008; Ali Polatel <hawking@g.o> -python-2.6.ebuild,
2174 - +python-2.6-r1.ebuild:
2175 - Revbump. Use use_with for threads, remove die from econf, use emake
2176 - instead of make, remove redundant python_mod_{cleanup,optimize}. Drop old.
2177 -
2178 -*python-2.6 (05 Oct 2008)
2179 -
2180 - 05 Oct 2008; Ali Polatel <hawking@g.o>
2181 - +files/python-2.6-test-cross.patch, -python-2.5.2-r6.ebuild,
2182 - +python-2.6.ebuild:
2183 - Version bump. Drop old.
2184 -
2185 -*python-2.5.2-r8 (19 Sep 2008)
2186 -*python-2.4.4-r15 (19 Sep 2008)
2187 -
2188 - 19 Sep 2008; Ali Polatel <hawking@g.o> +python-2.4.4-r15.ebuild,
2189 - +python-2.5.2-r8.ebuild:
2190 - Revbumps. Updated patchset to fix bug 238124. Install examples under
2191 - /usr/share/doc/$PF/examples.
2192 -
2193 - 17 Sep 2008; Brent Baude <ranger@g.o> python-2.5.2-r7.ebuild:
2194 - stable ppc64, bug 236723
2195 -
2196 - 14 Sep 2008; Sven Wegener <swegener@g.o> python-2.5.2-r6.ebuild,
2197 - python-2.5.2-r7.ebuild:
2198 - Use correct sqlite module name, when disabling it.
2199 -
2200 - 12 Sep 2008; Raúl Porcel <armin76@g.o> python-2.5.2-r7.ebuild:
2201 - alpha/ia64 stable wrt #236723
2202 -
2203 - 12 Sep 2008; Ferris McCormick <fmccor@g.o> python-2.5.2-r7.ebuild:
2204 - Sparc stable --- Bug #236723 --- tests all good.
2205 -
2206 - 11 Sep 2008; Markus Meier <maekke@g.o> python-2.5.2-r7.ebuild:
2207 - amd64/x86 stable, bug #236723
2208 -
2209 - 11 Sep 2008; Jeroen Roovers <jer@g.o> python-2.5.2-r7.ebuild:
2210 - Stable for HPPA (bug #236723).
2211 -
2212 - 10 Sep 2008; Brent Baude <ranger@g.o> python-2.5.2-r7.ebuild:
2213 - stable ppc, bug 236723
2214 -
2215 - 19 Aug 2008; Ali Polatel <hawking@g.o> -files/python-config-2.2,
2216 - -files/python-config-2.3, -files/python-2.3.6-disable-failing-tests.patch,
2217 - metadata.xml, -python-2.3.5-r2.ebuild, -python-2.3.5-r3.ebuild,
2218 - -python-2.3.6.ebuild, -python-2.3.6-r3.ebuild, -python-2.3.6-r6.ebuild,
2219 - -python-2.4.4-r13.ebuild, -python-2.5.2-r5.ebuild:
2220 - Drop python-2.3, drop old 2.4, 2.5 ebuilds. Add local use flag
2221 - descriptions to metadata.xml.
2222 -
2223 - 31 Jul 2008; Raúl Porcel <armin76@g.o> python-2.5.2-r6.ebuild:
2224 - sparc stable
2225 -
2226 -*python-2.5.2-r7 (31 Jul 2008)
2227 -
2228 - 31 Jul 2008; Tiziano Müller <dev-zero@g.o>
2229 - +python-2.5.2-r7.ebuild:
2230 - Added patches for bug #218378 (thanks to Duane Griffin) and bug #233312
2231 - (thanks to Arfrever Frehtes Taifersar Arahesis).
2232 -
2233 -*python-2.5.2-r6 (31 Jul 2008)
2234 -*python-2.4.4-r14 (31 Jul 2008)
2235 -
2236 - 31 Jul 2008; Tiziano Müller <dev-zero@g.o>
2237 - +python-2.4.4-r14.ebuild, +python-2.5.2-r6.ebuild:
2238 - Revision bump to fix bug #230640 (CVE-2008-2315, CVE-2008-2316) and bug
2239 - #232137 (CVE-2008-{3142,3143,3144}).
2240 -
2241 - 18 Jul 2008; Olivier Crête <tester@g.o> python-2.5.2-r5.ebuild:
2242 - Stable on amd64, bug #178800
2243 -
2244 - 18 Jul 2008; Jeroen Roovers <jer@g.o> python-2.5.2-r5.ebuild:
2245 - Stable for HPPA (bug #178800).
2246 -
2247 - 17 Jul 2008; Tobias Klausmann <klausman@g.o>
2248 - python-2.5.2-r5.ebuild:
2249 - Stable on alpha, bug #178800
2250 -
2251 - 17 Jul 2008; Raúl Porcel <armin76@g.o> python-2.5.2-r5.ebuild:
2252 - ia64/sparc stable wrt #178800
2253 -
2254 - 17 Jul 2008; Christian Faulhammer <opfer@g.o>
2255 - python-2.5.2-r5.ebuild:
2256 - stable x86, bug 178800
2257 -
2258 - 16 Jul 2008; nixnut <nixnut@g.o> python-2.5.2-r5.ebuild:
2259 - Stable on ppc wrt bug 178800
2260 -
2261 - 09 Jul 2008; Markus Rothe <corsair@g.o> python-2.5.2-r5.ebuild:
2262 - Stable on ppc64; bug #178800
2263 -
2264 - 30 Jun 2008; Ali Polatel <hawking@g.o> files/pydoc.conf,
2265 - files/pydoc.init:
2266 - Fixed files/pydoc* headers
2267 -
2268 -*python-2.5.2-r5 (24 Jun 2008)
2269 -
2270 - 24 Jun 2008; Ali Polatel <hawking@g.o> -python-2.3.6-r4.ebuild,
2271 - -python-2.3.6-r5.ebuild, -python-2.4.4-r9.ebuild,
2272 - -python-2.4.4-r10.ebuild, -python-2.4.4-r11.ebuild,
2273 - -python-2.4.4-r12.ebuild, -python-2.5.2-r1.ebuild,
2274 - -python-2.5.2-r2.ebuild, -python-2.5.2-r3.ebuild, -python-2.5.2-r4.ebuild,
2275 - +python-2.5.2-r5.ebuild:
2276 - Revbump. Append -fwrapv to CFLAGS if we're using gcc-4, #228905. Updated
2277 - patchset to fix memory issues with unicode objects, #222481. Drop old.
2278 -
2279 - 20 Jun 2008; Ali Polatel <hawking@g.o> python-2.5.2-r4.ebuild:
2280 - Fix bsddb dependency, bug 223133. Cosmetics
2281 -
2282 - 29 May 2008; Ali Polatel <hawking@g.o> python-2.3.5-r2.ebuild,
2283 - python-2.3.5-r3.ebuild, python-2.3.6.ebuild, python-2.3.6-r3.ebuild,
2284 - python-2.3.6-r4.ebuild, python-2.3.6-r5.ebuild, python-2.3.6-r6.ebuild,
2285 - python-2.4.4-r5.ebuild, python-2.4.4-r6.ebuild, python-2.4.4-r9.ebuild,
2286 - python-2.4.4-r10.ebuild, python-2.4.4-r11.ebuild, python-2.4.4-r12.ebuild,
2287 - python-2.4.4-r13.ebuild, python-2.5.2-r1.ebuild, python-2.5.2-r2.ebuild,
2288 - python-2.5.2-r3.ebuild, python-2.5.2-r4.ebuild:
2289 - Fix -x option passed to python_mod_optimize, thanks to Remy Blank,
2290 - #224137.
2291 -
2292 - 29 May 2008; Ali Polatel <hawking@g.o> python-2.3.5-r2.ebuild,
2293 - python-2.3.5-r3.ebuild, python-2.3.6.ebuild, python-2.3.6-r3.ebuild,
2294 - python-2.3.6-r4.ebuild, python-2.3.6-r5.ebuild, python-2.3.6-r6.ebuild,
2295 - python-2.4.4-r5.ebuild, python-2.4.4-r6.ebuild, python-2.4.4-r9.ebuild,
2296 - python-2.4.4-r10.ebuild, python-2.4.4-r11.ebuild, python-2.4.4-r12.ebuild,
2297 - python-2.4.4-r13.ebuild, python-2.5.2-r1.ebuild, python-2.5.2-r2.ebuild,
2298 - python-2.5.2-r3.ebuild, python-2.5.2-r4.ebuild:
2299 - python_mod_optimize is ROOT aware.
2300 -
2301 - 28 May 2008; Markus Meier <maekke@g.o> python-2.3.6-r6.ebuild,
2302 - python-2.4.4-r13.ebuild:
2303 - amd64/x86 stable, security bug #216673
2304 -
2305 - 27 May 2008; Markus Rothe <corsair@g.o> python-2.3.6-r6.ebuild,
2306 - python-2.4.4-r13.ebuild:
2307 - Stable on ppc64; bug #216673
2308 -
2309 - 26 May 2008; Tobias Scherbaum <dertobi123@g.o>
2310 - python-2.3.6-r6.ebuild, python-2.4.4-r13.ebuild:
2311 - ppc stable, bug #216673
2312 -
2313 - 26 May 2008; Raúl Porcel <armin76@g.o> python-2.3.6-r6.ebuild,
2314 - python-2.4.4-r13.ebuild:
2315 - ia64/sparc stable wrt security #216673
2316 -
2317 - 25 May 2008; Tobias Klausmann <klausman@g.o>
2318 - python-2.3.6-r6.ebuild:
2319 - Stable on alpha, bug #216673
2320 -
2321 - 25 May 2008; Tobias Klausmann <klausman@g.o>
2322 - python-2.4.4-r13.ebuild:
2323 - Stable on alpha, bug #216673
2324 -
2325 - 25 May 2008; Ali Polatel <hawking@g.o>
2326 - +files/python-2.3.6-disable-failing-tests.patch, python-2.3.6-r6.ebuild,
2327 - python-2.4.4-r13.ebuild, python-2.5.2-r4.ebuild:
2328 - Added patch to disable failing test_bsddb test for 2.3. Disable test_pow
2329 - on alpha until upstream comes up with a fix.
2330 -
2331 - 24 May 2008; Jeroen Roovers <jer@g.o> python-2.3.6-r6.ebuild,
2332 - python-2.4.4-r13.ebuild:
2333 - Stable for HPPA (bug #216673).
2334 -
2335 -*python-2.5.2-r4 (21 May 2008)
2336 -*python-2.4.4-r13 (21 May 2008)
2337 -*python-2.3.6-r6 (21 May 2008)
2338 -
2339 - 21 May 2008; Ali Polatel <hawking@g.o> +python-2.3.6-r6.ebuild,
2340 - +python-2.4.4-r13.ebuild, +python-2.5.2-r4.ebuild:
2341 - Revision bumps. Don't build the imageop module on 32 bit as well, #216673.
2342 -
2343 - 13 May 2008; Ali Polatel <hawking@g.o> python-2.4.4-r12.ebuild,
2344 - python-2.5.2-r3.ebuild:
2345 - Drop dev-python/python-fchksum from PDEPEND. It's not needed anymore.
2346 -
2347 -*python-2.5.2-r3 (13 May 2008)
2348 -*python-2.4.4-r12 (13 May 2008)
2349 -
2350 - 13 May 2008; Ali Polatel <hawking@g.o> +python-2.4.4-r12.ebuild,
2351 - +python-2.5.2-r3.ebuild:
2352 - Revbumps. Updated CXXFLAGS patch so packages overriding
2353 - distutils.CCompiler._compile won't fail to build, #219238. Added patch to
2354 - fix executable stack for ctypes, thanks to Sandro Bonazzola, #218753.
2355 - Added patch to build with system expat, thanks to Diego, #178921.
2356 -
2357 -*python-2.5.2-r2 (19 Apr 2008)
2358 -*python-2.4.4-r11 (19 Apr 2008)
2359 -
2360 - 19 Apr 2008; Ali Polatel <hawking@g.o> +python-2.4.4-r11.ebuild,
2361 - +python-2.5.2-r2.ebuild:
2362 - Revbumps. Updated patchset to fix compilation of extensions when CXXFLAGS
2363 - is unset.
2364 -
2365 -*python-2.5.2-r1 (18 Apr 2008)
2366 -
2367 - 18 Apr 2008; Ali Polatel <hawking@g.o> python-2.3.5-r2.ebuild,
2368 - python-2.3.5-r3.ebuild, python-2.3.6.ebuild, -python-2.3.6-r2.ebuild,
2369 - python-2.3.6-r3.ebuild, -python-2.4.4-r4.ebuild, python-2.4.4-r5.ebuild,
2370 - -python-2.4.4-r7.ebuild, -python-2.4.4-r8.ebuild, -python-2.5.1-r2.ebuild,
2371 - -python-2.5.1-r3.ebuild, -python-2.5.1-r4.ebuild, -python-2.5.1-r5.ebuild,
2372 - -python-2.5.2.ebuild, +python-2.5.2-r1.ebuild:
2373 - Revbump. Updated patchset. Backported upstream patch to make file objects
2374 - as thread safe as the underlying libc FILE* implementation. Backported
2375 - upstream patch fixing a bunch of infinite C recursions. Dropped old.
2376 - Quoting.
2377 -
2378 -*python-2.5.2 (18 Apr 2008)
2379 -*python-2.4.4-r10 (18 Apr 2008)
2380 -*python-2.3.6-r5 (18 Apr 2008)
2381 -
2382 - 18 Apr 2008; Ali Polatel <hawking@g.o> +python-2.3.6-r5.ebuild,
2383 - +python-2.4.4-r10.ebuild, +python-2.5.2.ebuild:
2384 - Version bumps. Updated patchsets to fix buffer overflow in zlib extension
2385 - (CVE-2008-1721) bug 217221 and unsafe PyString_FromStringAndSize(). Added
2386 - patch by Mark Peloquin for distutils to respect CXXFLAGS, bug 145206. Add
2387 - wininst USE flag to conditionally install MS Windows executables, bug
2388 - 198021. Use EAPI=1, rename nothreads and nocxx USE flags to threads and
2389 - cxx.
2390 -
2391 - 11 Mar 2008; Markus Rothe <corsair@g.o> python-2.4.4-r9.ebuild:
2392 - Stable on ppc64; bug #211281
2393 -
2394 - 11 Mar 2008; Tiziano Müller <dev-zero@g.o> python-2.4.4-r9.ebuild,
2395 - python-2.5.1-r5.ebuild:
2396 - Changed newinitd/newconfd for pydoc to install the init.d/conf.d scripts as
2397 - pydoc-2.x (aka don't break slotting)
2398 -
2399 - 06 Mar 2008; nixnut <nixnut@g.o> python-2.4.4-r9.ebuild:
2400 - Stable on ppc wrt bug 211281
2401 -
2402 - 03 Mar 2008; Christoph Mende <angelos@g.o> python-2.4.4-r9.ebuild:
2403 - Stable on amd64, bug #211281
2404 -
2405 - 03 Mar 2008; Raúl Porcel <armin76@g.o> python-2.4.4-r9.ebuild:
2406 - alpha/ia64/sparc/x86 stable wrt #211281
2407 -
2408 - 03 Mar 2008; Jeroen Roovers <jer@g.o> python-2.4.4-r9.ebuild:
2409 - Stable for HPPA (bug #211281).
2410 -
2411 - 01 Mar 2008; Tiziano Müller <dev-zero@g.o> +files/pydoc.conf,
2412 - +files/pydoc.init, python-2.4.4-r9.ebuild, python-2.5.1-r5.ebuild:
2413 - Added init.d/conf.d scripts for the integrated pydoc webserver (bug #59903,
2414 - thanks to compnerd).
2415 -
2416 -*python-2.4.4-r9 (16 Feb 2008)
2417 -
2418 - 16 Feb 2008; Christian Faulhammer <opfer@g.o>
2419 - +python-2.4.4-r9.ebuild:
2420 - fix bug 179377, with a dependency adjustment to proper slots of sys-libs/db,
2421 - provided by Petr Pisar <petr DOT pisar AT atlas DOT cz>
2422 -
2423 - 25 Jan 2008; Markus Rothe <corsair@g.o> python-2.3.6-r4.ebuild:
2424 - Stable on ppc64; bug #198373
2425 -
2426 - 23 Jan 2008; Peter Weller <welp@g.o> python-2.3.6-r4.ebuild:
2427 - Stable on amd64; bug 198373
2428 -
2429 - 23 Jan 2008; Raúl Porcel <armin76@g.o> python-2.3.6-r4.ebuild:
2430 - alpha/ia64/sparc stable wrt security #198373
2431 -
2432 - 23 Jan 2008; Christian Faulhammer <opfer@g.o>
2433 - python-2.3.6-r4.ebuild:
2434 - stable x86, security bug 198373
2435 -
2436 - 23 Jan 2008; Jeroen Roovers <jer@g.o> python-2.3.6-r4.ebuild:
2437 - Stable for HPPA (bug #198373).
2438 -
2439 - 23 Jan 2008; Brent Baude <ranger@g.o> python-2.3.6-r4.ebuild:
2440 - Marking python-2.3.6-r4 ppc for bug 198373
2441 -
2442 -*python-2.3.6-r4 (22 Jan 2008)
2443 -
2444 - 22 Jan 2008; Ali Polatel <hawking@g.o> +python-2.3.6-r4.ebuild:
2445 - Revision bump. New patchset for 2.3.6 including fixes for #198373 and #204343.
2446 - Changed berkdb DEPEND, quoting.
2447 -
2448 -*python-2.5.1-r5 (07 Jan 2008)
2449 -*python-2.4.4-r8 (07 Jan 2008)
2450 -
2451 - 07 Jan 2008; Ali Polatel <hawking@g.o> +python-2.4.4-r8.ebuild,
2452 - +python-2.5.1-r5.ebuild:
2453 - Revision bump(s). New patchsets for 2.4.4 and 2.5.1 wrt #204700 and #204343
2454 -
2455 -*python-2.5.1-r4 (18 Nov 2007)
2456 -*python-2.4.4-r7 (18 Nov 2007)
2457 -
2458 - 18 Nov 2007; Ali Polatel <hawking@g.o> +python-2.4.4-r7.ebuild,
2459 - +python-2.5.1-r4.ebuild:
2460 - revbump(s). don't install windows executables, bug 198021. updated patchset
2461 - to fix implicit dependency on openssl, bug 198398. fix quoting.
2462 -
2463 - 27 Oct 2007; Tobias Scherbaum <dertobi123@g.o>
2464 - python-2.3.6-r3.ebuild, python-2.4.4-r6.ebuild:
2465 - ppc stable, bug #192876
2466 -
2467 - 26 Oct 2007; Ali Polatel <hawking@g.o> python-2.4.4-r4.ebuild,
2468 - python-2.4.4-r5.ebuild, python-2.4.4-r6.ebuild:
2469 - Changed SRC_URI of python-gentoo-patches-2.4* to mirror://gentoo
2470 -
2471 - 25 Oct 2007; Jeroen Roovers <jer@g.o> python-2.4.4-r6.ebuild:
2472 - Stable for HPPA (bug #192876). Fixed quoting issues.
2473 -
2474 - 25 Oct 2007; Jeroen Roovers <jer@g.o> python-2.3.6-r3.ebuild:
2475 - Stable for HPPA (bug #192876).
2476 -
2477 - 25 Oct 2007; Raúl Porcel <armin76@g.o> python-2.3.6-r3.ebuild,
2478 - python-2.4.4-r6.ebuild:
2479 - alpha/ia64/sparc stable wrt security #192876
2480 -
2481 - 25 Oct 2007; Daniel Gryniewicz <dang@g.o> python-2.3.6-r3.ebuild,
2482 - python-2.4.4-r6.ebuild:
2483 - Marked stable on amd64 for bug #192876
2484 -
2485 - 25 Oct 2007; Markus Rothe <corsair@g.o> python-2.3.6-r3.ebuild,
2486 - python-2.4.4-r6.ebuild:
2487 - Stable on ppc64; bug #192876
2488 -
2489 - 25 Oct 2007; Christian Faulhammer <opfer@g.o>
2490 - python-2.3.6-r3.ebuild:
2491 - stable x86, security bug 192876
2492 -
2493 - 25 Oct 2007; Christian Faulhammer <opfer@g.o>
2494 - python-2.4.4-r6.ebuild:
2495 - stable x86, security bug 192876
2496 -
2497 -*python-2.5.1-r3 (24 Oct 2007)
2498 -*python-2.4.4-r6 (24 Oct 2007)
2499 -*python-2.3.6-r3 (24 Oct 2007)
2500 -
2501 - 24 Oct 2007; Ali Polatel <hawking@g.o> +python-2.3.6-r3.ebuild,
2502 - +python-2.4.4-r6.ebuild, +python-2.5.1-r3.ebuild:
2503 - revbump(s). fix imageop integer overflows (CVE-2007-4965), bug 192876
2504 -
2505 - 26 Sep 2007; Joshua Kinard <kumba@g.o> python-2.4.4-r5.ebuild:
2506 - Stable on mips, per #188029.
2507 -
2508 - 24 Sep 2007; Ali Polatel <hawking@g.o> python-2.5.1-r2.ebuild:
2509 - don't set LINKCC, removed nocxx use flag. don't pass --with-cxx=no to
2510 - configure. bug 193190
2511 -
2512 - 22 Sep 2007; Jeroen Roovers <jer@g.o> python-2.4.4-r5.ebuild:
2513 - Stable for HPPA (bug #188029).
2514 -
2515 - 22 Sep 2007; Ferris McCormick <fmccor@g.o> python-2.4.4-r5.ebuild:
2516 - Sparc stable --- Bug #188029 --- all tests pass and portage still works.
2517 -
2518 - 22 Sep 2007; Brent Baude <ranger@g.o> ChangeLog:
2519 - MArking python-2.4.4-r5 ppc64 for bug 188029
2520 -
2521 - 22 Sep 2007; nixnut <nixnut@g.o> python-2.4.4-r5.ebuild:
2522 - Stable on ppc wrt bug 188029
2523 -
2524 - 22 Sep 2007; Tom Gall <tgall@g.o> python-2.4.4-r5.ebuild:
2525 - stable on ppc64
2526 -
2527 - 21 Sep 2007; Raúl Porcel <armin76@g.o> python-2.4.4-r5.ebuild:
2528 - alpha/ia64 stable wrt #188029
2529 -
2530 - 21 Sep 2007; Chris Gianelloni <wolf31o2@g.o>
2531 - python-2.4.4-r5.ebuild:
2532 - Stable on x86 wrt bug #188029.
2533 -
2534 - 21 Sep 2007; Daniel Gryniewicz <dang@g.o> python-2.4.4-r5.ebuild:
2535 - Marked stable on amd64 for bug #188029
2536 -
2537 - 10 Sep 2007; Joel Martin <kanaka@g.o>
2538 - +files/python-2.4.4-test-cross.patch, python-2.4.4-r4.ebuild,
2539 - python-2.4.4-r5.ebuild, python-2.5.1-r2.ebuild:
2540 - Fix cross-compile check and add small cross-compile patch to remove unicode
2541 - in one of the tests when cross-compiling.
2542 -
2543 - 08 Sep 2007; Zac Medico <zmedico@g.o>
2544 - python-2.4.4-r4.ebuild, python-2.4.4-r5.ebuild:
2545 - Add build? ( !dev-python/pycrypto ) to RDEPEND in order to enforce
2546 - correct merge order for a stage building issue similar to bug #88777.
2547 -
2548 - 07 Sep 2007; Ali Polatel <hawking@g.o>
2549 - -files/python-2.4.3-db4.patch, -files/python-2.4.3-gentoo_obsd.patch,
2550 - -files/python-2.4.3-gentoo_obsd-r1.patch, -python-2.4.3-r1.ebuild,
2551 - -python-2.4.3-r4.ebuild, -python-2.4.4.ebuild, -python-2.5-r2.ebuild:
2552 - Clean out old versions
2553 -
2554 - 03 Sep 2007; Zac Medico <zmedico@g.o> python-2.4.4-r4.ebuild,
2555 - python-2.4.4-r5.ebuild, python-2.5-r2.ebuild, python-2.5.1-r2.ebuild:
2556 - Add build? ( !dev-python/python-fchksum ) to RDEPEND in order
2557 - to enforce correct merge order for bug #88777.
2558 -
2559 -*python-2.4.4-r5 (24 Aug 2007)
2560 -
2561 - 24 Aug 2007; Ali Polatel <hawking@g.o> +files/python-config-2.4-r1,
2562 - +python-2.4.4-r5.ebuild:
2563 - Revision bump. Use python-config provided by python-2.5 with small changes
2564 - instead of our custom python-config-2.4. bug 188029
2565 -
2566 - 20 Aug 2007; Roy Marples <uberlord@g.o> python-2.5.1-r2.ebuild:
2567 - export LDFLAGS="-L." -> append-ldflags "-L.", #189298
2568 - thanks to Arfrever Frehtes Taifersar Arahesis.
2569 -
2570 - 02 Jul 2007; Piotr Jaroszyński <peper@g.o> python-2.3.5-r2.ebuild,
2571 - python-2.3.5-r3.ebuild, python-2.3.6.ebuild, python-2.3.6-r2.ebuild,
2572 - python-2.4.3-r1.ebuild, python-2.4.3-r4.ebuild, python-2.4.4.ebuild,
2573 - python-2.4.4-r4.ebuild, python-2.5-r2.ebuild, python-2.5.1-r2.ebuild:
2574 - (QA) RESTRICT clean up.
2575 -
2576 - 30 Jun 2007; Lars Weiler <pylon@g.o> python-2.3.6-r2.ebuild,
2577 - python-2.5.1-r2.ebuild:
2578 - Keyworded ~ppc; bug #177426.
2579 -
2580 - 31 May 2007; Bryan Østergaard <kloeri@g.o> metadata.xml:
2581 - Remove myself as I'm retiring.
2582 -
2583 - 19 May 2007; Peter Weller <welp@g.o> python-2.5.1-r2.ebuild:
2584 - Keyworded ~amd64 wrt bug 177426
2585 -
2586 - 19 May 2007; Peter Weller <welp@g.o> python-2.3.6-r2.ebuild:
2587 - Added ~amd64 to python-2.3.6-r2
2588 -
2589 - 17 May 2007; Bryan Østergaard <kloeri@g.o> metadata.xml:
2590 - Mark myself as maintainer.
2591 -
2592 - 16 May 2007; Tobias Scherbaum <dertobi123@g.o>
2593 - python-2.4.4-r4.ebuild:
2594 - ppc stable, bug #177804
2595 -
2596 - 16 May 2007; Daniel Gryniewicz <dang@g.o> python-2.4.4-r4.ebuild:
2597 - Marked stable on amd64 for bug #177804
2598 -
2599 - 14 May 2007; Gustavo Zacarias <gustavoz@g.o>
2600 - python-2.3.6-r2.ebuild, python-2.5.1-r2.ebuild:
2601 - Keyworded ~sparc wrt #177426
2602 -
2603 - 14 May 2007; Bryan Østergaard <kloeri@g.o> python-2.4.4-r4.ebuild:
2604 - Stable on Alpha and Mips.
2605 -
2606 - 14 May 2007; Daniel Gryniewicz <dang@g.o> python-2.4.4-r4.ebuild:
2607 - Marked ~amd64 for bug #177804
2608 -
2609 - 14 May 2007; Bryan Østergaard <kloeri@g.o> python-2.4.4-r4.ebuild:
2610 - Fix 2.4.4-r4 tests always being disabled.
2611 -
2612 - 14 May 2007; Gustavo Zacarias <gustavoz@g.o>
2613 - python-2.4.4-r4.ebuild:
2614 - Stable on sparc wrt security #177804
2615 -
2616 - 14 May 2007; Bryan Østergaard <kloeri@g.o> python-2.3.6-r2.ebuild,
2617 - python-2.4.4-r4.ebuild, -python-2.5.1-r1.ebuild, python-2.5.1-r2.ebuild:
2618 - Fix small bug preventing tests from running, fix manpage symlinks (bug
2619 - 177471) and filter as-needed in python-2.3.6-r2 (bug 177614).
2620 -
2621 - 14 May 2007; Jeroen Roovers <jer@g.o> python-2.4.4-r4.ebuild:
2622 - Stable for HPPA (bug #177804).
2623 -
2624 - 13 May 2007; Markus Rothe <corsair@g.o> python-2.4.4-r4.ebuild:
2625 - Stable on ppc64; bug #177804
2626 -
2627 - 12 May 2007; Roy Marples <uberlord@g.o> python-2.4.4-r4.ebuild:
2628 - Added ~sparc-fbsd keyword.
2629 -
2630 - 12 May 2007; Raúl Porcel <armin76@g.o> python-2.4.4-r4.ebuild:
2631 - ia64 + x86 stable wrt security bug #177804
2632 -
2633 - 12 May 2007; Markus Rothe <corsair@g.o> python-2.3.6-r2.ebuild,
2634 - python-2.4.4-r4.ebuild, python-2.5.1-r2.ebuild:
2635 - Added ~ppc64; bug #177426
2636 -
2637 - 11 May 2007; Bryan Østergaard <kloeri@g.o> python-2.4.4-r4.ebuild,
2638 - python-2.5.1-r2.ebuild:
2639 - Add ~alpha and ~mips keywords.
2640 -
2641 - 11 May 2007; Bryan Østergaard <kloeri@g.o>
2642 - -python-2.1.3-r1.ebuild, -python-2.2.3-r6.ebuild:
2643 - More cleanups, this time removing <python-2.3.
2644 -
2645 - 11 May 2007; Bryan Østergaard <kloeri@g.o>
2646 - -python-2.3.6-r1.ebuild, -python-2.4.4-r2.ebuild, -python-2.4.4-r3.ebuild,
2647 - -python-2.5-r1.ebuild, -python-2.5.1.ebuild:
2648 - Clean out some old versions.
2649 -
2650 -*python-2.5.1-r2 (11 May 2007)
2651 -*python-2.4.4-r4 (11 May 2007)
2652 -
2653 - 11 May 2007; Bryan Østergaard <kloeri@g.o>
2654 - +python-2.4.4-r4.ebuild, +python-2.5.1-r2.ebuild:
2655 - Only apply crosscompile patch conditionally, drop tests if crosscompiling
2656 - and fix PyLocale.strxfrm leak from bug 177804. srtxfrm from Debian bug
2657 - 416934
2658 -
2659 -*python-2.5.1-r1 (10 May 2007)
2660 -*python-2.4.4-r3 (10 May 2007)
2661 -*python-2.3.6-r2 (10 May 2007)
2662 -
2663 - 10 May 2007; Bryan Østergaard <kloeri@g.o>
2664 - +python-2.3.6-r2.ebuild, +python-2.4.4-r3.ebuild, +python-2.5.1-r1.ebuild:
2665 - Change threads USE flag to nothreads, fix non-linux linker issue and fix
2666 - man-page symlink.
2667 -
2668 - 08 May 2007; Roy Marples <uberlord@g.o> python-2.5.1.ebuild:
2669 - Added ~sparc-fbsd keyword, #177426.
2670 - Added ~x86-fbsd keyword, #177426.
2671 - export LDFLAGS="-L." so we link modules correctly on FreeBSD and possibly
2672 - other systems where python2.5 isn't installed yet.
2673 -
2674 - 08 May 2007; Raúl Porcel <armin76@g.o> python-2.3.6-r1.ebuild,
2675 - python-2.4.4-r2.ebuild, python-2.5.1.ebuild:
2676 - Add ~ia64 wrt 177426
2677 -
2678 - 08 May 2007; Roy Marples <uberlord@g.o> python-2.4.4-r2.ebuild:
2679 - Added ~x86-fbsd keyword, #177426.
2680 -
2681 - 08 May 2007; Bryan Østergaard <kloeri@g.o> python-2.3.6-r1.ebuild,
2682 - python-2.4.4-r2.ebuild, python-2.5.1.ebuild:
2683 - Change nptl USE flag to threads.
2684 -
2685 - 08 May 2007; Jeroen Roovers <jer@g.o> python-2.5.1.ebuild:
2686 - Marked ~hppa (bug #177426).
2687 -
2688 - 07 May 2007; Jeroen Roovers <jer@g.o> python-2.4.4-r2.ebuild:
2689 - Marked ~hppa (bug #177426).
2690 -
2691 - 07 May 2007; Jeroen Roovers <jer@g.o> python-2.3.6-r1.ebuild:
2692 - Marked ~hppa (bug #177426).
2693 -
2694 -*python-2.4.4-r2 (07 May 2007)
2695 -
2696 - 07 May 2007; Bryan Østergaard <kloeri@g.o>
2697 - -python-2.4.4-r1.ebuild, +python-2.4.4-r2.ebuild:
2698 - Fix broken 2.4.4 patch causing wrong linking.
2699 -
2700 - 07 May 2007; Gustavo Zacarias <gustavoz@g.o> python-2.4.4.ebuild:
2701 - Stable on sparc
2702 -
2703 - 07 May 2007; Bryan Østergaard <kloeri@g.o> python-2.3.6-r1.ebuild,
2704 - python-2.4.4.ebuild, python-2.4.4-r1.ebuild:
2705 - Fix 2.3.6-r1 patch (bug 177464) and disable sax test in 2.4.4.
2706 -
2707 - 07 May 2007; Bryan Østergaard <kloeri@g.o> python-2.3.5-r2.ebuild,
2708 - python-2.3.5-r3.ebuild, python-2.3.6.ebuild, python-2.3.6-r1.ebuild,
2709 - python-2.4.3-r1.ebuild, python-2.4.3-r4.ebuild, python-2.4.4.ebuild,
2710 - python-2.4.4-r1.ebuild, python-2.5-r1.ebuild, python-2.5-r2.ebuild:
2711 - Stable on Alpha, IA64 and x86 + fix digest issue reported in bug 177440.
2712 -
2713 -*python-2.5.1 (06 May 2007)
2714 -*python-2.4.4-r1 (06 May 2007)
2715 -*python-2.3.6-r1 (06 May 2007)
2716 -
2717 - 06 May 2007; Bryan Østergaard <kloeri@g.o>
2718 - +python-2.3.6-r1.ebuild, +python-2.4.4-r1.ebuild, +python-2.5.1.ebuild:
2719 - Build problems fixed:
2720 - bug 120099 dev-lang/python-2.4.2 builds against sys-libs/gdbm with USE="-gdbm"
2721 - bug 135239 crosscompiling python. python-2.4.1-bindir-libdir.patch
2722 - bug 138647 dev-lang/python-x.x.x distutils installer does not link libraries
2723 - bug 150595 dev-lang/python-2.5 fails to compile with LC_ALL=de_DE@euro
2724 - bug 150732 python-2.4.3-r4 does not honor ROOT
2725 - bug 159967 python doesn't add pthread to LIBS correctly on BSD
2726 -
2727 - Other problems fixed:
2728 - bug 148362 File collision between python-2.4* and python-2.5*
2729 - bug 151695 dev-python/python-docs env.d entry incorrect
2730 - bug 158383 emerging python-2.4.3-r4 segfaults with -ipv6
2731 - bug 165268 dev-lang/python-2.4.4 fails to build the dbm module
2732 -
2733 - Test failures fixed:
2734 - bug 82469: QA issue: python-2.3.5-maketest failes with propolice
2735 - bug 124188 dev-lang/python-2.4.2 fails test_cookielib
2736 - bug 154247 dev-lang/python-2.4.4 tests failed: test_sax failed -- 1 of 42 tests failed: test_xmlgen_attr_escape
2737 -
2738 - Feature requests:
2739 - bug 131325 python 2.4.4/2.3.6 enable pthreads inconditionaly
2740 - bug 135617 dev-lang/python should install Tools/freeze
2741 - bug 176066 dev-lang/python-2.5.1 bump
2742 -
2743 - Fixed in current upstream version:
2744 - bug 90660 python-2.3.5: No module named fcntl
2745 - bug 144798 dev-lang/python-2.4.3 with TZ=Australia/Melbourne fails test
2746 - bug 151246 signed integer overflow bug in dev-lang/python-2.4.3
2747 - bug 159553 dev-lang/python-2.4.3-r4 fails test_openpty
2748 - bug 162057 dev-lang/python fails tests in test_expanduser
2749 -
2750 -*python-2.5-r2 (31 Mar 2007)
2751 -
2752 - 31 Mar 2007; Marien Zwart <marienz@g.o> +python-2.5-r2.ebuild:
2753 - Revision bump python 2.5 with distutils and execstack fixes (rebuilding
2754 - installed extensions is recommended if upgrading from an older python 2.5
2755 - ebuild). Remove unnecessary pysqlite block. Fix python 2.3 digest problem.
2756 -
2757 - 06 Feb 2007; Marius Mauch <genone@g.o> python-2.3.5-r2.ebuild,
2758 - python-2.3.5-r3.ebuild, python-2.3.6.ebuild, python-2.4.3-r1.ebuild,
2759 - python-2.4.3-r4.ebuild, python-2.4.4.ebuild, python-2.5-r1.ebuild:
2760 - Replacing einfo with elog
2761 -
2762 - 11 Nov 2006; Bryan Østergaard <kloeri@g.o> python-2.3.6.ebuild:
2763 - Fix lib64 patch, bug 154711.
2764 -
2765 -*python-2.3.6 (09 Nov 2006)
2766 -
2767 - 09 Nov 2006; Bryan Østergaard <kloeri@g.o> +python-2.3.6.ebuild:
2768 - Bump version, bug 153944.
2769 -
2770 -*python-2.4.4 (04 Nov 2006)
2771 -
2772 - 04 Nov 2006; Bryan Østergaard <kloeri@g.o> +python-2.4.4.ebuild:
2773 - Version bump.
2774 -
2775 - 18 Oct 2006; Roy Marples <uberlord@g.o> python-2.4.3-r4.ebuild,
2776 - python-2.5-r1.ebuild:
2777 - Added ~sparc-fbsd keyword.
2778 -
2779 - 27 Sep 2006; Bryan Østergaard <kloeri@g.o> python-2.3.5-r3.ebuild,
2780 - python-2.4.3-r4.ebuild:
2781 - Stable on ia64.
2782 -
2783 - 27 Sep 2006; Bryan Østergaard <kloeri@g.o> python-2.3.5-r3.ebuild,
2784 - python-2.4.3-r4.ebuild:
2785 - Stable on Alpha.
2786 -
2787 - 27 Sep 2006; Joshua Jackson <tsunam@g.o> python-2.3.5-r3.ebuild,
2788 - python-2.4.3-r4.ebuild:
2789 - Stable x86; bug #149065
2790 -
2791 - 27 Sep 2006; Jason Wever <weeve@g.o> python-2.3.5-r3.ebuild,
2792 - python-2.4.3-r4.ebuild:
2793 - Stable on SPARC wrt security bug #149065.
2794 -
2795 - 26 Sep 2006; Gustavo Zacarias <gustavoz@g.o>
2796 - python-2.3.5-r3.ebuild, python-2.4.3-r4.ebuild:
2797 - Stable on hppa wrt security #149065
2798 -
2799 - 26 Sep 2006; Simon Stelling <blubb@g.o> python-2.3.5-r3.ebuild:
2800 - stable on amd64; bug 149065
2801 -
2802 - 26 Sep 2006; Tobias Scherbaum <dertobi123@g.o>
2803 - python-2.3.5-r3.ebuild, python-2.4.3-r4.ebuild:
2804 - ppc stable, bug #149065
2805 -
2806 - 26 Sep 2006; Simon Stelling <blubb@g.o> python-2.4.3-r4.ebuild:
2807 - stable on amd64; bug 149065
2808 -
2809 - 26 Sep 2006; Markus Rothe <corsair@g.o> python-2.3.5-r3.ebuild,
2810 - python-2.4.3-r4.ebuild:
2811 - Stable on ppc64; bug #149065
2812 -
2813 -*python-2.4.3-r4 (26 Sep 2006)
2814 -*python-2.3.5-r3 (26 Sep 2006)
2815 -
2816 - 26 Sep 2006; Marien Zwart <marienz@g.o> +python-2.3.5-r3.ebuild,
2817 - +python-2.4.3-r4.ebuild:
2818 - Revision bumps for bug #149065.
2819 -
2820 -*python-2.5-r1 (19 Sep 2006)
2821 -
2822 - 19 Sep 2006; Alastair Tse <liquidx@g.o> python-2.5.ebuild
2823 - +python-2.5-r1.ebuild:
2824 - Fixed patches that still contain the zlib mistake from the 2.4
2825 - patchset. Disabled etree tests.
2826 -
2827 -*python-2.5 (19 Sep 2006)
2828 -
2829 - 19 Sep 2006; Alastair Tse <liquidx@g.o> -python-2.4.3-r2.ebuild,
2830 - +python-2.5.ebuild:
2831 - python 2.5 released.
2832 -
2833 -*python-2.4.3-r3 (28 Aug 2006)
2834 -
2835 - 28 Aug 2006; Alastair Tse <liquidx@g.o> +python-2.4.3-r3.ebuild:
2836 - fix mistake introduced in 2.4.3-r2 where system zlib was used that caused
2837 - problems on certain machines (#145242)
2838 -
2839 -*python-2.4.3-r2 (26 Aug 2006)
2840 -
2841 - 26 Aug 2006; Alastair Tse <liquidx@g.o> +python-2.4.3-r2.ebuild:
2842 - cleanup 2.4.3 ebuild, fix collisions with slotted versions of pydoc and
2843 - idle, fix multilib installs so that everything is installed in /usr/lib64
2844 - rather than just the .so (#118805)
2845 -
2846 - 22 Aug 2006; Alastair Tse <liquidx@g.o> python-2.2.3-r6.ebuild,
2847 - python-2.3.5-r2.ebuild, -python-2.4.2.ebuild, -python-2.4.2-r1.ebuild,
2848 - -python-2.4.2-r2.ebuild, -python-2.4.3.ebuild, python-2.4.3-r1.ebuild:
2849 - renamed patches to have short names and version numbers to indicate when
2850 - they were introduced. patches tarballs are now generated from gentoo-svn.
2851 - cleaned up older unstable versions of python leaving the latest version for
2852 - each major release. fixed some installed file collisions between the two
2853 - version.
2854 -
2855 - 20 Jul 2006; Simon Stelling <blubb@g.o> python-2.4.3-r1.ebuild:
2856 - stable on amd64
2857 -
2858 - 11 Jul 2006; Alastair Tse <liquidx@g.o> python-2.4.3-r1.ebuild:
2859 - python-2.2.3-r6.ebuild, python-2.3.5-r2.ebuild, python-2.4.2.ebuild,
2860 - python-2.4.2-r1.ebuild, python-2.4.2-r2.ebuild, python-2.4.3.ebuild,
2861 - python-2.4.3-r1.ebuild:
2862 - Typo fix in DESCRIPTION (#139463)
2863 -
2864 - 09 Jul 2006; Joshua Kinard <kumba@g.o> python-2.4.3-r1.ebuild:
2865 - Marked stable on mips.
2866 -
2867 - 08 Jul 2006; Doug Goldstein <cardoe@g.o> python-2.1.3-r1.ebuild,
2868 - python-2.2.3-r6.ebuild, python-2.3.5-r2.ebuild, python-2.4.2.ebuild,
2869 - python-2.4.2-r1.ebuild, python-2.4.2-r2.ebuild, python-2.4.3.ebuild,
2870 - python-2.4.3-r1.ebuild:
2871 - split USE='tcltk' to 'tcl' & 'tk' per bug #17808. Nuked X USE flag since it
2872 - was only to find tk from tcltk
2873 -
2874 - 30 Jun 2006; Joel Martin <kanaka@g.o> python-2.4.3-r1.ebuild:
2875 - Cross-compile update: bindir-libdir patch is no longer needed and will break
2876 - the patching if it's there. Also, unset CC to force the native python build
2877 - to use the native compiler.
2878 -
2879 - 28 Jun 2006; Tobias Scherbaum <dertobi123@g.o>
2880 - python-2.4.3-r1.ebuild:
2881 - ppc stable, #138268
2882 -
2883 - 28 Jun 2006; Gustavo Zacarias <gustavoz@g.o>
2884 - python-2.4.3-r1.ebuild:
2885 - Stable on sparc wrt #138268
2886 -
2887 - 28 Jun 2006; Guy Martin <gmsoft@g.o> python-2.4.3-r1.ebuild:
2888 - Stable on hppa.
2889 -
2890 - 28 Jun 2006; Markus Rothe <corsair@g.o> python-2.4.3-r1.ebuild:
2891 - Stable on ppc64; bug #138268
2892 -
2893 - 27 Jun 2006; Bryan Østergaard <kloeri@g.o> python-2.4.3-r1.ebuild:
2894 - Stable on alpha, ia64 and x86.
2895 -
2896 -*python-2.4.3-r1 (04 May 2006)
2897 -*python-2.4.2-r2 (04 May 2006)
2898 -
2899 - 04 May 2006; Bryan Østergaard <kloeri@g.o>
2900 - +files/python-2.4.2-gentoo_obsd-r1.patch,
2901 - +files/python-2.4.3-gentoo_obsd-r1.patch, +python-2.4.2-r2.ebuild,
2902 - +python-2.4.3-r1.ebuild:
2903 - Fix obsd patch (thanks reb) fixing bugs 117261 and 130140.
2904 -
2905 - 27 Apr 2006; Marien Zwart <marienz@g.o>
2906 - files/digest-python-2.1.3-r1, files/digest-python-2.2.3-r6, Manifest:
2907 - Fixing SHA256 digest, pass four
2908 -
2909 - 14 Apr 2006; Bryan Østergaard <kloeri@g.o
2910 - +files/python-2.4.2-gentoo_obsd.patch,
2911 - +files/python-2.4.3-gentoo_obsd.patch, python-2.4.2-r1.ebuild,
2912 - python-2.4.3.ebuild:
2913 - Add gentoo/obsd patch, bug 117261.
2914 -
2915 -*python-2.4.3 (13 Apr 2006)
2916 -
2917 - 13 Apr 2006; Bryan Østergaard <kloeri@g.o
2918 - +files/python-2.4.3-db4.patch, +python-2.4.3.ebuild:
2919 - Version bump to 2.4.3.
2920 -
2921 - 30 Mar 2006; Diego Pettenò <flameeyes@g.o> python-2.4.2-r1.ebuild:
2922 - Add ~x86-fbsd keyword.
2923 -
2924 - 16 Feb 2006; Marien Zwart <marienz@g.o>
2925 - -files/python-2.2.3-db4.patch,
2926 - -files/python-2.2.3-disable_modules_and_ssl.patch,
2927 - -files/python-2.2.3-fPIC.patch,
2928 - -files/python-2.2.3-gentoo_py_dontcompile.patch,
2929 - -files/python-2.2.3-xmlrpc.patch,
2930 - -files/python-2.3.2-disable_modules_and_ssl.patch,
2931 - -files/python-2.3.4-lib64.patch, -files/python-2.3.5-st_flags.patch,
2932 - -files/python-2.3-add_portage_search_path.patch,
2933 - -files/python-2.3-add_portage_search_path_take_2.patch,
2934 - -files/python-2.3-db4.2.patch,
2935 - -files/python-2.3-gentoo_py_dontcompile.patch,
2936 - -files/python-2.3-mimetypes_apache.patch, -files/python-2.3-pcre.patch,
2937 - -files/python-2.3-readline.patch, -files/python-2.4.1-bindir-libdir.patch,
2938 - -files/python-2.4.1-crosscompile.patch, -files/python-2.4.1-db4.patch,
2939 - -files/python-2.4.1-libdir.patch, -files/python-2.4.1-st_flags.patch,
2940 - -files/python-2.4.2-mmap+fd.patch, -files/python-2.4.2-no-threads.patch,
2941 - -files/python-2.4.2-readline.patch,
2942 - -files/python-2.4-add_portage_search_path.patch,
2943 - -files/python-2.4-disable_modules_and_ssl.patch,
2944 - -files/python-2.4-gentoo_py_dontcompile.patch,
2945 - -files/python-2.4-mimetypes_apache.patch, python-2.2.3-r6.ebuild,
2946 - python-2.3.5-r2.ebuild, python-2.4.2.ebuild, python-2.4.2-r1.ebuild:
2947 - Move patches from files dir to separate tarballs.
2948 -
2949 - 16 Feb 2006; Marien Zwart <marienz@g.o> -files/python-config-2.2.1,
2950 - -files/python-2.2.1-r5-gentoo.diff, -files/python-config-2.2.2,
2951 - -files/python-2.2.2-tk-8.4.x.patch, -files/python-2.3-xmlrpc.patch,
2952 - -files/python-2.4-db4.2.patch, -files/python-2.4-lib64.patch,
2953 - -files/python-2.4.1-readline.patch, -files/python-2.4-libdir.patch,
2954 - -files/python-2.4-readline.patch, -files/python-2.4-xmlrpc.patch,
2955 - -python-2.3.4-r1.ebuild, -python-2.3.5.ebuild, -python-2.3.5-r1.ebuild,
2956 - -python-2.4-r3.ebuild, -python-2.4.1.ebuild, -python-2.4.1-r1.ebuild:
2957 - Remove old versions.
2958 -
2959 - 08 Feb 2006; Marien Zwart <marienz@g.o> python-2.3.5-r2.ebuild,
2960 - python-2.4.2.ebuild, python-2.4.2-r1.ebuild:
2961 - Disable confcache (breaks .so loading).
2962 -
2963 - 02 Feb 2006; Bryan Østergaard <kloeri@g.o
2964 - +files/python-2.4.2-mmap+fd.patch:
2965 - Add missing python-2.4.2-mmap+fd.patch.
2966 -
2967 -*python-2.4.2-r1 (02 Feb 2006)
2968 -
2969 - 02 Feb 2006; Bryan Østergaard <kloeri@g.o
2970 - +files/depreorder-topsort.py, +files/python-updater-r1,
2971 - +python-2.4.2-r1.ebuild:
2972 - No more libstdc++.so linking, fix python-updater ordering (bug #95538) +
2973 - mmap (bug #113439) and fd leak (bug #118575) fixes.
2974 -
2975 - 13 Jan 2006; Mike Frysinger <vapier@g.o>
2976 - +files/python-2.4.2-no-threads.patch, python-2.4.2.ebuild:
2977 - Fix from upstream for building without threads.
2978 -
2979 - 24 Nov 2005; Markus Rothe <corsair@g.o> python-2.4.2.ebuild:
2980 - Stable on ppc64
2981 -
2982 - 17 Nov 2005; Guy Martin <gmsoft@g.o> python-2.4-r3.ebuild,
2983 - python-2.4.1.ebuild, python-2.4.1-r1.ebuild, python-2.4.2.ebuild:
2984 - Readded critical fix for HPPA.
2985 -
2986 - 21 Oct 2005; Aaron Walker <ka0ttic@g.o> python-2.4.2.ebuild:
2987 - Stable on mips.
2988 -
2989 - 15 Oct 2005; MATSUU Takuto <matsuu@g.o> python-2.4.2.ebuild:
2990 - Stable on sh.
2991 -
2992 - 15 Oct 2005; Michael Hanselmann <hansmi@g.o> python-2.4.2.ebuild:
2993 - Stable on hppa, ppc.
2994 -
2995 - 14 Oct 2005; Gustavo Zacarias <gustavoz@g.o> python-2.4.2.ebuild:
2996 - Stable on sparc
2997 -
2998 - 14 Oct 2005; Bryan Østergaard <kloeri@g.o> python-2.4.2.ebuild:
2999 - Stable on alpha.
3000 -
3001 - 13 Oct 2005; Luis Medinas <metalgod@g.o> python-2.4.2.ebuild:
3002 - Marked Stable on amd64.
3003 -
3004 - 13 Oct 2005; Aron Griffis <agriffis@g.o> python-2.4.2.ebuild:
3005 - Mark 2.4.2 stable on ia64
3006 -
3007 - 13 Oct 2005; Rob Cakebread <pythonhead@g.o> python-2.4.2.ebuild:
3008 - Marked x86 stable per Mr_Bones_ - memory leak in posix.access()
3009 -
3010 - 10 Oct 2005; Gustavo Zacarias <gustavoz@g.o>
3011 - python-2.4.1-r1.ebuild:
3012 - Stable on sparc
3013 -
3014 - 10 Oct 2005; Luis Medinas <metalgod@g.o> python-2.4.1-r1.ebuild:
3015 - Marked Stable on amd64.
3016 -
3017 - 10 Oct 2005; Markus Rothe <corsair@g.o> python-2.4.1-r1.ebuild:
3018 - Stable on ppc64
3019 -
3020 - 09 Oct 2005; Michael Hanselmann <hansmi@g.o>
3021 - python-2.4.1-r1.ebuild:
3022 - Stable on hppa, ppc.
3023 -
3024 - 08 Oct 2005; Bryan Østergaard <kloeri@g.o> python-2.4.1-r1.ebuild:
3025 - Stable python-2.4 on alpha, ia64 and x86.
3026 -
3027 - 01 Oct 2005; Bryan Østergaard <kloeri@g.o> python-2.3.5-r2.ebuild,
3028 - python-2.4.1-r1.ebuild, python-2.4.2.ebuild:
3029 - Disable additional test, fixing bug 82469, 94859, 96366 and 96488.
3030 -
3031 -*python-2.4.2 (28 Sep 2005)
3032 -
3033 - 28 Sep 2005; Bryan Østergaard <kloeri@g.o>
3034 - +files/python-2.4.2-readline.patch, +python-2.4.2.ebuild:
3035 - Bump version to 2.4.2.
3036 -
3037 - 14 Sep 2005; Aaron Walker <ka0ttic@g.o> python-2.3.5-r2.ebuild:
3038 - 2.3.5-r2 stable on mips for security bug #104009.
3039 -
3040 - 11 Sep 2005; Simon Stelling <blubb@g.o> python-2.3.5-r2.ebuild:
3041 - stable on amd64 wrt bug 104009
3042 -
3043 - 10 Sep 2005; Michael Hanselmann <hansmi@g.o>
3044 - python-2.3.5-r2.ebuild:
3045 - Stable on ppc and hppa.
3046 -
3047 - 10 Sep 2005; MATSUU Takuto <matsuu@g.o> python-2.3.5-r2.ebuild:
3048 - Stable on sh.
3049 -
3050 - 09 Sep 2005; Josh Grebe <squash@g.o> python-2.3.5-r2.ebuild:
3051 - Sparc stable bump for bug #104009
3052 -
3053 - 09 Sep 2005; Markus Rothe <corsair@g.o> python-2.3.5-r2.ebuild:
3054 - Stable on ppc64
3055 -
3056 - 08 Sep 2005; Bryan Østergaard <kloeri@g.o> python-2.3.5-r2.ebuild:
3057 - Stable on x86, alpha and ia64 - bug 104009.
3058 -
3059 -*python-2.3.5-r2 (08 Sep 2005)
3060 -
3061 - 08 Sep 2005; Bryan Østergaard <kloeri@g.o>
3062 - +files/python-2.3-pcre.patch, +python-2.3.5-r2.ebuild:
3063 - Version bump to fix pcre security vulnerability, bug 104009.
3064 -
3065 - 16 Aug 2005; Bryan Østergaard <kloeri@g.o> python-2.3.4-r1.ebuild,
3066 - python-2.3.5.ebuild:
3067 - Add fix for bug 88777 to arch versions.
3068 -
3069 - 15 Aug 2005; Bryan Østergaard <kloeri@g.o> python-2.3.5-r1.ebuild,
3070 - python-2.4.1-r1.ebuild:
3071 - Fix bug 88777 in ~arch versions.
3072 -
3073 - 11 Aug 2005; Mike Frysinger <vapier@g.o>
3074 - +files/python-2.4.1-bindir-libdir.patch,
3075 - +files/python-2.4.1-crosscompile.patch, python-2.4.1-r1.ebuild:
3076 - Add support for cross-compiling. Grabbed patches from uClibc/OpenEmbedded.
3077 -
3078 - 19 Jul 2005; Bryan Østergaard <kloeri@g.o>
3079 - +files/python-2.4.1-st_flags.patch, python-2.4.1-r1.ebuild:
3080 - Update st_flags patch, bug 94637.
3081 -
3082 - 03 Jul 2005; Bryan Østergaard <kloeri@g.o> python-2.3.5.ebuild:
3083 - Stable on alpha.
3084 -
3085 - 27 Jun 2005; Markus Rothe <corsair@g.o> python-2.3.5.ebuild:
3086 - Stable on ppc64
3087 -
3088 - 18 Jun 2005; Markus Rothe <corsair@g.o> python-2.4.1-r1.ebuild:
3089 - added ~ppc64
3090 -
3091 -*python-2.4.1-r1 (16 Jun 2005)
3092 -*python-2.3.5-r1 (16 Jun 2005)
3093 -
3094 - 16 Jun 2005; Bryan Østergaard <kloeri@g.o>
3095 - +files/python-2.3.5-st_flags.patch, +python-2.3.5-r1.ebuild,
3096 - +python-2.4.1-r1.ebuild:
3097 - Add st_flags patch, requested in bug 94637.
3098 -
3099 - 09 Jun 2005; Herbie Hopkins <herbs@g.o>
3100 - files/python-2.4.1-libdir.patch, python-2.4.1.ebuild:
3101 - Fix libdir patch to work with amd64s no-symlink profile, removed
3102 - append-flags -fPIC as this seems to no longer be necessary.
3103 -
3104 - 29 May 2005; <solar@g.o> python-2.3.4-r1.ebuild, python-2.3.5.ebuild,
3105 - python-2.4-r3.ebuild, python-2.4.1.ebuild:
3106 - echangelog - update package to use libc expanded variable elibc_uclibc vs
3107 - uclibc so USE=-* works
3108 -
3109 - 29 May 2005; Alastair Tse <liquidx@g.o>
3110 - files/python-2.4.1-libdir.patch:
3111 - remove zlib from libpython dependency (#90545)
3112 -
3113 - 28 May 2005; Bryan Østergaard <kloeri@g.o> python-2.1.3-r1.ebuild,
3114 - python-2.2.3-r6.ebuild, python-2.3.4-r1.ebuild, python-2.3.5.ebuild,
3115 - python-2.4-r3.ebuild, python-2.4.1.ebuild:
3116 - Add missing inherit versionator.
3117 -
3118 - 21 May 2005; Bryan Østergaard <kloeri@g.o> python-2.1.3-r1.ebuild:
3119 - Fix PROVIDE according to bug 93028.
3120 -
3121 - 18 May 2005; Markus Rothe <corsair@g.o> python-2.3.5.ebuild:
3122 - Added ~ppc64 to KEYWORDS
3123 -
3124 - 11 May 2005; Marcus D. Hanwell <cryos@g.o> python-2.3.5.ebuild:
3125 - Stable on amd64.
3126 -
3127 - 07 May 2005; Bryan Østergaard <kloeri@g.o> python-2.3.5.ebuild,
3128 - python-2.4.1.ebuild:
3129 - Fix FEATURES=test using slightly modified patch by Rob Cakebread, bug 67970.
3130 -
3131 - 01 May 2005; Stephen Bennett <spb@g.o> python-2.3.4-r1.ebuild,
3132 - python-2.3.5.ebuild, python-2.4.1.ebuild:
3133 - Added compile fix for when $LIBC is set.
3134 -
3135 - 30 Apr 2005; Michael Hanselmann <hansmi@g.o> python-2.3.5.ebuild:
3136 - Stable on ppc.
3137 -
3138 - 28 Apr 2005; Gustavo Zacarias <gustavoz@g.o> python-2.3.5.ebuild:
3139 - Stable on sparc
3140 -
3141 -*python-2.4.1 (27 Apr 2005)
3142 -
3143 - 27 Apr 2005; Alastair Tse <liquidx@g.o>
3144 - +files/python-2.4.1-db4.patch, +files/python-2.4.1-libdir.patch,
3145 - +files/python-2.4.1-readline.patch, files/python-2.4-readline.patch,
3146 - -python-2.3.3-r2.ebuild, python-2.3.5.ebuild, -python-2.4-r1.ebuild,
3147 - -python-2.4-r2.ebuild, +python-2.4.1.ebuild:
3148 - version bump for 2.4.1, clean up readling, db4 and libdir patch for 2.4.1.
3149 -
3150 - 20 Apr 2005; Alastair Tse <liquidx@g.o> python-2.3.5.ebuild,
3151 - python-2.4-r3.ebuild:
3152 - reverting changes to deps and adding note about why they are arranged in
3153 - that way (to remind myself never to touch them again :)
3154 -
3155 - 20 Apr 2005; Alastair Tse <liquidx@g.o>
3156 - +files/python-2.3-readline.patch, +files/python-2.4-readline.patch,
3157 - python-2.3.5.ebuild, python-2.4-r3.ebuild:
3158 - fixing readline support to not require termcap (#79013). fixed DEPEND
3159 - and RDEPEND order (python-fchksum isn't a DEPEND only)
3160 -
3161 - 08 Apr 2005; Markus Rothe <corsair@g.o> python-2.3.4-r1.ebuild:
3162 - Stable on ppc64
3163 -
3164 -*python-2.4-r3 (19 Mar 2005)
3165 -
3166 - 19 Mar 2005; Rob Cakebread <pythonhead@g.o>
3167 - files/python-2.4-libdir.patch, +python-2.4-r3.ebuild:
3168 - Removed multiple dirs in sys path. bug# 83109
3169 -
3170 - 15 Mar 2005; Alastair Tse <liquidx@g.o> python-2.3.5.ebuild:
3171 - more multilib fixes (#76791)
3172 -
3173 - 01 Mar 2005; Bryan Østergaard <kloeri@g.o> python-2.3.5.ebuild,
3174 - python-2.4-r1.ebuild:
3175 - Fix conditional c++ support for remaining versions.
3176 -
3177 - 27 Feb 2005; Bryan Østergaard <kloeri@g.o> python-2.3.3-r2.ebuild,
3178 - python-2.3.4-r1.ebuild, python-2.4-r2.ebuild:
3179 - Disable c++ conditionally.
3180 -
3181 -*python-2.3.5 (17 Feb 2005)
3182 -
3183 - 17 Feb 2005; Rob Cakebread <pythonhead@g.o> +python-2.3.5.ebuild:
3184 - Version bump.
3185 -
3186 - 09 Feb 2005; Luca Barbato <lu_zero@g.o> python-2.3.4-r1.ebuild:
3187 - Marked ppc
3188 -
3189 -*python-2.4-r2 (07 Feb 2005)
3190 -
3191 - 07 Feb 2005; Jeremy Huddleston <eradicator@g.o>
3192 - +files/python-2.4-libdir.patch, files/python-updater, +python-2.4-r2.ebuild:
3193 - Multilib releated cleanup.
3194 -
3195 -*python-2.2.3-r6 (06 Feb 2005)
3196 -
3197 - 06 Feb 2005; Rob Cakebread <pythonhead@g.o>
3198 - +files/python-2.2.3-xmlrpc.patch, +files/python-2.3-xmlrpc.patch,
3199 - +files/python-2.4-xmlrpc.patch, -python-2.2.3-r5.ebuild,
3200 - +python-2.2.3-r6.ebuild, -python-2.3.3-r1.ebuild, +python-2.3.3-r2.ebuild,
3201 - -python-2.3.3.ebuild, +python-2.3.4-r1.ebuild, -python-2.3.4.ebuild,
3202 - +python-2.4-r1.ebuild, -python-2.4.ebuild:
3203 - Patches and version bumps for security bug# 80592 Python bug# PSF-2005-001 xmlrpc
3204 - vulnerability. Removed obsolete versions.
3205 -
3206 - 06 Jan 2005; Bryan Østergaard <kloeri@g.o> python-2.4.ebuild:
3207 - Fix broken Manifest.
3208 -
3209 - 05 Jan 2005; Rob Cakebread <pythonhead@g.o> python-2.4.ebuild:
3210 - Only apply lib64 patch on CONF_LIBDIR == lib64
3211 -
3212 - 04 Jan 2005; Rob Cakebread <pythonhead@g.o>
3213 - +files/python-2.4-lib64.patch, python-2.4.ebuild:
3214 - Added lib64 patch
3215 -
3216 -*python-2.4 (04 Jan 2005)
3217 -
3218 - 04 Jan 2005; Rob Cakebread <pythonhead@g.o>
3219 - +files/python-2.4-add_portage_search_path.patch,
3220 - +files/python-2.4-db4.2.patch,
3221 - +files/python-2.4-disable_modules_and_ssl.patch,
3222 - +files/python-2.4-gentoo_py_dontcompile.patch,
3223 - +files/python-2.4-mimetypes_apache.patch, files/python-updater,
3224 - +python-2.4.ebuild:
3225 - Version bump. bug# 68775
3226 -
3227 - 29 Dec 2004; Ciaran McCreesh <ciaranm@g.o> :
3228 - Change encoding to UTF-8 for GLEP 31 compliance
3229 -
3230 - 06 Nov 2004; Joshua Kinard <kumba@g.o> python-2.3.4.ebuild:
3231 - Marked stable on mips.
3232 -
3233 - 29 Oct 2004; Alastair Tse <liquidx@g.o> files/python-updater:
3234 - improvements with tmp log creation with python-updater (#68843)
3235 -
3236 - 19 Oct 2004; Guy Martin <gmsoft@g.o> python-2.3.4.ebuild:
3237 - Stable on hppa.
3238 -
3239 - 19 Oct 2004; Dylan Carlson <absinthe@g.o> python-2.3.4.ebuild:
3240 - Stable on amd64.
3241 -
3242 - 19 Oct 2004; Alastair Tse <liquidx@g.o> python-2.3.4.ebuild:
3243 - fix problem with tk-inter and USE flags handing (grumble)
3244 -
3245 - 18 Oct 2004; Mike Frysinger <vapier@g.o> python-2.3.3-r1.ebuild,
3246 - python-2.3.4.ebuild:
3247 - Forward part from 2.3.3-r1 the removal of directories in /usr/lib/python
3248 - based upon USE flags.
3249 -
3250 - 17 Oct 2004; Jason Wever <weeve@g.o> python-2.3.4.ebuild:
3251 - Stable on sparc.
3252 -
3253 - 24 Sep 2004; Alastair Tse <liquidx@g.o> -python-2.2.2.ebuild,
3254 - python-2.3.3-r1.ebuild, python-2.3.3.ebuild, python-2.3.4.ebuild,
3255 - -python-2.3.4_rc1.ebuild:
3256 - adding workaround for -fstack-protector-all (#50309)
3257 -
3258 - 06 Sep 2004; Ciaran McCreesh <ciaranm@g.o> python-2.3.3-r1.ebuild,
3259 - python-2.3.3.ebuild, python-2.3.4.ebuild, python-2.3.4_rc1.ebuild:
3260 - Switch to use epause and ebeep, bug #62950
3261 -
3262 - 31 Aug 2004; Guy Martin <gmsoft@g.o> python-2.3.4.ebuild:
3263 - Removed useless -fPIC for hppa.
3264 -
3265 - 18 Aug 2004; Aron Griffis <agriffis@g.o> python-2.3.4.ebuild:
3266 - stable on alpha
3267 -
3268 - 14 Aug 2004; Travis Tilley <lv@g.o> +files/python-2.3.4-lib64.patch,
3269 - python-2.3.3-r1.ebuild, python-2.3.4.ebuild:
3270 - added logic for installing to /usr/lib64, triggered by the CONF_LIBDIR
3271 - variable. proper CONF_LIBDIR support will require portage 2.0.51_pre18, soon
3272 - to be released.
3273 -
3274 - 20 Jul 2004; Lars Weiler <pylon@g.o> python-2.1.3-r1.ebuild:
3275 - Made python-2.1 stable on ppc as there are still some ebuilds which require
3276 - this version.
3277 -
3278 - 03 Jul 2004; Bryan Østergaard <kloeri@g.o> python-2.3.3-r1.ebuild:
3279 - Stable on alpha.
3280 -
3281 - 03 Jul 2004; Grant Goodyear <g2boojum@g.o> python-2.3.4.ebuild:
3282 - x86-obsd minor fix
3283 -
3284 - 01 Jul 2004; Jeremy Huddleston <eradicator@g.o>
3285 - python-2.1.3-r1.ebuild, python-2.2.2.ebuild, python-2.2.3-r5.ebuild,
3286 - python-2.3.3-r1.ebuild, python-2.3.3.ebuild, python-2.3.4.ebuild,
3287 - python-2.3.4_rc1.ebuild:
3288 - virtual/glibc -> virtual/libc
3289 -
3290 - 25 Jun 2004; Aron Griffis <agriffis@g.o> python-2.2.2.ebuild,
3291 - python-2.2.3-r5.ebuild, python-2.3.3-r1.ebuild, python-2.3.3.ebuild,
3292 - python-2.3.4.ebuild, python-2.3.4_rc1.ebuild:
3293 - QA - fix use invocation and a bug in the 2.3.4 ebuilds:
3294 - [ -z "use X" -o -z "use tcltk" ] doesn't do what you meant it to do
3295 -
3296 - 20 Jun 2004; Gustavo Zacarias <gustavoz@g.o> python-2.3.3-r1.ebuild:
3297 - Sparc happy stable
3298 -
3299 - 15 Jun 2004; <solar@g.o> python-2.3.3-r1.ebuild:
3300 - USE= cleanups and added uclibc
3301 -
3302 - 12 Jun 2004; Tom Gall <tgall@g.o> python-2.3.3-r1.ebuild:
3303 - stable on ppc64, bug #53575
3304 -
3305 - 06 Jun 2004; Aron Griffis <agriffis@g.o> python-2.2.3-r5.ebuild,
3306 - python-2.3.3-r1.ebuild, python-2.3.4.ebuild, python-2.3.4_rc1.ebuild:
3307 - Fix use invocation
3308 -
3309 -*python-2.3.4 (04 Jun 2004)
3310 -
3311 - 04 Jun 2004; Bryan Østergaard <kloeri@g.o> +python-2.3.4.ebuild:
3312 - Bump version.
3313 -
3314 - 02 Jun 2004; Travis Tilley <lv@g.o> python-2.3.3-r1.ebuild:
3315 - stable on amd64
3316 -
3317 - 30 May 2004; Guy Martin <gmsoft@g.o> python-2.3.3-r1.ebuild:
3318 - Marked stable on hppa.
3319 -
3320 - 22 May 2004; Guy Martin <gmsoft@g.o> python-2.3.3-r1.ebuild,
3321 - python-2.3.3.ebuild, python-2.3.4_rc1.ebuild:
3322 - Fix os.utime() on hppa. utimes it not supported but unfortunately reported as
3323 - working.
3324 -
3325 -*python-2.3.4_rc1 (15 May 2004)
3326 -
3327 - 15 May 2004; Joshua Kinard <kumba@g.o> python-2.3.3-r1.ebuild,
3328 - python-2.3.4_rc1.ebuild:
3329 - Marking 2.3.3 stable on mips (someone yanked the ~mips keyword at some
3330 - point...), and 2.3.4 unstable.
3331 -
3332 - 27 Apr 2004; Michael McCabe <randy@g.o> python-2.3.3-r1.ebuild:
3333 - Marked stable on s390
3334 -
3335 -*python-2.3.3-r1 (12 Apr 2004)
3336 -
3337 - 12 Apr 2004; Alastair Tse <liquidx@g.o> python-2.3.3-r1.ebuild,
3338 - files/python-2.3-add_portage_search_path_take_2.patch:
3339 - add workaround for python-2.2 to python-2.3 upgrade possibly breaking older
3340 - portage versions. make /usr/lib/portage/pym appear before
3341 - /usr/lib/python*/site-packages in sys.path (not really critical, but better be
3342 - safe than sorry). also removed c++ support to reduce gcc/glibc upgrade pain
3343 -
3344 - 11 Mar 2004; Alastair Tse <liquidx@g.o> python-2.2.1-r5.ebuild:
3345 - removing 2.2.1 from tree for security reasons (#44230)
3346 -
3347 - 09 Mar 2004; <agriffis@g.o> python-2.3.3.ebuild:
3348 - stable on alpha and ia64
3349 -
3350 - 05 Mar 2004; Alastair Tse <liquidx@g.o> python-2.3.3.ebuild:
3351 - added X useflag for greater tcltk seperation. now needs both X and tcltk USE
3352 - flags to enable tkinter support
3353 -
3354 - 03 Mar 2004; David Holm <dholm@g.o> python-2.1.3-r1.ebuild:
3355 - Added to ~ppc.
3356 -
3357 - 27 Feb 2004; Alastair Tse <liquidx@g.o> python-2.3.3.ebuild:
3358 - completely removed pkg_setup(), added note at the top of the ebuild where you
3359 - can't miss it.
3360 -
3361 - 27 Feb 2004; Jason Stubbs <jstubbs@g.o> python-2.3.3.ebuild:
3362 - Removing portage version check again as it's preventing new installations.
3363 - Bug #43036
3364 -
3365 - 25 Feb 2004; Bryan Østergaard,,, <kloeri@g.o> python-2.3.3.ebuild:
3366 - Reinstating portage version check as people keep upgrading python without
3367 - upgrading portage.
3368 -
3369 - 17 Feb 2004; Aron Griffis <agriffis@g.o> python-2.1.3-r1.ebuild:
3370 - Fix duplicate KEYWORDS settings and mark stable on alpha and ia64 for the sake
3371 - of dev-python/PyXML-py21
3372 -
3373 - 17 Feb 2004; Aron Griffis <agriffis@g.o> python-2.1.3-r1.ebuild:
3374 - add ~alpha for the sake of dev-python/Imaging-py21
3375 -
3376 - 10 Feb 2004; Bartosch Pixa <darkspecter@g.o> python-2.3.3.ebuild:
3377 - set ppc in keywords
3378 -
3379 - 10 Feb 2004; Alastair Tse <liquidx@g.o> python-2.3.3.ebuild,
3380 - files/python-2.3-db4.2.patch:
3381 - add fix to make python-2.3.3 db-4.2 (gentoo flavour) aware
3382 -
3383 - 06 Feb 2004; <gustavoz@g.o> python-2.3.3.ebuild:
3384 - Stable on sparc
3385 -
3386 - 03 Feb 2004; Guy Martin <gmsoft@g.o> python-2.3.3.ebuild :
3387 - Marked stable on hppa.
3388 -
3389 - 02 Feb 2004; Alastair Tse <liquidx@g.o> files/depreorder.py:
3390 - update python-updater thanks to a well spotted mistake by Chris Bainbridge
3391 - <chrb@×××××××××.uk> (#40198)
3392 -
3393 - 27 Jan 2004; Alastair Tse <liquidx@g.o> python-2.3.3.ebuild:
3394 - disabling pkg_setup again after testing with stage2
3395 -
3396 - 26 Jan 2004; Alastair Tse <liquidx@g.o> python-2.3.3.ebuild:
3397 - re-instating pkg_setup() warning/abort message. added apache mime.types to
3398 - mime type search list. modified to use tar.bz2 (saves 1MB of downloads)
3399 -
3400 - 24 Jan 2004; Guy Martin <gmsoft@g.o> python-2.3.3.ebuild:
3401 - Added ~hppa to KEYWORDS.
3402 -
3403 - 24 Jan 2004; <gustavoz@g.o> python-2.3.3.ebuild:
3404 - keyworded ~sparc
3405 -
3406 - 24 Jan 2004; Alastair Tse <liquidx@g.o> python-2.3.3.ebuild:
3407 - add missing doc IUSE (#39232)
3408 -
3409 - 22 Jan 2004; Alastair Tse <liquidx@g.o> python-2.3.3.ebuild,
3410 - files/depreorder.py:
3411 - updated python-updater for portage-2.0.50, installed python-updater in
3412 - /usr/sbin for convienence
3413 -
3414 - 19 Jan 2004; Alastair Tse <liquidx@g.o> python-2.3.2-r2.ebuild,
3415 - python-2.3.3.ebuild:
3416 - disable portage check because stable portage already is compatible with
3417 - python-2.3
3418 -
3419 - 18 Jan 2004; Alastair Tse <liquidx@g.o> python-2.3.3.ebuild:
3420 - make ROOT var more robust during postinst()
3421 -
3422 - 12 Jan 2004; Luca Barbato <lu_zero@g.o> python-2.2.3-r5.ebuild:
3423 - Marked ppc
3424 -
3425 - 06 Jan 2004; Aron Griffis <agriffis@g.o> python-2.2.3-r5.ebuild:
3426 - Stable on ia64 to enable fix for bug 36954; portage-2.0.49-r20 depends on
3427 - this revision.
3428 -
3429 - 03 Jan 2004; Jason Wever <weeve@g.o> python-2.2.3-r5.ebuild:
3430 - Marked stable on sparc as portage-2.0.49-r20 really depends on this version of
3431 - python rather than what the portage ebuild says. Fixes bug #36954 on sparc.
3432 -
3433 -*python-2.3.3 (03 Jan 2004)
3434 -
3435 - 03 Jan 2004; Alastair Tse <liquidx@g.o> python-2.3.2-r2.ebuild,
3436 - python-2.3.3.ebuild, files/python-2.3.2-disable_modules_and_ssl.patch:
3437 - version bump to 2.3.3, re-add python disable_modules_and_ssl patch and changed
3438 - ebuild to build 'socket' module under USE=build
3439 -
3440 - 28 Dec 2003; Joshua Kinard <kumba@g.o> python-2.2.3-r5.ebuild:
3441 - Move to mips stable (~mips -> mips)
3442 -
3443 - 24 Dec 2003; Sven Blumenstein <bazik@g.o> python-2.3.2-r2.ebuild,
3444 - files/python-2.3.2-disable_modules_and_ssl.patch:
3445 - Removed python-2.3.2-disable_modules_and_ssl.patch as
3446 - it broke python and caused 'ImportError: No module named _socket'.
3447 - More info: http://article.gmane.org/gmane.linux.gentoo.devel/14621
3448 -
3449 - 14 Dec 2003; Guy Martin <gmsoft@g.o> python-2.2.3-r5.ebuild:
3450 - Marked stable on hppa.
3451 -
3452 - 13 Dec 2003; Alastair Tse <liquidx@g.o> python-2.3.2-r2.ebuild:
3453 - clarified warning to prevent more bug reports
3454 -
3455 - 13 Dec 2003; Luca Barbato <lu_zero@g.o> python-2.3.2-r2.ebuild:
3456 - Marked ~ppc
3457 -
3458 - 08 Dec 2003; Alastair Tse <liquidx@g.o> python-2.2.3-r5.ebuild,
3459 - python-2.3.2-r2.ebuild:
3460 - fix python .pyc .pyo cleaning code
3461 -
3462 - 03 Dec 2003; Aron Griffis <agriffis@g.o> python-2.2.3-r5.ebuild:
3463 - Stable on alpha
3464 -
3465 - 27 Nov 2003; Daniel Ahlberg <aliz@g.o> python-2.2.3-r5.ebuild:
3466 - Make -fPIC compilation available for all platforms and not just amd64.
3467 -
3468 - 25 Nov 2003; Brad House <brad_mssw@g.o> python-2.2.3-r5.ebuild:
3469 - mark stable on amd64
3470 -
3471 - 23 Nov 2003; Alastair Tse <liquidx@g.o> python-2.3.2-r2.ebuild:
3472 - add pkg_setup() to 2.3 as a temporary measure to stop people messing up their
3473 - own system. Also added a ucs2 local useflag just in case someone complains
3474 - loudly and knows what they're doing
3475 -
3476 -*python-2.3.2-r2 (22 Nov 2003)
3477 -
3478 - 22 Nov 2003; Alastair Tse <liquidx@g.o> python-2.3.2-r2.ebuild,
3479 - files/python-updater:
3480 - ucs4 is now default. if you previously had python-2.3 merged, you'll need to
3481 - update your packages again. (sorry, that is the price for running p.mask'ed
3482 - versions). to update your python packages if you had python-2.3 installed,
3483 - run :
3484 -
3485 - /usr/portage/dev-lang/python/files/python-updater -o 2.3
3486 -
3487 - if you are upgrading from python-2.2, then you will need to run:
3488 -
3489 - /usr/portage/dev-lang/python/files/python-updater
3490 -
3491 - python-updater script also modified to have more robust command-line
3492 - parsing. hopefully this will be the last revision till we can go ~x86.
3493 -
3494 - 13 Nov 2003; Alastair Tse <liquidx@g.o> python-2.3.2-r1.ebuild:
3495 - fix python-config install for python-2.3
3496 -
3497 - 12 Nov 2003; Alastair Tse <liquidx@g.o> python-2.2.2-r1.ebuild,
3498 - python-2.2.3-r2.ebuild, python-2.2.3-r3.ebuild, python-2.2.3-r4.ebuild,
3499 - python-2.3.2-r1.ebuild, python-2.3.2.ebuild, files/python-updater:
3500 - cleanup and add warning on python-updated or PORTDIR is not set
3501 -
3502 - 12 Nov 2003; Daniel Ahlberg <aliz@g.o> python-2.2.3-r5.ebuild :
3503 - Add a patch that adds CFLAGSFORSHARED variable to some extra modules defined in the Makefile.
3504 - This variable could hold -fPIC so that the compiled libraries will work on amd64 (and maybe others)
3505 - without using append-flags -fPIC.
3506 -
3507 - 03 Nov 2003; Alastair Tse <liquidx@g.o> python-2.2.3-r5.ebuild,
3508 - python-2.3.2-r1.ebuild:
3509 - added ncurses and ssl to IUSE
3510 -
3511 - 03 Nov 2003; Alastair Tse <liquidx@g.o> python-2.2.3-r5.ebuild:
3512 - export environment in src_install()
3513 -
3514 - 01 Nov 2003; Alastair Tse <liquidx@g.o> python-2.2.3-r5.ebuild,
3515 - python-2.3.2-r1.ebuild, files/python-2.2.3-disable_modules_and_ssl.patch,
3516 - files/python-2.3.2-disable_modules_and_ssl.patch:
3517 - reordered deps to allow minimal python build for USE='build'. makes python
3518 - respect useflags explicitly even if the dependency exists. added support to
3519 - disable SSL. tweaked python_mod_optimize.
3520 -
3521 -*python-2.2.3-r5 (27 Oct 2003)
3522 -
3523 - 27 Oct 2003; Alastair Tse <liquidx@g.o> python-2.2.3-r5.ebuild,
3524 - files/python-2.2.3-db4.patch:
3525 - rev bump. fixes to idle.py and bsddb with db-4.1 for 2.2.3
3526 -
3527 - 26 Oct 2003; Rob Cakebread <pythonhead@g.o> python-2.2.3-r4.ebuild:
3528 - Fixed symlink to idle.py
3529 -
3530 -*python-2.2.3-r4 (22 Oct 2003)
3531 -
3532 - 22 Oct 2003; Alastair Tse <liquidx@g.o> python-2.2.3-r4.ebuild,
3533 - files/python-2.2.3-gentoo_py_dontcompile.patch:
3534 - Fixed PYTHON_DONTCOMPILE patch for 2.2.3 thanks to TGL
3535 - <degrenier@×××××××××××.fr> (#31730)
3536 -
3537 -*python-2.2.3-r3 (17 Oct 2003)
3538 -
3539 - 17 Oct 2003; Alastair Tse <liquidx@g.o> python-2.2.3-r3.ebuild,
3540 - files/python-2.2.3-db4.patch,
3541 - files/python-2.2.3-gentoo_py_dontcompile.patch, files/python-updater:
3542 - Add support for db-4.1, fixes for ewarn hanging for python-updater
3543 -
3544 - 14 Oct 2003; Alastair Tse <liquidx@g.o> python-2.2.3-r3.ebuild:
3545 - new 2.2.3 version that adds PYTHON_DONTCOMPILE support
3546 -
3547 - 10 Oct 2003; Alastair Tse <liquidx@g.o> files/python-updater:
3548 - fix typo in python-updater
3549 -
3550 - 09 Oct 2003; Alastair Tse <liquidx@g.o> python-2.3.2-r1.ebuild,
3551 - files/depreorder.py, files/python-2.2.3-gentoo_py_dontcompile.patch,
3552 - files/python-updater:
3553 - improved byte-compiling, fixed out-of-order python-updater and added
3554 - sys-apps/portage to exclusions
3555 -
3556 - 09 Oct 2003; <tuxus@g.o> python-2.2.3-r1.ebuild:
3557 - stable on mips
3558 -
3559 -*python-2.3.2-r1 (08 Oct 2003)
3560 -
3561 - 08 Oct 2003; Alastair Tse <liquidx@g.o> python-2.3.2-r1.ebuild,
3562 - files/python-2.3-gentoo_py_dontcompile.patch:
3563 - add patch to stop automatic generation of .pyc and .pyo by setting
3564 - PYTHON_DONTCOMPILE in your environment. also moved to use the new python
3565 - eclass to automatically optimize and cleanup compiled modules.
3566 -
3567 -*python-2.3.2 (07 Oct 2003)
3568 -
3569 - 07 Oct 2003; Alastair Tse <liquidx@g.o> python-2.2.3-r2.ebuild,
3570 - python-2.3.2.ebuild, files/python-2.2.3-db4.patch,
3571 - files/python-2.3-add_portage_search_path.patch, files/python-config-2.3,
3572 - files/python-updater:
3573 - it has been a long time coming, but finally there's a 2.3.x release in portage
3574 - along with a python-2.2.3 update that should fix some niggling issues and also
3575 - uses the new alternative class. 2.3.2 is still masked and should stay that way
3576 - until we can confirm the rebuilding script works.
3577 -
3578 - 03 Oct 2003; Alexander Gabert <pappy@g.o> python-2.2.3-r1.ebuild:
3579 - filter-flags because of segfaulting with fstackprotector in CFLAGS
3580 -
3581 - 23 Sep 2003; Bartosch Pixa <darkspecter@g.o> python-2.2.3-r1.ebuild:
3582 - set ppc in keywords
3583 -
3584 - 17 Sep 2003; Jon Portnoy <avenj@g.o> python-2.2.3-r1.ebuild :
3585 - ia64 keywords.
3586 -
3587 - 16 Jul 2003; Alastair Tse <liquidx@g.o> python-2.2.3-r1.ebuild,
3588 - python-2.2.3.ebuild:
3589 - marked 2.2.3 stable for x86
3590 -
3591 - 13 Jul 2003; Alastair Tse <liquidx@g.o> python-2.2.3-r1.ebuild:
3592 - add doc useflag to install python documentation. (#24318)
3593 -
3594 -*python-2.2.3-r1 (03 Jul 2003)
3595 -
3596 - 23 Jul 2003; Guy Martin <gmsoft@g.o> python-2.2.3-r1.ebuild :
3597 - Marked stable on hppa.
3598 -
3599 - 03 Jul 2003; Alastair Tse <liquidx@g.o> metadata.xml,
3600 - python-2.2.3-r1.ebuild:
3601 - added db4 support and enabled threads (pthread) support
3602 -
3603 -*python-2.2.3 (02 Jun 2003)
3604 -
3605 - 06 Jul 2003; Joshua Kinard <kumba@g.o> python-2.2.3.ebuild:
3606 - Changed ~mips to mips in KEYWORDS
3607 -
3608 - 01 Jul 2003; Todd Sunderlin <todd@g.o> python-2.2.3.ebuild:
3609 - set stable on sparc
3610 -
3611 - 02 Jun 2003; Alastair Tse <liquidx@g.o> python-2.2.2-r1.ebuild,
3612 - python-2.2.3.ebuild, files/python-config-2.2:
3613 - version bump to new bugfix release. fixed python-config location for unstable
3614 - versions
3615 -
3616 -*python-2.2.2-r1 (08 May 2003)
3617 -
3618 - 08 May 2003; Alastair Tse <liquidx@g.o> python-2.2.2-r1.ebuild,
3619 - files/python-2.2.2-tk-8.4.x.patch:
3620 - backported patch to fix tk-8.4.x problems (#20318)
3621 -
3622 - 23 Feb 2003; Guy Martin <gmsoft@g.o> python-2.2.2.ebuild :
3623 - Added -fPIC to CFLAGS on hppa. It's needed by apps linking to some python libs.
3624 -
3625 - 21 Feb 2003; Zach Welch <zwelch@g.o> python-2.2.2.ebuild :
3626 - Added arm to keywords.
3627 -
3628 - 07 Feb 2003; Guy Martin <gmsoft@g.o> python-2.2.2.ebuild :
3629 - Added hppa to keywords.
3630 -
3631 - 06 Dec 2002; Rodney Rees <manson@g.o> : changed sparc ~sparc keywords
3632 -
3633 - 29 Nov 2002; Dan Armak <danarmak@g.o> ChangeLog :
3634 -
3635 - Added missing python-config for 2.2.2.
3636 -
3637 -*python-2.2.2 (20 Oct 2002)
3638 -
3639 - 07 Jan 2003; Jan Seidel <tuxus@g.o> python-2.2.2.ebuild :
3640 - Added mips to keywords
3641 -
3642 - 20 Oct 2002; Jon Nelson <jnelson@g.o> :
3643 - 2.2.2 is released
3644 -
3645 -*python-2.2.1-r5 (03 Oct 2002)
3646 -
3647 - 15 Oct 2002; Martin Schlemmer <azarah@g.o> :
3648 - Fix the sed on /usr/lib/python<ver>/config/Makefile to change
3649 - OPT to 'OPT = -DNDEBUG', and not 'OPT = -NDEBUG' which caused
3650 - gcc warnings.
3651 -
3652 - 03 Oct 2002; Daniel Ahlberg <aliz@g.o> :
3653 - Security update.
3654 -
3655 -*python-2.2.1-r4 (7 Sep 2002)
3656 - 7 Sep 2002; Nicholas Jones <carpaski@g.o> python-2.2.1-r4.ebuild
3657 - Fix for bug #7641 -- Fixes the OPT flags in Makefile so that gcc
3658 - isn't confused by conflicting build types of i386 and user set.
3659 -
3660 -*python-2.2.1-r3 (2 Sep 2002)
3661 - 2 Sep 2002; Jon Nelson <jnelson@g.o> python-2.2.1-r3.ebuild
3662 - Filter -malign-double from flags
3663 -
3664 -*python-2.1.3-r1 (2 Jul 2002)
3665 -
3666 - 20 Jul 2002; Doug Goldstein <cardoe@g.o> python-2.1.3-r1.ebuild
3667 - Added missing KEYWORDS
3668 -
3669 - 2 Jul 2002; Jon Nelson <jnelson@g.o> python-2.1.3-r1.ebuild:
3670 - Fix Makefile.pre.in install (the one we want is located in Misc)
3671 -
3672 -*python-2.1.3 (1 Jul 2002)
3673 -
3674 - 20 Jul 2002; Doug Goldstein <cardoe@g.o> python-2.1.3.ebuild
3675 - Added missing KEYWORDS
3676 -
3677 - 1 Jul 2002; Jon Nelson <jnelson@g.o>: python-2.1.3.ebuild
3678 - This is a python 2.1.3 ebuild that does *not* conflict with
3679 - python 2.2.*
3680 - Note that 99.9% of the people out there won't use it anyway,
3681 - because 2.2 will always be selected as most recent. ;-)
3682 -
3683 -*python-2.2.1-r2 (1 Jul 2002)
3684 -
3685 - 20 Jul 2002; Doug Goldstein <cardoe@g.o>: python-2.2.1-r2.ebuild
3686 - Added missing KEYWORDS
3687 -
3688 - 30 Jun 2002; Jon Nelson <jnelson@g.o>: python-2.2.1-r2.ebuild
3689 - Add "-lm" to the python-config script. Closes bug #4217.
3690 - 2.2.1-r2 has a 100% identical ebuild file to 2.2.1-r1, just the
3691 - python-config file has changed.
3692 -
3693 -*python-2.2.1-r1 (29 May 2002)
3694 -
3695 - 20 Jul 2002; Doug Goldstein <cardoe@g.o>: python-2.2.1-r1.ebuild
3696 - Added missing KEYWORDS
3697 -
3698 - 29 May 2002; Jon Nelson <jnelson@g.o>: python-2.2.1-r1.ebuild
3699 - Add expat to build depends (except during bootstrap), use econf
3700 - and emake, and don't mess with Modules/Setup.local because modules
3701 - are build as shared on Linux as default.
3702 -
3703 -*python-2.2.1 (2 May 2002)
3704 -
3705 - 20 Jul 2002; Doug Goldstein <cardoe@g.o>: python-2.2.1.ebuild
3706 - Added missing KEYWORDS
3707 -
3708 - 2 May 2002; Jon Nelson <jnelson@g.o>: python-2.2.1.ebuild
3709 - Update to 2.2.1, and completely re-vamp build procedure
3710 - This should solve several build issues.
3711 -
3712 -*python-2.2-r7 (29 Apr 2002)
3713 -
3714 - 29 Apr 2002; Daniel Robbins <drobbins@g.o>: New rev to fix bug #2199;
3715 - python-config should now work properly.
3716 -
3717 -*python-2.2-r6 (24 Apr 2002)
3718 -
3719 - 24 Apr 2002; Jon Nelson <jnelson@g.o> python-2.2-r6.ebuild : Make
3720 - python build with shared modules. Depends on python-fchksum, as fchksum *no
3721 - longer built in*
3722 -
3723 -*python-2.2-r5 (8 Apr 2002)
3724 -
3725 - 8 Apr 2002; Jared H. Hudson <jhhudso@g.o> python-2.2-r5.ebuild :
3726 -
3727 - Added include flag for compilation of tcltk with python to compile
3728 - correctly.
3729 -
3730 - --------
3731 -
3732 - 06 Apr 2002; Daniel Robbins <drobbins@g.o> : the 2.2-r4 ebuild now
3733 - disables C++ support if we are creating a new build image (since we have no
3734 - C++ in that case).
3735 -
3736 - 30 Mar 2002; Daniel Robbins <drobbins@g.o> : changed PROVIDE from
3737 - virtual/python-2.2 to virtual/python. No rev bump.
3738 -
3739 -*python-2.2-r4 (1 Feb 2002)
3740 -
3741 - 1 Feb 2002; G.Bevin <gbevin@g.o> ChangeLog :
3742 -
3743 - Added initial ChangeLog which should be updated whenever the package is
3744 - updated in any way. This changelog is targetted to users. This means that the
3745 - comments should well explained and written in clean English. The details about
3746 - writing correct changelogs are explained in the skel.ChangeLog file which you
3747 - can find in the root directory of the portage repository.
3748
3749 diff --git a/dev-lang/python/Manifest b/dev-lang/python/Manifest
3750 deleted file mode 100644
3751 index 8042abd..0000000
3752 --- a/dev-lang/python/Manifest
3753 +++ /dev/null
3754 @@ -1,50 +0,0 @@
3755 -AUX CVE-2013-4238_py27.patch 11591 SHA256 050cc2d4b9d588f2587010a30819591e02130fde90594782993a39c945c1559b SHA512 f9b1d0573bc7175b8fe6bdd8b6777a376cd717a594a14a6ddb334e0107596b0fbfbfe8a0c1743a0da54ce8ac8905cb7385aa2ae26698272f679763542c13e7e2 WHIRLPOOL bbf89edb2e3620aae3f54e80feba98d75fa566594b2e71e88b75c22036201a2692a77daf56080f4413612edf159f4282f5494a0a5dd11b350bcde248ef51f139
3756 -AUX CVE-2013-4238_py33.patch 11437 SHA256 e4f78490fc247df9d1133dc9f2deec47b1c582c4af1c8e93bd503d889c9eb716 SHA512 d1f1b64c46056f178b89abfe61c7c653afc0ed67cf9a8ef8c981d1cf6a1c389cb20bd354cac3a30c1241e6fe24a49e165527571276c1f8afb55989f5f069ba00 WHIRLPOOL e5889b6be0a2db7ec45ff8cbe9fa8481c6c69b25091b62635d2ff595ef5d0b1136485f7adb04f4c0c97402edfd9d915d4fd05e2b6bf1942497d81de1b1cefdce
3757 -AUX pydoc.conf 279 SHA256 6437e85d16d34efaf2665b3cabb0707392e6dee3df04989d3fcac63fd22997e8 SHA512 2d552b6262fa4c7cd75f45d93b8a2657eb9154decbc08f9b73d2e67e1d84367b498f8556fbba20f7b57414281cfd673fff607da3c688c1d6bb9842e92cf0c32a WHIRLPOOL 1ba44797765939d7c0bcbecb08cb6201eeff9b134d4d3caef9339729dcad9f258e20b16db5f369f49b378df3c91e530115dbce5ce3595d71cd325a48793ac814
3758 -AUX pydoc.init 711 SHA256 bf42ce358c4505bb9c9923758cf7c237113b5465778fe8d0d9781625586003fd SHA512 328597e0f7594dcc1d929dcf15feb39e08a0f85067b226140219c03c2f0a0a5fa9518f26d52723aeb77e36eb5e46d54b5ee4ddbcfc52aa81540a738c49c03b73 WHIRLPOOL 846c7d90fc4b7b74d65c6019ea8e7c9f0d2efb0b6cad5b91d53b5b7bda509f3b625fb30eb27ea59cacf6233378d800c35375108762ba82fb4c2155f2dbf08f13
3759 -AUX python-2.5-tcl86.patch 615 SHA256 cc649fbd471c7e348fc64f3844d9f4e1aab604cb3a028c9fb2cc58ba816b7bda SHA512 dca5eaff3ba981d699805c310dba0a7412ab2b856256ef25e41eb49e1441c382f868406ddce04a1e9768ccfacab1fb39e5e7a320f4ca6884a51583ca61a77dc8 WHIRLPOOL 515f1a5a163d4b34adff2b8e10e43c83f9575f185391440cf89155076b0399d3c5249e5a8741894d94092af4c5271c125b032bbc76c9e4e6f6d94f26133e5672
3760 -AUX python-2.7-issue16248.patch 735 SHA256 ed137a0ab513e6d9c910e37f637aef2d58fb730070e447572f39d46d9cc99568 SHA512 da00f8571741d4cfb529b9db875b5d831d5d8e43fdc464bc43adee046f208165ab6b13d671bc90be988b1099afeac4fc0e7ba7fa473ff74a9ec7731da89e11a9 WHIRLPOOL ad770b848666efb5cc3b8c07a530f2a9aaca683f4b447c2d835e39be59a5dde35a28ab8cdb278ecf456e15e57b7401ff83fb04ac71bd8d80abc19d45beb84d62
3761 -AUX python-2.7-issue18851.patch 11805 SHA256 4ecff8db20cdc4d9b0692a126859c318a9ba20bf1eff6e633c964871b2410d66 SHA512 b1eeec1451d011f37c65676819bf8391b9657d93a0b9f03d0db09956ef052fa3f2d922d1d5fc3c69567f549aa86f65a06670dcf3ead8300c0ac97651f9a503cd WHIRLPOOL b4b51d590175959df1f8373ff86343618b4474ea9afc2ef9360c680c986f30fa8f432eeb076de676cb87052cc6453a2b613dfaab51ab1ec5945a7c7c496a4f9f
3762 -AUX python-2.7.5-library-path.patch 991 SHA256 ff7a4a1846ebcadc2dbf979ea619072caac22e47909fe188fc4b6becce6ea2eb SHA512 74916d541eb38c526dc1243fe5e5a9de3a7875f02c53e5f49e60182ba042de2f15514364e7fbd821146dcf92db2bba88d8a9f46d4c71237b73fd39cbabf93d85 WHIRLPOOL 62bb1c85941ccaac7ca6f6fb2d93dc27f206cf9f815b90ef1f89748dfdd1d38deda9f6bf7eb2ce9fd8635d1a77576819192e8049ec5de52fdeb9f981dfb32f9f
3763 -AUX python-2.7.5-nonfatal-compileall.patch 750 SHA256 3f5a137602f1b3f0522f561c168a740f0080b29c2c888cb3a8dbbcc4407c2d9e SHA512 d2e93e2a6fcd55d516df0ddaca31af97faed677ea6b4be282eb99e7864f8a7399b5ca11139844a4b3c264832183483b0f4c8c9865c05de0e8520e6d2c8f1dbc6 WHIRLPOOL ab576e3a4e67f881d6d5c705503230ace125fe94d907d7f69bb573dd492070b8b34078a2b1205f315eb45244fbae8855c0f15ce35158f1d356f1bd4acf83b3c2
3764 -AUX python-2.7.5-re_unsigned_ptrdiff.patch 941 SHA256 5b0c0465a23d27e1c8f0961a8d88b3af75fbc9933ab60c2a71091720a3681079 SHA512 d46fbbc8411fae78cdfca2564faca42f32bb95ee348b9aa3fd1ca90b346cc52cd468945cee07e6df4dff46c10cee6856a58004f8e453960f6dca2751c077802b WHIRLPOOL 10bb08242dd9a055f6bdaf3eb1546786b58f180667c6355ea7276114cbac0ffba6c34822add7965fe3b5d41cc92ce8ec45e2d1d56377d8a6aa2755ef4267d101
3765 -AUX python-2.7.6-recvfrom_into_buffer_overflow.patch 563 SHA256 bdf280058fe31b6e9d08a32e4ce16e958e3dddeed515417a03b25e5ec62d41b4 SHA512 21b534e41ce1cd1bf954849f4246ef0ae907ba7335b42ccfc914cc33068db91140dc1fea0f1b8a83818609e7f5a5f5df6623f029c2c86004f2126eb3f2699c06 WHIRLPOOL 2ffe173be651aae7d43ad8ee75600133ea96952431140c7c00e0ca6ad431d3faa230207f93f1191bfd3bcdf7b0c9af61948871b06158e6953106d7f2d0c7e9f5
3766 -AUX python-2.7.9-ncurses-pkg-config.patch 305 SHA256 0464ec04985c642b40d53cb8f816abf18702aeae97cb52ec73541694317180c7 SHA512 2c18b5041a7a2f306dd4d0d6695bd851ca14c9107b2e3e856ec094bc53c7cc407b49e1f4813ee9e753b3ad2d4f6edda943a66bb1e6c895ab956a5f84d30646c6 WHIRLPOOL 774e2707a0c6ace106df30c0d4915527fb0ac7584cd0f1e12bbdb29d584c3b38c770d8fe8999d0166e94deab561cbed0c8ad09c27fcd83ed27045dfdede89a5a
3767 -AUX python-3.2-CVE-2013-2099.patch 2102 SHA256 76a89951e7efcf14d37e30e0104446429ca121c68cbb1753ec362a177c1b5a54 SHA512 03d2a09fe730bf8c94df1eb10f8bac37a31a28dfb45b7d49abe1c3ffe26ca948f8d00eb58319d34102f8a747a038d447d3507b11c051c778c42ae21ac1066c8e WHIRLPOOL 3cd701c606ef1f4f557d1d250af41a860a6a5c4b6d9ff9a9f469ab6974f13e1205d2c4c791e9bd353fd4ff726f6cbf979f9a3927b83b04af5128c1aea7070496
3768 -AUX python-3.2-CVE-2014-1912.patch 1635 SHA256 044a5857f54f1c6adfc8e3018cbcc5230ca21bc8efaf6b68f95fc47560ed13aa SHA512 afca87c0491087715f54bac777c15be426dbf3cf079859bc8559b4f4bab520e0835976221d16073b14b2fa584c0260a565307bea039f345fa5c7e3e1f9396228 WHIRLPOOL 97c08598f7cbaa28fa83819c9b9423ec218363c18781afc8ab98a3e9847459e59ae35d567b1f775eca7bc1ec53b17c656203ea6e332559607c507ec958eb8291
3769 -AUX python-3.2-CVE-2014-4616.patch 1515 SHA256 8d971bca441c3b17cf7c2a1ee2391059de472d8a10ec4060af23bae65ffddf8c SHA512 fff6cdbde476a5804184fad6615dab3577c2e81bf2dc8f2276ad02d213239e6f47a642e9c8270de352e7123fcd712a1b0073d85146c9bee59d9b6644f5a2cb3f WHIRLPOOL 4894fd9f33a01d4aae477cc558f790ad792f02965ca841b4fb1119711ff4254bd19bac3f67872ae3fc761c677ec078b6c156d71ba036cc91fdbfe32b43044cfc
3770 -AUX python-3.2-issue16248.patch 738 SHA256 b5e94ead2622f355d733232dcfdac4dab53889aab12980fa1e4496c296191e77 SHA512 6fcf3d4cf05e41758a6d51ad9cc25ce9fcd1d33854f096b599811a07ef6b7f0cc4f178c4db6b15c5c9ee86eb53fcc736fede0dfb4eae81ca429d0fad62d84db9 WHIRLPOOL dd620bdce394a74910f4deed50b8bcd2b5d6b61af1e2e225a7c36fe4f293560fe1237a2111a4a4a334dfd1272fa4b7faf6289b2a018864c4f154c8a8a8b85c5c
3771 -AUX python-3.3-CVE-2013-2099.patch 2102 SHA256 d5ccc8de43a176d9d16c3a7be58d32dcf3c952147d8866f84dffcd8fa66f6396 SHA512 a8e2c8fd3d3c3924acb856e89b6dc6965c887688e4c7d078c27abacfaf6b33b12484d86942b75643f28e4a14a465e2ec6a30fe53acf2ab036ae667fb7f76d737 WHIRLPOOL c02bd815d5143b6a916a91f40bb7971f1be188e836ab6095a5befd6410545acba0d44b4b0a75a5f7e7d84105018c0ef27887eefdcd883c73e68f872bb4138e35
3772 -AUX python-3.3-CVE-2014-4616.patch 1896 SHA256 50262c507dff44a2ec928281251882aa7c192954713f5a29def8eee7cc29d3d0 SHA512 98d7929d7b6dd88de511690776bf6cabfb5a2d21f89cd21573aba39cb03156666ce0404bd9e380c8193a28cf73d386a6b56c71f90ff3b66da48689953dea997b WHIRLPOOL 5debc17107a9d15a36bc73ef8c68f6f9c89ba060191f6d310709852a2cb01d9b4143c40cd0ce0a3df1b02ace8afe865122bd10dab38aafc1d1ec1e1c2c1b7331
3773 -AUX python-3.3.5-ncurses-pkg-config.patch 1175 SHA256 2a64b3b5628f9114c091bfc5221c244f8966d83ce08e81971ec890a59f2d93c3 SHA512 25e37ac17a8fc5907bf9ce55e5c58337895a38cf4d4a6bd333a44f30a0f6ac65510a8594d3e953f477a8d724de9932450e6df56e79d7884bc451b23c9a7ad8e0 WHIRLPOOL b213fa0c9707b1e04036fd3cd85f040b7d459f1046b90c619f85a4c221e946b09ffb2d1a7c5b10f795674f89af886ac7f93ff8fd440c2f7014ee40e77b752e21
3774 -AUX python-3.4.3-ncurses-pkg-config.patch 302 SHA256 43e704d8dc96606d96c5eee82ecb53798d6586f591b4ee54d08137e962705101 SHA512 9e2bc2af0077d6282d9512b172d80ee294c47a6d41855474eed641afa8139ce4667a64c4676f5b2e40a90278b780a46e998d1096422ed0fe1d83b973dc455dc2 WHIRLPOOL 321452dd6f443609fddd4da7f5fb0c8897e99f9f4eea77eafc81ca14a9a4995818ea5e1400e44d9531c2b5d9491326c64d838b262b9e1b4814ec47f564a069ef
3775 -AUX python-config-2.4-r1 1624 SHA256 923a9e896f99cca5aa4ccbb02f981c6e26a2b1aa42326de2359d3c884bde2a9f SHA512 f8a0e12bed93385b3dddfa64a416ff4a560ec1b12c6c4a0dd715a2c804a43b6a292f0fe13e28d7828d4c4d620cde9dd7eab6a3423216786917ea6f51856ff53c WHIRLPOOL f2fe759b05ac0eb3b8dd196b0c68b8b8e0145ab79659eb4a45adee1bf7ae7260f457ae6192b9792990babd59cb98cceec05a8d93a50a3203517fe49ec30f5e0e
3776 -DIST Python-2.6.9.tgz 13285074 SHA256 7277b1285d8a82f374ef6ebaac85b003266f7939b3f2a24a3af52f9523ac94db SHA512 7ff28f41f7dc12e1504a781060520440bbf74b96c5df269ca5218f5910eae63898b94fdd398f549217912689814bc5275bb3b5ec4cc892f20bb468fc1b041c0c WHIRLPOOL 909f612286314ea004eef328a58d7b0aecffc1a524f6b283333ef0f299413055c1f7ec4e2d21a44d1beeaa8e11aabd68510cf9c5840cb5394176cbc8f2e5c147
3777 -DIST Python-2.7.9.tar.xz 12164712 SHA256 90d27e14ea7e03570026850e2e50ba71ad20b7eb31035aada1cf3def8f8d4916 SHA512 6939182463272a6bb9da0e327bfb9efc574a87820f2ae39eaf02d9fae053dbe0004330e916e6828becfef94cbe294acb0a88a600f8930b99b94fcfc4efc44ff4 WHIRLPOOL 993313811eddef1820e6f3ee0e02848c73bdfce65b85ab0e360603e726c31e1cc9dc6c128e3fe086cafc94164d2d628ff5d859e13b90648da6352c35ddeedcd4
3778 -DIST Python-3.2.5.tar.xz 9221624 SHA256 8ccb9645b9779fc4550055b2ebb21a724ab7a63dee45643286eb4f79b2f84116 SHA512 6e71d01695c7b1e74d9781e4ac40a8d1560cae659d5351d392fc685b84316568d93740a99d2ed878dd87d4ce1708d0474cb01c6bad7b3dab610c639f3255b09d WHIRLPOOL d5e5fae5e1d4110861e1e1dac00c9812abbbc37205e8ce3cd268535ab9f66e24038ab4778af8bb834fd472eaa0281730f1f2fabdf6dffc4f6b54ef32c1d75953
3779 -DIST Python-3.3.5.tar.xz 12116308 SHA256 abe99b484434503d8b23be0f243ec27139e743a4798cd71c1dce3cf40e63b6e5 SHA512 562ebd85291f29ff18d37f05682763fc45aa9d070688006f4ef5c89392a48022357c3ca9ee1d795e9e863bdef413e6bab77b8d65581d374a76dbe7cacec65550 WHIRLPOOL f4b6010d32b28b7bb038cbb7c5f98d325cc4253fd1be9a0a1089ed6fd7dd414c5169931d21ef819137d5c1084517a650828f260cf2a1d8ce871bc67aeef3fff8
3780 -DIST Python-3.4.0.tar.xz 14084912 SHA256 f13686c0a2d45e7146759e9d5d1cbd8097a0606483c0cf7730e1e13f58b14cbe SHA512 4fd4d3352e3b64ef8017ba083a2d894b99e89882581bcf30cdb218578f0f384aa6efc89211ffe44f5bb3d783c79763e26823242d27382fd05900099dd966ca31 WHIRLPOOL 82a1bb14a7683e2bce32221792923f334b61fabc75b0b293b0ecc0d810c8a4bebf05b75a061d85dd6612a8ca699c9b4f358e2aef5d14706aad1c18f42c9b8d55
3781 -DIST Python-3.4.1.tar.xz 14125788 SHA256 c595a163104399041fcbe1c5c04db4c1da94f917b82ce89e8944c8edff7aedc4 SHA512 09b6390c07334974f189fb1c90bc2310898aef76661b1cecaa2b4d50001fa3df0fa0c63d3471a5a0dc7f9e08dd559d38d3bc45a6c05a816d8b2ed6b2a20e5fa9 WHIRLPOOL c8f879bb5d42a759b0804aa58d90330d9be6f4c29652ec40f07ca7da31510eadbd6b4eceb2b213af9a1af031c8321fc25faccae77763a31814eb0569831b8bfd
3782 -DIST Python-3.4.2.tar.xz 14223804 SHA256 1c6d9682d145c056537e477bbfa060ce727f9edd38df1827e0f970dcf04b2def SHA512 12de5309cfaf91f5292efd660b5abe31581b902fdcc302317b597ffa74c9f5ec14ec1dd55994bcccd50d40473ae344ae19bf917ccfb8ab4906c8777d6ea95b17 WHIRLPOOL 358a2ca605676a7b6decf7cc9edfcf5edd6e15eb7b08e48fbf5f78422d3470a1233830867e3986a6bd564e105726298d3664ad04b90a233f90a46d6b81d8d60f
3783 -DIST Python-3.4.3.tar.xz 14421964 SHA256 b5b3963533768d5fc325a4d7a6bd6f666726002d696f1d399ec06b043ea996b8 SHA512 55b2d7c07da8ad3a3971b4687da2e45809c6f1474732e93b0432f121f287d0b63ad8a9bf381987ea70f47a03d9474c3e55b7d86d14800bf7ef29b3324d8d35b9 WHIRLPOOL f851dedc6a1ea35adec83d60784a5fbcd9dfcf6aa8858bb5ada114fa2ff55add1fbf323ab94ec039ecdedb26d59e8f2e6e171cd9fc1ed41ad9cfa434a555cff3
3784 -DIST python-gentoo-patches-2.6.9-0.tar.xz 17532 SHA256 6ff9448c3a8412f9624363ec6f321b4e7f098aff350a82fde74f82adfbb0cae3 SHA512 e6d134200df8320fe137f0a282b7564aba02b10eab2d4585fa82de5b4740223ddeac7a5ea922a40cea8496a1a706b6787310eae45978a3e69342bb80a7670a39 WHIRLPOOL 09b38d10f9415f41205dec2c9e9df5f0687e23f791d31ce1127d96bd489c9fc7825912096b37329d62e66d8c99778ad1ffcbdbd4a2b77b5305f75ea7c28fe15d
3785 -DIST python-gentoo-patches-2.7.9-0.tar.xz 14020 SHA256 d1ae164ab14e265ff63d6a724e0c2b5519bdb790fe8b7796c2124a30cecc8ef8 SHA512 83aa867ce562ff3acf970a4b3ecf7132f34aca1ecf286b90575a20e6e044600b98ff1d7f1a7ee613d4429a6a71cfe8beaff144b64b6beb456ea8691ca00937b0 WHIRLPOOL 5b4f7bd2dcec3a45e12fe5baf1c196faf2b754376a6bccb555dd12a1af28a202d51a0d956e4450ff2f334df13b296ee27b36aa967cb179925c386cd58389050b
3786 -DIST python-gentoo-patches-2.7.9-1.tar.xz 12872 SHA256 9d912c55db56b5bfe054a6164614969fc9605f48f2ffec8770941f798a16470a SHA512 cbbae0faa246516361cd39e55d841660471931bb26cae8396a7d3929c9f4b4a3d8d5a76f7fa295deeb6335c26ed95aab18399e34c2603a582743b6e760f2b280 WHIRLPOOL 422ace8a204481458acd9cfd3b3b85e4b02fb2fe656c8ef8473a76444d5a1b54cd9d690e0009904f8c251697f60105769ce6a97c26224548476c0ece6595e484
3787 -DIST python-gentoo-patches-3.2.5-1.tar.xz 14628 SHA256 0acc5531421781ab7f30e6fc8a502f202b79aa285b4f411eb16ea0a9e6d958c1 SHA512 1abbd53e92466d258802717309e1839ae931b8a4b0a5a27d4d0da748e71cf96ac47c6837bdbae5dd6921a46cee339c178f86ff3108afe95e6a0a42c4f4300791 WHIRLPOOL de003cccb8b311413889713d66b7987f28a1f906cc9642621d1fd2a379ceae4f0f901c137503d808dc3da7295ac611de09781bf8661cdbcd14c1d7c94ba489c2
3788 -DIST python-gentoo-patches-3.3.5-0.tar.xz 12892 SHA256 a7240de9598033cb40f8f273d8104d4e2b1dcaea028d45ac28efaa3c680ff6f7 SHA512 27eef4c2b3f631b000db3f6a5c426d9b498d63a08fe82b1ab7c2c010fb72208109461a5f008d47703852526655b70a734ea95be8742897026db5750bb9cc9d16 WHIRLPOOL edab9222d7da94cab3b1de0e1a27c6c7dbd49194b813a0a1cf9e532063029c4e4f19151c9f4878eeabed3168ff1f97eae7f008280c7ed2897fc14c5516c68d7e
3789 -DIST python-gentoo-patches-3.4.0-0.tar.xz 12900 SHA256 5e5ca54eaf446c7dde4155e5d792df5229c7790b32abb5aca38cbc4fc30f9c45 SHA512 be9851f9062f6aebbd2f23d91a4038dad1a8757049745ccbb1cc618ff6bc3dfab0326d520d27678541f4421e5db41d64f632fe6fb3e80f2cf4e73dadd3d5620b WHIRLPOOL df998b5588c928ca506f9f4434093a1f60637206f03f5e067444531dae02168f88b22c8de7d58e745bdb9d85e17abd667ed51f7f5651779c2c94da98f0925679
3790 -DIST python-gentoo-patches-3.4.1-0.tar.xz 11164 SHA256 7d88e40ed02bef2d26802516fc0138a28cca58e298204e6b1a32054f9224fcb6 SHA512 5ecdf6a1ccb8d12b5b7436e1b7f641a41afcd7fde573e9249e3dc0d438bacb1eb6a5255e149388194dbfd2951fee4f8c800199362dfd072ff96776bbbcad0bbe WHIRLPOOL 707f943f9af7c3fc6deed7cfca5a4198f65a34434893840ba8e4f4c2a3d055e8f927069cb8855b5fe20dff643b7e2d41f35f65e1f3f300e350c0f291b4df6bc2
3791 -DIST python-gentoo-patches-3.4.2-0.tar.xz 11568 SHA256 86028c50ecb16fdbaae68662d9749f8c5dbbad6359423ed02c7b379d4aaeb7e3 SHA512 786d74df8ca168655f38d052a3e79541fd1d9f58845f8fdc296246208f8ddc61e5a0d95d675432fcac77dda7c0ab419162790d0e39337bce2fb5c5d3f23c9ef4 WHIRLPOOL 5b26c7d5facd93ca334f23057e26e3a2af71d9d590ab270d4619bb57e0d14bc6465c08ea34c53e1ccf347f5938fd0199a0edf2ddada3c3a891a5568f1eb81227
3792 -DIST python-gentoo-patches-3.4.3-0.tar.xz 11736 SHA256 917a9d98d40a91379c81ea57922a8632ba3c6f6db6f304ed6262bc88c5044946 SHA512 7ad1b30cf8bb7900fe518ed71e4ee55dd92ce7e23ae583a1f2f851b26cfa8c4f4271d28f418e780f3725a48d4ca8eeb8fd083f850810c66c29fb08c430828d72 WHIRLPOOL 074e8c0055b49a028eebda21d1acfb8a25ec968eb8b350c2bed37e042f9f354871e413db13e0ef2fe41d7e56d647178a7b3622019f36c4819c2c68f088366eb1
3793 -EBUILD python-2.6.9.ebuild 11294 SHA256 afd73be1f2aeaa83d2ada51f126115cd99e83f1d28323fe7294e67fc46883346 SHA512 ef6952a0c69267534d9c4875ae5a6179f8e1fca2d431ea75085f100240297a2de4cf48aca72491628b20ac6d40773bca06176ff7191a6fd6f481653f8c975b2d WHIRLPOOL 29883ed256da0abe6ef2b4c8ee35ee9c95cb64564486d74a7dd0d32b2c157b17779ce31347f39bb003a7a06dc68557de5081c5af6a4d15ca3fd7c6793bf767c2
3794 -EBUILD python-2.7.9-r1.ebuild 10532 SHA256 b257af119d2bb1fe14c9ffb9d7f5eb083446ecb2e455d54de878bd081ae52342 SHA512 46199fa81a8aa897f853ad50bc9d63127ab16f4062f57e10b536f49c09c37ba1fb357f449ad4570b3878414c58b80f14019ec1ecd12d1fe764c0c14a883478e7 WHIRLPOOL fe66cf76e68fa1ac211c0a60bc75b69f0d55ecf151611aa7b7f3ecaa6f5f42979b471ce9d7ce275083b9d1e2ba1b1d43b4a0c913730099036213a646d151a6e1
3795 -EBUILD python-2.7.9-r2.ebuild 10701 SHA256 b1e73f3646351b27baa31079a18db4b51b47151e25655856fb037f8144ff3cf8 SHA512 2f4b782941c933a0e09b9a9459812a1bcdd46126f7d675ad3ca8753aa505efabc8e5b68009c7f7956027f040c944a6974b759bf696110c60a8371a2f5a8c867c WHIRLPOOL 0399f5ae86ff253bd8e4f379822bef7404f968689718abae366e49c32646350677d0f873e44d3163eed98036f4c0cfa23abf3df97017fcfc286941b1121db840
3796 -EBUILD python-3.2.5-r6.ebuild 11463 SHA256 3dc64bc08b641e7befa7366f8a5bb34567beb970adeeccd8f3c71a36876fc27f SHA512 615d181fd1587ba106f1ad68a081752a1bea4163fa340abacebc13b9fac2c556e186db39763c59b4e100eda15e404bb100480d7f839cb8c4746cdc32d1662ae0 WHIRLPOOL 5c998bfe4d8b2d3874b2c2bbb121b84b6e7dd3d247d3e4fe657153226f12c5eb98b6802ddbc53c6ce2ea3a72dc1e830fe00e6963157768ca3012a8e118dd4d70
3797 -EBUILD python-3.3.5-r1.ebuild 9581 SHA256 45e32db6d88b744d1f0100c4ca80a946e727379df4ce1d4a75046cf1fa49f3dc SHA512 58b1c4d0c3bc78f90dd2eebcd4864b163d4d7f4c919727c34b80f554025a57b0ac4c72dd78b3fdb4985f0fc8453ce46b530f5864ffa39b2f8449f9fc1db869b7 WHIRLPOOL 99e84e88f81f430d319fcf316c71af148a5cf155802a5132bc9dc34fa59fa1ea9fa27570181ab9866f501ab4f5a9908f7b9ada4c2a553750c1ea6276b81ec4a2
3798 -EBUILD python-3.4.0.ebuild 9306 SHA256 ecb382171c85b5dae6f9da1b1ead58548ae0077669bc851c2416abdc5180a25c SHA512 6b51e94abefde02c569969f2f4e3d6ab19dd548ec8c3d925b519d9abd91c13e29b13d84695ec02a5cc526a38af4e0965c6eb2a90745ffcc75c88072696e8b0c4 WHIRLPOOL 41e110e37c8fa282183bec1fe628e4b36416396094f8548a32b8a7714a49e1a11bc1874aea89e808eb20fc34b011836c22b22755aa09886833e1cde9144cf2fa
3799 -EBUILD python-3.4.1.ebuild 9228 SHA256 2e0c3853e037995afde3f233889eb05e9f5459a94a4cccbad28a4b1d97084441 SHA512 344a2903f47be14248edb1318cb138fe20113610211d368aca1e0a298fe4c3a169665884d39a882f2f488537c441a0d4fd87f52c2d3a595a0b40886c84fc6f50 WHIRLPOOL bcc30f3ef7f67327634f066c1b0de6c0549dfd7a32d03d22a8bcd5f8468d17c8f7e31da5fa8910add24fab64dfbb663c8dcf3127d86dff6f165274a538dcd14a
3800 -EBUILD python-3.4.2.ebuild 9240 SHA256 24914c177f25fd847a792bbca0739b217dd02a44e101d38940eb28730984a29c SHA512 0f154558579481c3549a2969ee9a300d82aa266106faa02d4e5a547a0344de795ad7c6f255b833e2b89a3098a9c3f7166c221de0b8ba4f00b8a657b6ebae5851 WHIRLPOOL d7df13b58fdac0ac1ec351fa802bbb7b30605de2eda7934b395480de9bbdb4d97beeb5f581e99e6ce707ced024728edc389930ef8df5dfcc89352e71f4077d45
3801 -EBUILD python-3.4.3.ebuild 9267 SHA256 19eeba5229976e9c59ee03f46b3a2d743c401ff0098ba434eb79b4cf211b2843 SHA512 82aa5c9011c9b0cf06dd8df1dc4af3048f5eebd8a3d7909883cf778294f34c11db0ff4e2d2cd90c64c1362d410de297dd134eb1c89e4e0b66e4dae8a974a49f8 WHIRLPOOL 802f5b8c7d3ea08a2dbbea243028f273e556dacedd20fb5d936555e88d9441cd3580715ffd946cd9bf890303fdaaa4378b002138cdf04980ec4eebdabfb7f895
3802 -MISC ChangeLog 40613 SHA256 94b40f7cf900a8e63e8715d5c1005320498c5fee93e8aad6cf44a7063816d534 SHA512 6dfa11e154c8c8c6beb69876610c39a17ffcd22115f2c141c57e600e3ace0c37e44495716425afdc371fec295dbb04c5ba5b3c90133eef0b720ed9a128fe631c WHIRLPOOL 70bbdf38d65786423874e77872c544a77504f17667e9fdca58c09111c6935b26f5e7bb8afdab521e9e936224806b625258875c2a5ba27e7880fe5c61208a6bf0
3803 -MISC ChangeLog-2011 100599 SHA256 23129cb47321b2a6b1cb9323f1815d0cd11d6f30c3893908ed51575c270a0cc8 SHA512 4181ba9d965139ba58218da5b960c87b7a611b27606a1ab1ce1b4c3c9255b4e0e2947307cbfffc531f0f8b6b545ee11e083fcb29dc7b2b7ba31c6bb40b8ab128 WHIRLPOOL 4ceebb6a6ed58b906d3a7331795748ac6e4fe2e1401bcccae9024a8e81e2c444aebc5fec610398cfe6002354ad3b10487484598da5091867874727f07e239c56
3804 -MISC metadata.xml 661 SHA256 2c6c3407251f7ccd6501dee49494e539a9544f2fbae99a4373eefdf4e83e8908 SHA512 871989a29417ce20d95da950fa385f1a958139de7b1567beb9cda28a1217901243cd9d25235fe3c7b0e43a82176d72286e31e4e97310b26488d2a3252ef3a8a0 WHIRLPOOL b694b1b4270ba15640d04a3b0b26a08575ea4afc9be256717f7f3b1768d75da9f71ceca6afd2f69971906227d5ba42263d2df2fc9387441aa240222d39fd094e
3805
3806 diff --git a/dev-lang/python/files/CVE-2013-4238_py27.patch b/dev-lang/python/files/CVE-2013-4238_py27.patch
3807 deleted file mode 100644
3808 index e215589..0000000
3809 --- a/dev-lang/python/files/CVE-2013-4238_py27.patch
3810 +++ /dev/null
3811 @@ -1,247 +0,0 @@
3812 -diff -r 9ddc63c039ba Lib/test/nullbytecert.pem
3813 ---- /dev/null Thu Jan 01 00:00:00 1970 +0000
3814 -+++ b/Lib/test/nullbytecert.pem Sun Aug 11 18:13:17 2013 +0200
3815 -@@ -0,0 +1,90 @@
3816 -+Certificate:
3817 -+ Data:
3818 -+ Version: 3 (0x2)
3819 -+ Serial Number: 0 (0x0)
3820 -+ Signature Algorithm: sha1WithRSAEncryption
3821 -+ Issuer: C=US, ST=Oregon, L=Beaverton, O=Python Software Foundation, OU=Python Core Development, CN=null.python.org\x00example.org/emailAddress=python-dev@××××××.org
3822 -+ Validity
3823 -+ Not Before: Aug 7 13:11:52 2013 GMT
3824 -+ Not After : Aug 7 13:12:52 2013 GMT
3825 -+ Subject: C=US, ST=Oregon, L=Beaverton, O=Python Software Foundation, OU=Python Core Development, CN=null.python.org\x00example.org/emailAddress=python-dev@××××××.org
3826 -+ Subject Public Key Info:
3827 -+ Public Key Algorithm: rsaEncryption
3828 -+ Public-Key: (2048 bit)
3829 -+ Modulus:
3830 -+ 00:b5:ea:ed:c9:fb:46:7d:6f:3b:76:80:dd:3a:f3:
3831 -+ 03:94:0b:a7:a6:db:ec:1d:df:ff:23:74:08:9d:97:
3832 -+ 16:3f:a3:a4:7b:3e:1b:0e:96:59:25:03:a7:26:e2:
3833 -+ 88:a9:cf:79:cd:f7:04:56:b0:ab:79:32:6e:59:c1:
3834 -+ 32:30:54:eb:58:a8:cb:91:f0:42:a5:64:27:cb:d4:
3835 -+ 56:31:88:52:ad:cf:bd:7f:f0:06:64:1f:cc:27:b8:
3836 -+ a3:8b:8c:f3:d8:29:1f:25:0b:f5:46:06:1b:ca:02:
3837 -+ 45:ad:7b:76:0a:9c:bf:bb:b9:ae:0d:16:ab:60:75:
3838 -+ ae:06:3e:9c:7c:31:dc:92:2f:29:1a:e0:4b:0c:91:
3839 -+ 90:6c:e9:37:c5:90:d7:2a:d7:97:15:a3:80:8f:5d:
3840 -+ 7b:49:8f:54:30:d4:97:2c:1c:5b:37:b5:ab:69:30:
3841 -+ 68:43:d3:33:78:4b:02:60:f5:3c:44:80:a1:8f:e7:
3842 -+ f0:0f:d1:5e:87:9e:46:cf:62:fc:f9:bf:0c:65:12:
3843 -+ f1:93:c8:35:79:3f:c8:ec:ec:47:f5:ef:be:44:d5:
3844 -+ ae:82:1e:2d:9a:9f:98:5a:67:65:e1:74:70:7c:cb:
3845 -+ d3:c2:ce:0e:45:49:27:dc:e3:2d:d4:fb:48:0e:2f:
3846 -+ 9e:77:b8:14:46:c0:c4:36:ca:02:ae:6a:91:8c:da:
3847 -+ 2f:85
3848 -+ Exponent: 65537 (0x10001)
3849 -+ X509v3 extensions:
3850 -+ X509v3 Basic Constraints: critical
3851 -+ CA:FALSE
3852 -+ X509v3 Subject Key Identifier:
3853 -+ 88:5A:55:C0:52:FF:61:CD:52:A3:35:0F:EA:5A:9C:24:38:22:F7:5C
3854 -+ X509v3 Key Usage:
3855 -+ Digital Signature, Non Repudiation, Key Encipherment
3856 -+ X509v3 Subject Alternative Name:
3857 -+ *************************************************************
3858 -+ WARNING: The values for DNS, email and URI are WRONG. OpenSSL
3859 -+ doesn't print the text after a NULL byte.
3860 -+ *************************************************************
3861 -+ DNS:altnull.python.org, email:null@××××××.org, URI:http://null.python.org, IP Address:192.0.2.1, IP Address:2001:DB8:0:0:0:0:0:1
3862 -+ Signature Algorithm: sha1WithRSAEncryption
3863 -+ ac:4f:45:ef:7d:49:a8:21:70:8e:88:59:3e:d4:36:42:70:f5:
3864 -+ a3:bd:8b:d7:a8:d0:58:f6:31:4a:b1:a4:a6:dd:6f:d9:e8:44:
3865 -+ 3c:b6:0a:71:d6:7f:b1:08:61:9d:60:ce:75:cf:77:0c:d2:37:
3866 -+ 86:02:8d:5e:5d:f9:0f:71:b4:16:a8:c1:3d:23:1c:f1:11:b3:
3867 -+ 56:6e:ca:d0:8d:34:94:e6:87:2a:99:f2:ae:ae:cc:c2:e8:86:
3868 -+ de:08:a8:7f:c5:05:fa:6f:81:a7:82:e6:d0:53:9d:34:f4:ac:
3869 -+ 3e:40:fe:89:57:7a:29:a4:91:7e:0b:c6:51:31:e5:10:2f:a4:
3870 -+ 60:76:cd:95:51:1a:be:8b:a1:b0:fd:ad:52:bd:d7:1b:87:60:
3871 -+ d2:31:c7:17:c4:18:4f:2d:08:25:a3:a7:4f:b7:92:ca:e2:f5:
3872 -+ 25:f1:54:75:81:9d:b3:3d:61:a2:f7:da:ed:e1:c6:6f:2c:60:
3873 -+ 1f:d8:6f:c5:92:05:ab:c9:09:62:49:a9:14:ad:55:11:cc:d6:
3874 -+ 4a:19:94:99:97:37:1d:81:5f:8b:cf:a3:a8:96:44:51:08:3d:
3875 -+ 0b:05:65:12:eb:b6:70:80:88:48:72:4f:c6:c2:da:cf:cd:8e:
3876 -+ 5b:ba:97:2f:60:b4:96:56:49:5e:3a:43:76:63:04:be:2a:f6:
3877 -+ c1:ca:a9:94
3878 -+-----BEGIN CERTIFICATE-----
3879 -+MIIE2DCCA8CgAwIBAgIBADANBgkqhkiG9w0BAQUFADCBxTELMAkGA1UEBhMCVVMx
3880 -+DzANBgNVBAgMBk9yZWdvbjESMBAGA1UEBwwJQmVhdmVydG9uMSMwIQYDVQQKDBpQ
3881 -+eXRob24gU29mdHdhcmUgRm91bmRhdGlvbjEgMB4GA1UECwwXUHl0aG9uIENvcmUg
3882 -+RGV2ZWxvcG1lbnQxJDAiBgNVBAMMG251bGwucHl0aG9uLm9yZwBleGFtcGxlLm9y
3883 -+ZzEkMCIGCSqGSIb3DQEJARYVcHl0aG9uLWRldkBweXRob24ub3JnMB4XDTEzMDgw
3884 -+NzEzMTE1MloXDTEzMDgwNzEzMTI1MlowgcUxCzAJBgNVBAYTAlVTMQ8wDQYDVQQI
3885 -+DAZPcmVnb24xEjAQBgNVBAcMCUJlYXZlcnRvbjEjMCEGA1UECgwaUHl0aG9uIFNv
3886 -+ZnR3YXJlIEZvdW5kYXRpb24xIDAeBgNVBAsMF1B5dGhvbiBDb3JlIERldmVsb3Bt
3887 -+ZW50MSQwIgYDVQQDDBtudWxsLnB5dGhvbi5vcmcAZXhhbXBsZS5vcmcxJDAiBgkq
3888 -+hkiG9w0BCQEWFXB5dGhvbi1kZXZAcHl0aG9uLm9yZzCCASIwDQYJKoZIhvcNAQEB
3889 -+BQADggEPADCCAQoCggEBALXq7cn7Rn1vO3aA3TrzA5QLp6bb7B3f/yN0CJ2XFj+j
3890 -+pHs+Gw6WWSUDpybiiKnPec33BFawq3kyblnBMjBU61ioy5HwQqVkJ8vUVjGIUq3P
3891 -+vX/wBmQfzCe4o4uM89gpHyUL9UYGG8oCRa17dgqcv7u5rg0Wq2B1rgY+nHwx3JIv
3892 -+KRrgSwyRkGzpN8WQ1yrXlxWjgI9de0mPVDDUlywcWze1q2kwaEPTM3hLAmD1PESA
3893 -+oY/n8A/RXoeeRs9i/Pm/DGUS8ZPINXk/yOzsR/XvvkTVroIeLZqfmFpnZeF0cHzL
3894 -+08LODkVJJ9zjLdT7SA4vnne4FEbAxDbKAq5qkYzaL4UCAwEAAaOB0DCBzTAMBgNV
3895 -+HRMBAf8EAjAAMB0GA1UdDgQWBBSIWlXAUv9hzVKjNQ/qWpwkOCL3XDALBgNVHQ8E
3896 -+BAMCBeAwgZAGA1UdEQSBiDCBhYIeYWx0bnVsbC5weXRob24ub3JnAGV4YW1wbGUu
3897 -+Y29tgSBudWxsQHB5dGhvbi5vcmcAdXNlckBleGFtcGxlLm9yZ4YpaHR0cDovL251
3898 -+bGwucHl0aG9uLm9yZwBodHRwOi8vZXhhbXBsZS5vcmeHBMAAAgGHECABDbgAAAAA
3899 -+AAAAAAAAAAEwDQYJKoZIhvcNAQEFBQADggEBAKxPRe99SaghcI6IWT7UNkJw9aO9
3900 -+i9eo0Fj2MUqxpKbdb9noRDy2CnHWf7EIYZ1gznXPdwzSN4YCjV5d+Q9xtBaowT0j
3901 -+HPERs1ZuytCNNJTmhyqZ8q6uzMLoht4IqH/FBfpvgaeC5tBTnTT0rD5A/olXeimk
3902 -+kX4LxlEx5RAvpGB2zZVRGr6LobD9rVK91xuHYNIxxxfEGE8tCCWjp0+3ksri9SXx
3903 -+VHWBnbM9YaL32u3hxm8sYB/Yb8WSBavJCWJJqRStVRHM1koZlJmXNx2BX4vPo6iW
3904 -+RFEIPQsFZRLrtnCAiEhyT8bC2s/Njlu6ly9gtJZWSV46Q3ZjBL4q9sHKqZQ=
3905 -+-----END CERTIFICATE-----
3906 -diff -r 9ddc63c039ba Lib/test/test_ssl.py
3907 ---- a/Lib/test/test_ssl.py Sun Aug 11 13:04:50 2013 +0300
3908 -+++ b/Lib/test/test_ssl.py Sun Aug 11 18:13:17 2013 +0200
3909 -@@ -25,6 +25,7 @@
3910 - HOST = test_support.HOST
3911 - CERTFILE = None
3912 - SVN_PYTHON_ORG_ROOT_CERT = None
3913 -+NULLBYTECERT = None
3914 -
3915 - def handle_error(prefix):
3916 - exc_format = ' '.join(traceback.format_exception(*sys.exc_info()))
3917 -@@ -123,6 +124,27 @@
3918 - ('DNS', 'projects.forum.nokia.com'))
3919 - )
3920 -
3921 -+ def test_parse_cert_CVE_2013_4073(self):
3922 -+ p = ssl._ssl._test_decode_cert(NULLBYTECERT)
3923 -+ if test_support.verbose:
3924 -+ sys.stdout.write("\n" + pprint.pformat(p) + "\n")
3925 -+ subject = ((('countryName', 'US'),),
3926 -+ (('stateOrProvinceName', 'Oregon'),),
3927 -+ (('localityName', 'Beaverton'),),
3928 -+ (('organizationName', 'Python Software Foundation'),),
3929 -+ (('organizationalUnitName', 'Python Core Development'),),
3930 -+ (('commonName', 'null.python.org\x00example.org'),),
3931 -+ (('emailAddress', 'python-dev@××××××.org'),))
3932 -+ self.assertEqual(p['subject'], subject)
3933 -+ self.assertEqual(p['issuer'], subject)
3934 -+ self.assertEqual(p['subjectAltName'],
3935 -+ (('DNS', 'altnull.python.org\x00example.com'),
3936 -+ ('email', 'null@××××××.org\x00user@×××××××.org'),
3937 -+ ('URI', 'http://null.python.org\x00http://example.org'),
3938 -+ ('IP Address', '192.0.2.1'),
3939 -+ ('IP Address', '2001:DB8:0:0:0:0:0:1\n'))
3940 -+ )
3941 -+
3942 - def test_DER_to_PEM(self):
3943 - with open(SVN_PYTHON_ORG_ROOT_CERT, 'r') as f:
3944 - pem = f.read()
3945 -@@ -1360,7 +1382,7 @@
3946 -
3947 -
3948 - def test_main(verbose=False):
3949 -- global CERTFILE, SVN_PYTHON_ORG_ROOT_CERT, NOKIACERT
3950 -+ global CERTFILE, SVN_PYTHON_ORG_ROOT_CERT, NOKIACERT, NULLBYTECERT
3951 - CERTFILE = os.path.join(os.path.dirname(__file__) or os.curdir,
3952 - "keycert.pem")
3953 - SVN_PYTHON_ORG_ROOT_CERT = os.path.join(
3954 -@@ -1368,10 +1390,13 @@
3955 - "https_svn_python_org_root.pem")
3956 - NOKIACERT = os.path.join(os.path.dirname(__file__) or os.curdir,
3957 - "nokia.pem")
3958 -+ NULLBYTECERT = os.path.join(os.path.dirname(__file__) or os.curdir,
3959 -+ "nullbytecert.pem")
3960 -
3961 - if (not os.path.exists(CERTFILE) or
3962 - not os.path.exists(SVN_PYTHON_ORG_ROOT_CERT) or
3963 -- not os.path.exists(NOKIACERT)):
3964 -+ not os.path.exists(NOKIACERT) or
3965 -+ not os.path.exists(NULLBYTECERT)):
3966 - raise test_support.TestFailed("Can't read certificate files!")
3967 -
3968 - tests = [BasicTests, BasicSocketTests]
3969 -diff -r 9ddc63c039ba Modules/_ssl.c
3970 ---- a/Modules/_ssl.c Sun Aug 11 13:04:50 2013 +0300
3971 -+++ b/Modules/_ssl.c Sun Aug 11 18:13:17 2013 +0200
3972 -@@ -741,8 +741,13 @@
3973 -
3974 - /* get a rendering of each name in the set of names */
3975 -
3976 -+ int gntype;
3977 -+ ASN1_STRING *as = NULL;
3978 -+
3979 - name = sk_GENERAL_NAME_value(names, j);
3980 -- if (name->type == GEN_DIRNAME) {
3981 -+ gntype = name-> type;
3982 -+ switch (gntype) {
3983 -+ case GEN_DIRNAME:
3984 -
3985 - /* we special-case DirName as a tuple of tuples of attributes */
3986 -
3987 -@@ -764,11 +769,61 @@
3988 - goto fail;
3989 - }
3990 - PyTuple_SET_ITEM(t, 1, v);
3991 -+ break;
3992 -
3993 -- } else {
3994 -+ case GEN_EMAIL:
3995 -+ case GEN_DNS:
3996 -+ case GEN_URI:
3997 -+ /* GENERAL_NAME_print() doesn't handle NUL bytes in ASN1_string
3998 -+ correctly. */
3999 -+ t = PyTuple_New(2);
4000 -+ if (t == NULL)
4001 -+ goto fail;
4002 -+ switch (gntype) {
4003 -+ case GEN_EMAIL:
4004 -+ v = PyUnicode_FromString("email");
4005 -+ as = name->d.rfc822Name;
4006 -+ break;
4007 -+ case GEN_DNS:
4008 -+ v = PyUnicode_FromString("DNS");
4009 -+ as = name->d.dNSName;
4010 -+ break;
4011 -+ case GEN_URI:
4012 -+ v = PyUnicode_FromString("URI");
4013 -+ as = name->d.uniformResourceIdentifier;
4014 -+ break;
4015 -+ }
4016 -+ if (v == NULL) {
4017 -+ Py_DECREF(t);
4018 -+ goto fail;
4019 -+ }
4020 -+ PyTuple_SET_ITEM(t, 0, v);
4021 -+ v = PyString_FromStringAndSize((char *)ASN1_STRING_data(as),
4022 -+ ASN1_STRING_length(as));
4023 -+ if (v == NULL) {
4024 -+ Py_DECREF(t);
4025 -+ goto fail;
4026 -+ }
4027 -+ PyTuple_SET_ITEM(t, 1, v);
4028 -+ break;
4029 -
4030 -+ default:
4031 - /* for everything else, we use the OpenSSL print form */
4032 --
4033 -+ switch (gntype) {
4034 -+ /* check for new general name type */
4035 -+ case GEN_OTHERNAME:
4036 -+ case GEN_X400:
4037 -+ case GEN_EDIPARTY:
4038 -+ case GEN_IPADD:
4039 -+ case GEN_RID:
4040 -+ break;
4041 -+ default:
4042 -+ if (PyErr_Warn(PyExc_RuntimeWarning,
4043 -+ "Unknown general name type") == -1) {
4044 -+ goto fail;
4045 -+ }
4046 -+ break;
4047 -+ }
4048 - (void) BIO_reset(biobuf);
4049 - GENERAL_NAME_print(biobuf, name);
4050 - len = BIO_gets(biobuf, buf, sizeof(buf)-1);
4051 -@@ -794,6 +849,7 @@
4052 - goto fail;
4053 - }
4054 - PyTuple_SET_ITEM(t, 1, v);
4055 -+ break;
4056 - }
4057 -
4058 - /* and add that rendering to the list */
4059
4060 diff --git a/dev-lang/python/files/CVE-2013-4238_py33.patch b/dev-lang/python/files/CVE-2013-4238_py33.patch
4061 deleted file mode 100644
4062 index 41db4d2..0000000
4063 --- a/dev-lang/python/files/CVE-2013-4238_py33.patch
4064 +++ /dev/null
4065 @@ -1,241 +0,0 @@
4066 -diff -r e0f86c3b3685 Lib/test/nullbytecert.pem
4067 ---- /dev/null Thu Jan 01 00:00:00 1970 +0000
4068 -+++ b/Lib/test/nullbytecert.pem Sun Aug 11 18:17:23 2013 +0200
4069 -@@ -0,0 +1,90 @@
4070 -+Certificate:
4071 -+ Data:
4072 -+ Version: 3 (0x2)
4073 -+ Serial Number: 0 (0x0)
4074 -+ Signature Algorithm: sha1WithRSAEncryption
4075 -+ Issuer: C=US, ST=Oregon, L=Beaverton, O=Python Software Foundation, OU=Python Core Development, CN=null.python.org\x00example.org/emailAddress=python-dev@××××××.org
4076 -+ Validity
4077 -+ Not Before: Aug 7 13:11:52 2013 GMT
4078 -+ Not After : Aug 7 13:12:52 2013 GMT
4079 -+ Subject: C=US, ST=Oregon, L=Beaverton, O=Python Software Foundation, OU=Python Core Development, CN=null.python.org\x00example.org/emailAddress=python-dev@××××××.org
4080 -+ Subject Public Key Info:
4081 -+ Public Key Algorithm: rsaEncryption
4082 -+ Public-Key: (2048 bit)
4083 -+ Modulus:
4084 -+ 00:b5:ea:ed:c9:fb:46:7d:6f:3b:76:80:dd:3a:f3:
4085 -+ 03:94:0b:a7:a6:db:ec:1d:df:ff:23:74:08:9d:97:
4086 -+ 16:3f:a3:a4:7b:3e:1b:0e:96:59:25:03:a7:26:e2:
4087 -+ 88:a9:cf:79:cd:f7:04:56:b0:ab:79:32:6e:59:c1:
4088 -+ 32:30:54:eb:58:a8:cb:91:f0:42:a5:64:27:cb:d4:
4089 -+ 56:31:88:52:ad:cf:bd:7f:f0:06:64:1f:cc:27:b8:
4090 -+ a3:8b:8c:f3:d8:29:1f:25:0b:f5:46:06:1b:ca:02:
4091 -+ 45:ad:7b:76:0a:9c:bf:bb:b9:ae:0d:16:ab:60:75:
4092 -+ ae:06:3e:9c:7c:31:dc:92:2f:29:1a:e0:4b:0c:91:
4093 -+ 90:6c:e9:37:c5:90:d7:2a:d7:97:15:a3:80:8f:5d:
4094 -+ 7b:49:8f:54:30:d4:97:2c:1c:5b:37:b5:ab:69:30:
4095 -+ 68:43:d3:33:78:4b:02:60:f5:3c:44:80:a1:8f:e7:
4096 -+ f0:0f:d1:5e:87:9e:46:cf:62:fc:f9:bf:0c:65:12:
4097 -+ f1:93:c8:35:79:3f:c8:ec:ec:47:f5:ef:be:44:d5:
4098 -+ ae:82:1e:2d:9a:9f:98:5a:67:65:e1:74:70:7c:cb:
4099 -+ d3:c2:ce:0e:45:49:27:dc:e3:2d:d4:fb:48:0e:2f:
4100 -+ 9e:77:b8:14:46:c0:c4:36:ca:02:ae:6a:91:8c:da:
4101 -+ 2f:85
4102 -+ Exponent: 65537 (0x10001)
4103 -+ X509v3 extensions:
4104 -+ X509v3 Basic Constraints: critical
4105 -+ CA:FALSE
4106 -+ X509v3 Subject Key Identifier:
4107 -+ 88:5A:55:C0:52:FF:61:CD:52:A3:35:0F:EA:5A:9C:24:38:22:F7:5C
4108 -+ X509v3 Key Usage:
4109 -+ Digital Signature, Non Repudiation, Key Encipherment
4110 -+ X509v3 Subject Alternative Name:
4111 -+ *************************************************************
4112 -+ WARNING: The values for DNS, email and URI are WRONG. OpenSSL
4113 -+ doesn't print the text after a NULL byte.
4114 -+ *************************************************************
4115 -+ DNS:altnull.python.org, email:null@××××××.org, URI:http://null.python.org, IP Address:192.0.2.1, IP Address:2001:DB8:0:0:0:0:0:1
4116 -+ Signature Algorithm: sha1WithRSAEncryption
4117 -+ ac:4f:45:ef:7d:49:a8:21:70:8e:88:59:3e:d4:36:42:70:f5:
4118 -+ a3:bd:8b:d7:a8:d0:58:f6:31:4a:b1:a4:a6:dd:6f:d9:e8:44:
4119 -+ 3c:b6:0a:71:d6:7f:b1:08:61:9d:60:ce:75:cf:77:0c:d2:37:
4120 -+ 86:02:8d:5e:5d:f9:0f:71:b4:16:a8:c1:3d:23:1c:f1:11:b3:
4121 -+ 56:6e:ca:d0:8d:34:94:e6:87:2a:99:f2:ae:ae:cc:c2:e8:86:
4122 -+ de:08:a8:7f:c5:05:fa:6f:81:a7:82:e6:d0:53:9d:34:f4:ac:
4123 -+ 3e:40:fe:89:57:7a:29:a4:91:7e:0b:c6:51:31:e5:10:2f:a4:
4124 -+ 60:76:cd:95:51:1a:be:8b:a1:b0:fd:ad:52:bd:d7:1b:87:60:
4125 -+ d2:31:c7:17:c4:18:4f:2d:08:25:a3:a7:4f:b7:92:ca:e2:f5:
4126 -+ 25:f1:54:75:81:9d:b3:3d:61:a2:f7:da:ed:e1:c6:6f:2c:60:
4127 -+ 1f:d8:6f:c5:92:05:ab:c9:09:62:49:a9:14:ad:55:11:cc:d6:
4128 -+ 4a:19:94:99:97:37:1d:81:5f:8b:cf:a3:a8:96:44:51:08:3d:
4129 -+ 0b:05:65:12:eb:b6:70:80:88:48:72:4f:c6:c2:da:cf:cd:8e:
4130 -+ 5b:ba:97:2f:60:b4:96:56:49:5e:3a:43:76:63:04:be:2a:f6:
4131 -+ c1:ca:a9:94
4132 -+-----BEGIN CERTIFICATE-----
4133 -+MIIE2DCCA8CgAwIBAgIBADANBgkqhkiG9w0BAQUFADCBxTELMAkGA1UEBhMCVVMx
4134 -+DzANBgNVBAgMBk9yZWdvbjESMBAGA1UEBwwJQmVhdmVydG9uMSMwIQYDVQQKDBpQ
4135 -+eXRob24gU29mdHdhcmUgRm91bmRhdGlvbjEgMB4GA1UECwwXUHl0aG9uIENvcmUg
4136 -+RGV2ZWxvcG1lbnQxJDAiBgNVBAMMG251bGwucHl0aG9uLm9yZwBleGFtcGxlLm9y
4137 -+ZzEkMCIGCSqGSIb3DQEJARYVcHl0aG9uLWRldkBweXRob24ub3JnMB4XDTEzMDgw
4138 -+NzEzMTE1MloXDTEzMDgwNzEzMTI1MlowgcUxCzAJBgNVBAYTAlVTMQ8wDQYDVQQI
4139 -+DAZPcmVnb24xEjAQBgNVBAcMCUJlYXZlcnRvbjEjMCEGA1UECgwaUHl0aG9uIFNv
4140 -+ZnR3YXJlIEZvdW5kYXRpb24xIDAeBgNVBAsMF1B5dGhvbiBDb3JlIERldmVsb3Bt
4141 -+ZW50MSQwIgYDVQQDDBtudWxsLnB5dGhvbi5vcmcAZXhhbXBsZS5vcmcxJDAiBgkq
4142 -+hkiG9w0BCQEWFXB5dGhvbi1kZXZAcHl0aG9uLm9yZzCCASIwDQYJKoZIhvcNAQEB
4143 -+BQADggEPADCCAQoCggEBALXq7cn7Rn1vO3aA3TrzA5QLp6bb7B3f/yN0CJ2XFj+j
4144 -+pHs+Gw6WWSUDpybiiKnPec33BFawq3kyblnBMjBU61ioy5HwQqVkJ8vUVjGIUq3P
4145 -+vX/wBmQfzCe4o4uM89gpHyUL9UYGG8oCRa17dgqcv7u5rg0Wq2B1rgY+nHwx3JIv
4146 -+KRrgSwyRkGzpN8WQ1yrXlxWjgI9de0mPVDDUlywcWze1q2kwaEPTM3hLAmD1PESA
4147 -+oY/n8A/RXoeeRs9i/Pm/DGUS8ZPINXk/yOzsR/XvvkTVroIeLZqfmFpnZeF0cHzL
4148 -+08LODkVJJ9zjLdT7SA4vnne4FEbAxDbKAq5qkYzaL4UCAwEAAaOB0DCBzTAMBgNV
4149 -+HRMBAf8EAjAAMB0GA1UdDgQWBBSIWlXAUv9hzVKjNQ/qWpwkOCL3XDALBgNVHQ8E
4150 -+BAMCBeAwgZAGA1UdEQSBiDCBhYIeYWx0bnVsbC5weXRob24ub3JnAGV4YW1wbGUu
4151 -+Y29tgSBudWxsQHB5dGhvbi5vcmcAdXNlckBleGFtcGxlLm9yZ4YpaHR0cDovL251
4152 -+bGwucHl0aG9uLm9yZwBodHRwOi8vZXhhbXBsZS5vcmeHBMAAAgGHECABDbgAAAAA
4153 -+AAAAAAAAAAEwDQYJKoZIhvcNAQEFBQADggEBAKxPRe99SaghcI6IWT7UNkJw9aO9
4154 -+i9eo0Fj2MUqxpKbdb9noRDy2CnHWf7EIYZ1gznXPdwzSN4YCjV5d+Q9xtBaowT0j
4155 -+HPERs1ZuytCNNJTmhyqZ8q6uzMLoht4IqH/FBfpvgaeC5tBTnTT0rD5A/olXeimk
4156 -+kX4LxlEx5RAvpGB2zZVRGr6LobD9rVK91xuHYNIxxxfEGE8tCCWjp0+3ksri9SXx
4157 -+VHWBnbM9YaL32u3hxm8sYB/Yb8WSBavJCWJJqRStVRHM1koZlJmXNx2BX4vPo6iW
4158 -+RFEIPQsFZRLrtnCAiEhyT8bC2s/Njlu6ly9gtJZWSV46Q3ZjBL4q9sHKqZQ=
4159 -+-----END CERTIFICATE-----
4160 -diff -r e0f86c3b3685 Lib/test/test_ssl.py
4161 ---- a/Lib/test/test_ssl.py Sun Aug 11 13:04:50 2013 +0300
4162 -+++ b/Lib/test/test_ssl.py Sun Aug 11 18:17:23 2013 +0200
4163 -@@ -55,6 +55,7 @@
4164 - WRONGCERT = data_file("XXXnonexisting.pem")
4165 - BADKEY = data_file("badkey.pem")
4166 - NOKIACERT = data_file("nokia.pem")
4167 -+NULLBYTECERT = data_file("nullbytecert.pem")
4168 -
4169 - DHFILE = data_file("dh512.pem")
4170 - BYTES_DHFILE = os.fsencode(DHFILE)
4171 -@@ -162,6 +163,27 @@
4172 - ('DNS', 'projects.forum.nokia.com'))
4173 - )
4174 -
4175 -+ def test_parse_cert_CVE_2013_4073(self):
4176 -+ p = ssl._ssl._test_decode_cert(NULLBYTECERT)
4177 -+ if support.verbose:
4178 -+ sys.stdout.write("\n" + pprint.pformat(p) + "\n")
4179 -+ subject = ((('countryName', 'US'),),
4180 -+ (('stateOrProvinceName', 'Oregon'),),
4181 -+ (('localityName', 'Beaverton'),),
4182 -+ (('organizationName', 'Python Software Foundation'),),
4183 -+ (('organizationalUnitName', 'Python Core Development'),),
4184 -+ (('commonName', 'null.python.org\x00example.org'),),
4185 -+ (('emailAddress', 'python-dev@××××××.org'),))
4186 -+ self.assertEqual(p['subject'], subject)
4187 -+ self.assertEqual(p['issuer'], subject)
4188 -+ self.assertEqual(p['subjectAltName'],
4189 -+ (('DNS', 'altnull.python.org\x00example.com'),
4190 -+ ('email', 'null@××××××.org\x00user@×××××××.org'),
4191 -+ ('URI', 'http://null.python.org\x00http://example.org'),
4192 -+ ('IP Address', '192.0.2.1'),
4193 -+ ('IP Address', '2001:DB8:0:0:0:0:0:1\n'))
4194 -+ )
4195 -+
4196 - def test_DER_to_PEM(self):
4197 - with open(SVN_PYTHON_ORG_ROOT_CERT, 'r') as f:
4198 - pem = f.read()
4199 -@@ -294,6 +316,13 @@
4200 - fail(cert, 'foo.a.com')
4201 - fail(cert, 'bar.foo.com')
4202 -
4203 -+ # NULL bytes are bad, CVE-2013-4073
4204 -+ cert = {'subject': ((('commonName',
4205 -+ 'null.python.org\x00example.org'),),)}
4206 -+ ok(cert, 'null.python.org\x00example.org') # or raise an error?
4207 -+ fail(cert, 'example.org')
4208 -+ fail(cert, 'null.python.org')
4209 -+
4210 - # Slightly fake real-world example
4211 - cert = {'notAfter': 'Jun 26 21:41:46 2011 GMT',
4212 - 'subject': ((('commonName', 'linuxfrz.org'),),),
4213 -diff -r e0f86c3b3685 Modules/_ssl.c
4214 ---- a/Modules/_ssl.c Sun Aug 11 13:04:50 2013 +0300
4215 -+++ b/Modules/_ssl.c Sun Aug 11 18:17:23 2013 +0200
4216 -@@ -771,12 +771,14 @@
4217 - ext->value->length));
4218 -
4219 - for(j = 0; j < sk_GENERAL_NAME_num(names); j++) {
4220 --
4221 - /* get a rendering of each name in the set of names */
4222 -+ int gntype;
4223 -+ ASN1_STRING *as = NULL;
4224 -
4225 - name = sk_GENERAL_NAME_value(names, j);
4226 -- if (name->type == GEN_DIRNAME) {
4227 --
4228 -+ gntype = name-> type;
4229 -+ switch (gntype) {
4230 -+ case GEN_DIRNAME:
4231 - /* we special-case DirName as a tuple of
4232 - tuples of attributes */
4233 -
4234 -@@ -798,11 +800,62 @@
4235 - goto fail;
4236 - }
4237 - PyTuple_SET_ITEM(t, 1, v);
4238 -+ break;
4239 -
4240 -- } else {
4241 -+ case GEN_EMAIL:
4242 -+ case GEN_DNS:
4243 -+ case GEN_URI:
4244 -+ /* GENERAL_NAME_print() doesn't handle NUL bytes in ASN1_string
4245 -+ correctly. */
4246 -+ t = PyTuple_New(2);
4247 -+ if (t == NULL)
4248 -+ goto fail;
4249 -+ switch (gntype) {
4250 -+ case GEN_EMAIL:
4251 -+ v = PyUnicode_FromString("email");
4252 -+ as = name->d.rfc822Name;
4253 -+ break;
4254 -+ case GEN_DNS:
4255 -+ v = PyUnicode_FromString("DNS");
4256 -+ as = name->d.dNSName;
4257 -+ break;
4258 -+ case GEN_URI:
4259 -+ v = PyUnicode_FromString("URI");
4260 -+ as = name->d.uniformResourceIdentifier;
4261 -+ break;
4262 -+ }
4263 -+ if (v == NULL) {
4264 -+ Py_DECREF(t);
4265 -+ goto fail;
4266 -+ }
4267 -+ PyTuple_SET_ITEM(t, 0, v);
4268 -+ v = PyUnicode_FromStringAndSize((char *)ASN1_STRING_data(as),
4269 -+ ASN1_STRING_length(as));
4270 -+ if (v == NULL) {
4271 -+ Py_DECREF(t);
4272 -+ goto fail;
4273 -+ }
4274 -+ PyTuple_SET_ITEM(t, 1, v);
4275 -+ break;
4276 -
4277 -+ default:
4278 - /* for everything else, we use the OpenSSL print form */
4279 --
4280 -+ switch (gntype) {
4281 -+ /* check for new general name type */
4282 -+ case GEN_OTHERNAME:
4283 -+ case GEN_X400:
4284 -+ case GEN_EDIPARTY:
4285 -+ case GEN_IPADD:
4286 -+ case GEN_RID:
4287 -+ break;
4288 -+ default:
4289 -+ if (PyErr_WarnFormat(PyExc_RuntimeWarning, 1,
4290 -+ "Unknown general name type %d",
4291 -+ gntype) == -1) {
4292 -+ goto fail;
4293 -+ }
4294 -+ break;
4295 -+ }
4296 - (void) BIO_reset(biobuf);
4297 - GENERAL_NAME_print(biobuf, name);
4298 - len = BIO_gets(biobuf, buf, sizeof(buf)-1);
4299 -@@ -829,6 +882,7 @@
4300 - goto fail;
4301 - }
4302 - PyTuple_SET_ITEM(t, 1, v);
4303 -+ break;
4304 - }
4305 -
4306 - /* and add that rendering to the list */
4307
4308 diff --git a/dev-lang/python/files/pydoc.conf b/dev-lang/python/files/pydoc.conf
4309 deleted file mode 100644
4310 index 20e3628..0000000
4311 --- a/dev-lang/python/files/pydoc.conf
4312 +++ /dev/null
4313 @@ -1,7 +0,0 @@
4314 -# /etc/init.d/pydoc.conf
4315 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/files/pydoc.conf,v 1.3 2011/10/27 13:56:55 neurogeek Exp $
4316 -
4317 -# This file contains the configuration for pydoc's internal webserver.
4318 -
4319 -# Default port for Python's pydoc server.
4320 -@PYDOC_PORT_VARIABLE@="7464"
4321
4322 diff --git a/dev-lang/python/files/pydoc.init b/dev-lang/python/files/pydoc.init
4323 deleted file mode 100755
4324 index 3f02ae9..0000000
4325 --- a/dev-lang/python/files/pydoc.init
4326 +++ /dev/null
4327 @@ -1,25 +0,0 @@
4328 -#!/sbin/runscript
4329 -# Copyright 1999-2014 Gentoo Technologies, Inc.
4330 -# Distributed under the terms of the GNU General Public Licence v2
4331 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/files/pydoc.init,v 1.5 2014/10/12 12:37:07 djc Exp $
4332 -
4333 -start() {
4334 - local pydoc_port="${@PYDOC_PORT_VARIABLE@-${PYDOC_PORT}}"
4335 -
4336 - if [ -z "${pydoc_port}" ]; then
4337 - eerror "Port not set"
4338 - return 1
4339 - fi
4340 -
4341 - ebegin "Starting pydoc server on port ${pydoc_port}"
4342 - start-stop-daemon --start --background --make-pidfile \
4343 - --pidfile /var/run/@PYDOC@.pid \
4344 - --exec /usr/bin/@PYDOC@ -- -p "${pydoc_port}"
4345 - eend $?
4346 -}
4347 -
4348 -stop() {
4349 - ebegin "Stopping pydoc server"
4350 - start-stop-daemon --stop --quiet --pidfile /var/run/@PYDOC@.pid
4351 - eend $?
4352 -}
4353
4354 diff --git a/dev-lang/python/files/python-2.5-tcl86.patch b/dev-lang/python/files/python-2.5-tcl86.patch
4355 deleted file mode 100644
4356 index 2362e98..0000000
4357 --- a/dev-lang/python/files/python-2.5-tcl86.patch
4358 +++ /dev/null
4359 @@ -1,11 +0,0 @@
4360 ---- a/setup.py
4361 -+++ b/setup.py
4362 -@@ -1518,7 +1518,7 @@
4363 - # The versions with dots are used on Unix, and the versions without
4364 - # dots on Windows, for detection by cygwin.
4365 - tcllib = tklib = tcl_includes = tk_includes = None
4366 -- for version in ['8.5', '85', '8.4', '84', '8.3', '83', '8.2',
4367 -+ for version in ['8.6', '86', '8.5', '85', '8.4', '84', '8.3', '83', '8.2',
4368 - '82', '8.1', '81', '8.0', '80']:
4369 - tklib = self.compiler.find_library_file(lib_dirs, 'tk' + version)
4370 - tcllib = self.compiler.find_library_file(lib_dirs, 'tcl' + version)
4371
4372 diff --git a/dev-lang/python/files/python-2.7-issue16248.patch b/dev-lang/python/files/python-2.7-issue16248.patch
4373 deleted file mode 100644
4374 index ce9c654..0000000
4375 --- a/dev-lang/python/files/python-2.7-issue16248.patch
4376 +++ /dev/null
4377 @@ -1,19 +0,0 @@
4378 -# HG changeset patch
4379 -# User Antoine Pitrou <solipsis@××××××.net>
4380 -# Date 1375388712 -7200
4381 -# Node ID 0f17aed78168e63ec058c219d03cea7240f83dd6
4382 -# Parent bb546f6d8ab4f513804d7a420657963881e5b447
4383 -Fix tkinter regression introduced by the security fix in #16248.
4384 -
4385 -diff --git a/Lib/lib-tk/Tkinter.py b/Lib/lib-tk/Tkinter.py
4386 ---- a/Lib/lib-tk/Tkinter.py
4387 -+++ b/Lib/lib-tk/Tkinter.py
4388 -@@ -1736,7 +1736,7 @@ class Tk(Misc, Wm):
4389 - # ensure that self.tk is always _something_.
4390 - self.tk = None
4391 - if baseName is None:
4392 -- import sys, os
4393 -+ import os
4394 - baseName = os.path.basename(sys.argv[0])
4395 - baseName, ext = os.path.splitext(baseName)
4396 - if ext not in ('.py', '.pyc', '.pyo'):
4397
4398 diff --git a/dev-lang/python/files/python-2.7-issue18851.patch b/dev-lang/python/files/python-2.7-issue18851.patch
4399 deleted file mode 100644
4400 index 35c69ae..0000000
4401 --- a/dev-lang/python/files/python-2.7-issue18851.patch
4402 +++ /dev/null
4403 @@ -1,287 +0,0 @@
4404 -# HG changeset patch
4405 -# User Antoine Pitrou <solipsis@××××××.net>
4406 -# Date 1377898693 -7200
4407 -# Node ID 43749cb6bdbd0fdab70f76cd171c3c02a3f600dd
4408 -# Parent ba54011aa295004ad87438211fe3bb1568dd69ab
4409 -Issue #18851: Avoid a double close of subprocess pipes when the child process fails starting.
4410 -
4411 -diff --git a/Lib/subprocess.py b/Lib/subprocess.py
4412 ---- a/Lib/subprocess.py
4413 -+++ b/Lib/subprocess.py
4414 -@@ -698,12 +698,12 @@ class Popen(object):
4415 -
4416 - (p2cread, p2cwrite,
4417 - c2pread, c2pwrite,
4418 -- errread, errwrite) = self._get_handles(stdin, stdout, stderr)
4419 -+ errread, errwrite), to_close = self._get_handles(stdin, stdout, stderr)
4420 -
4421 - try:
4422 - self._execute_child(args, executable, preexec_fn, close_fds,
4423 - cwd, env, universal_newlines,
4424 -- startupinfo, creationflags, shell,
4425 -+ startupinfo, creationflags, shell, to_close,
4426 - p2cread, p2cwrite,
4427 - c2pread, c2pwrite,
4428 - errread, errwrite)
4429 -@@ -711,18 +711,12 @@ class Popen(object):
4430 - # Preserve original exception in case os.close raises.
4431 - exc_type, exc_value, exc_trace = sys.exc_info()
4432 -
4433 -- to_close = []
4434 -- # Only close the pipes we created.
4435 -- if stdin == PIPE:
4436 -- to_close.extend((p2cread, p2cwrite))
4437 -- if stdout == PIPE:
4438 -- to_close.extend((c2pread, c2pwrite))
4439 -- if stderr == PIPE:
4440 -- to_close.extend((errread, errwrite))
4441 --
4442 - for fd in to_close:
4443 - try:
4444 -- os.close(fd)
4445 -+ if mswindows:
4446 -+ fd.Close()
4447 -+ else:
4448 -+ os.close(fd)
4449 - except EnvironmentError:
4450 - pass
4451 -
4452 -@@ -816,8 +810,9 @@ class Popen(object):
4453 - """Construct and return tuple with IO objects:
4454 - p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite
4455 - """
4456 -+ to_close = set()
4457 - if stdin is None and stdout is None and stderr is None:
4458 -- return (None, None, None, None, None, None)
4459 -+ return (None, None, None, None, None, None), to_close
4460 -
4461 - p2cread, p2cwrite = None, None
4462 - c2pread, c2pwrite = None, None
4463 -@@ -835,6 +830,10 @@ class Popen(object):
4464 - # Assuming file-like object
4465 - p2cread = msvcrt.get_osfhandle(stdin.fileno())
4466 - p2cread = self._make_inheritable(p2cread)
4467 -+ # We just duplicated the handle, it has to be closed at the end
4468 -+ to_close.add(p2cread)
4469 -+ if stdin == PIPE:
4470 -+ to_close.add(p2cwrite)
4471 -
4472 - if stdout is None:
4473 - c2pwrite = _subprocess.GetStdHandle(_subprocess.STD_OUTPUT_HANDLE)
4474 -@@ -848,6 +847,10 @@ class Popen(object):
4475 - # Assuming file-like object
4476 - c2pwrite = msvcrt.get_osfhandle(stdout.fileno())
4477 - c2pwrite = self._make_inheritable(c2pwrite)
4478 -+ # We just duplicated the handle, it has to be closed at the end
4479 -+ to_close.add(c2pwrite)
4480 -+ if stdout == PIPE:
4481 -+ to_close.add(c2pread)
4482 -
4483 - if stderr is None:
4484 - errwrite = _subprocess.GetStdHandle(_subprocess.STD_ERROR_HANDLE)
4485 -@@ -863,10 +866,14 @@ class Popen(object):
4486 - # Assuming file-like object
4487 - errwrite = msvcrt.get_osfhandle(stderr.fileno())
4488 - errwrite = self._make_inheritable(errwrite)
4489 -+ # We just duplicated the handle, it has to be closed at the end
4490 -+ to_close.add(errwrite)
4491 -+ if stderr == PIPE:
4492 -+ to_close.add(errread)
4493 -
4494 - return (p2cread, p2cwrite,
4495 - c2pread, c2pwrite,
4496 -- errread, errwrite)
4497 -+ errread, errwrite), to_close
4498 -
4499 -
4500 - def _make_inheritable(self, handle):
4501 -@@ -895,7 +902,7 @@ class Popen(object):
4502 -
4503 - def _execute_child(self, args, executable, preexec_fn, close_fds,
4504 - cwd, env, universal_newlines,
4505 -- startupinfo, creationflags, shell,
4506 -+ startupinfo, creationflags, shell, to_close,
4507 - p2cread, p2cwrite,
4508 - c2pread, c2pwrite,
4509 - errread, errwrite):
4510 -@@ -934,6 +941,10 @@ class Popen(object):
4511 - # kill children.
4512 - creationflags |= _subprocess.CREATE_NEW_CONSOLE
4513 -
4514 -+ def _close_in_parent(fd):
4515 -+ fd.Close()
4516 -+ to_close.remove(fd)
4517 -+
4518 - # Start the process
4519 - try:
4520 - hp, ht, pid, tid = _subprocess.CreateProcess(executable, args,
4521 -@@ -958,11 +969,11 @@ class Popen(object):
4522 - # pipe will not close when the child process exits and the
4523 - # ReadFile will hang.
4524 - if p2cread is not None:
4525 -- p2cread.Close()
4526 -+ _close_in_parent(p2cread)
4527 - if c2pwrite is not None:
4528 -- c2pwrite.Close()
4529 -+ _close_in_parent(c2pwrite)
4530 - if errwrite is not None:
4531 -- errwrite.Close()
4532 -+ _close_in_parent(errwrite)
4533 -
4534 - # Retain the process handle, but close the thread handle
4535 - self._child_created = True
4536 -@@ -1088,6 +1099,7 @@ class Popen(object):
4537 - """Construct and return tuple with IO objects:
4538 - p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite
4539 - """
4540 -+ to_close = set()
4541 - p2cread, p2cwrite = None, None
4542 - c2pread, c2pwrite = None, None
4543 - errread, errwrite = None, None
4544 -@@ -1096,6 +1108,7 @@ class Popen(object):
4545 - pass
4546 - elif stdin == PIPE:
4547 - p2cread, p2cwrite = self.pipe_cloexec()
4548 -+ to_close.update((p2cread, p2cwrite))
4549 - elif isinstance(stdin, int):
4550 - p2cread = stdin
4551 - else:
4552 -@@ -1106,6 +1119,7 @@ class Popen(object):
4553 - pass
4554 - elif stdout == PIPE:
4555 - c2pread, c2pwrite = self.pipe_cloexec()
4556 -+ to_close.update((c2pread, c2pwrite))
4557 - elif isinstance(stdout, int):
4558 - c2pwrite = stdout
4559 - else:
4560 -@@ -1116,6 +1130,7 @@ class Popen(object):
4561 - pass
4562 - elif stderr == PIPE:
4563 - errread, errwrite = self.pipe_cloexec()
4564 -+ to_close.update((errread, errwrite))
4565 - elif stderr == STDOUT:
4566 - errwrite = c2pwrite
4567 - elif isinstance(stderr, int):
4568 -@@ -1126,7 +1141,7 @@ class Popen(object):
4569 -
4570 - return (p2cread, p2cwrite,
4571 - c2pread, c2pwrite,
4572 -- errread, errwrite)
4573 -+ errread, errwrite), to_close
4574 -
4575 -
4576 - def _set_cloexec_flag(self, fd, cloexec=True):
4577 -@@ -1170,7 +1185,7 @@ class Popen(object):
4578 -
4579 - def _execute_child(self, args, executable, preexec_fn, close_fds,
4580 - cwd, env, universal_newlines,
4581 -- startupinfo, creationflags, shell,
4582 -+ startupinfo, creationflags, shell, to_close,
4583 - p2cread, p2cwrite,
4584 - c2pread, c2pwrite,
4585 - errread, errwrite):
4586 -@@ -1189,6 +1204,10 @@ class Popen(object):
4587 - if executable is None:
4588 - executable = args[0]
4589 -
4590 -+ def _close_in_parent(fd):
4591 -+ os.close(fd)
4592 -+ to_close.remove(fd)
4593 -+
4594 - # For transferring possible exec failure from child to parent
4595 - # The first char specifies the exception type: 0 means
4596 - # OSError, 1 means some other error.
4597 -@@ -1283,17 +1302,17 @@ class Popen(object):
4598 - # be sure the FD is closed no matter what
4599 - os.close(errpipe_write)
4600 -
4601 -- if p2cread is not None and p2cwrite is not None:
4602 -- os.close(p2cread)
4603 -- if c2pwrite is not None and c2pread is not None:
4604 -- os.close(c2pwrite)
4605 -- if errwrite is not None and errread is not None:
4606 -- os.close(errwrite)
4607 --
4608 - # Wait for exec to fail or succeed; possibly raising exception
4609 - # Exception limited to 1M
4610 - data = _eintr_retry_call(os.read, errpipe_read, 1048576)
4611 - finally:
4612 -+ if p2cread is not None and p2cwrite is not None:
4613 -+ _close_in_parent(p2cread)
4614 -+ if c2pwrite is not None and c2pread is not None:
4615 -+ _close_in_parent(c2pwrite)
4616 -+ if errwrite is not None and errread is not None:
4617 -+ _close_in_parent(errwrite)
4618 -+
4619 - # be sure the FD is closed no matter what
4620 - os.close(errpipe_read)
4621 -
4622 -diff --git a/Lib/test/test_subprocess.py b/Lib/test/test_subprocess.py
4623 ---- a/Lib/test/test_subprocess.py
4624 -+++ b/Lib/test/test_subprocess.py
4625 -@@ -14,6 +14,10 @@ try:
4626 - import resource
4627 - except ImportError:
4628 - resource = None
4629 -+try:
4630 -+ import threading
4631 -+except ImportError:
4632 -+ threading = None
4633 -
4634 - mswindows = (sys.platform == "win32")
4635 -
4636 -@@ -629,6 +633,36 @@ class ProcessTestCase(BaseTestCase):
4637 - if c.exception.errno not in (errno.ENOENT, errno.EACCES):
4638 - raise c.exception
4639 -
4640 -+ @unittest.skipIf(threading is None, "threading required")
4641 -+ def test_double_close_on_error(self):
4642 -+ # Issue #18851
4643 -+ fds = []
4644 -+ def open_fds():
4645 -+ for i in range(20):
4646 -+ fds.extend(os.pipe())
4647 -+ time.sleep(0.001)
4648 -+ t = threading.Thread(target=open_fds)
4649 -+ t.start()
4650 -+ try:
4651 -+ with self.assertRaises(EnvironmentError):
4652 -+ subprocess.Popen(['nonexisting_i_hope'],
4653 -+ stdin=subprocess.PIPE,
4654 -+ stdout=subprocess.PIPE,
4655 -+ stderr=subprocess.PIPE)
4656 -+ finally:
4657 -+ t.join()
4658 -+ exc = None
4659 -+ for fd in fds:
4660 -+ # If a double close occurred, some of those fds will
4661 -+ # already have been closed by mistake, and os.close()
4662 -+ # here will raise.
4663 -+ try:
4664 -+ os.close(fd)
4665 -+ except OSError as e:
4666 -+ exc = e
4667 -+ if exc is not None:
4668 -+ raise exc
4669 -+
4670 - def test_handles_closed_on_exception(self):
4671 - # If CreateProcess exits with an error, ensure the
4672 - # duplicate output handles are released
4673 -@@ -783,7 +817,7 @@ class POSIXProcessTestCase(BaseTestCase)
4674 -
4675 - def _execute_child(
4676 - self, args, executable, preexec_fn, close_fds, cwd, env,
4677 -- universal_newlines, startupinfo, creationflags, shell,
4678 -+ universal_newlines, startupinfo, creationflags, shell, to_close,
4679 - p2cread, p2cwrite,
4680 - c2pread, c2pwrite,
4681 - errread, errwrite):
4682 -@@ -791,7 +825,7 @@ class POSIXProcessTestCase(BaseTestCase)
4683 - subprocess.Popen._execute_child(
4684 - self, args, executable, preexec_fn, close_fds,
4685 - cwd, env, universal_newlines,
4686 -- startupinfo, creationflags, shell,
4687 -+ startupinfo, creationflags, shell, to_close,
4688 - p2cread, p2cwrite,
4689 - c2pread, c2pwrite,
4690 - errread, errwrite)
4691
4692 diff --git a/dev-lang/python/files/python-2.7.5-library-path.patch b/dev-lang/python/files/python-2.7.5-library-path.patch
4693 deleted file mode 100644
4694 index 6f43575..0000000
4695 --- a/dev-lang/python/files/python-2.7.5-library-path.patch
4696 +++ /dev/null
4697 @@ -1,25 +0,0 @@
4698 -# HG changeset patch
4699 -# User Ned Deily <nad@×××.org>
4700 -# Date 1368666045 25200
4701 -# Node ID cd577c3288860b0deb459443ca5c489dc0f99ef6
4702 -# Parent 149340b3004acfcb68e5ed36b1e96b7463c756c7
4703 -Issue #17990: Only modify include and library search paths when cross-compiling.
4704 -
4705 -diff --git a/setup.py b/setup.py
4706 ---- a/setup.py
4707 -+++ b/setup.py
4708 -@@ -437,9 +437,11 @@ class PyBuildExt(build_ext):
4709 -
4710 - def detect_modules(self):
4711 - # Ensure that /usr/local is always used
4712 -- add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
4713 -- add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
4714 -- self.add_gcc_paths()
4715 -+ if not cross_compiling:
4716 -+ add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
4717 -+ add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
4718 -+ if cross_compiling:
4719 -+ self.add_gcc_paths()
4720 - self.add_multiarch_paths()
4721 -
4722 - # Add paths specified in the environment variables LDFLAGS and
4723
4724 diff --git a/dev-lang/python/files/python-2.7.5-nonfatal-compileall.patch b/dev-lang/python/files/python-2.7.5-nonfatal-compileall.patch
4725 deleted file mode 100644
4726 index a762dfb..0000000
4727 --- a/dev-lang/python/files/python-2.7.5-nonfatal-compileall.patch
4728 +++ /dev/null
4729 @@ -1,18 +0,0 @@
4730 -diff --git a/Makefile.pre.in b/Makefile.pre.in
4731 ---- a/Makefile.pre.in
4732 -+++ b/Makefile.pre.in
4733 -@@ -1000,12 +1000,12 @@
4734 - $(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \
4735 - $(DESTDIR)$(LIBDEST)/distutils/tests ; \
4736 - fi
4737 -- PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
4738 -+ -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
4739 - $(PYTHON_FOR_BUILD) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \
4740 - -d $(LIBDEST) -f \
4741 - -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
4742 - $(DESTDIR)$(LIBDEST)
4743 -- PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
4744 -+ -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
4745 - $(PYTHON_FOR_BUILD) -Wi -tt -O $(DESTDIR)$(LIBDEST)/compileall.py \
4746 - -d $(LIBDEST) -f \
4747 - -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
4748
4749 diff --git a/dev-lang/python/files/python-2.7.5-re_unsigned_ptrdiff.patch b/dev-lang/python/files/python-2.7.5-re_unsigned_ptrdiff.patch
4750 deleted file mode 100644
4751 index a905839..0000000
4752 --- a/dev-lang/python/files/python-2.7.5-re_unsigned_ptrdiff.patch
4753 +++ /dev/null
4754 @@ -1,23 +0,0 @@
4755 -https://bugs.gentoo.org/show_bug.cgi?id=476426
4756 -http://bugs.python.org/issue17998
4757 -diff -r d91da96a55bf Modules/_sre.c
4758 ---- a/Modules/_sre.c Thu May 16 22:47:47 2013 +0100
4759 -+++ b/Modules/_sre.c Fri May 17 21:02:48 2013 +0300
4760 -@@ -1028,7 +1028,7 @@
4761 - TRACE(("|%p|%p|REPEAT_ONE %d %d\n", ctx->pattern, ctx->ptr,
4762 - ctx->pattern[1], ctx->pattern[2]));
4763 -
4764 -- if (ctx->pattern[1] > end - ctx->ptr)
4765 -+ if ((Py_ssize_t) ctx->pattern[1] > end - ctx->ptr)
4766 - RETURN_FAILURE; /* cannot match */
4767 -
4768 - state->ptr = ctx->ptr;
4769 -@@ -1111,7 +1111,7 @@
4770 - TRACE(("|%p|%p|MIN_REPEAT_ONE %d %d\n", ctx->pattern, ctx->ptr,
4771 - ctx->pattern[1], ctx->pattern[2]));
4772 -
4773 -- if (ctx->pattern[1] > end - ctx->ptr)
4774 -+ if ((Py_ssize_t) ctx->pattern[1] > end - ctx->ptr)
4775 - RETURN_FAILURE; /* cannot match */
4776 -
4777 - state->ptr = ctx->ptr;
4778
4779 diff --git a/dev-lang/python/files/python-2.7.6-recvfrom_into_buffer_overflow.patch b/dev-lang/python/files/python-2.7.6-recvfrom_into_buffer_overflow.patch
4780 deleted file mode 100644
4781 index 37e786b..0000000
4782 --- a/dev-lang/python/files/python-2.7.6-recvfrom_into_buffer_overflow.patch
4783 +++ /dev/null
4784 @@ -1,17 +0,0 @@
4785 -diff -r 40fb60df4755 Modules/socketmodule.c
4786 ---- a/Modules/socketmodule.c Sun Jan 12 12:11:47 2014 +0200
4787 -+++ b/Modules/socketmodule.c Mon Jan 13 16:36:35 2014 -0800
4788 -@@ -2744,6 +2744,13 @@
4789 - recvlen = buflen;
4790 - }
4791 -
4792 -+ /* Check if the buffer is large enough */
4793 -+ if (buflen < recvlen) {
4794 -+ PyErr_SetString(PyExc_ValueError,
4795 -+ "buffer too small for requested bytes");
4796 -+ goto error;
4797 -+ }
4798 -+
4799 - readlen = sock_recvfrom_guts(s, buf.buf, recvlen, flags, &addr);
4800 - if (readlen < 0) {
4801 - /* Return an error */
4802
4803 diff --git a/dev-lang/python/files/python-2.7.9-ncurses-pkg-config.patch b/dev-lang/python/files/python-2.7.9-ncurses-pkg-config.patch
4804 deleted file mode 100644
4805 index 38ce6f7..0000000
4806 --- a/dev-lang/python/files/python-2.7.9-ncurses-pkg-config.patch
4807 +++ /dev/null
4808 @@ -1,13 +0,0 @@
4809 -do not hardcode /usr/include paths
4810 -
4811 ---- a/configure.ac
4812 -+++ b/configure.ac
4813 -@@ -4316,7 +4316,7 @@ fi
4814 -
4815 - # first curses configure check
4816 - ac_save_cppflags="$CPPFLAGS"
4817 --CPPFLAGS="$CPPFLAGS -I/usr/include/ncursesw"
4818 -+CPPFLAGS="$CPPFLAGS `$PKG_CONFIG --cflags ncursesw`"
4819 -
4820 - AC_CHECK_HEADERS(curses.h ncurses.h)
4821 -
4822
4823 diff --git a/dev-lang/python/files/python-3.2-CVE-2013-2099.patch b/dev-lang/python/files/python-3.2-CVE-2013-2099.patch
4824 deleted file mode 100644
4825 index 9055a03..0000000
4826 --- a/dev-lang/python/files/python-3.2-CVE-2013-2099.patch
4827 +++ /dev/null
4828 @@ -1,51 +0,0 @@
4829 -# HG changeset patch
4830 -# User Antoine Pitrou <solipsis@××××××.net>
4831 -# Date 1368892602 -7200
4832 -# Sat May 18 17:56:42 2013 +0200
4833 -# Branch 3.2
4834 -# Node ID b9b521efeba385af0142988899a55de1c1c805c7
4835 -# Parent 6255b40c6a6127933d8ea7a2b9de200f5a0e6154
4836 -Issue #17980: Fix possible abuse of ssl.match_hostname() for denial of service using certificates with many wildcards (CVE-2013-2099).
4837 -
4838 -diff --git a/Lib/ssl.py b/Lib/ssl.py
4839 ---- a/Lib/ssl.py
4840 -+++ b/Lib/ssl.py
4841 -@@ -108,9 +108,16 @@
4842 - pass
4843 -
4844 -
4845 --def _dnsname_to_pat(dn):
4846 -+def _dnsname_to_pat(dn, max_wildcards=1):
4847 - pats = []
4848 - for frag in dn.split(r'.'):
4849 -+ if frag.count('*') > max_wildcards:
4850 -+ # Issue #17980: avoid denials of service by refusing more
4851 -+ # than one wildcard per fragment. A survery of established
4852 -+ # policy among SSL implementations showed it to be a
4853 -+ # reasonable choice.
4854 -+ raise CertificateError(
4855 -+ "too many wildcards in certificate DNS name: " + repr(dn))
4856 - if frag == '*':
4857 - # When '*' is a fragment by itself, it matches a non-empty dotless
4858 - # fragment.
4859 -diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py
4860 ---- a/Lib/test/test_ssl.py
4861 -+++ b/Lib/test/test_ssl.py
4862 -@@ -326,6 +326,17 @@
4863 - self.assertRaises(ValueError, ssl.match_hostname, None, 'example.com')
4864 - self.assertRaises(ValueError, ssl.match_hostname, {}, 'example.com')
4865 -
4866 -+ # Issue #17980: avoid denials of service by refusing more than one
4867 -+ # wildcard per fragment.
4868 -+ cert = {'subject': ((('commonName', 'a*b.com'),),)}
4869 -+ ok(cert, 'axxb.com')
4870 -+ cert = {'subject': ((('commonName', 'a*b.co*'),),)}
4871 -+ ok(cert, 'axxb.com')
4872 -+ cert = {'subject': ((('commonName', 'a*b*.com'),),)}
4873 -+ with self.assertRaises(ssl.CertificateError) as cm:
4874 -+ ssl.match_hostname(cert, 'axxbxxc.com')
4875 -+ self.assertIn("too many wildcards", str(cm.exception))
4876 -+
4877 - def test_server_side(self):
4878 - # server_hostname doesn't work for server sockets
4879 - ctx = ssl.SSLContext(ssl.PROTOCOL_SSLv23)
4880
4881 diff --git a/dev-lang/python/files/python-3.2-CVE-2014-1912.patch b/dev-lang/python/files/python-3.2-CVE-2014-1912.patch
4882 deleted file mode 100644
4883 index 0e09507..0000000
4884 --- a/dev-lang/python/files/python-3.2-CVE-2014-1912.patch
4885 +++ /dev/null
4886 @@ -1,51 +0,0 @@
4887 -# HG changeset patch
4888 -# User Benjamin Peterson <benjamin@××××××.org>
4889 -# Date 1389671978 18000
4890 -# Node ID 9c56217e5c793685eeaf0ee224848c402bdf1e4c
4891 -# Parent 2b5cd6d4d149dea6c6941b7e07ada248b29fc9f6
4892 -complain when nbytes > buflen to fix possible buffer overflow (closes #20246)
4893 -
4894 -diff --git a/Lib/test/test_socket.py b/Lib/test/test_socket.py
4895 ---- a/Lib/test/test_socket.py
4896 -+++ b/Lib/test/test_socket.py
4897 -@@ -1968,6 +1968,14 @@ class BufferIOTest(SocketConnectedTest):
4898 -
4899 - _testRecvFromIntoMemoryview = _testRecvFromIntoArray
4900 -
4901 -+ def testRecvFromIntoSmallBuffer(self):
4902 -+ # See issue #20246.
4903 -+ buf = bytearray(8)
4904 -+ self.assertRaises(ValueError, self.cli_conn.recvfrom_into, buf, 1024)
4905 -+
4906 -+ def _testRecvFromIntoSmallBuffer(self):
4907 -+ self.serv_conn.send(MSG*2048)
4908 -+
4909 -
4910 - TIPC_STYPE = 2000
4911 - TIPC_LOWER = 200
4912 -diff --git a/Misc/ACKS b/Misc/ACKS
4913 ---- a/Misc/ACKS
4914 -+++ b/Misc/ACKS
4915 -@@ -1020,6 +1020,7 @@ Eric V. Smith
4916 - Christopher Smith
4917 - Gregory P. Smith
4918 - Roy Smith
4919 -+Ryan Smith-Roberts
4920 - Rafal Smotrzyk
4921 - Dirk Soede
4922 - Paul Sokolovsky
4923 -diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c
4924 ---- a/Modules/socketmodule.c
4925 -+++ b/Modules/socketmodule.c
4926 -@@ -2598,6 +2598,11 @@ sock_recvfrom_into(PySocketSockObject *s
4927 - if (recvlen == 0) {
4928 - /* If nbytes was not specified, use the buffer's length */
4929 - recvlen = buflen;
4930 -+ } else if (recvlen > buflen) {
4931 -+ PyBuffer_Release(&pbuf);
4932 -+ PyErr_SetString(PyExc_ValueError,
4933 -+ "nbytes is greater than the length of the buffer");
4934 -+ return NULL;
4935 - }
4936 -
4937 - readlen = sock_recvfrom_guts(s, buf, recvlen, flags, &addr);
4938
4939 diff --git a/dev-lang/python/files/python-3.2-CVE-2014-4616.patch b/dev-lang/python/files/python-3.2-CVE-2014-4616.patch
4940 deleted file mode 100644
4941 index 5b0a397..0000000
4942 --- a/dev-lang/python/files/python-3.2-CVE-2014-4616.patch
4943 +++ /dev/null
4944 @@ -1,39 +0,0 @@
4945 -# HG changeset patch
4946 -# User Benjamin Peterson <benjamin@××××××.org>
4947 -# Date 1397441438 14400
4948 -# Node ID 50c07ed1743da9cd4540d83de0c30bd17aeb41b0
4949 -# Parent 218e28a935ab4494d05215c243e2129625a71893
4950 -in scan_once, prevent the reading of arbitrary memory when passed a negative index
4951 -
4952 -Bug reported by Guido Vranken.
4953 -
4954 -Index: Python-3.2.5/Lib/json/tests/test_decode.py
4955 -===================================================================
4956 ---- Python-3.2.5.orig/Lib/test/json_tests/test_decode.py 2014-06-26 18:40:10.825269130 +0200
4957 -+++ Python-3.2.5/Lib/test/json_tests/test_decode.py 2014-06-26 18:40:21.962323035 +0200
4958 -@@ -60,5 +60,9 @@
4959 - msg = 'escape'
4960 - self.assertRaisesRegexp(ValueError, msg, self.loads, s)
4961 -
4962 -+ def test_negative_index(self):
4963 -+ d = self.json.JSONDecoder()
4964 -+ self.assertRaises(ValueError, d.raw_decode, 'a'*42, -50000)
4965 -+
4966 - class TestPyDecode(TestDecode, PyTest): pass
4967 - class TestCDecode(TestDecode, CTest): pass
4968 -Index: Python-3.2.5/Modules/_json.c
4969 -===================================================================
4970 ---- a/Modules/_json.c
4971 -+++ b/Modules/_json.c
4972 -@@ -930,7 +930,10 @@ scan_once_unicode(PyScannerObject *s, Py
4973 - PyObject *res;
4974 - Py_UNICODE *str = PyUnicode_AS_UNICODE(pystr);
4975 - Py_ssize_t length = PyUnicode_GET_SIZE(pystr);
4976 -- if (idx >= length) {
4977 -+ if (idx < 0)
4978 -+ /* Compatibility with Python version. */
4979 -+ idx += length;
4980 -+ if (idx < 0 || idx >= length) {
4981 - PyErr_SetNone(PyExc_StopIteration);
4982 - return NULL;
4983 - }
4984
4985 diff --git a/dev-lang/python/files/python-3.2-issue16248.patch b/dev-lang/python/files/python-3.2-issue16248.patch
4986 deleted file mode 100644
4987 index d0e80ca..0000000
4988 --- a/dev-lang/python/files/python-3.2-issue16248.patch
4989 +++ /dev/null
4990 @@ -1,19 +0,0 @@
4991 -# HG changeset patch
4992 -# User Georg Brandl <georg@××××××.org>
4993 -# Date 1379142489 -7200
4994 -# Node ID c18c18774e240377d47638fb23e8276c1ac2e606
4995 -# Parent b9b521efeba385af0142988899a55de1c1c805c7
4996 -Fix tkinter regression introduced by the security fix in #16248.
4997 -
4998 -diff --git a/Lib/tkinter/__init__.py b/Lib/tkinter/__init__.py
4999 ---- a/Lib/tkinter/__init__.py
5000 -+++ b/Lib/tkinter/__init__.py
5001 -@@ -1722,7 +1722,7 @@ class Tk(Misc, Wm):
5002 - # ensure that self.tk is always _something_.
5003 - self.tk = None
5004 - if baseName is None:
5005 -- import sys, os
5006 -+ import os
5007 - baseName = os.path.basename(sys.argv[0])
5008 - baseName, ext = os.path.splitext(baseName)
5009 - if ext not in ('.py', '.pyc', '.pyo'):
5010
5011 diff --git a/dev-lang/python/files/python-3.3-CVE-2013-2099.patch b/dev-lang/python/files/python-3.3-CVE-2013-2099.patch
5012 deleted file mode 100644
5013 index 44b9ace..0000000
5014 --- a/dev-lang/python/files/python-3.3-CVE-2013-2099.patch
5015 +++ /dev/null
5016 @@ -1,51 +0,0 @@
5017 -# HG changeset patch
5018 -# User Antoine Pitrou <solipsis@××××××.net>
5019 -# Date 1368892602 -7200
5020 -# Sat May 18 17:56:42 2013 +0200
5021 -# Branch 3.3
5022 -# Node ID c627638753e2d25a98950585b259104a025937a9
5023 -# Parent 9682241dc8fcb4b1aef083bd30860efa070c3d6d
5024 -Issue #17980: Fix possible abuse of ssl.match_hostname() for denial of service using certificates with many wildcards (CVE-2013-2099).
5025 -
5026 -diff --git a/Lib/ssl.py b/Lib/ssl.py
5027 ---- a/Lib/ssl.py
5028 -+++ b/Lib/ssl.py
5029 -@@ -129,9 +129,16 @@
5030 - pass
5031 -
5032 -
5033 --def _dnsname_to_pat(dn):
5034 -+def _dnsname_to_pat(dn, max_wildcards=1):
5035 - pats = []
5036 - for frag in dn.split(r'.'):
5037 -+ if frag.count('*') > max_wildcards:
5038 -+ # Issue #17980: avoid denials of service by refusing more
5039 -+ # than one wildcard per fragment. A survery of established
5040 -+ # policy among SSL implementations showed it to be a
5041 -+ # reasonable choice.
5042 -+ raise CertificateError(
5043 -+ "too many wildcards in certificate DNS name: " + repr(dn))
5044 - if frag == '*':
5045 - # When '*' is a fragment by itself, it matches a non-empty dotless
5046 - # fragment.
5047 -diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py
5048 ---- a/Lib/test/test_ssl.py
5049 -+++ b/Lib/test/test_ssl.py
5050 -@@ -349,6 +349,17 @@
5051 - self.assertRaises(ValueError, ssl.match_hostname, None, 'example.com')
5052 - self.assertRaises(ValueError, ssl.match_hostname, {}, 'example.com')
5053 -
5054 -+ # Issue #17980: avoid denials of service by refusing more than one
5055 -+ # wildcard per fragment.
5056 -+ cert = {'subject': ((('commonName', 'a*b.com'),),)}
5057 -+ ok(cert, 'axxb.com')
5058 -+ cert = {'subject': ((('commonName', 'a*b.co*'),),)}
5059 -+ ok(cert, 'axxb.com')
5060 -+ cert = {'subject': ((('commonName', 'a*b*.com'),),)}
5061 -+ with self.assertRaises(ssl.CertificateError) as cm:
5062 -+ ssl.match_hostname(cert, 'axxbxxc.com')
5063 -+ self.assertIn("too many wildcards", str(cm.exception))
5064 -+
5065 - def test_server_side(self):
5066 - # server_hostname doesn't work for server sockets
5067 - ctx = ssl.SSLContext(ssl.PROTOCOL_SSLv23)
5068
5069 diff --git a/dev-lang/python/files/python-3.3-CVE-2014-4616.patch b/dev-lang/python/files/python-3.3-CVE-2014-4616.patch
5070 deleted file mode 100644
5071 index c67b2e5..0000000
5072 --- a/dev-lang/python/files/python-3.3-CVE-2014-4616.patch
5073 +++ /dev/null
5074 @@ -1,52 +0,0 @@
5075 -# HG changeset patch
5076 -# User Benjamin Peterson <benjamin@××××××.org>
5077 -# Date 1397441438 14400
5078 -# Node ID 50c07ed1743da9cd4540d83de0c30bd17aeb41b0
5079 -# Parent 218e28a935ab4494d05215c243e2129625a71893
5080 -in scan_once, prevent the reading of arbitrary memory when passed a negative index
5081 -
5082 -Bug reported by Guido Vranken.
5083 -
5084 -Index: Python-3.3.5/Lib/json/tests/test_decode.py
5085 -===================================================================
5086 ---- Python-3.3.5.orig/Lib/test/test_json/test_decode.py 2014-06-26 18:40:10.825269130 +0200
5087 -+++ Python-3.3.5/Lib/test/test_json/test_decode.py 2014-06-26 18:40:21.962323035 +0200
5088 -@@ -60,5 +60,10 @@
5089 - msg = 'escape'
5090 - self.assertRaisesRegexp(ValueError, msg, self.loads, s)
5091 -
5092 -+ def test_negative_index(self):
5093 -+ d = self.json.JSONDecoder()
5094 -+ self.assertRaises(ValueError, d.raw_decode, 'a'*42, -50000)
5095 -+ self.assertRaises(ValueError, d.raw_decode, u'a'*42, -50000)
5096 -+
5097 - class TestPyDecode(TestDecode, PyTest): pass
5098 - class TestCDecode(TestDecode, CTest): pass
5099 -Index: Python-3.3.5/Misc/ACKS
5100 -===================================================================
5101 ---- Python-3.3.5.orig/Misc/ACKS 2014-06-26 18:40:10.826269135 +0200
5102 -+++ Python-3.3.5/Misc/ACKS 2014-06-26 18:40:21.962323035 +0200
5103 -@@ -1085,6 +1085,7 @@
5104 - Frank Visser
5105 - Johannes Vogel
5106 - Alex Volkov
5107 -+Guido Vranken
5108 - Martijn Vries
5109 - Niki W. Waibel
5110 - Wojtek Walczak
5111 -Index: Python-3.3.5/Modules/_json.c
5112 -===================================================================
5113 ---- a/Modules/_json.c
5114 -+++ b/Modules/_json.c
5115 -@@ -975,7 +975,10 @@ scan_once_unicode(PyScannerObject *s, Py
5116 - kind = PyUnicode_KIND(pystr);
5117 - length = PyUnicode_GET_LENGTH(pystr);
5118 -
5119 -- if (idx >= length) {
5120 -+ if (idx < 0)
5121 -+ /* Compatibility with Python version. */
5122 -+ idx += length;
5123 -+ if (idx < 0 || idx >= length) {
5124 - PyErr_SetNone(PyExc_StopIteration);
5125 - return NULL;
5126 - }
5127
5128 diff --git a/dev-lang/python/files/python-3.3.5-ncurses-pkg-config.patch b/dev-lang/python/files/python-3.3.5-ncurses-pkg-config.patch
5129 deleted file mode 100644
5130 index d963b9e..0000000
5131 --- a/dev-lang/python/files/python-3.3.5-ncurses-pkg-config.patch
5132 +++ /dev/null
5133 @@ -1,40 +0,0 @@
5134 -do not hardcode /usr/include paths
5135 -
5136 ---- a/configure.ac
5137 -+++ b/configure.ac
5138 -@@ -668,6 +668,8 @@ AC_ARG_WITH(cxx_main,
5139 - ])
5140 - AC_MSG_RESULT($with_cxx_main)
5141 -
5142 -+AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
5143 -+
5144 - preset_cxx="$CXX"
5145 - if test -z "$CXX"
5146 - then
5147 -@@ -1513,7 +1515,7 @@ dnl AC_MSG_RESULT($cpp_type)
5148 - # checks for header files
5149 - AC_HEADER_STDC
5150 - ac_save_cppflags="$CPPFLAGS"
5151 --CPPFLAGS="$CPPFLAGS -I/usr/include/ncursesw"
5152 -+CPPFLAGS="$CPPFLAGS `$PKG_CONFIG --cflags ncursesw`"
5153 - AC_CHECK_HEADERS(asm/types.h conio.h curses.h direct.h dlfcn.h errno.h \
5154 - fcntl.h grp.h \
5155 - ieeefp.h io.h langinfo.h libintl.h ncurses.h process.h pthread.h \
5156 -@@ -2225,8 +2227,6 @@ LIBS="$withval $LIBS"
5157 - ],
5158 - [AC_MSG_RESULT(no)])
5159 -
5160 --AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
5161 --
5162 - # Check for use of the system expat library
5163 - AC_MSG_CHECKING(for --with-system-expat)
5164 - AC_ARG_WITH(system_expat,
5165 -@@ -4273,7 +4273,7 @@ then
5166 - fi
5167 -
5168 - ac_save_cppflags="$CPPFLAGS"
5169 --CPPFLAGS="$CPPFLAGS -I/usr/include/ncursesw"
5170 -+CPPFLAGS="$CPPFLAGS `$PKG_CONFIG --cflags ncursesw`"
5171 - # On HP/UX 11.0, mvwdelch is a block with a return statement
5172 - AC_MSG_CHECKING(whether mvwdelch is an expression)
5173 - AC_CACHE_VAL(ac_cv_mvwdelch_is_expression,
5174
5175 diff --git a/dev-lang/python/files/python-3.4.3-ncurses-pkg-config.patch b/dev-lang/python/files/python-3.4.3-ncurses-pkg-config.patch
5176 deleted file mode 100644
5177 index 8bfad11..0000000
5178 --- a/dev-lang/python/files/python-3.4.3-ncurses-pkg-config.patch
5179 +++ /dev/null
5180 @@ -1,13 +0,0 @@
5181 -do not hardcode /usr/include paths
5182 -
5183 ---- a/configure.ac
5184 -+++ b/configure.ac
5185 -@@ -4402,7 +4402,7 @@ fi
5186 -
5187 - # first curses header check
5188 - ac_save_cppflags="$CPPFLAGS"
5189 --CPPFLAGS="$CPPFLAGS -I/usr/include/ncursesw"
5190 -+CPPFLAGS="$CPPFLAGS `$PKG_CONFIG --cflags ncursesw`"
5191 -
5192 - AC_CHECK_HEADERS(curses.h ncurses.h)
5193 -
5194
5195 diff --git a/dev-lang/python/files/python-config-2.4-r1 b/dev-lang/python/files/python-config-2.4-r1
5196 deleted file mode 100644
5197 index af45113..0000000
5198 --- a/dev-lang/python/files/python-config-2.4-r1
5199 +++ /dev/null
5200 @@ -1,58 +0,0 @@
5201 -#! /usr/bin/python2.4
5202 -
5203 -import sys
5204 -import os
5205 -import getopt
5206 -from distutils import sysconfig
5207 -
5208 -valid_opts = ['prefix', 'exec-prefix', 'includes', 'libs', 'cflags',
5209 - 'ldflags', 'help']
5210 -
5211 -def exit_with_usage(code=1):
5212 - print >>sys.stderr, "Usage: %s [%s]" % (sys.argv[0],
5213 - '|'.join('--'+opt for opt in valid_opts))
5214 - sys.exit(code)
5215 -
5216 -try:
5217 - opts, args = getopt.getopt(sys.argv[1:], '', valid_opts)
5218 -except getopt.error:
5219 - exit_with_usage()
5220 -
5221 -if not opts:
5222 - #exit_with_usage()
5223 - #be compatible with our old python-config-2.4
5224 - import string
5225 - print "-lpython2.4 -lm -L/usr/lib/python2.4/config",string.join(string.split(sysconfig.get_config_var("MODLIBS")))
5226 - sys.exit(0)
5227 -
5228 -opt = opts[0][0]
5229 -
5230 -pyver = sysconfig.get_config_var('VERSION')
5231 -getvar = sysconfig.get_config_var
5232 -
5233 -if opt == '--help':
5234 - exit_with_usage(0)
5235 -
5236 -elif opt == '--prefix':
5237 - print sysconfig.PREFIX
5238 -
5239 -elif opt == '--exec-prefix':
5240 - print sysconfig.EXEC_PREFIX
5241 -
5242 -elif opt in ('--includes', '--cflags'):
5243 - flags = ['-I' + sysconfig.get_python_inc(),
5244 - '-I' + sysconfig.get_python_inc(plat_specific=True)]
5245 - if opt == '--cflags':
5246 - flags.extend(getvar('CFLAGS').split())
5247 - print ' '.join(flags)
5248 -
5249 -elif opt in ('--libs', '--ldflags'):
5250 - libs = getvar('LIBS').split() + getvar('SYSLIBS').split()
5251 - libs.append('-lpython'+pyver)
5252 - # add the prefix/lib/pythonX.Y/config dir, but only if there is no
5253 - # shared library in prefix/lib/.
5254 - if opt == '--ldflags' and not getvar('Py_ENABLE_SHARED'):
5255 - libs.insert(0, '-L' + getvar('LIBPL'))
5256 - print ' '.join(libs)
5257 -
5258 -
5259
5260 diff --git a/dev-lang/python/metadata.xml b/dev-lang/python/metadata.xml
5261 deleted file mode 100644
5262 index 51a9e80..0000000
5263 --- a/dev-lang/python/metadata.xml
5264 +++ /dev/null
5265 @@ -1,10 +0,0 @@
5266 -<?xml version="1.0" encoding="UTF-8"?>
5267 -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
5268 -<pkgmetadata>
5269 -<herd>python</herd>
5270 -<use>
5271 - <flag name="threads">Enable threading support. (DON'T DISABLE THIS UNLESS YOU KNOW WHAT YOU'RE DOING)</flag>
5272 - <flag name="wide-unicode">Enable wide Unicode implementation which uses 4-byte Unicode characters. Switching of this USE flag changes ABI of Python and requires reinstallation of many Python modules. (DON'T DISABLE THIS UNLESS YOU KNOW WHAT YOU'RE DOING)</flag>
5273 - <flag name="wininst">Install Windows executables required to create an executable installer for MS Windows.</flag>
5274 -</use>
5275 -</pkgmetadata>
5276
5277 diff --git a/dev-lang/python/python-2.6.9.ebuild b/dev-lang/python/python-2.6.9.ebuild
5278 deleted file mode 100644
5279 index 9ca66c6..0000000
5280 --- a/dev-lang/python/python-2.6.9.ebuild
5281 +++ /dev/null
5282 @@ -1,371 +0,0 @@
5283 -# Copyright 1999-2015 Gentoo Foundation
5284 -# Distributed under the terms of the GNU General Public License v2
5285 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-2.6.9.ebuild,v 1.7 2015/04/23 19:25:27 floppym Exp $
5286 -
5287 -EAPI="2"
5288 -WANT_AUTOMAKE="none"
5289 -WANT_LIBTOOL="none"
5290 -
5291 -inherit autotools eutils flag-o-matic multilib multiprocessing pax-utils python-utils-r1 toolchain-funcs unpacker
5292 -
5293 -MY_P="Python-${PV}"
5294 -PATCHSET_VERSION="${PV}-0"
5295 -
5296 -DESCRIPTION="An interpreted, interactive, object-oriented programming language"
5297 -HOMEPAGE="http://www.python.org/"
5298 -SRC_URI="http://www.python.org/ftp/python/${PV}/${MY_P}.tgz
5299 - http://dev.gentoo.org/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
5300 -
5301 -LICENSE="PSF-2"
5302 -SLOT="2.6"
5303 -#KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd"
5304 -IUSE="-berkdb build doc elibc_uclibc examples gdbm hardened ipv6 +ncurses +readline sqlite +ssl +threads tk +wide-unicode wininst +xml"
5305 -
5306 -# Do not add a dependency on dev-lang/python to this ebuild.
5307 -# If you need to apply a patch which requires python for bootstrapping, please
5308 -# run the bootstrap code on your dev box and include the results in the
5309 -# patchset. See bug 447752.
5310 -
5311 -RDEPEND="app-arch/bzip2
5312 - >=sys-libs/zlib-1.1.3
5313 - virtual/libffi
5314 - virtual/libintl
5315 - !build? (
5316 - berkdb? ( || (
5317 - sys-libs/db:4.7
5318 - sys-libs/db:4.6
5319 - sys-libs/db:4.5
5320 - sys-libs/db:4.4
5321 - sys-libs/db:4.3
5322 - sys-libs/db:4.2
5323 - ) )
5324 - gdbm? ( sys-libs/gdbm[berkdb] )
5325 - ncurses? (
5326 - >=sys-libs/ncurses-5.2
5327 - readline? ( >=sys-libs/readline-4.1 )
5328 - )
5329 - sqlite? ( >=dev-db/sqlite-3.3.3:3 )
5330 - ssl? ( dev-libs/openssl )
5331 - tk? (
5332 - >=dev-lang/tk-8.0
5333 - dev-tcltk/blt
5334 - )
5335 - xml? ( >=dev-libs/expat-2.1 )
5336 - )
5337 - !!<sys-apps/portage-2.1.9"
5338 -DEPEND="${RDEPEND}
5339 - virtual/pkgconfig
5340 - >=sys-devel/autoconf-2.61
5341 - !sys-devel/gcc[libffi]"
5342 -RDEPEND+=" !build? ( app-misc/mime-types )
5343 - doc? ( dev-python/python-docs:${SLOT} )"
5344 -PDEPEND="app-eselect/eselect-python
5345 - app-admin/python-updater"
5346 -
5347 -S="${WORKDIR}/${MY_P}"
5348 -
5349 -pkg_setup() {
5350 - if use berkdb; then
5351 - ewarn "'bsddb' module is out-of-date and no longer maintained inside"
5352 - ewarn "dev-lang/python. 'bsddb' and 'dbhash' modules have been additionally"
5353 - ewarn "removed in Python 3. A maintained alternative of 'bsddb3' module"
5354 - ewarn "is provided by dev-python/bsddb3."
5355 - else
5356 - if has_version "=${CATEGORY}/${PN}-${PV%%.*}*[berkdb]"; then
5357 - ewarn "You are migrating from =${CATEGORY}/${PN}-${PV%%.*}*[berkdb]"
5358 - ewarn "to =${CATEGORY}/${PN}-${PV%%.*}*[-berkdb]."
5359 - ewarn "You might need to migrate your databases."
5360 - fi
5361 - fi
5362 -}
5363 -
5364 -src_prepare() {
5365 - # Ensure that internal copies of expat, libffi and zlib are not used.
5366 - rm -fr Modules/expat
5367 - rm -fr Modules/_ctypes/libffi*
5368 - rm -fr Modules/zlib
5369 -
5370 - local excluded_patches
5371 - if ! tc-is-cross-compiler; then
5372 - excluded_patches="*_all_crosscompile.patch"
5373 - fi
5374 -
5375 - EPATCH_EXCLUDE="${excluded_patches}" EPATCH_SUFFIX="patch" \
5376 - epatch "${WORKDIR}/patches"
5377 -
5378 - epatch "${FILESDIR}/python-2.5-tcl86.patch"
5379 -
5380 - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
5381 - Lib/distutils/command/install.py \
5382 - Lib/distutils/sysconfig.py \
5383 - Lib/site.py \
5384 - Makefile.pre.in \
5385 - Modules/Setup.dist \
5386 - Modules/getpath.c \
5387 - setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
5388 -
5389 - epatch_user
5390 -
5391 - eautoconf
5392 - eautoheader
5393 -}
5394 -
5395 -src_configure() {
5396 - if use build; then
5397 - # Disable extraneous modules with extra dependencies.
5398 - export PYTHON_DISABLE_MODULES="dbm _bsddb gdbm _curses _curses_panel readline _sqlite3 _tkinter _elementtree pyexpat"
5399 - export PYTHON_DISABLE_SSL="1"
5400 - else
5401 - # dbm module can be linked against berkdb or gdbm.
5402 - # Defaults to gdbm when both are enabled, #204343.
5403 - local disable
5404 - use berkdb || use gdbm || disable+=" dbm"
5405 - use berkdb || disable+=" _bsddb"
5406 - use gdbm || disable+=" gdbm"
5407 - use ncurses || disable+=" _curses _curses_panel"
5408 - use readline || disable+=" readline"
5409 - use sqlite || disable+=" _sqlite3"
5410 - use ssl || export PYTHON_DISABLE_SSL="1"
5411 - use tk || disable+=" _tkinter"
5412 - use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
5413 - export PYTHON_DISABLE_MODULES="${disable}"
5414 -
5415 - if ! use xml; then
5416 - ewarn "You have configured Python without XML support."
5417 - ewarn "This is NOT a recommended configuration as you"
5418 - ewarn "may face problems parsing any XML documents."
5419 - fi
5420 - fi
5421 -
5422 - if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
5423 - einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
5424 - fi
5425 -
5426 - if [[ "$(gcc-major-version)" -ge 4 ]]; then
5427 - append-flags -fwrapv
5428 - fi
5429 -
5430 - filter-flags -malign-double
5431 -
5432 - [[ "${ARCH}" == "alpha" ]] && append-flags -fPIC
5433 -
5434 - # https://bugs.gentoo.org/show_bug.cgi?id=50309
5435 - if is-flagq -O3; then
5436 - is-flagq -fstack-protector-all && replace-flags -O3 -O2
5437 - use hardened && replace-flags -O3 -O2
5438 - fi
5439 -
5440 - # Run the configure scripts in parallel.
5441 - multijob_init
5442 -
5443 - mkdir -p "${WORKDIR}"/{${CBUILD},${CHOST}}
5444 -
5445 - if tc-is-cross-compiler; then
5446 - (
5447 - multijob_child_init
5448 - cd "${WORKDIR}"/${CBUILD} >/dev/null
5449 - OPT="-O1" CFLAGS="" CPPFLAGS="" LDFLAGS="" CC="" \
5450 - "${S}"/configure \
5451 - --{build,host}=${CBUILD} \
5452 - || die "cross-configure failed"
5453 - ) &
5454 - multijob_post_fork
5455 - fi
5456 -
5457 - # Export CXX so it ends up in /usr/lib/python2.X/config/Makefile.
5458 - tc-export CXX
5459 - # The configure script fails to use pkg-config correctly.
5460 - # http://bugs.python.org/issue15506
5461 - export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG)
5462 -
5463 - # Set LDFLAGS so we link modules with -lpython2.6 correctly.
5464 - # Needed on FreeBSD unless Python 2.6 is already installed.
5465 - # Please query BSD team before removing this!
5466 - append-ldflags "-L."
5467 -
5468 - cd "${WORKDIR}"/${CHOST}
5469 - ECONF_SOURCE=${S} OPT="" \
5470 - econf \
5471 - --with-fpectl \
5472 - --enable-shared \
5473 - $(use_enable ipv6) \
5474 - $(use_with threads) \
5475 - $(use wide-unicode && echo "--enable-unicode=ucs4" || echo "--enable-unicode=ucs2") \
5476 - --infodir='${prefix}/share/info' \
5477 - --mandir='${prefix}/share/man' \
5478 - --with-libc="" \
5479 - --with-system-ffi
5480 -
5481 - if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
5482 - eerror "configure has detected that the sem_open function is broken."
5483 - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
5484 - die "Broken sem_open function (bug 496328)"
5485 - fi
5486 -
5487 - if tc-is-cross-compiler; then
5488 - # Modify the Makefile.pre so we don't regen for the host/ one.
5489 - # We need to link the host python programs into $PWD and run
5490 - # them from here because the distutils sysconfig module will
5491 - # parse Makefile/etc... from argv[0], and we need it to pick
5492 - # up the target settings, not the host ones.
5493 - sed -i \
5494 - -e '1iHOSTPYTHONPATH = ./hostpythonpath:' \
5495 - -e '/^HOSTPYTHON/s:=.*:= ./hostpython:' \
5496 - -e '/^HOSTPGEN/s:=.*:= ./Parser/hostpgen:' \
5497 - Makefile{.pre,} || die "sed failed"
5498 - fi
5499 -
5500 - multijob_finish
5501 -}
5502 -
5503 -src_compile() {
5504 - if tc-is-cross-compiler; then
5505 - cd "${WORKDIR}"/${CBUILD}
5506 - # Disable as many modules as possible -- but we need a few to install.
5507 - PYTHON_DISABLE_MODULES=$(
5508 - sed -n "/Extension('/{s:^.*Extension('::;s:'.*::;p}" "${S}"/setup.py | \
5509 - egrep -v '(unicodedata|time|cStringIO|_struct|binascii)'
5510 - ) \
5511 - PTHON_DISABLE_SSL="1" \
5512 - SYSROOT= \
5513 - emake || die "cross-make failed"
5514 - # See comment in src_configure about these.
5515 - ln python ../${CHOST}/hostpython || die
5516 - ln Parser/pgen ../${CHOST}/Parser/hostpgen || die
5517 - ln -s ../${CBUILD}/build/lib.*/ ../${CHOST}/hostpythonpath || die
5518 - fi
5519 -
5520 - cd "${WORKDIR}"/${CHOST}
5521 - default
5522 -
5523 - # Work around bug 329499. See also bug 413751.
5524 - pax-mark m python
5525 -}
5526 -
5527 -src_test() {
5528 - # Tests will not work when cross compiling.
5529 - if tc-is-cross-compiler; then
5530 - elog "Disabling tests due to crosscompiling."
5531 - return
5532 - fi
5533 -
5534 - cd "${WORKDIR}"/${CHOST}
5535 -
5536 - # Skip failing tests.
5537 - local skipped_tests="distutils tcl"
5538 -
5539 - for test in ${skipped_tests}; do
5540 - mv "${S}"/Lib/test/test_${test}.py "${T}"
5541 - done
5542 -
5543 - # Rerun failed tests in verbose mode (regrtest -w).
5544 - PYTHONDONTWRITEBYTECODE="" emake test EXTRATESTOPTS="-w" < /dev/tty
5545 - local result="$?"
5546 -
5547 - for test in ${skipped_tests}; do
5548 - mv "${T}/test_${test}.py" "${S}"/Lib/test
5549 - done
5550 -
5551 - elog "The following tests have been skipped:"
5552 - for test in ${skipped_tests}; do
5553 - elog "test_${test}.py"
5554 - done
5555 -
5556 - elog "If you would like to run them, you may:"
5557 - elog "cd '${EPREFIX}/usr/$(get_libdir)/python${SLOT}/test'"
5558 - elog "and run the tests separately."
5559 -
5560 - if [[ "${result}" -ne 0 ]]; then
5561 - die "emake test failed"
5562 - fi
5563 -}
5564 -
5565 -src_install() {
5566 - [[ -z "${ED}" ]] && ED="${D%/}${EPREFIX}/"
5567 -
5568 - local libdir=${ED}/usr/$(get_libdir)/python${SLOT}
5569 -
5570 - cd "${WORKDIR}"/${CHOST}
5571 - emake DESTDIR="${D}" altinstall maninstall || die "emake altinstall maninstall failed"
5572 -
5573 - # Backwards compat with Gentoo divergence.
5574 - dosym python${SLOT}-config /usr/bin/python-config-${SLOT} || die
5575 -
5576 - # Fix collisions between different slots of Python.
5577 - mv "${ED}usr/bin/2to3" "${ED}usr/bin/2to3-${SLOT}"
5578 - mv "${ED}usr/bin/pydoc" "${ED}usr/bin/pydoc${SLOT}"
5579 - mv "${ED}usr/bin/idle" "${ED}usr/bin/idle${SLOT}"
5580 - mv "${ED}usr/share/man/man1/python.1" "${ED}usr/share/man/man1/python${SLOT}.1"
5581 - rm -f "${ED}usr/bin/smtpd.py"
5582 -
5583 - if use build; then
5584 - rm -fr "${ED}usr/bin/idle${SLOT}" "${libdir}/"{bsddb,dbhash.py,idlelib,lib-tk,sqlite3,test}
5585 - else
5586 - use elibc_uclibc && rm -fr "${libdir}/"{bsddb/test,test}
5587 - use berkdb || rm -fr "${libdir}/"{bsddb,dbhash.py,test/test_bsddb*}
5588 - use sqlite || rm -fr "${libdir}/"{sqlite3,test/test_sqlite*}
5589 - use tk || rm -fr "${ED}usr/bin/idle${SLOT}" "${libdir}/"{idlelib,lib-tk}
5590 - fi
5591 -
5592 - use threads || rm -fr "${libdir}/multiprocessing"
5593 - use wininst || rm -f "${libdir}/distutils/command/"wininst-*.exe
5594 -
5595 - dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS} || die "dodoc failed"
5596 -
5597 - if use examples; then
5598 - insinto /usr/share/doc/${PF}/examples
5599 - doins -r "${S}"/Tools || die "doins failed"
5600 - fi
5601 -
5602 - newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT} || die "newconfd failed"
5603 - newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT} || die "newinitd failed"
5604 - sed \
5605 - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${SLOT/./_}_PORT:" \
5606 - -e "s:@PYDOC@:pydoc${SLOT}:" \
5607 - -i "${ED}etc/conf.d/pydoc-${SLOT}" "${ED}etc/init.d/pydoc-${SLOT}" || die "sed failed"
5608 -
5609 - # for python-exec
5610 - python_export python${SLOT} EPYTHON PYTHON PYTHON_SITEDIR
5611 -
5612 - # if not using a cross-compiler, use the fresh binary
5613 - if ! tc-is-cross-compiler; then
5614 - local PYTHON=./python \
5615 - LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}.
5616 - export LD_LIBRARY_PATH
5617 - fi
5618 -
5619 - echo "EPYTHON='${EPYTHON}'" > epython.py
5620 - python_domodule epython.py
5621 -}
5622 -
5623 -pkg_preinst() {
5624 - if has_version "<${CATEGORY}/${PN}-${SLOT}" && ! has_version "${CATEGORY}/${PN}:2.6" && ! has_version "${CATEGORY}/${PN}:2.7"; then
5625 - python_updater_warning="1"
5626 - fi
5627 -}
5628 -
5629 -eselect_python_update() {
5630 - [[ -z "${EROOT}" || (! -d "${EROOT}" && -d "${ROOT}") ]] && EROOT="${ROOT%/}${EPREFIX}/"
5631 -
5632 - if [[ -z "$(eselect python show)" || ! -f "${EROOT}usr/bin/$(eselect python show)" ]]; then
5633 - eselect python update
5634 - fi
5635 -
5636 - if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT}usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
5637 - eselect python update --python${PV%%.*}
5638 - fi
5639 -}
5640 -
5641 -pkg_postinst() {
5642 - eselect_python_update
5643 -
5644 - if [[ "${python_updater_warning}" == "1" ]]; then
5645 - ewarn "You have just upgraded from an older version of Python."
5646 - ewarn "You should switch active version of Python ${PV%%.*} and run"
5647 - ewarn "'python-updater [options]' to rebuild Python modules."
5648 - fi
5649 -}
5650 -
5651 -pkg_postrm() {
5652 - eselect_python_update
5653 -}
5654
5655 diff --git a/dev-lang/python/python-2.7.9-r1.ebuild b/dev-lang/python/python-2.7.9-r1.ebuild
5656 deleted file mode 100644
5657 index 774893e..0000000
5658 --- a/dev-lang/python/python-2.7.9-r1.ebuild
5659 +++ /dev/null
5660 @@ -1,358 +0,0 @@
5661 -# Copyright 1999-2015 Gentoo Foundation
5662 -# Distributed under the terms of the GNU General Public License v2
5663 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-2.7.9-r1.ebuild,v 1.7 2015/03/31 18:46:33 ulm Exp $
5664 -
5665 -EAPI="4"
5666 -WANT_AUTOMAKE="none"
5667 -WANT_LIBTOOL="none"
5668 -
5669 -inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs multiprocessing
5670 -
5671 -MY_P="Python-${PV}"
5672 -PATCHSET_VERSION="2.7.9-0"
5673 -
5674 -DESCRIPTION="An interpreted, interactive, object-oriented programming language"
5675 -HOMEPAGE="http://www.python.org/"
5676 -SRC_URI="http://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
5677 - http://dev.gentoo.org/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
5678 -
5679 -LICENSE="PSF-2"
5680 -SLOT="2.7"
5681 -KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
5682 -IUSE="-berkdb build doc elibc_uclibc examples gdbm hardened ipv6 +ncurses +readline sqlite +ssl +threads tk +wide-unicode wininst +xml"
5683 -
5684 -# Do not add a dependency on dev-lang/python to this ebuild.
5685 -# If you need to apply a patch which requires python for bootstrapping, please
5686 -# run the bootstrap code on your dev box and include the results in the
5687 -# patchset. See bug 447752.
5688 -
5689 -RDEPEND="app-arch/bzip2
5690 - >=sys-libs/zlib-1.1.3
5691 - virtual/libffi
5692 - virtual/libintl
5693 - !build? (
5694 - berkdb? ( || (
5695 - sys-libs/db:5.3
5696 - sys-libs/db:5.2
5697 - sys-libs/db:5.1
5698 - sys-libs/db:5.0
5699 - sys-libs/db:4.8
5700 - sys-libs/db:4.7
5701 - sys-libs/db:4.6
5702 - sys-libs/db:4.5
5703 - sys-libs/db:4.4
5704 - sys-libs/db:4.3
5705 - sys-libs/db:4.2
5706 - ) )
5707 - gdbm? ( sys-libs/gdbm[berkdb] )
5708 - ncurses? (
5709 - >=sys-libs/ncurses-5.2
5710 - readline? ( >=sys-libs/readline-4.1 )
5711 - )
5712 - sqlite? ( >=dev-db/sqlite-3.3.8:3 )
5713 - ssl? ( dev-libs/openssl )
5714 - tk? (
5715 - >=dev-lang/tk-8.0
5716 - dev-tcltk/blt
5717 - dev-tcltk/tix
5718 - )
5719 - xml? ( >=dev-libs/expat-2.1 )
5720 - )
5721 - !!<sys-apps/portage-2.1.9"
5722 -DEPEND="${RDEPEND}
5723 - virtual/pkgconfig
5724 - >=sys-devel/autoconf-2.65
5725 - !sys-devel/gcc[libffi]"
5726 -RDEPEND+=" !build? ( app-misc/mime-types )
5727 - doc? ( dev-python/python-docs:${SLOT} )"
5728 -PDEPEND="app-eselect/eselect-python
5729 - app-admin/python-updater"
5730 -
5731 -S="${WORKDIR}/${MY_P}"
5732 -
5733 -pkg_setup() {
5734 - if use berkdb; then
5735 - ewarn "'bsddb' module is out-of-date and no longer maintained inside"
5736 - ewarn "dev-lang/python. 'bsddb' and 'dbhash' modules have been additionally"
5737 - ewarn "removed in Python 3. A maintained alternative of 'bsddb3' module"
5738 - ewarn "is provided by dev-python/bsddb3."
5739 - else
5740 - if has_version "=${CATEGORY}/${PN}-${PV%%.*}*[berkdb]"; then
5741 - ewarn "You are migrating from =${CATEGORY}/${PN}-${PV%%.*}*[berkdb]"
5742 - ewarn "to =${CATEGORY}/${PN}-${PV%%.*}*[-berkdb]."
5743 - ewarn "You might need to migrate your databases."
5744 - fi
5745 - fi
5746 -}
5747 -
5748 -src_prepare() {
5749 - # Ensure that internal copies of expat, libffi and zlib are not used.
5750 - rm -r Modules/expat || die
5751 - rm -r Modules/_ctypes/libffi* || die
5752 - rm -r Modules/zlib || die
5753 -
5754 - if tc-is-cross-compiler; then
5755 - local EPATCH_EXCLUDE="*_regenerate_platform-specific_modules.patch"
5756 - fi
5757 -
5758 - EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
5759 -
5760 - # Fix for cross-compiling.
5761 - epatch "${FILESDIR}/python-2.7.5-nonfatal-compileall.patch"
5762 -
5763 - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
5764 - Lib/distutils/command/install.py \
5765 - Lib/distutils/sysconfig.py \
5766 - Lib/site.py \
5767 - Lib/sysconfig.py \
5768 - Lib/test/test_site.py \
5769 - Makefile.pre.in \
5770 - Modules/Setup.dist \
5771 - Modules/getpath.c \
5772 - setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
5773 -
5774 - epatch_user
5775 -
5776 - eautoconf
5777 - eautoheader
5778 -}
5779 -
5780 -src_configure() {
5781 - if use build; then
5782 - # Disable extraneous modules with extra dependencies.
5783 - export PYTHON_DISABLE_MODULES="dbm _bsddb gdbm _curses _curses_panel readline _sqlite3 _tkinter _elementtree pyexpat"
5784 - export PYTHON_DISABLE_SSL="1"
5785 - else
5786 - # dbm module can be linked against berkdb or gdbm.
5787 - # Defaults to gdbm when both are enabled, #204343.
5788 - local disable
5789 - use berkdb || use gdbm || disable+=" dbm"
5790 - use berkdb || disable+=" _bsddb"
5791 - use gdbm || disable+=" gdbm"
5792 - use ncurses || disable+=" _curses _curses_panel"
5793 - use readline || disable+=" readline"
5794 - use sqlite || disable+=" _sqlite3"
5795 - use ssl || export PYTHON_DISABLE_SSL="1"
5796 - use tk || disable+=" _tkinter"
5797 - use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
5798 - export PYTHON_DISABLE_MODULES="${disable}"
5799 -
5800 - if ! use xml; then
5801 - ewarn "You have configured Python without XML support."
5802 - ewarn "This is NOT a recommended configuration as you"
5803 - ewarn "may face problems parsing any XML documents."
5804 - fi
5805 - fi
5806 -
5807 - if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
5808 - einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
5809 - fi
5810 -
5811 - if [[ "$(gcc-major-version)" -ge 4 ]]; then
5812 - append-flags -fwrapv
5813 - fi
5814 -
5815 - filter-flags -malign-double
5816 -
5817 - [[ "${ARCH}" == "alpha" ]] && append-flags -fPIC
5818 -
5819 - # https://bugs.gentoo.org/show_bug.cgi?id=50309
5820 - if is-flagq -O3; then
5821 - is-flagq -fstack-protector-all && replace-flags -O3 -O2
5822 - use hardened && replace-flags -O3 -O2
5823 - fi
5824 -
5825 - if tc-is-cross-compiler; then
5826 - # Force some tests that try to poke fs paths.
5827 - export ac_cv_file__dev_ptc=no
5828 - export ac_cv_file__dev_ptmx=yes
5829 - fi
5830 -
5831 - # Export CXX so it ends up in /usr/lib/python2.X/config/Makefile.
5832 - tc-export CXX
5833 - # The configure script fails to use pkg-config correctly.
5834 - # http://bugs.python.org/issue15506
5835 - export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG)
5836 -
5837 - # Set LDFLAGS so we link modules with -lpython2.7 correctly.
5838 - # Needed on FreeBSD unless Python 2.7 is already installed.
5839 - # Please query BSD team before removing this!
5840 - append-ldflags "-L."
5841 -
5842 - local dbmliborder
5843 - if use gdbm; then
5844 - dbmliborder+="${dbmliborder:+:}gdbm"
5845 - fi
5846 - if use berkdb; then
5847 - dbmliborder+="${dbmliborder:+:}bdb"
5848 - fi
5849 -
5850 - BUILD_DIR="${WORKDIR}/${CHOST}"
5851 - mkdir -p "${BUILD_DIR}" || die
5852 - cd "${BUILD_DIR}" || die
5853 -
5854 - ECONF_SOURCE="${S}" OPT="" \
5855 - econf \
5856 - --with-fpectl \
5857 - --enable-shared \
5858 - $(use_enable ipv6) \
5859 - $(use_with threads) \
5860 - $(use wide-unicode && echo "--enable-unicode=ucs4" || echo "--enable-unicode=ucs2") \
5861 - --infodir='${prefix}/share/info' \
5862 - --mandir='${prefix}/share/man' \
5863 - --with-dbmliborder="${dbmliborder}" \
5864 - --with-libc="" \
5865 - --enable-loadable-sqlite-extensions \
5866 - --with-system-expat \
5867 - --with-system-ffi \
5868 - --without-ensurepip
5869 -
5870 - if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
5871 - eerror "configure has detected that the sem_open function is broken."
5872 - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
5873 - die "Broken sem_open function (bug 496328)"
5874 - fi
5875 -}
5876 -
5877 -src_compile() {
5878 - # Avoid invoking pgen for cross-compiles.
5879 - touch Include/graminit.h Python/graminit.c
5880 -
5881 - cd "${BUILD_DIR}" || die
5882 - emake
5883 -
5884 - # Work around bug 329499. See also bug 413751 and 457194.
5885 - if has_version dev-libs/libffi[pax_kernel]; then
5886 - pax-mark E python
5887 - else
5888 - pax-mark m python
5889 - fi
5890 -}
5891 -
5892 -src_test() {
5893 - # Tests will not work when cross compiling.
5894 - if tc-is-cross-compiler; then
5895 - elog "Disabling tests due to crosscompiling."
5896 - return
5897 - fi
5898 -
5899 - cd "${BUILD_DIR}" || die
5900 -
5901 - # Skip failing tests.
5902 - local skipped_tests="distutils gdb"
5903 -
5904 - for test in ${skipped_tests}; do
5905 - mv "${S}"/Lib/test/test_${test}.py "${T}"
5906 - done
5907 -
5908 - # Rerun failed tests in verbose mode (regrtest -w).
5909 - emake test EXTRATESTOPTS="-w" < /dev/tty
5910 - local result="$?"
5911 -
5912 - for test in ${skipped_tests}; do
5913 - mv "${T}/test_${test}.py" "${S}"/Lib/test
5914 - done
5915 -
5916 - elog "The following tests have been skipped:"
5917 - for test in ${skipped_tests}; do
5918 - elog "test_${test}.py"
5919 - done
5920 -
5921 - elog "If you would like to run them, you may:"
5922 - elog "cd '${EPREFIX}/usr/$(get_libdir)/python${SLOT}/test'"
5923 - elog "and run the tests separately."
5924 -
5925 - if [[ "${result}" -ne 0 ]]; then
5926 - die "emake test failed"
5927 - fi
5928 -}
5929 -
5930 -src_install() {
5931 - local libdir=${ED}/usr/$(get_libdir)/python${SLOT}
5932 -
5933 - cd "${BUILD_DIR}" || die
5934 - emake DESTDIR="${D}" altinstall
5935 -
5936 - sed -e "s/\(LDFLAGS=\).*/\1/" -i "${libdir}/config/Makefile" || die "sed failed"
5937 -
5938 - # Backwards compat with Gentoo divergence.
5939 - dosym python${SLOT}-config /usr/bin/python-config-${SLOT}
5940 -
5941 - # Fix collisions between different slots of Python.
5942 - mv "${ED}usr/bin/2to3" "${ED}usr/bin/2to3-${SLOT}"
5943 - mv "${ED}usr/bin/pydoc" "${ED}usr/bin/pydoc${SLOT}"
5944 - mv "${ED}usr/bin/idle" "${ED}usr/bin/idle${SLOT}"
5945 - rm -f "${ED}usr/bin/smtpd.py"
5946 -
5947 - if use build; then
5948 - rm -fr "${ED}usr/bin/idle${SLOT}" "${libdir}/"{bsddb,dbhash.py,idlelib,lib-tk,sqlite3,test}
5949 - else
5950 - use berkdb || rm -r "${libdir}/"{bsddb,dbhash.py,test/test_bsddb*} || die
5951 - use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
5952 - use tk || rm -r "${ED}usr/bin/idle${SLOT}" "${libdir}/"{idlelib,lib-tk} || die
5953 - use elibc_uclibc && rm -fr "${libdir}/"{bsddb/test,test}
5954 - fi
5955 -
5956 - use threads || rm -r "${libdir}/multiprocessing" || die
5957 - use wininst || rm -r "${libdir}/distutils/command/"wininst-*.exe || die
5958 -
5959 - dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
5960 -
5961 - if use examples; then
5962 - insinto /usr/share/doc/${PF}/examples
5963 - doins -r "${S}"/Tools
5964 - fi
5965 - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
5966 - local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
5967 - emake --no-print-directory -s -f - 2>/dev/null)
5968 - newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
5969 -
5970 - newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT}
5971 - newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT}
5972 - sed \
5973 - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${SLOT/./_}_PORT:" \
5974 - -e "s:@PYDOC@:pydoc${SLOT}:" \
5975 - -i "${ED}etc/conf.d/pydoc-${SLOT}" "${ED}etc/init.d/pydoc-${SLOT}" || die "sed failed"
5976 -
5977 - # for python-exec
5978 - python_export python${SLOT} EPYTHON PYTHON PYTHON_SITEDIR
5979 -
5980 - # if not using a cross-compiler, use the fresh binary
5981 - if ! tc-is-cross-compiler; then
5982 - local PYTHON=./python
5983 - local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}.
5984 - fi
5985 -
5986 - echo "EPYTHON='${EPYTHON}'" > epython.py
5987 - python_domodule epython.py
5988 -}
5989 -
5990 -pkg_preinst() {
5991 - if has_version "<${CATEGORY}/${PN}-${SLOT}" && ! has_version "${CATEGORY}/${PN}:2.7"; then
5992 - python_updater_warning="1"
5993 - fi
5994 -}
5995 -
5996 -eselect_python_update() {
5997 - if [[ -z "$(eselect python show)" || ! -f "${EROOT}usr/bin/$(eselect python show)" ]]; then
5998 - eselect python update
5999 - fi
6000 -
6001 - if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT}usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
6002 - eselect python update --python${PV%%.*}
6003 - fi
6004 -}
6005 -
6006 -pkg_postinst() {
6007 - eselect_python_update
6008 -
6009 - if [[ "${python_updater_warning}" == "1" ]]; then
6010 - ewarn "You have just upgraded from an older version of Python."
6011 - ewarn "You should switch active version of Python ${PV%%.*} and run"
6012 - ewarn "'python-updater [options]' to rebuild Python modules."
6013 - fi
6014 -}
6015 -
6016 -pkg_postrm() {
6017 - eselect_python_update
6018 -}
6019
6020 diff --git a/dev-lang/python/python-2.7.9-r2.ebuild b/dev-lang/python/python-2.7.9-r2.ebuild
6021 deleted file mode 100644
6022 index a91fa4a..0000000
6023 --- a/dev-lang/python/python-2.7.9-r2.ebuild
6024 +++ /dev/null
6025 @@ -1,362 +0,0 @@
6026 -# Copyright 1999-2015 Gentoo Foundation
6027 -# Distributed under the terms of the GNU General Public License v2
6028 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-2.7.9-r2.ebuild,v 1.3 2015/03/31 18:46:33 ulm Exp $
6029 -
6030 -EAPI="4"
6031 -WANT_AUTOMAKE="none"
6032 -WANT_LIBTOOL="none"
6033 -
6034 -inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs multiprocessing
6035 -
6036 -MY_P="Python-${PV}"
6037 -PATCHSET_VERSION="2.7.9-1"
6038 -
6039 -DESCRIPTION="An interpreted, interactive, object-oriented programming language"
6040 -HOMEPAGE="http://www.python.org/"
6041 -SRC_URI="http://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
6042 - http://dev.gentoo.org/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
6043 -
6044 -LICENSE="PSF-2"
6045 -SLOT="2.7"
6046 -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
6047 -IUSE="-berkdb build doc elibc_uclibc examples gdbm hardened ipv6 +ncurses +readline sqlite +ssl +threads tk +wide-unicode wininst +xml"
6048 -
6049 -# Do not add a dependency on dev-lang/python to this ebuild.
6050 -# If you need to apply a patch which requires python for bootstrapping, please
6051 -# run the bootstrap code on your dev box and include the results in the
6052 -# patchset. See bug 447752.
6053 -
6054 -RDEPEND="app-arch/bzip2
6055 - >=sys-libs/zlib-1.1.3
6056 - virtual/libffi
6057 - virtual/libintl
6058 - !build? (
6059 - berkdb? ( || (
6060 - sys-libs/db:5.3
6061 - sys-libs/db:5.2
6062 - sys-libs/db:5.1
6063 - sys-libs/db:5.0
6064 - sys-libs/db:4.8
6065 - sys-libs/db:4.7
6066 - sys-libs/db:4.6
6067 - sys-libs/db:4.5
6068 - sys-libs/db:4.4
6069 - sys-libs/db:4.3
6070 - sys-libs/db:4.2
6071 - ) )
6072 - gdbm? ( sys-libs/gdbm[berkdb] )
6073 - ncurses? (
6074 - >=sys-libs/ncurses-5.2
6075 - readline? ( >=sys-libs/readline-4.1 )
6076 - )
6077 - sqlite? ( >=dev-db/sqlite-3.3.8:3 )
6078 - ssl? ( dev-libs/openssl )
6079 - tk? (
6080 - >=dev-lang/tk-8.0
6081 - dev-tcltk/blt
6082 - dev-tcltk/tix
6083 - )
6084 - xml? ( >=dev-libs/expat-2.1 )
6085 - )
6086 - !!<sys-apps/portage-2.1.9"
6087 -DEPEND="${RDEPEND}
6088 - virtual/pkgconfig
6089 - >=sys-devel/autoconf-2.65
6090 - !sys-devel/gcc[libffi]"
6091 -RDEPEND+=" !build? ( app-misc/mime-types )
6092 - doc? ( dev-python/python-docs:${SLOT} )"
6093 -PDEPEND="app-eselect/eselect-python
6094 - app-admin/python-updater"
6095 -
6096 -S="${WORKDIR}/${MY_P}"
6097 -
6098 -pkg_setup() {
6099 - if use berkdb; then
6100 - ewarn "'bsddb' module is out-of-date and no longer maintained inside"
6101 - ewarn "dev-lang/python. 'bsddb' and 'dbhash' modules have been additionally"
6102 - ewarn "removed in Python 3. A maintained alternative of 'bsddb3' module"
6103 - ewarn "is provided by dev-python/bsddb3."
6104 - else
6105 - if has_version "=${CATEGORY}/${PN}-${PV%%.*}*[berkdb]"; then
6106 - ewarn "You are migrating from =${CATEGORY}/${PN}-${PV%%.*}*[berkdb]"
6107 - ewarn "to =${CATEGORY}/${PN}-${PV%%.*}*[-berkdb]."
6108 - ewarn "You might need to migrate your databases."
6109 - fi
6110 - fi
6111 -}
6112 -
6113 -src_prepare() {
6114 - # Ensure that internal copies of expat, libffi and zlib are not used.
6115 - rm -r Modules/expat || die
6116 - rm -r Modules/_ctypes/libffi* || die
6117 - rm -r Modules/zlib || die
6118 -
6119 - if tc-is-cross-compiler; then
6120 - local EPATCH_EXCLUDE="*_regenerate_platform-specific_modules.patch"
6121 - fi
6122 -
6123 - EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
6124 -
6125 - # Fix for cross-compiling.
6126 - epatch "${FILESDIR}/python-2.7.5-nonfatal-compileall.patch"
6127 - epatch "${FILESDIR}/python-2.7.9-ncurses-pkg-config.patch"
6128 -
6129 - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
6130 - Lib/distutils/command/install.py \
6131 - Lib/distutils/sysconfig.py \
6132 - Lib/site.py \
6133 - Lib/sysconfig.py \
6134 - Lib/test/test_site.py \
6135 - Makefile.pre.in \
6136 - Modules/Setup.dist \
6137 - Modules/getpath.c \
6138 - setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
6139 -
6140 - epatch_user
6141 -
6142 - eautoconf
6143 - eautoheader
6144 -}
6145 -
6146 -src_configure() {
6147 - if use build; then
6148 - # Disable extraneous modules with extra dependencies.
6149 - export PYTHON_DISABLE_MODULES="dbm _bsddb gdbm _curses _curses_panel readline _sqlite3 _tkinter _elementtree pyexpat"
6150 - export PYTHON_DISABLE_SSL="1"
6151 - else
6152 - # dbm module can be linked against berkdb or gdbm.
6153 - # Defaults to gdbm when both are enabled, #204343.
6154 - local disable
6155 - use berkdb || use gdbm || disable+=" dbm"
6156 - use berkdb || disable+=" _bsddb"
6157 - use gdbm || disable+=" gdbm"
6158 - use ncurses || disable+=" _curses _curses_panel"
6159 - use readline || disable+=" readline"
6160 - use sqlite || disable+=" _sqlite3"
6161 - use ssl || export PYTHON_DISABLE_SSL="1"
6162 - use tk || disable+=" _tkinter"
6163 - use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
6164 - export PYTHON_DISABLE_MODULES="${disable}"
6165 -
6166 - if ! use xml; then
6167 - ewarn "You have configured Python without XML support."
6168 - ewarn "This is NOT a recommended configuration as you"
6169 - ewarn "may face problems parsing any XML documents."
6170 - fi
6171 - fi
6172 -
6173 - if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
6174 - einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
6175 - fi
6176 -
6177 - if [[ "$(gcc-major-version)" -ge 4 ]]; then
6178 - append-flags -fwrapv
6179 - fi
6180 -
6181 - filter-flags -malign-double
6182 -
6183 - [[ "${ARCH}" == "alpha" ]] && append-flags -fPIC
6184 -
6185 - # https://bugs.gentoo.org/show_bug.cgi?id=50309
6186 - if is-flagq -O3; then
6187 - is-flagq -fstack-protector-all && replace-flags -O3 -O2
6188 - use hardened && replace-flags -O3 -O2
6189 - fi
6190 -
6191 - if tc-is-cross-compiler; then
6192 - # Force some tests that try to poke fs paths.
6193 - export ac_cv_file__dev_ptc=no
6194 - export ac_cv_file__dev_ptmx=yes
6195 - fi
6196 -
6197 - # Export CXX so it ends up in /usr/lib/python2.X/config/Makefile.
6198 - tc-export CXX
6199 - # The configure script fails to use pkg-config correctly.
6200 - # http://bugs.python.org/issue15506
6201 - export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG)
6202 -
6203 - # Set LDFLAGS so we link modules with -lpython2.7 correctly.
6204 - # Needed on FreeBSD unless Python 2.7 is already installed.
6205 - # Please query BSD team before removing this!
6206 - append-ldflags "-L."
6207 -
6208 - local dbmliborder
6209 - if use gdbm; then
6210 - dbmliborder+="${dbmliborder:+:}gdbm"
6211 - fi
6212 - if use berkdb; then
6213 - dbmliborder+="${dbmliborder:+:}bdb"
6214 - fi
6215 -
6216 - BUILD_DIR="${WORKDIR}/${CHOST}"
6217 - mkdir -p "${BUILD_DIR}" || die
6218 - cd "${BUILD_DIR}" || die
6219 -
6220 - ECONF_SOURCE="${S}" OPT="" \
6221 - econf \
6222 - --with-fpectl \
6223 - --enable-shared \
6224 - $(use_enable ipv6) \
6225 - $(use_with threads) \
6226 - $(use wide-unicode && echo "--enable-unicode=ucs4" || echo "--enable-unicode=ucs2") \
6227 - --infodir='${prefix}/share/info' \
6228 - --mandir='${prefix}/share/man' \
6229 - --with-dbmliborder="${dbmliborder}" \
6230 - --with-libc="" \
6231 - --enable-loadable-sqlite-extensions \
6232 - --with-system-expat \
6233 - --with-system-ffi \
6234 - --without-ensurepip
6235 -
6236 - if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
6237 - eerror "configure has detected that the sem_open function is broken."
6238 - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
6239 - die "Broken sem_open function (bug 496328)"
6240 - fi
6241 -}
6242 -
6243 -src_compile() {
6244 - # Avoid invoking pgen for cross-compiles.
6245 - touch Include/graminit.h Python/graminit.c
6246 -
6247 - # Guide h2py to look into glibc of Prefix
6248 - use rap && export INCLUDE="${EPREFIX}"/usr/include
6249 -
6250 - cd "${BUILD_DIR}" || die
6251 - emake
6252 -
6253 - # Work around bug 329499. See also bug 413751 and 457194.
6254 - if has_version dev-libs/libffi[pax_kernel]; then
6255 - pax-mark E python
6256 - else
6257 - pax-mark m python
6258 - fi
6259 -}
6260 -
6261 -src_test() {
6262 - # Tests will not work when cross compiling.
6263 - if tc-is-cross-compiler; then
6264 - elog "Disabling tests due to crosscompiling."
6265 - return
6266 - fi
6267 -
6268 - cd "${BUILD_DIR}" || die
6269 -
6270 - # Skip failing tests.
6271 - local skipped_tests="distutils gdb"
6272 -
6273 - for test in ${skipped_tests}; do
6274 - mv "${S}"/Lib/test/test_${test}.py "${T}"
6275 - done
6276 -
6277 - # Rerun failed tests in verbose mode (regrtest -w).
6278 - emake test EXTRATESTOPTS="-w" < /dev/tty
6279 - local result="$?"
6280 -
6281 - for test in ${skipped_tests}; do
6282 - mv "${T}/test_${test}.py" "${S}"/Lib/test
6283 - done
6284 -
6285 - elog "The following tests have been skipped:"
6286 - for test in ${skipped_tests}; do
6287 - elog "test_${test}.py"
6288 - done
6289 -
6290 - elog "If you would like to run them, you may:"
6291 - elog "cd '${EPREFIX}/usr/$(get_libdir)/python${SLOT}/test'"
6292 - elog "and run the tests separately."
6293 -
6294 - if [[ "${result}" -ne 0 ]]; then
6295 - die "emake test failed"
6296 - fi
6297 -}
6298 -
6299 -src_install() {
6300 - local libdir=${ED}/usr/$(get_libdir)/python${SLOT}
6301 -
6302 - cd "${BUILD_DIR}" || die
6303 - emake DESTDIR="${D}" altinstall
6304 -
6305 - sed -e "s/\(LDFLAGS=\).*/\1/" -i "${libdir}/config/Makefile" || die "sed failed"
6306 -
6307 - # Backwards compat with Gentoo divergence.
6308 - dosym python${SLOT}-config /usr/bin/python-config-${SLOT}
6309 -
6310 - # Fix collisions between different slots of Python.
6311 - mv "${ED}usr/bin/2to3" "${ED}usr/bin/2to3-${SLOT}"
6312 - mv "${ED}usr/bin/pydoc" "${ED}usr/bin/pydoc${SLOT}"
6313 - mv "${ED}usr/bin/idle" "${ED}usr/bin/idle${SLOT}"
6314 - rm -f "${ED}usr/bin/smtpd.py"
6315 -
6316 - if use build; then
6317 - rm -fr "${ED}usr/bin/idle${SLOT}" "${libdir}/"{bsddb,dbhash.py,idlelib,lib-tk,sqlite3,test}
6318 - else
6319 - use berkdb || rm -r "${libdir}/"{bsddb,dbhash.py,test/test_bsddb*} || die
6320 - use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
6321 - use tk || rm -r "${ED}usr/bin/idle${SLOT}" "${libdir}/"{idlelib,lib-tk} || die
6322 - use elibc_uclibc && rm -fr "${libdir}/"{bsddb/test,test}
6323 - fi
6324 -
6325 - use threads || rm -r "${libdir}/multiprocessing" || die
6326 - use wininst || rm -r "${libdir}/distutils/command/"wininst-*.exe || die
6327 -
6328 - dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
6329 -
6330 - if use examples; then
6331 - insinto /usr/share/doc/${PF}/examples
6332 - doins -r "${S}"/Tools
6333 - fi
6334 - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
6335 - local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
6336 - emake --no-print-directory -s -f - 2>/dev/null)
6337 - newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
6338 -
6339 - newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT}
6340 - newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT}
6341 - sed \
6342 - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${SLOT/./_}_PORT:" \
6343 - -e "s:@PYDOC@:pydoc${SLOT}:" \
6344 - -i "${ED}etc/conf.d/pydoc-${SLOT}" "${ED}etc/init.d/pydoc-${SLOT}" || die "sed failed"
6345 -
6346 - # for python-exec
6347 - python_export python${SLOT} EPYTHON PYTHON PYTHON_SITEDIR
6348 -
6349 - # if not using a cross-compiler, use the fresh binary
6350 - if ! tc-is-cross-compiler; then
6351 - local PYTHON=./python
6352 - local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}.
6353 - fi
6354 -
6355 - echo "EPYTHON='${EPYTHON}'" > epython.py
6356 - python_domodule epython.py
6357 -}
6358 -
6359 -pkg_preinst() {
6360 - if has_version "<${CATEGORY}/${PN}-${SLOT}" && ! has_version "${CATEGORY}/${PN}:2.7"; then
6361 - python_updater_warning="1"
6362 - fi
6363 -}
6364 -
6365 -eselect_python_update() {
6366 - if [[ -z "$(eselect python show)" || ! -f "${EROOT}usr/bin/$(eselect python show)" ]]; then
6367 - eselect python update
6368 - fi
6369 -
6370 - if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT}usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
6371 - eselect python update --python${PV%%.*}
6372 - fi
6373 -}
6374 -
6375 -pkg_postinst() {
6376 - eselect_python_update
6377 -
6378 - if [[ "${python_updater_warning}" == "1" ]]; then
6379 - ewarn "You have just upgraded from an older version of Python."
6380 - ewarn "You should switch active version of Python ${PV%%.*} and run"
6381 - ewarn "'python-updater [options]' to rebuild Python modules."
6382 - fi
6383 -}
6384 -
6385 -pkg_postrm() {
6386 - eselect_python_update
6387 -}
6388
6389 diff --git a/dev-lang/python/python-3.2.5-r6.ebuild b/dev-lang/python/python-3.2.5-r6.ebuild
6390 deleted file mode 100644
6391 index e11eff0..0000000
6392 --- a/dev-lang/python/python-3.2.5-r6.ebuild
6393 +++ /dev/null
6394 @@ -1,384 +0,0 @@
6395 -# Copyright 1999-2015 Gentoo Foundation
6396 -# Distributed under the terms of the GNU General Public License v2
6397 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-3.2.5-r6.ebuild,v 1.11 2015/03/31 18:46:33 ulm Exp $
6398 -
6399 -EAPI="4"
6400 -WANT_AUTOMAKE="none"
6401 -WANT_LIBTOOL="none"
6402 -
6403 -inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs multiprocessing
6404 -
6405 -MY_P="Python-${PV}"
6406 -PATCHSET_REVISION="1"
6407 -
6408 -DESCRIPTION="An interpreted, interactive, object-oriented programming language"
6409 -HOMEPAGE="http://www.python.org/"
6410 -SRC_URI="http://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
6411 - http://dev.gentoo.org/~floppym/python/python-gentoo-patches-${PV}-${PATCHSET_REVISION}.tar.xz"
6412 -
6413 -LICENSE="PSF-2"
6414 -SLOT="3.2"
6415 -KEYWORDS="alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
6416 -IUSE="build doc elibc_uclibc examples gdbm hardened ipv6 +ncurses +readline sqlite +ssl +threads tk +wide-unicode wininst +xml"
6417 -
6418 -# Do not add a dependency on dev-lang/python to this ebuild.
6419 -# If you need to apply a patch which requires python for bootstrapping, please
6420 -# run the bootstrap code on your dev box and include the results in the
6421 -# patchset. See bug 447752.
6422 -
6423 -RDEPEND="app-arch/bzip2
6424 - >=sys-libs/zlib-1.1.3
6425 - virtual/libffi
6426 - virtual/libintl
6427 - !build? (
6428 - gdbm? ( sys-libs/gdbm[berkdb] )
6429 - ncurses? (
6430 - >=sys-libs/ncurses-5.2
6431 - readline? ( >=sys-libs/readline-4.1 )
6432 - )
6433 - sqlite? ( >=dev-db/sqlite-3.3.8:3 )
6434 - ssl? ( dev-libs/openssl )
6435 - tk? (
6436 - >=dev-lang/tk-8.0
6437 - dev-tcltk/blt
6438 - dev-tcltk/tix
6439 - )
6440 - xml? ( >=dev-libs/expat-2.1 )
6441 - )"
6442 -DEPEND="${RDEPEND}
6443 - virtual/pkgconfig
6444 - >=sys-devel/autoconf-2.65
6445 - !sys-devel/gcc[libffi]"
6446 -RDEPEND+=" !build? ( app-misc/mime-types )
6447 - doc? ( dev-python/python-docs:${SLOT} )"
6448 -PDEPEND="app-eselect/eselect-python
6449 - app-admin/python-updater"
6450 -
6451 -S="${WORKDIR}/${MY_P}"
6452 -
6453 -pkg_setup() {
6454 - if [[ "${PV}" =~ ^3\.2(\.[1234])?(_pre)? ]]; then
6455 - rm -f "${EROOT}usr/$(get_libdir)/llibpython3.so"
6456 - else
6457 - die "Deprecated code not deleted"
6458 - fi
6459 -}
6460 -
6461 -src_prepare() {
6462 - # Ensure that internal copies of expat, libffi and zlib are not used.
6463 - rm -r Modules/expat
6464 - rm -r Modules/_ctypes/libffi*
6465 - rm -r Modules/zlib
6466 -
6467 - local excluded_patches
6468 - if ! tc-is-cross-compiler; then
6469 - excluded_patches="*_all_crosscompile.patch"
6470 - fi
6471 -
6472 - EPATCH_EXCLUDE="${excluded_patches}" EPATCH_SUFFIX="patch" \
6473 - epatch "${WORKDIR}/patches"
6474 -
6475 - epatch "${FILESDIR}/python-3.2-CVE-2013-2099.patch"
6476 - epatch "${FILESDIR}/CVE-2013-4238_py33.patch"
6477 - epatch "${FILESDIR}/python-3.2-issue16248.patch"
6478 -
6479 - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
6480 - Lib/distutils/command/install.py \
6481 - Lib/distutils/sysconfig.py \
6482 - Lib/site.py \
6483 - Lib/sysconfig.py \
6484 - Lib/test/test_site.py \
6485 - Makefile.pre.in \
6486 - Modules/Setup.dist \
6487 - Modules/getpath.c \
6488 - setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
6489 -
6490 - # Disable ABI flags.
6491 - sed -e "s/ABIFLAGS=\"\${ABIFLAGS}.*\"/:/" -i configure.ac || die "sed failed"
6492 -
6493 - # bug #514686
6494 - epatch "${FILESDIR}/${PN}-3.2-CVE-2014-4616.patch"
6495 - # bug #500518
6496 - epatch "${FILESDIR}/${PN}-3.2-CVE-2014-1912.patch"
6497 -
6498 - epatch_user
6499 -
6500 - eautoconf
6501 - eautoheader
6502 -}
6503 -
6504 -src_configure() {
6505 - if use build; then
6506 - # Disable extraneous modules with extra dependencies.
6507 - export PYTHON_DISABLE_MODULES="gdbm _curses _curses_panel readline _sqlite3 _tkinter _elementtree pyexpat"
6508 - export PYTHON_DISABLE_SSL="1"
6509 - else
6510 - local disable
6511 - use gdbm || disable+=" gdbm"
6512 - use ncurses || disable+=" _curses _curses_panel"
6513 - use readline || disable+=" readline"
6514 - use sqlite || disable+=" _sqlite3"
6515 - use ssl || export PYTHON_DISABLE_SSL="1"
6516 - use tk || disable+=" _tkinter"
6517 - use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
6518 - export PYTHON_DISABLE_MODULES="${disable}"
6519 -
6520 - if ! use xml; then
6521 - ewarn "You have configured Python without XML support."
6522 - ewarn "This is NOT a recommended configuration as you"
6523 - ewarn "may face problems parsing any XML documents."
6524 - fi
6525 - fi
6526 -
6527 - if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
6528 - einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
6529 - fi
6530 -
6531 - if [[ "$(gcc-major-version)" -ge 4 ]]; then
6532 - append-flags -fwrapv
6533 - fi
6534 -
6535 - filter-flags -malign-double
6536 -
6537 - [[ "${ARCH}" == "alpha" ]] && append-flags -fPIC
6538 -
6539 - # https://bugs.gentoo.org/show_bug.cgi?id=50309
6540 - if is-flagq -O3; then
6541 - is-flagq -fstack-protector-all && replace-flags -O3 -O2
6542 - use hardened && replace-flags -O3 -O2
6543 - fi
6544 -
6545 - # Run the configure scripts in parallel.
6546 - multijob_init
6547 -
6548 - mkdir -p "${WORKDIR}"/{${CBUILD},${CHOST}}
6549 -
6550 - if tc-is-cross-compiler; then
6551 - (
6552 - multijob_child_init
6553 - cd "${WORKDIR}"/${CBUILD} >/dev/null
6554 - OPT="-O1" CFLAGS="" CPPFLAGS="" LDFLAGS="" CC="" \
6555 - "${S}"/configure \
6556 - --{build,host}=${CBUILD} \
6557 - || die "cross-configure failed"
6558 - ) &
6559 - multijob_post_fork
6560 -
6561 - # The configure script assumes it's buggy when cross-compiling.
6562 - export ac_cv_buggy_getaddrinfo=no
6563 - export ac_cv_have_long_long_format=yes
6564 - fi
6565 -
6566 - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
6567 - tc-export CXX
6568 - # The configure script fails to use pkg-config correctly.
6569 - # http://bugs.python.org/issue15506
6570 - export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG)
6571 -
6572 - # Set LDFLAGS so we link modules with -lpython3.2 correctly.
6573 - # Needed on FreeBSD unless Python 3.2 is already installed.
6574 - # Please query BSD team before removing this!
6575 - append-ldflags "-L."
6576 -
6577 - local dbmliborder
6578 - if use gdbm; then
6579 - dbmliborder+="${dbmliborder:+:}gdbm"
6580 - fi
6581 -
6582 - cd "${WORKDIR}"/${CHOST}
6583 - ECONF_SOURCE=${S} OPT="" \
6584 - econf \
6585 - --with-fpectl \
6586 - --enable-shared \
6587 - $(use_enable ipv6) \
6588 - $(use_with threads) \
6589 - $(use_with wide-unicode) \
6590 - --infodir='${prefix}/share/info' \
6591 - --mandir='${prefix}/share/man' \
6592 - --with-computed-gotos \
6593 - --with-dbmliborder="${dbmliborder}" \
6594 - --with-libc="" \
6595 - --enable-loadable-sqlite-extensions \
6596 - --with-system-expat \
6597 - --with-system-ffi
6598 -
6599 - if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
6600 - eerror "configure has detected that the sem_open function is broken."
6601 - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
6602 - die "Broken sem_open function (bug 496328)"
6603 - fi
6604 -
6605 - if tc-is-cross-compiler; then
6606 - # Modify the Makefile.pre so we don't regen for the host/ one.
6607 - # We need to link the host python programs into $PWD and run
6608 - # them from here because the distutils sysconfig module will
6609 - # parse Makefile/etc... from argv[0], and we need it to pick
6610 - # up the target settings, not the host ones.
6611 - sed -i \
6612 - -e '1iHOSTPYTHONPATH = ./hostpythonpath:' \
6613 - -e '/^HOSTPYTHON/s:=.*:= ./hostpython:' \
6614 - -e '/^HOSTPGEN/s:=.*:= ./Parser/hostpgen:' \
6615 - Makefile{.pre,} || die "sed failed"
6616 - fi
6617 -
6618 - multijob_finish
6619 -}
6620 -
6621 -src_compile() {
6622 - if tc-is-cross-compiler; then
6623 - cd "${WORKDIR}"/${CBUILD}
6624 - # Disable as many modules as possible -- but we need a few to install.
6625 - PYTHON_DISABLE_MODULES=$(
6626 - sed -n "/Extension('/{s:^.*Extension('::;s:'.*::;p}" "${S}"/setup.py | \
6627 - egrep -v '(unicodedata|time|cStringIO|_struct|binascii)'
6628 - ) \
6629 - PTHON_DISABLE_SSL="1" \
6630 - SYSROOT= \
6631 - emake
6632 - # See comment in src_configure about these.
6633 - ln python ../${CHOST}/hostpython || die
6634 - ln Parser/pgen ../${CHOST}/Parser/hostpgen || die
6635 - ln -s ../${CBUILD}/build/lib.*/ ../${CHOST}/hostpythonpath || die
6636 - fi
6637 -
6638 - cd "${WORKDIR}"/${CHOST}
6639 - emake CPPFLAGS="" CFLAGS="" LDFLAGS=""
6640 -
6641 - # Work around bug 329499. See also bug 413751 and 457194.
6642 - if has_version dev-libs/libffi[pax_kernel]; then
6643 - pax-mark E python
6644 - else
6645 - pax-mark m python
6646 - fi
6647 -}
6648 -
6649 -src_test() {
6650 - # Tests will not work when cross compiling.
6651 - if tc-is-cross-compiler; then
6652 - elog "Disabling tests due to crosscompiling."
6653 - return
6654 - fi
6655 -
6656 - cd "${WORKDIR}"/${CHOST}
6657 -
6658 - # Skip failing tests.
6659 - local skipped_tests="gdb"
6660 -
6661 - for test in ${skipped_tests}; do
6662 - mv "${S}"/Lib/test/test_${test}.py "${T}"
6663 - done
6664 -
6665 - # Rerun failed tests in verbose mode (regrtest -w).
6666 - PYTHONDONTWRITEBYTECODE="" emake test EXTRATESTOPTS="-w" CPPFLAGS="" CFLAGS="" LDFLAGS="" < /dev/tty
6667 - local result="$?"
6668 -
6669 - for test in ${skipped_tests}; do
6670 - mv "${T}/test_${test}.py" "${S}"/Lib/test
6671 - done
6672 -
6673 - elog "The following tests have been skipped:"
6674 - for test in ${skipped_tests}; do
6675 - elog "test_${test}.py"
6676 - done
6677 -
6678 - elog "If you would like to run them, you may:"
6679 - elog "cd '${EPREFIX}/usr/$(get_libdir)/python${SLOT}/test'"
6680 - elog "and run the tests separately."
6681 -
6682 - if [[ "${result}" -ne 0 ]]; then
6683 - die "emake test failed"
6684 - fi
6685 -}
6686 -
6687 -src_install() {
6688 - local libdir=${ED}/usr/$(get_libdir)/python${SLOT}
6689 -
6690 - cd "${WORKDIR}"/${CHOST}
6691 - emake DESTDIR="${D}" altinstall
6692 -
6693 - sed \
6694 - -e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
6695 - -e "s/\(PY_LDFLAGS=\).*/\1/" \
6696 - -i "${libdir}/config-${SLOT}/Makefile" || die "sed failed"
6697 -
6698 - # Backwards compat with Gentoo divergence.
6699 - dosym python${SLOT}-config /usr/bin/python-config-${SLOT}
6700 -
6701 - # Fix collisions between different slots of Python.
6702 - rm "${ED}usr/$(get_libdir)/libpython3.so" || die
6703 -
6704 - if use build; then
6705 - rm -fr "${ED}usr/bin/idle${SLOT}" "${libdir}/"{idlelib,sqlite3,test,tkinter}
6706 - else
6707 - use elibc_uclibc && rm -fr "${libdir}/test"
6708 - use sqlite || rm -fr "${libdir}/"{sqlite3,test/test_sqlite*}
6709 - use tk || rm -fr "${ED}usr/bin/idle${SLOT}" "${libdir}/"{idlelib,tkinter,test/test_tk*}
6710 - fi
6711 -
6712 - use threads || rm -fr "${libdir}/multiprocessing"
6713 - use wininst || rm -f "${libdir}/distutils/command/"wininst-*.exe
6714 -
6715 - dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
6716 -
6717 - if use examples; then
6718 - insinto /usr/share/doc/${PF}/examples
6719 - find "${S}"/Tools -name __pycache__ -print0 | xargs -0 rm -fr
6720 - doins -r "${S}"/Tools
6721 - fi
6722 - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
6723 - local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
6724 - emake --no-print-directory -s -f - 2>/dev/null)
6725 - newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
6726 -
6727 - newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT}
6728 - newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT}
6729 - sed \
6730 - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${SLOT/./_}_PORT:" \
6731 - -e "s:@PYDOC@:pydoc${SLOT}:" \
6732 - -i "${ED}etc/conf.d/pydoc-${SLOT}" "${ED}etc/init.d/pydoc-${SLOT}" || die "sed failed"
6733 -
6734 - # for python-exec
6735 - python_export python${SLOT} EPYTHON PYTHON PYTHON_SITEDIR
6736 -
6737 - # if not using a cross-compiler, use the fresh binary
6738 - if ! tc-is-cross-compiler; then
6739 - local PYTHON=./python \
6740 - LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}.
6741 - export LD_LIBRARY_PATH
6742 - fi
6743 -
6744 - echo "EPYTHON='${EPYTHON}'" > epython.py
6745 - python_domodule epython.py
6746 -}
6747 -
6748 -pkg_preinst() {
6749 - if has_version "<${CATEGORY}/${PN}-${SLOT}" && ! has_version ">=${CATEGORY}/${PN}-${SLOT}_alpha"; then
6750 - python_updater_warning="1"
6751 - fi
6752 -}
6753 -
6754 -eselect_python_update() {
6755 - if [[ -z "$(eselect python show)" || ! -f "${EROOT}usr/bin/$(eselect python show)" ]]; then
6756 - eselect python update
6757 - fi
6758 -
6759 - if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT}usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
6760 - eselect python update --python${PV%%.*}
6761 - fi
6762 -}
6763 -
6764 -pkg_postinst() {
6765 - ewarn "Please note that Python ${PV%.*} is no longer supported in Gentoo."
6766 - ewarn "The interpreter is not well maintained, and may contain security"
6767 - ewarn "vulnerabilities. Gentoo ebuilds will no longer be built with support"
6768 - ewarn "for Python ${PV%.*}."
6769 - ewarn
6770 - ewarn "If you wish to use Python ${PV%.*} for your own purposes (development,"
6771 - ewarn "testing), we suggest establishing a virtualenv for this interpreter,"
6772 - ewarn "and installing the necessary dependencies inside it. However, we also"
6773 - ewarn "strongly discourage using Python ${PV%.*} on production systems."
6774 -}
6775 -
6776 -pkg_postrm() {
6777 - eselect_python_update
6778 -}
6779
6780 diff --git a/dev-lang/python/python-3.3.5-r1.ebuild b/dev-lang/python/python-3.3.5-r1.ebuild
6781 deleted file mode 100644
6782 index 7beb6c9..0000000
6783 --- a/dev-lang/python/python-3.3.5-r1.ebuild
6784 +++ /dev/null
6785 @@ -1,325 +0,0 @@
6786 -# Copyright 1999-2015 Gentoo Foundation
6787 -# Distributed under the terms of the GNU General Public License v2
6788 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-3.3.5-r1.ebuild,v 1.12 2015/03/31 18:46:33 ulm Exp $
6789 -
6790 -EAPI="4"
6791 -WANT_AUTOMAKE="none"
6792 -WANT_LIBTOOL="none"
6793 -
6794 -inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs multiprocessing
6795 -
6796 -MY_P="Python-${PV}"
6797 -PATCHSET_VERSION="${PV}-0"
6798 -
6799 -DESCRIPTION="An interpreted, interactive, object-oriented programming language"
6800 -HOMEPAGE="http://www.python.org/"
6801 -SRC_URI="http://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
6802 - http://dev.gentoo.org/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz
6803 - mirror://gentoo/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
6804 -
6805 -LICENSE="PSF-2"
6806 -SLOT="3.3"
6807 -KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
6808 -IUSE="build doc elibc_uclibc examples gdbm hardened ipv6 +ncurses +readline sqlite +ssl +threads tk wininst +xml"
6809 -
6810 -# Do not add a dependency on dev-lang/python to this ebuild.
6811 -# If you need to apply a patch which requires python for bootstrapping, please
6812 -# run the bootstrap code on your dev box and include the results in the
6813 -# patchset. See bug 447752.
6814 -
6815 -RDEPEND="app-arch/bzip2
6816 - app-arch/xz-utils
6817 - >=sys-libs/zlib-1.1.3
6818 - virtual/libffi
6819 - virtual/libintl
6820 - !build? (
6821 - gdbm? ( sys-libs/gdbm[berkdb] )
6822 - ncurses? (
6823 - >=sys-libs/ncurses-5.2
6824 - readline? ( >=sys-libs/readline-4.1 )
6825 - )
6826 - sqlite? ( >=dev-db/sqlite-3.3.8:3 )
6827 - ssl? ( dev-libs/openssl )
6828 - tk? (
6829 - >=dev-lang/tk-8.0
6830 - dev-tcltk/blt
6831 - dev-tcltk/tix
6832 - )
6833 - xml? ( >=dev-libs/expat-2.1 )
6834 - )
6835 - !!<sys-apps/sandbox-2.6-r1"
6836 -DEPEND="${RDEPEND}
6837 - virtual/pkgconfig
6838 - >=sys-devel/autoconf-2.65
6839 - !sys-devel/gcc[libffi]"
6840 -RDEPEND+=" !build? ( app-misc/mime-types )
6841 - doc? ( dev-python/python-docs:${SLOT} )"
6842 -PDEPEND="app-eselect/eselect-python
6843 - app-admin/python-updater"
6844 -
6845 -S="${WORKDIR}/${MY_P}"
6846 -
6847 -src_prepare() {
6848 - # Ensure that internal copies of expat, libffi and zlib are not used.
6849 - rm -fr Modules/expat
6850 - rm -fr Modules/_ctypes/libffi*
6851 - rm -fr Modules/zlib
6852 -
6853 - if tc-is-cross-compiler; then
6854 - # Invokes BUILDPYTHON, which is built for the host arch
6855 - local EPATCH_EXCLUDE="*_regenerate_platform-specific_modules.patch"
6856 - fi
6857 -
6858 - EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
6859 - epatch "${FILESDIR}/${PN}-3.3.5-ncurses-pkg-config.patch"
6860 -
6861 - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
6862 - Lib/distutils/command/install.py \
6863 - Lib/distutils/sysconfig.py \
6864 - Lib/site.py \
6865 - Lib/sysconfig.py \
6866 - Lib/test/test_site.py \
6867 - Makefile.pre.in \
6868 - Modules/Setup.dist \
6869 - Modules/getpath.c \
6870 - setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
6871 -
6872 - # Disable ABI flags.
6873 - sed -e "s/ABIFLAGS=\"\${ABIFLAGS}.*\"/:/" -i configure.ac || die "sed failed"
6874 -
6875 - # bug #514686
6876 - epatch "${FILESDIR}/${PN}-3.3-CVE-2014-4616.patch"
6877 -
6878 - epatch_user
6879 -
6880 - eautoconf
6881 - eautoheader
6882 -}
6883 -
6884 -src_configure() {
6885 - if use build; then
6886 - # Disable extraneous modules with extra dependencies.
6887 - export PYTHON_DISABLE_MODULES="gdbm _curses _curses_panel readline _sqlite3 _tkinter _elementtree pyexpat"
6888 - export PYTHON_DISABLE_SSL="1"
6889 - else
6890 - local disable
6891 - use gdbm || disable+=" gdbm"
6892 - use ncurses || disable+=" _curses _curses_panel"
6893 - use readline || disable+=" readline"
6894 - use sqlite || disable+=" _sqlite3"
6895 - use ssl || export PYTHON_DISABLE_SSL="1"
6896 - use tk || disable+=" _tkinter"
6897 - use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
6898 - export PYTHON_DISABLE_MODULES="${disable}"
6899 -
6900 - if ! use xml; then
6901 - ewarn "You have configured Python without XML support."
6902 - ewarn "This is NOT a recommended configuration as you"
6903 - ewarn "may face problems parsing any XML documents."
6904 - fi
6905 - fi
6906 -
6907 - if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
6908 - einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
6909 - fi
6910 -
6911 - if [[ "$(gcc-major-version)" -ge 4 ]]; then
6912 - append-flags -fwrapv
6913 - fi
6914 -
6915 - filter-flags -malign-double
6916 -
6917 - [[ "${ARCH}" == "alpha" ]] && append-flags -fPIC
6918 -
6919 - # https://bugs.gentoo.org/show_bug.cgi?id=50309
6920 - if is-flagq -O3; then
6921 - is-flagq -fstack-protector-all && replace-flags -O3 -O2
6922 - use hardened && replace-flags -O3 -O2
6923 - fi
6924 -
6925 - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
6926 - tc-export CXX
6927 - # The configure script fails to use pkg-config correctly.
6928 - # http://bugs.python.org/issue15506
6929 - export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG)
6930 -
6931 - # Set LDFLAGS so we link modules with -lpython3.2 correctly.
6932 - # Needed on FreeBSD unless Python 3.2 is already installed.
6933 - # Please query BSD team before removing this!
6934 - append-ldflags "-L."
6935 -
6936 - local dbmliborder
6937 - if use gdbm; then
6938 - dbmliborder+="${dbmliborder:+:}gdbm"
6939 - fi
6940 -
6941 - BUILD_DIR="${WORKDIR}/${CHOST}"
6942 - mkdir -p "${BUILD_DIR}" || die
6943 - cd "${BUILD_DIR}" || die
6944 -
6945 - ECONF_SOURCE="${S}" OPT="" \
6946 - econf \
6947 - --with-fpectl \
6948 - --enable-shared \
6949 - $(use_enable ipv6) \
6950 - $(use_with threads) \
6951 - --infodir='${prefix}/share/info' \
6952 - --mandir='${prefix}/share/man' \
6953 - --with-computed-gotos \
6954 - --with-dbmliborder="${dbmliborder}" \
6955 - --with-libc="" \
6956 - --enable-loadable-sqlite-extensions \
6957 - --with-system-expat \
6958 - --with-system-ffi
6959 -
6960 - if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
6961 - eerror "configure has detected that the sem_open function is broken."
6962 - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
6963 - die "Broken sem_open function (bug 496328)"
6964 - fi
6965 -}
6966 -
6967 -src_compile() {
6968 - # Avoid invoking pgen for cross-compiles.
6969 - touch Include/graminit.h Python/graminit.c || die
6970 -
6971 - cd "${BUILD_DIR}" || die
6972 - emake CPPFLAGS="" CFLAGS="" LDFLAGS=""
6973 -
6974 - # Work around bug 329499. See also bug 413751 and 457194.
6975 - if has_version dev-libs/libffi[pax_kernel]; then
6976 - pax-mark E python
6977 - else
6978 - pax-mark m python
6979 - fi
6980 -}
6981 -
6982 -src_test() {
6983 - # Tests will not work when cross compiling.
6984 - if tc-is-cross-compiler; then
6985 - elog "Disabling tests due to crosscompiling."
6986 - return
6987 - fi
6988 -
6989 - cd "${BUILD_DIR}" || die
6990 -
6991 - # Skip failing tests.
6992 - local skipped_tests="gdb"
6993 -
6994 - for test in ${skipped_tests}; do
6995 - mv "${S}"/Lib/test/test_${test}.py "${T}"
6996 - done
6997 -
6998 - PYTHONDONTWRITEBYTECODE="" emake test EXTRATESTOPTS="-u -network" FLAGS="" CFLAGS="" LDFLAGS="" < /dev/tty
6999 - local result="$?"
7000 -
7001 - for test in ${skipped_tests}; do
7002 - mv "${T}/test_${test}.py" "${S}"/Lib/test
7003 - done
7004 -
7005 - elog "The following tests have been skipped:"
7006 - for test in ${skipped_tests}; do
7007 - elog "test_${test}.py"
7008 - done
7009 -
7010 - elog "If you would like to run them, you may:"
7011 - elog "cd '${EPREFIX}/usr/$(get_libdir)/python${SLOT}/test'"
7012 - elog "and run the tests separately."
7013 -
7014 - if [[ "${result}" -ne 0 ]]; then
7015 - die "emake test failed"
7016 - fi
7017 -}
7018 -
7019 -src_install() {
7020 - local libdir=${ED}/usr/$(get_libdir)/python${SLOT}
7021 -
7022 - cd "${BUILD_DIR}" || die
7023 -
7024 - emake DESTDIR="${D}" altinstall
7025 -
7026 - sed \
7027 - -e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
7028 - -e "s/\(PY_LDFLAGS=\).*/\1/" \
7029 - -i "${libdir}/config-${SLOT}/Makefile" || die "sed failed"
7030 -
7031 - # Backwards compat with Gentoo divergence.
7032 - dosym python${SLOT}-config /usr/bin/python-config-${SLOT}
7033 -
7034 - # Fix collisions between different slots of Python.
7035 - rm -f "${ED}usr/$(get_libdir)/libpython3.so"
7036 -
7037 - if use build; then
7038 - rm -fr "${ED}usr/bin/idle${SLOT}" "${libdir}/"{idlelib,sqlite3,test,tkinter}
7039 - else
7040 - use elibc_uclibc && rm -fr "${libdir}/test"
7041 - use sqlite || rm -fr "${libdir}/"{sqlite3,test/test_sqlite*}
7042 - use tk || rm -fr "${ED}usr/bin/idle${SLOT}" "${libdir}/"{idlelib,tkinter,test/test_tk*}
7043 - fi
7044 -
7045 - use threads || rm -fr "${libdir}/multiprocessing"
7046 - use wininst || rm -f "${libdir}/distutils/command/"wininst-*.exe
7047 -
7048 - dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
7049 -
7050 - if use examples; then
7051 - insinto /usr/share/doc/${PF}/examples
7052 - find "${S}"/Tools -name __pycache__ -print0 | xargs -0 rm -fr
7053 - doins -r "${S}"/Tools
7054 - fi
7055 - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
7056 - local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
7057 - emake --no-print-directory -s -f - 2>/dev/null)
7058 - newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
7059 -
7060 - newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT}
7061 - newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT}
7062 - sed \
7063 - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${SLOT/./_}_PORT:" \
7064 - -e "s:@PYDOC@:pydoc${SLOT}:" \
7065 - -i "${ED}etc/conf.d/pydoc-${SLOT}" "${ED}etc/init.d/pydoc-${SLOT}" || die "sed failed"
7066 -
7067 - # for python-exec
7068 - python_export python${SLOT} EPYTHON PYTHON PYTHON_SITEDIR
7069 -
7070 - # if not using a cross-compiler, use the fresh binary
7071 - if ! tc-is-cross-compiler; then
7072 - local PYTHON=./python
7073 - local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}.
7074 - fi
7075 -
7076 - echo "EPYTHON='${EPYTHON}'" > epython.py
7077 - python_domodule epython.py
7078 -}
7079 -
7080 -pkg_preinst() {
7081 - if has_version "<${CATEGORY}/${PN}-${SLOT}" && ! has_version ">=${CATEGORY}/${PN}-${SLOT}_alpha"; then
7082 - python_updater_warning="1"
7083 - fi
7084 -}
7085 -
7086 -eselect_python_update() {
7087 - if [[ -z "$(eselect python show)" || ! -f "${EROOT}usr/bin/$(eselect python show)" ]]; then
7088 - eselect python update
7089 - fi
7090 -
7091 - if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT}usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
7092 - eselect python update --python${PV%%.*}
7093 - fi
7094 -}
7095 -
7096 -pkg_postinst() {
7097 - eselect_python_update
7098 -
7099 - if [[ "${python_updater_warning}" == "1" ]]; then
7100 - ewarn "You have just upgraded from an older version of Python."
7101 - ewarn
7102 - ewarn "Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules."
7103 - ewarn
7104 - ewarn "For legacy packages, you should switch active version of Python and run 'python-updater [options]' to rebuild Python modules."
7105 - fi
7106 -}
7107 -
7108 -pkg_postrm() {
7109 - eselect_python_update
7110 -}
7111
7112 diff --git a/dev-lang/python/python-3.4.0.ebuild b/dev-lang/python/python-3.4.0.ebuild
7113 deleted file mode 100644
7114 index b89c063..0000000
7115 --- a/dev-lang/python/python-3.4.0.ebuild
7116 +++ /dev/null
7117 @@ -1,320 +0,0 @@
7118 -# Copyright 1999-2015 Gentoo Foundation
7119 -# Distributed under the terms of the GNU General Public License v2
7120 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-3.4.0.ebuild,v 1.4 2015/03/31 18:46:33 ulm Exp $
7121 -
7122 -EAPI="4"
7123 -WANT_AUTOMAKE="none"
7124 -WANT_LIBTOOL="none"
7125 -
7126 -inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs multiprocessing
7127 -
7128 -MY_P="Python-${PV/_/}"
7129 -PATCHSET_VERSION="3.4.0-0"
7130 -
7131 -DESCRIPTION="An interpreted, interactive, object-oriented programming language"
7132 -HOMEPAGE="http://www.python.org/"
7133 -SRC_URI="http://www.python.org/ftp/python/${PV%_rc*}/${MY_P}.tar.xz
7134 - http://dev.gentoo.org/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz
7135 - mirror://gentoo/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
7136 -
7137 -LICENSE="PSF-2"
7138 -SLOT="3.4"
7139 -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
7140 -IUSE="build elibc_uclibc examples gdbm hardened ipv6 +ncurses +readline sqlite +ssl +threads tk wininst +xml"
7141 -
7142 -# Do not add a dependency on dev-lang/python to this ebuild.
7143 -# If you need to apply a patch which requires python for bootstrapping, please
7144 -# run the bootstrap code on your dev box and include the results in the
7145 -# patchset. See bug 447752.
7146 -
7147 -RDEPEND="app-arch/bzip2
7148 - app-arch/xz-utils
7149 - >=sys-libs/zlib-1.1.3
7150 - virtual/libffi
7151 - virtual/libintl
7152 - !build? (
7153 - gdbm? ( sys-libs/gdbm[berkdb] )
7154 - ncurses? (
7155 - >=sys-libs/ncurses-5.2
7156 - readline? ( >=sys-libs/readline-4.1 )
7157 - )
7158 - sqlite? ( >=dev-db/sqlite-3.3.8:3 )
7159 - ssl? ( dev-libs/openssl )
7160 - tk? (
7161 - >=dev-lang/tk-8.0
7162 - dev-tcltk/blt
7163 - dev-tcltk/tix
7164 - )
7165 - xml? ( >=dev-libs/expat-2.1 )
7166 - )
7167 - !!<sys-apps/sandbox-2.6-r1"
7168 -DEPEND="${RDEPEND}
7169 - virtual/pkgconfig
7170 - >=sys-devel/autoconf-2.65
7171 - !sys-devel/gcc[libffi]"
7172 -RDEPEND+=" !build? ( app-misc/mime-types )"
7173 -PDEPEND="app-eselect/eselect-python
7174 - app-admin/python-updater"
7175 -
7176 -S="${WORKDIR}/${MY_P}"
7177 -
7178 -src_prepare() {
7179 - # Ensure that internal copies of expat, libffi and zlib are not used.
7180 - rm -fr Modules/expat
7181 - rm -fr Modules/_ctypes/libffi*
7182 - rm -fr Modules/zlib
7183 -
7184 - if tc-is-cross-compiler; then
7185 - # Invokes BUILDPYTHON, which is built for the host arch
7186 - local EPATCH_EXCLUDE="*_regenerate_platform-specific_modules.patch"
7187 - fi
7188 -
7189 - EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
7190 -
7191 - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
7192 - Lib/distutils/command/install.py \
7193 - Lib/distutils/sysconfig.py \
7194 - Lib/site.py \
7195 - Lib/sysconfig.py \
7196 - Lib/test/test_site.py \
7197 - Makefile.pre.in \
7198 - Modules/Setup.dist \
7199 - Modules/getpath.c \
7200 - setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
7201 -
7202 - # Disable ABI flags.
7203 - sed -e "s/ABIFLAGS=\"\${ABIFLAGS}.*\"/:/" -i configure.ac || die "sed failed"
7204 -
7205 - epatch_user
7206 -
7207 - eautoconf
7208 - eautoheader
7209 -}
7210 -
7211 -src_configure() {
7212 - if use build; then
7213 - # Disable extraneous modules with extra dependencies.
7214 - export PYTHON_DISABLE_MODULES="gdbm _curses _curses_panel readline _sqlite3 _tkinter _elementtree pyexpat"
7215 - export PYTHON_DISABLE_SSL="1"
7216 - else
7217 - local disable
7218 - use gdbm || disable+=" gdbm"
7219 - use ncurses || disable+=" _curses _curses_panel"
7220 - use readline || disable+=" readline"
7221 - use sqlite || disable+=" _sqlite3"
7222 - use ssl || export PYTHON_DISABLE_SSL="1"
7223 - use tk || disable+=" _tkinter"
7224 - use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
7225 - export PYTHON_DISABLE_MODULES="${disable}"
7226 -
7227 - if ! use xml; then
7228 - ewarn "You have configured Python without XML support."
7229 - ewarn "This is NOT a recommended configuration as you"
7230 - ewarn "may face problems parsing any XML documents."
7231 - fi
7232 - fi
7233 -
7234 - if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
7235 - einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
7236 - fi
7237 -
7238 - if [[ "$(gcc-major-version)" -ge 4 ]]; then
7239 - append-flags -fwrapv
7240 - fi
7241 -
7242 - filter-flags -malign-double
7243 -
7244 - [[ "${ARCH}" == "alpha" ]] && append-flags -fPIC
7245 -
7246 - # https://bugs.gentoo.org/show_bug.cgi?id=50309
7247 - if is-flagq -O3; then
7248 - is-flagq -fstack-protector-all && replace-flags -O3 -O2
7249 - use hardened && replace-flags -O3 -O2
7250 - fi
7251 -
7252 - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
7253 - tc-export CXX
7254 - # The configure script fails to use pkg-config correctly.
7255 - # http://bugs.python.org/issue15506
7256 - export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG)
7257 -
7258 - # Set LDFLAGS so we link modules with -lpython3.2 correctly.
7259 - # Needed on FreeBSD unless Python 3.2 is already installed.
7260 - # Please query BSD team before removing this!
7261 - append-ldflags "-L."
7262 -
7263 - local dbmliborder
7264 - if use gdbm; then
7265 - dbmliborder+="${dbmliborder:+:}gdbm"
7266 - fi
7267 -
7268 - BUILD_DIR="${WORKDIR}/${CHOST}"
7269 - mkdir -p "${BUILD_DIR}" || die
7270 - cd "${BUILD_DIR}" || die
7271 -
7272 - ECONF_SOURCE="${S}" OPT="" \
7273 - econf \
7274 - --with-fpectl \
7275 - --enable-shared \
7276 - $(use_enable ipv6) \
7277 - $(use_with threads) \
7278 - --infodir='${prefix}/share/info' \
7279 - --mandir='${prefix}/share/man' \
7280 - --with-computed-gotos \
7281 - --with-dbmliborder="${dbmliborder}" \
7282 - --with-libc="" \
7283 - --enable-loadable-sqlite-extensions \
7284 - --with-system-expat \
7285 - --with-system-ffi \
7286 - --without-ensurepip
7287 -
7288 - if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
7289 - eerror "configure has detected that the sem_open function is broken."
7290 - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
7291 - die "Broken sem_open function (bug 496328)"
7292 - fi
7293 -}
7294 -
7295 -src_compile() {
7296 - # Avoid invoking pgen for cross-compiles.
7297 - touch Include/graminit.h Python/graminit.c || die
7298 -
7299 - cd "${BUILD_DIR}" || die
7300 - emake CPPFLAGS="" CFLAGS="" LDFLAGS=""
7301 -
7302 - # Work around bug 329499. See also bug 413751 and 457194.
7303 - if has_version dev-libs/libffi[pax_kernel]; then
7304 - pax-mark E python
7305 - else
7306 - pax-mark m python
7307 - fi
7308 -}
7309 -
7310 -src_test() {
7311 - # Tests will not work when cross compiling.
7312 - if tc-is-cross-compiler; then
7313 - elog "Disabling tests due to crosscompiling."
7314 - return
7315 - fi
7316 -
7317 - cd "${BUILD_DIR}" || die
7318 -
7319 - # Skip failing tests.
7320 - local skipped_tests="gdb"
7321 -
7322 - for test in ${skipped_tests}; do
7323 - mv "${S}"/Lib/test/test_${test}.py "${T}"
7324 - done
7325 -
7326 - local -x PYTHONDONTWRITEBYTECODE=
7327 - emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
7328 - local result=$?
7329 -
7330 - for test in ${skipped_tests}; do
7331 - mv "${T}/test_${test}.py" "${S}"/Lib/test
7332 - done
7333 -
7334 - elog "The following tests have been skipped:"
7335 - for test in ${skipped_tests}; do
7336 - elog "test_${test}.py"
7337 - done
7338 -
7339 - elog "If you would like to run them, you may:"
7340 - elog "cd '${EPREFIX}/usr/$(get_libdir)/python${SLOT}/test'"
7341 - elog "and run the tests separately."
7342 -
7343 - if [[ ${result} -ne 0 ]]; then
7344 - die "emake test failed"
7345 - fi
7346 -}
7347 -
7348 -src_install() {
7349 - local libdir=${ED}/usr/$(get_libdir)/python${SLOT}
7350 -
7351 - cd "${BUILD_DIR}" || die
7352 -
7353 - emake DESTDIR="${D}" altinstall
7354 -
7355 - sed \
7356 - -e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
7357 - -e "s/\(PY_LDFLAGS=\).*/\1/" \
7358 - -i "${libdir}/config-${SLOT}/Makefile" || die "sed failed"
7359 -
7360 - # Backwards compat with Gentoo divergence.
7361 - dosym python${SLOT}-config /usr/bin/python-config-${SLOT}
7362 -
7363 - # Fix collisions between different slots of Python.
7364 - rm -f "${ED}usr/$(get_libdir)/libpython3.so"
7365 -
7366 - if use build; then
7367 - rm -fr "${ED}usr/bin/idle${SLOT}" "${libdir}/"{idlelib,sqlite3,test,tkinter}
7368 - else
7369 - use elibc_uclibc && rm -fr "${libdir}/test"
7370 - use sqlite || rm -fr "${libdir}/"{sqlite3,test/test_sqlite*}
7371 - use tk || rm -fr "${ED}usr/bin/idle${SLOT}" "${libdir}/"{idlelib,tkinter,test/test_tk*}
7372 - fi
7373 -
7374 - use threads || rm -fr "${libdir}/multiprocessing"
7375 - use wininst || rm -f "${libdir}/distutils/command/"wininst-*.exe
7376 -
7377 - dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
7378 -
7379 - if use examples; then
7380 - insinto /usr/share/doc/${PF}/examples
7381 - find "${S}"/Tools -name __pycache__ -print0 | xargs -0 rm -fr
7382 - doins -r "${S}"/Tools
7383 - fi
7384 - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
7385 - local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
7386 - emake --no-print-directory -s -f - 2>/dev/null)
7387 - newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
7388 -
7389 - newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT}
7390 - newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT}
7391 - sed \
7392 - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${SLOT/./_}_PORT:" \
7393 - -e "s:@PYDOC@:pydoc${SLOT}:" \
7394 - -i "${ED}etc/conf.d/pydoc-${SLOT}" "${ED}etc/init.d/pydoc-${SLOT}" || die "sed failed"
7395 -
7396 - # for python-exec
7397 - python_export python${SLOT} EPYTHON PYTHON PYTHON_SITEDIR
7398 -
7399 - # if not using a cross-compiler, use the fresh binary
7400 - if ! tc-is-cross-compiler; then
7401 - local PYTHON=./python
7402 - local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}.
7403 - fi
7404 -
7405 - echo "EPYTHON='${EPYTHON}'" > epython.py
7406 - python_domodule epython.py
7407 -}
7408 -
7409 -pkg_preinst() {
7410 - if has_version "<${CATEGORY}/${PN}-${SLOT}" && ! has_version ">=${CATEGORY}/${PN}-${SLOT}_alpha"; then
7411 - python_updater_warning="1"
7412 - fi
7413 -}
7414 -
7415 -eselect_python_update() {
7416 - if [[ -z "$(eselect python show)" || ! -f "${EROOT}usr/bin/$(eselect python show)" ]]; then
7417 - eselect python update
7418 - fi
7419 -
7420 - if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT}usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
7421 - eselect python update --python${PV%%.*}
7422 - fi
7423 -}
7424 -
7425 -pkg_postinst() {
7426 - eselect_python_update
7427 -
7428 - if [[ "${python_updater_warning}" == "1" ]]; then
7429 - ewarn "You have just upgraded from an older version of Python."
7430 - ewarn
7431 - ewarn "Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules."
7432 - fi
7433 -}
7434 -
7435 -pkg_postrm() {
7436 - eselect_python_update
7437 -}
7438
7439 diff --git a/dev-lang/python/python-3.4.1.ebuild b/dev-lang/python/python-3.4.1.ebuild
7440 deleted file mode 100644
7441 index 0ef929b..0000000
7442 --- a/dev-lang/python/python-3.4.1.ebuild
7443 +++ /dev/null
7444 @@ -1,319 +0,0 @@
7445 -# Copyright 1999-2015 Gentoo Foundation
7446 -# Distributed under the terms of the GNU General Public License v2
7447 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-3.4.1.ebuild,v 1.12 2015/03/31 18:46:33 ulm Exp $
7448 -
7449 -EAPI="4"
7450 -WANT_AUTOMAKE="none"
7451 -WANT_LIBTOOL="none"
7452 -
7453 -inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs multiprocessing
7454 -
7455 -MY_P="Python-${PV/_/}"
7456 -PATCHSET_VERSION="3.4.1-0"
7457 -
7458 -DESCRIPTION="An interpreted, interactive, object-oriented programming language"
7459 -HOMEPAGE="http://www.python.org/"
7460 -SRC_URI="http://www.python.org/ftp/python/${PV%_rc*}/${MY_P}.tar.xz
7461 - http://dev.gentoo.org/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
7462 -
7463 -LICENSE="PSF-2"
7464 -SLOT="3.4"
7465 -KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
7466 -IUSE="build elibc_uclibc examples gdbm hardened ipv6 +ncurses +readline sqlite +ssl +threads tk wininst +xml"
7467 -
7468 -# Do not add a dependency on dev-lang/python to this ebuild.
7469 -# If you need to apply a patch which requires python for bootstrapping, please
7470 -# run the bootstrap code on your dev box and include the results in the
7471 -# patchset. See bug 447752.
7472 -
7473 -RDEPEND="app-arch/bzip2
7474 - app-arch/xz-utils
7475 - >=sys-libs/zlib-1.1.3
7476 - virtual/libffi
7477 - virtual/libintl
7478 - !build? (
7479 - gdbm? ( sys-libs/gdbm[berkdb] )
7480 - ncurses? (
7481 - >=sys-libs/ncurses-5.2
7482 - readline? ( >=sys-libs/readline-4.1 )
7483 - )
7484 - sqlite? ( >=dev-db/sqlite-3.3.8:3 )
7485 - ssl? ( dev-libs/openssl )
7486 - tk? (
7487 - >=dev-lang/tk-8.0
7488 - dev-tcltk/blt
7489 - dev-tcltk/tix
7490 - )
7491 - xml? ( >=dev-libs/expat-2.1 )
7492 - )
7493 - !!<sys-apps/sandbox-2.6-r1"
7494 -DEPEND="${RDEPEND}
7495 - virtual/pkgconfig
7496 - >=sys-devel/autoconf-2.65
7497 - !sys-devel/gcc[libffi]"
7498 -RDEPEND+=" !build? ( app-misc/mime-types )"
7499 -PDEPEND="app-eselect/eselect-python
7500 - app-admin/python-updater"
7501 -
7502 -S="${WORKDIR}/${MY_P}"
7503 -
7504 -src_prepare() {
7505 - # Ensure that internal copies of expat, libffi and zlib are not used.
7506 - rm -fr Modules/expat
7507 - rm -fr Modules/_ctypes/libffi*
7508 - rm -fr Modules/zlib
7509 -
7510 - if tc-is-cross-compiler; then
7511 - # Invokes BUILDPYTHON, which is built for the host arch
7512 - local EPATCH_EXCLUDE="*_regenerate_platform-specific_modules.patch"
7513 - fi
7514 -
7515 - EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
7516 -
7517 - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
7518 - Lib/distutils/command/install.py \
7519 - Lib/distutils/sysconfig.py \
7520 - Lib/site.py \
7521 - Lib/sysconfig.py \
7522 - Lib/test/test_site.py \
7523 - Makefile.pre.in \
7524 - Modules/Setup.dist \
7525 - Modules/getpath.c \
7526 - setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
7527 -
7528 - # Disable ABI flags.
7529 - sed -e "s/ABIFLAGS=\"\${ABIFLAGS}.*\"/:/" -i configure.ac || die "sed failed"
7530 -
7531 - epatch_user
7532 -
7533 - eautoconf
7534 - eautoheader
7535 -}
7536 -
7537 -src_configure() {
7538 - if use build; then
7539 - # Disable extraneous modules with extra dependencies.
7540 - export PYTHON_DISABLE_MODULES="gdbm _curses _curses_panel readline _sqlite3 _tkinter _elementtree pyexpat"
7541 - export PYTHON_DISABLE_SSL="1"
7542 - else
7543 - local disable
7544 - use gdbm || disable+=" gdbm"
7545 - use ncurses || disable+=" _curses _curses_panel"
7546 - use readline || disable+=" readline"
7547 - use sqlite || disable+=" _sqlite3"
7548 - use ssl || export PYTHON_DISABLE_SSL="1"
7549 - use tk || disable+=" _tkinter"
7550 - use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
7551 - export PYTHON_DISABLE_MODULES="${disable}"
7552 -
7553 - if ! use xml; then
7554 - ewarn "You have configured Python without XML support."
7555 - ewarn "This is NOT a recommended configuration as you"
7556 - ewarn "may face problems parsing any XML documents."
7557 - fi
7558 - fi
7559 -
7560 - if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
7561 - einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
7562 - fi
7563 -
7564 - if [[ "$(gcc-major-version)" -ge 4 ]]; then
7565 - append-flags -fwrapv
7566 - fi
7567 -
7568 - filter-flags -malign-double
7569 -
7570 - [[ "${ARCH}" == "alpha" ]] && append-flags -fPIC
7571 -
7572 - # https://bugs.gentoo.org/show_bug.cgi?id=50309
7573 - if is-flagq -O3; then
7574 - is-flagq -fstack-protector-all && replace-flags -O3 -O2
7575 - use hardened && replace-flags -O3 -O2
7576 - fi
7577 -
7578 - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
7579 - tc-export CXX
7580 - # The configure script fails to use pkg-config correctly.
7581 - # http://bugs.python.org/issue15506
7582 - export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG)
7583 -
7584 - # Set LDFLAGS so we link modules with -lpython3.2 correctly.
7585 - # Needed on FreeBSD unless Python 3.2 is already installed.
7586 - # Please query BSD team before removing this!
7587 - append-ldflags "-L."
7588 -
7589 - local dbmliborder
7590 - if use gdbm; then
7591 - dbmliborder+="${dbmliborder:+:}gdbm"
7592 - fi
7593 -
7594 - BUILD_DIR="${WORKDIR}/${CHOST}"
7595 - mkdir -p "${BUILD_DIR}" || die
7596 - cd "${BUILD_DIR}" || die
7597 -
7598 - ECONF_SOURCE="${S}" OPT="" \
7599 - econf \
7600 - --with-fpectl \
7601 - --enable-shared \
7602 - $(use_enable ipv6) \
7603 - $(use_with threads) \
7604 - --infodir='${prefix}/share/info' \
7605 - --mandir='${prefix}/share/man' \
7606 - --with-computed-gotos \
7607 - --with-dbmliborder="${dbmliborder}" \
7608 - --with-libc="" \
7609 - --enable-loadable-sqlite-extensions \
7610 - --with-system-expat \
7611 - --with-system-ffi \
7612 - --without-ensurepip
7613 -
7614 - if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
7615 - eerror "configure has detected that the sem_open function is broken."
7616 - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
7617 - die "Broken sem_open function (bug 496328)"
7618 - fi
7619 -}
7620 -
7621 -src_compile() {
7622 - # Avoid invoking pgen for cross-compiles.
7623 - touch Include/graminit.h Python/graminit.c || die
7624 -
7625 - cd "${BUILD_DIR}" || die
7626 - emake CPPFLAGS="" CFLAGS="" LDFLAGS=""
7627 -
7628 - # Work around bug 329499. See also bug 413751 and 457194.
7629 - if has_version dev-libs/libffi[pax_kernel]; then
7630 - pax-mark E python
7631 - else
7632 - pax-mark m python
7633 - fi
7634 -}
7635 -
7636 -src_test() {
7637 - # Tests will not work when cross compiling.
7638 - if tc-is-cross-compiler; then
7639 - elog "Disabling tests due to crosscompiling."
7640 - return
7641 - fi
7642 -
7643 - cd "${BUILD_DIR}" || die
7644 -
7645 - # Skip failing tests.
7646 - local skipped_tests="gdb"
7647 -
7648 - for test in ${skipped_tests}; do
7649 - mv "${S}"/Lib/test/test_${test}.py "${T}"
7650 - done
7651 -
7652 - local -x PYTHONDONTWRITEBYTECODE=
7653 - emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
7654 - local result=$?
7655 -
7656 - for test in ${skipped_tests}; do
7657 - mv "${T}/test_${test}.py" "${S}"/Lib/test
7658 - done
7659 -
7660 - elog "The following tests have been skipped:"
7661 - for test in ${skipped_tests}; do
7662 - elog "test_${test}.py"
7663 - done
7664 -
7665 - elog "If you would like to run them, you may:"
7666 - elog "cd '${EPREFIX}/usr/$(get_libdir)/python${SLOT}/test'"
7667 - elog "and run the tests separately."
7668 -
7669 - if [[ ${result} -ne 0 ]]; then
7670 - die "emake test failed"
7671 - fi
7672 -}
7673 -
7674 -src_install() {
7675 - local libdir=${ED}/usr/$(get_libdir)/python${SLOT}
7676 -
7677 - cd "${BUILD_DIR}" || die
7678 -
7679 - emake DESTDIR="${D}" altinstall
7680 -
7681 - sed \
7682 - -e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
7683 - -e "s/\(PY_LDFLAGS=\).*/\1/" \
7684 - -i "${libdir}/config-${SLOT}/Makefile" || die "sed failed"
7685 -
7686 - # Backwards compat with Gentoo divergence.
7687 - dosym python${SLOT}-config /usr/bin/python-config-${SLOT}
7688 -
7689 - # Fix collisions between different slots of Python.
7690 - rm -f "${ED}usr/$(get_libdir)/libpython3.so"
7691 -
7692 - if use build; then
7693 - rm -fr "${ED}usr/bin/idle${SLOT}" "${libdir}/"{idlelib,sqlite3,test,tkinter}
7694 - else
7695 - use elibc_uclibc && rm -fr "${libdir}/test"
7696 - use sqlite || rm -fr "${libdir}/"{sqlite3,test/test_sqlite*}
7697 - use tk || rm -fr "${ED}usr/bin/idle${SLOT}" "${libdir}/"{idlelib,tkinter,test/test_tk*}
7698 - fi
7699 -
7700 - use threads || rm -fr "${libdir}/multiprocessing"
7701 - use wininst || rm -f "${libdir}/distutils/command/"wininst-*.exe
7702 -
7703 - dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
7704 -
7705 - if use examples; then
7706 - insinto /usr/share/doc/${PF}/examples
7707 - find "${S}"/Tools -name __pycache__ -print0 | xargs -0 rm -fr
7708 - doins -r "${S}"/Tools
7709 - fi
7710 - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
7711 - local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
7712 - emake --no-print-directory -s -f - 2>/dev/null)
7713 - newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
7714 -
7715 - newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT}
7716 - newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT}
7717 - sed \
7718 - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${SLOT/./_}_PORT:" \
7719 - -e "s:@PYDOC@:pydoc${SLOT}:" \
7720 - -i "${ED}etc/conf.d/pydoc-${SLOT}" "${ED}etc/init.d/pydoc-${SLOT}" || die "sed failed"
7721 -
7722 - # for python-exec
7723 - python_export python${SLOT} EPYTHON PYTHON PYTHON_SITEDIR
7724 -
7725 - # if not using a cross-compiler, use the fresh binary
7726 - if ! tc-is-cross-compiler; then
7727 - local PYTHON=./python
7728 - local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}.
7729 - fi
7730 -
7731 - echo "EPYTHON='${EPYTHON}'" > epython.py
7732 - python_domodule epython.py
7733 -}
7734 -
7735 -pkg_preinst() {
7736 - if has_version "<${CATEGORY}/${PN}-${SLOT}" && ! has_version ">=${CATEGORY}/${PN}-${SLOT}_alpha"; then
7737 - python_updater_warning="1"
7738 - fi
7739 -}
7740 -
7741 -eselect_python_update() {
7742 - if [[ -z "$(eselect python show)" || ! -f "${EROOT}usr/bin/$(eselect python show)" ]]; then
7743 - eselect python update
7744 - fi
7745 -
7746 - if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT}usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
7747 - eselect python update --python${PV%%.*}
7748 - fi
7749 -}
7750 -
7751 -pkg_postinst() {
7752 - eselect_python_update
7753 -
7754 - if [[ "${python_updater_warning}" == "1" ]]; then
7755 - ewarn "You have just upgraded from an older version of Python."
7756 - ewarn
7757 - ewarn "Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules."
7758 - fi
7759 -}
7760 -
7761 -pkg_postrm() {
7762 - eselect_python_update
7763 -}
7764
7765 diff --git a/dev-lang/python/python-3.4.2.ebuild b/dev-lang/python/python-3.4.2.ebuild
7766 deleted file mode 100644
7767 index fa9b136..0000000
7768 --- a/dev-lang/python/python-3.4.2.ebuild
7769 +++ /dev/null
7770 @@ -1,319 +0,0 @@
7771 -# Copyright 1999-2015 Gentoo Foundation
7772 -# Distributed under the terms of the GNU General Public License v2
7773 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-3.4.2.ebuild,v 1.2 2015/03/31 18:46:33 ulm Exp $
7774 -
7775 -EAPI="4"
7776 -WANT_AUTOMAKE="none"
7777 -WANT_LIBTOOL="none"
7778 -
7779 -inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs multiprocessing
7780 -
7781 -MY_P="Python-${PV/_/}"
7782 -PATCHSET_VERSION="3.4.2-0"
7783 -
7784 -DESCRIPTION="An interpreted, interactive, object-oriented programming language"
7785 -HOMEPAGE="http://www.python.org/"
7786 -SRC_URI="http://www.python.org/ftp/python/${PV%_rc*}/${MY_P}.tar.xz
7787 - http://dev.gentoo.org/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
7788 -
7789 -LICENSE="PSF-2"
7790 -SLOT="3.4"
7791 -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
7792 -IUSE="build elibc_uclibc examples gdbm hardened ipv6 +ncurses +readline sqlite +ssl +threads tk wininst +xml"
7793 -
7794 -# Do not add a dependency on dev-lang/python to this ebuild.
7795 -# If you need to apply a patch which requires python for bootstrapping, please
7796 -# run the bootstrap code on your dev box and include the results in the
7797 -# patchset. See bug 447752.
7798 -
7799 -RDEPEND="app-arch/bzip2
7800 - app-arch/xz-utils
7801 - >=sys-libs/zlib-1.1.3
7802 - virtual/libffi
7803 - virtual/libintl
7804 - !build? (
7805 - gdbm? ( sys-libs/gdbm[berkdb] )
7806 - ncurses? (
7807 - >=sys-libs/ncurses-5.2
7808 - readline? ( >=sys-libs/readline-4.1 )
7809 - )
7810 - sqlite? ( >=dev-db/sqlite-3.3.8:3 )
7811 - ssl? ( dev-libs/openssl )
7812 - tk? (
7813 - >=dev-lang/tk-8.0
7814 - dev-tcltk/blt
7815 - dev-tcltk/tix
7816 - )
7817 - xml? ( >=dev-libs/expat-2.1 )
7818 - )
7819 - !!<sys-apps/sandbox-2.6-r1"
7820 -DEPEND="${RDEPEND}
7821 - virtual/pkgconfig
7822 - >=sys-devel/autoconf-2.65
7823 - !sys-devel/gcc[libffi]"
7824 -RDEPEND+=" !build? ( app-misc/mime-types )"
7825 -PDEPEND="app-eselect/eselect-python
7826 - app-admin/python-updater"
7827 -
7828 -S="${WORKDIR}/${MY_P}"
7829 -
7830 -src_prepare() {
7831 - # Ensure that internal copies of expat, libffi and zlib are not used.
7832 - rm -fr Modules/expat
7833 - rm -fr Modules/_ctypes/libffi*
7834 - rm -fr Modules/zlib
7835 -
7836 - if tc-is-cross-compiler; then
7837 - # Invokes BUILDPYTHON, which is built for the host arch
7838 - local EPATCH_EXCLUDE="*_regenerate_platform-specific_modules.patch"
7839 - fi
7840 -
7841 - EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
7842 -
7843 - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
7844 - Lib/distutils/command/install.py \
7845 - Lib/distutils/sysconfig.py \
7846 - Lib/site.py \
7847 - Lib/sysconfig.py \
7848 - Lib/test/test_site.py \
7849 - Makefile.pre.in \
7850 - Modules/Setup.dist \
7851 - Modules/getpath.c \
7852 - setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
7853 -
7854 - # Disable ABI flags.
7855 - sed -e "s/ABIFLAGS=\"\${ABIFLAGS}.*\"/:/" -i configure.ac || die "sed failed"
7856 -
7857 - epatch_user
7858 -
7859 - eautoconf
7860 - eautoheader
7861 -}
7862 -
7863 -src_configure() {
7864 - if use build; then
7865 - # Disable extraneous modules with extra dependencies.
7866 - export PYTHON_DISABLE_MODULES="gdbm _curses _curses_panel readline _sqlite3 _tkinter _elementtree pyexpat"
7867 - export PYTHON_DISABLE_SSL="1"
7868 - else
7869 - local disable
7870 - use gdbm || disable+=" gdbm"
7871 - use ncurses || disable+=" _curses _curses_panel"
7872 - use readline || disable+=" readline"
7873 - use sqlite || disable+=" _sqlite3"
7874 - use ssl || export PYTHON_DISABLE_SSL="1"
7875 - use tk || disable+=" _tkinter"
7876 - use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
7877 - export PYTHON_DISABLE_MODULES="${disable}"
7878 -
7879 - if ! use xml; then
7880 - ewarn "You have configured Python without XML support."
7881 - ewarn "This is NOT a recommended configuration as you"
7882 - ewarn "may face problems parsing any XML documents."
7883 - fi
7884 - fi
7885 -
7886 - if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
7887 - einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
7888 - fi
7889 -
7890 - if [[ "$(gcc-major-version)" -ge 4 ]]; then
7891 - append-flags -fwrapv
7892 - fi
7893 -
7894 - filter-flags -malign-double
7895 -
7896 - [[ "${ARCH}" == "alpha" ]] && append-flags -fPIC
7897 -
7898 - # https://bugs.gentoo.org/show_bug.cgi?id=50309
7899 - if is-flagq -O3; then
7900 - is-flagq -fstack-protector-all && replace-flags -O3 -O2
7901 - use hardened && replace-flags -O3 -O2
7902 - fi
7903 -
7904 - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
7905 - tc-export CXX
7906 - # The configure script fails to use pkg-config correctly.
7907 - # http://bugs.python.org/issue15506
7908 - export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG)
7909 -
7910 - # Set LDFLAGS so we link modules with -lpython3.2 correctly.
7911 - # Needed on FreeBSD unless Python 3.2 is already installed.
7912 - # Please query BSD team before removing this!
7913 - append-ldflags "-L."
7914 -
7915 - local dbmliborder
7916 - if use gdbm; then
7917 - dbmliborder+="${dbmliborder:+:}gdbm"
7918 - fi
7919 -
7920 - BUILD_DIR="${WORKDIR}/${CHOST}"
7921 - mkdir -p "${BUILD_DIR}" || die
7922 - cd "${BUILD_DIR}" || die
7923 -
7924 - ECONF_SOURCE="${S}" OPT="" \
7925 - econf \
7926 - --with-fpectl \
7927 - --enable-shared \
7928 - $(use_enable ipv6) \
7929 - $(use_with threads) \
7930 - --infodir='${prefix}/share/info' \
7931 - --mandir='${prefix}/share/man' \
7932 - --with-computed-gotos \
7933 - --with-dbmliborder="${dbmliborder}" \
7934 - --with-libc="" \
7935 - --enable-loadable-sqlite-extensions \
7936 - --with-system-expat \
7937 - --with-system-ffi \
7938 - --without-ensurepip
7939 -
7940 - if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
7941 - eerror "configure has detected that the sem_open function is broken."
7942 - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
7943 - die "Broken sem_open function (bug 496328)"
7944 - fi
7945 -}
7946 -
7947 -src_compile() {
7948 - # Avoid invoking pgen for cross-compiles.
7949 - touch Include/graminit.h Python/graminit.c || die
7950 -
7951 - cd "${BUILD_DIR}" || die
7952 - emake CPPFLAGS="" CFLAGS="" LDFLAGS=""
7953 -
7954 - # Work around bug 329499. See also bug 413751 and 457194.
7955 - if has_version dev-libs/libffi[pax_kernel]; then
7956 - pax-mark E python
7957 - else
7958 - pax-mark m python
7959 - fi
7960 -}
7961 -
7962 -src_test() {
7963 - # Tests will not work when cross compiling.
7964 - if tc-is-cross-compiler; then
7965 - elog "Disabling tests due to crosscompiling."
7966 - return
7967 - fi
7968 -
7969 - cd "${BUILD_DIR}" || die
7970 -
7971 - # Skip failing tests.
7972 - local skipped_tests="gdb"
7973 -
7974 - for test in ${skipped_tests}; do
7975 - mv "${S}"/Lib/test/test_${test}.py "${T}"
7976 - done
7977 -
7978 - local -x PYTHONDONTWRITEBYTECODE=
7979 - emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
7980 - local result=$?
7981 -
7982 - for test in ${skipped_tests}; do
7983 - mv "${T}/test_${test}.py" "${S}"/Lib/test
7984 - done
7985 -
7986 - elog "The following tests have been skipped:"
7987 - for test in ${skipped_tests}; do
7988 - elog "test_${test}.py"
7989 - done
7990 -
7991 - elog "If you would like to run them, you may:"
7992 - elog "cd '${EPREFIX}/usr/$(get_libdir)/python${SLOT}/test'"
7993 - elog "and run the tests separately."
7994 -
7995 - if [[ ${result} -ne 0 ]]; then
7996 - die "emake test failed"
7997 - fi
7998 -}
7999 -
8000 -src_install() {
8001 - local libdir=${ED}/usr/$(get_libdir)/python${SLOT}
8002 -
8003 - cd "${BUILD_DIR}" || die
8004 -
8005 - emake DESTDIR="${D}" altinstall
8006 -
8007 - sed \
8008 - -e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
8009 - -e "s/\(PY_LDFLAGS=\).*/\1/" \
8010 - -i "${libdir}/config-${SLOT}/Makefile" || die "sed failed"
8011 -
8012 - # Backwards compat with Gentoo divergence.
8013 - dosym python${SLOT}-config /usr/bin/python-config-${SLOT}
8014 -
8015 - # Fix collisions between different slots of Python.
8016 - rm -f "${ED}usr/$(get_libdir)/libpython3.so"
8017 -
8018 - if use build; then
8019 - rm -fr "${ED}usr/bin/idle${SLOT}" "${libdir}/"{idlelib,sqlite3,test,tkinter}
8020 - else
8021 - use elibc_uclibc && rm -fr "${libdir}/test"
8022 - use sqlite || rm -fr "${libdir}/"{sqlite3,test/test_sqlite*}
8023 - use tk || rm -fr "${ED}usr/bin/idle${SLOT}" "${libdir}/"{idlelib,tkinter,test/test_tk*}
8024 - fi
8025 -
8026 - use threads || rm -fr "${libdir}/multiprocessing"
8027 - use wininst || rm -f "${libdir}/distutils/command/"wininst-*.exe
8028 -
8029 - dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
8030 -
8031 - if use examples; then
8032 - insinto /usr/share/doc/${PF}/examples
8033 - find "${S}"/Tools -name __pycache__ -print0 | xargs -0 rm -fr
8034 - doins -r "${S}"/Tools
8035 - fi
8036 - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
8037 - local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
8038 - emake --no-print-directory -s -f - 2>/dev/null)
8039 - newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
8040 -
8041 - newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT}
8042 - newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT}
8043 - sed \
8044 - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${SLOT/./_}_PORT:" \
8045 - -e "s:@PYDOC@:pydoc${SLOT}:" \
8046 - -i "${ED}etc/conf.d/pydoc-${SLOT}" "${ED}etc/init.d/pydoc-${SLOT}" || die "sed failed"
8047 -
8048 - # for python-exec
8049 - python_export python${SLOT} EPYTHON PYTHON PYTHON_SITEDIR
8050 -
8051 - # if not using a cross-compiler, use the fresh binary
8052 - if ! tc-is-cross-compiler; then
8053 - local PYTHON=./python
8054 - local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}.
8055 - fi
8056 -
8057 - echo "EPYTHON='${EPYTHON}'" > epython.py
8058 - python_domodule epython.py
8059 -}
8060 -
8061 -pkg_preinst() {
8062 - if has_version "<${CATEGORY}/${PN}-${SLOT}" && ! has_version ">=${CATEGORY}/${PN}-${SLOT}_alpha"; then
8063 - python_updater_warning="1"
8064 - fi
8065 -}
8066 -
8067 -eselect_python_update() {
8068 - if [[ -z "$(eselect python show)" || ! -f "${EROOT}usr/bin/$(eselect python show)" ]]; then
8069 - eselect python update
8070 - fi
8071 -
8072 - if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT}usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
8073 - eselect python update --python${PV%%.*}
8074 - fi
8075 -}
8076 -
8077 -pkg_postinst() {
8078 - eselect_python_update
8079 -
8080 - if [[ "${python_updater_warning}" == "1" ]]; then
8081 - ewarn "You have just upgraded from an older version of Python."
8082 - ewarn
8083 - ewarn "Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules."
8084 - fi
8085 -}
8086 -
8087 -pkg_postrm() {
8088 - eselect_python_update
8089 -}
8090
8091 diff --git a/dev-lang/python/python-3.4.3.ebuild b/dev-lang/python/python-3.4.3.ebuild
8092 deleted file mode 100644
8093 index c70b8d5..0000000
8094 --- a/dev-lang/python/python-3.4.3.ebuild
8095 +++ /dev/null
8096 @@ -1,318 +0,0 @@
8097 -# Copyright 1999-2015 Gentoo Foundation
8098 -# Distributed under the terms of the GNU General Public License v2
8099 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-3.4.3.ebuild,v 1.3 2015/03/31 18:46:33 ulm Exp $
8100 -
8101 -EAPI="4"
8102 -WANT_LIBTOOL="none"
8103 -
8104 -inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs multiprocessing
8105 -
8106 -MY_P="Python-${PV/_/}"
8107 -PATCHSET_VERSION="3.4.3-0"
8108 -
8109 -DESCRIPTION="An interpreted, interactive, object-oriented programming language"
8110 -HOMEPAGE="http://www.python.org/"
8111 -SRC_URI="http://www.python.org/ftp/python/${PV%_rc*}/${MY_P}.tar.xz
8112 - http://dev.gentoo.org/~floppym/python/python-gentoo-patches-${PATCHSET_VERSION}.tar.xz"
8113 -
8114 -LICENSE="PSF-2"
8115 -SLOT="3.4"
8116 -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
8117 -IUSE="build elibc_uclibc examples gdbm hardened ipv6 +ncurses +readline sqlite +ssl +threads tk wininst +xml"
8118 -
8119 -# Do not add a dependency on dev-lang/python to this ebuild.
8120 -# If you need to apply a patch which requires python for bootstrapping, please
8121 -# run the bootstrap code on your dev box and include the results in the
8122 -# patchset. See bug 447752.
8123 -
8124 -RDEPEND="app-arch/bzip2
8125 - app-arch/xz-utils
8126 - >=sys-libs/zlib-1.1.3
8127 - virtual/libffi
8128 - virtual/libintl
8129 - !build? (
8130 - gdbm? ( sys-libs/gdbm[berkdb] )
8131 - ncurses? (
8132 - >=sys-libs/ncurses-5.2
8133 - readline? ( >=sys-libs/readline-4.1 )
8134 - )
8135 - sqlite? ( >=dev-db/sqlite-3.3.8:3 )
8136 - ssl? ( dev-libs/openssl )
8137 - tk? (
8138 - >=dev-lang/tk-8.0
8139 - dev-tcltk/blt
8140 - dev-tcltk/tix
8141 - )
8142 - xml? ( >=dev-libs/expat-2.1 )
8143 - )
8144 - !!<sys-apps/sandbox-2.6-r1"
8145 -DEPEND="${RDEPEND}
8146 - virtual/pkgconfig
8147 - >=sys-devel/autoconf-2.65
8148 - !sys-devel/gcc[libffi]"
8149 -RDEPEND+=" !build? ( app-misc/mime-types )"
8150 -PDEPEND="app-eselect/eselect-python
8151 - app-admin/python-updater"
8152 -
8153 -S="${WORKDIR}/${MY_P}"
8154 -
8155 -src_prepare() {
8156 - # Ensure that internal copies of expat, libffi and zlib are not used.
8157 - rm -fr Modules/expat
8158 - rm -fr Modules/_ctypes/libffi*
8159 - rm -fr Modules/zlib
8160 -
8161 - if tc-is-cross-compiler; then
8162 - # Invokes BUILDPYTHON, which is built for the host arch
8163 - local EPATCH_EXCLUDE="*_regenerate_platform-specific_modules.patch"
8164 - fi
8165 -
8166 - EPATCH_SUFFIX="patch" epatch "${WORKDIR}/patches"
8167 - epatch "${FILESDIR}/${PN}-3.4.3-ncurses-pkg-config.patch"
8168 -
8169 - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
8170 - Lib/distutils/command/install.py \
8171 - Lib/distutils/sysconfig.py \
8172 - Lib/site.py \
8173 - Lib/sysconfig.py \
8174 - Lib/test/test_site.py \
8175 - Makefile.pre.in \
8176 - Modules/Setup.dist \
8177 - Modules/getpath.c \
8178 - setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
8179 -
8180 - # Disable ABI flags.
8181 - sed -e "s/ABIFLAGS=\"\${ABIFLAGS}.*\"/:/" -i configure.ac || die "sed failed"
8182 -
8183 - epatch_user
8184 -
8185 - eautoreconf
8186 -}
8187 -
8188 -src_configure() {
8189 - if use build; then
8190 - # Disable extraneous modules with extra dependencies.
8191 - export PYTHON_DISABLE_MODULES="gdbm _curses _curses_panel readline _sqlite3 _tkinter _elementtree pyexpat"
8192 - export PYTHON_DISABLE_SSL="1"
8193 - else
8194 - local disable
8195 - use gdbm || disable+=" gdbm"
8196 - use ncurses || disable+=" _curses _curses_panel"
8197 - use readline || disable+=" readline"
8198 - use sqlite || disable+=" _sqlite3"
8199 - use ssl || export PYTHON_DISABLE_SSL="1"
8200 - use tk || disable+=" _tkinter"
8201 - use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
8202 - export PYTHON_DISABLE_MODULES="${disable}"
8203 -
8204 - if ! use xml; then
8205 - ewarn "You have configured Python without XML support."
8206 - ewarn "This is NOT a recommended configuration as you"
8207 - ewarn "may face problems parsing any XML documents."
8208 - fi
8209 - fi
8210 -
8211 - if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
8212 - einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
8213 - fi
8214 -
8215 - if [[ "$(gcc-major-version)" -ge 4 ]]; then
8216 - append-flags -fwrapv
8217 - fi
8218 -
8219 - filter-flags -malign-double
8220 -
8221 - [[ "${ARCH}" == "alpha" ]] && append-flags -fPIC
8222 -
8223 - # https://bugs.gentoo.org/show_bug.cgi?id=50309
8224 - if is-flagq -O3; then
8225 - is-flagq -fstack-protector-all && replace-flags -O3 -O2
8226 - use hardened && replace-flags -O3 -O2
8227 - fi
8228 -
8229 - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
8230 - tc-export CXX
8231 - # The configure script fails to use pkg-config correctly.
8232 - # http://bugs.python.org/issue15506
8233 - export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG)
8234 -
8235 - # Set LDFLAGS so we link modules with -lpython3.2 correctly.
8236 - # Needed on FreeBSD unless Python 3.2 is already installed.
8237 - # Please query BSD team before removing this!
8238 - append-ldflags "-L."
8239 -
8240 - local dbmliborder
8241 - if use gdbm; then
8242 - dbmliborder+="${dbmliborder:+:}gdbm"
8243 - fi
8244 -
8245 - BUILD_DIR="${WORKDIR}/${CHOST}"
8246 - mkdir -p "${BUILD_DIR}" || die
8247 - cd "${BUILD_DIR}" || die
8248 -
8249 - ECONF_SOURCE="${S}" OPT="" \
8250 - econf \
8251 - --with-fpectl \
8252 - --enable-shared \
8253 - $(use_enable ipv6) \
8254 - $(use_with threads) \
8255 - --infodir='${prefix}/share/info' \
8256 - --mandir='${prefix}/share/man' \
8257 - --with-computed-gotos \
8258 - --with-dbmliborder="${dbmliborder}" \
8259 - --with-libc="" \
8260 - --enable-loadable-sqlite-extensions \
8261 - --with-system-expat \
8262 - --with-system-ffi \
8263 - --without-ensurepip
8264 -
8265 - if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
8266 - eerror "configure has detected that the sem_open function is broken."
8267 - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
8268 - die "Broken sem_open function (bug 496328)"
8269 - fi
8270 -}
8271 -
8272 -src_compile() {
8273 - # Avoid invoking pgen for cross-compiles.
8274 - touch Include/graminit.h Python/graminit.c || die
8275 -
8276 - cd "${BUILD_DIR}" || die
8277 - emake CPPFLAGS="" CFLAGS="" LDFLAGS=""
8278 -
8279 - # Work around bug 329499. See also bug 413751 and 457194.
8280 - if has_version dev-libs/libffi[pax_kernel]; then
8281 - pax-mark E python
8282 - else
8283 - pax-mark m python
8284 - fi
8285 -}
8286 -
8287 -src_test() {
8288 - # Tests will not work when cross compiling.
8289 - if tc-is-cross-compiler; then
8290 - elog "Disabling tests due to crosscompiling."
8291 - return
8292 - fi
8293 -
8294 - cd "${BUILD_DIR}" || die
8295 -
8296 - # Skip failing tests.
8297 - local skipped_tests="gdb"
8298 -
8299 - for test in ${skipped_tests}; do
8300 - mv "${S}"/Lib/test/test_${test}.py "${T}"
8301 - done
8302 -
8303 - local -x PYTHONDONTWRITEBYTECODE=
8304 - emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
8305 - local result=$?
8306 -
8307 - for test in ${skipped_tests}; do
8308 - mv "${T}/test_${test}.py" "${S}"/Lib/test
8309 - done
8310 -
8311 - elog "The following tests have been skipped:"
8312 - for test in ${skipped_tests}; do
8313 - elog "test_${test}.py"
8314 - done
8315 -
8316 - elog "If you would like to run them, you may:"
8317 - elog "cd '${EPREFIX}/usr/$(get_libdir)/python${SLOT}/test'"
8318 - elog "and run the tests separately."
8319 -
8320 - if [[ ${result} -ne 0 ]]; then
8321 - die "emake test failed"
8322 - fi
8323 -}
8324 -
8325 -src_install() {
8326 - local libdir=${ED}/usr/$(get_libdir)/python${SLOT}
8327 -
8328 - cd "${BUILD_DIR}" || die
8329 -
8330 - emake DESTDIR="${D}" altinstall
8331 -
8332 - sed \
8333 - -e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
8334 - -e "s/\(PY_LDFLAGS=\).*/\1/" \
8335 - -i "${libdir}/config-${SLOT}/Makefile" || die "sed failed"
8336 -
8337 - # Backwards compat with Gentoo divergence.
8338 - dosym python${SLOT}-config /usr/bin/python-config-${SLOT}
8339 -
8340 - # Fix collisions between different slots of Python.
8341 - rm -f "${ED}usr/$(get_libdir)/libpython3.so"
8342 -
8343 - if use build; then
8344 - rm -fr "${ED}usr/bin/idle${SLOT}" "${libdir}/"{idlelib,sqlite3,test,tkinter}
8345 - else
8346 - use elibc_uclibc && rm -fr "${libdir}/test"
8347 - use sqlite || rm -fr "${libdir}/"{sqlite3,test/test_sqlite*}
8348 - use tk || rm -fr "${ED}usr/bin/idle${SLOT}" "${libdir}/"{idlelib,tkinter,test/test_tk*}
8349 - fi
8350 -
8351 - use threads || rm -fr "${libdir}/multiprocessing"
8352 - use wininst || rm -f "${libdir}/distutils/command/"wininst-*.exe
8353 -
8354 - dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS}
8355 -
8356 - if use examples; then
8357 - insinto /usr/share/doc/${PF}/examples
8358 - find "${S}"/Tools -name __pycache__ -print0 | xargs -0 rm -fr
8359 - doins -r "${S}"/Tools
8360 - fi
8361 - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
8362 - local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
8363 - emake --no-print-directory -s -f - 2>/dev/null)
8364 - newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
8365 -
8366 - newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT}
8367 - newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT}
8368 - sed \
8369 - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${SLOT/./_}_PORT:" \
8370 - -e "s:@PYDOC@:pydoc${SLOT}:" \
8371 - -i "${ED}etc/conf.d/pydoc-${SLOT}" "${ED}etc/init.d/pydoc-${SLOT}" || die "sed failed"
8372 -
8373 - # for python-exec
8374 - python_export python${SLOT} EPYTHON PYTHON PYTHON_SITEDIR
8375 -
8376 - # if not using a cross-compiler, use the fresh binary
8377 - if ! tc-is-cross-compiler; then
8378 - local PYTHON=./python
8379 - local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}.
8380 - fi
8381 -
8382 - echo "EPYTHON='${EPYTHON}'" > epython.py
8383 - python_domodule epython.py
8384 -}
8385 -
8386 -pkg_preinst() {
8387 - if has_version "<${CATEGORY}/${PN}-${SLOT}" && ! has_version ">=${CATEGORY}/${PN}-${SLOT}_alpha"; then
8388 - python_updater_warning="1"
8389 - fi
8390 -}
8391 -
8392 -eselect_python_update() {
8393 - if [[ -z "$(eselect python show)" || ! -f "${EROOT}usr/bin/$(eselect python show)" ]]; then
8394 - eselect python update
8395 - fi
8396 -
8397 - if [[ -z "$(eselect python show --python${PV%%.*})" || ! -f "${EROOT}usr/bin/$(eselect python show --python${PV%%.*})" ]]; then
8398 - eselect python update --python${PV%%.*}
8399 - fi
8400 -}
8401 -
8402 -pkg_postinst() {
8403 - eselect_python_update
8404 -
8405 - if [[ "${python_updater_warning}" == "1" ]]; then
8406 - ewarn "You have just upgraded from an older version of Python."
8407 - ewarn
8408 - ewarn "Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules."
8409 - fi
8410 -}
8411 -
8412 -pkg_postrm() {
8413 - eselect_python_update
8414 -}
8415
8416 diff --git a/sys-apps/portage/Manifest b/sys-apps/portage/Manifest
8417 deleted file mode 100644
8418 index c87cf88..0000000
8419 --- a/sys-apps/portage/Manifest
8420 +++ /dev/null
8421 @@ -1,16 +0,0 @@
8422 -AUX 2.3.1-doc-Revert-URI-changes-related-to-docbook-schema.patch 1394 SHA256 a076b70b775aef23e89127d2fc64065f2d7a895b3b56a723122f641375b7c3d3 SHA512 fb3488ec9c5a849bdc9ae2cfaed3732c939072cd847534fdeaaff28560b62ad5b184f15bfb6943b921f417ec7de8e1fd3845322a0ba4d3e55f625a12cf903dcd WHIRLPOOL ddf6cd307f063404f53e9e819b01965b053df7554790d1332a5d131c11e5e6eec466412c17c4d8b3dd124ab81797641001ec3bbcfadd7ff06f5e59b2f40dc7d2
8423 -AUX README.RESCUE 137 SHA256 69bea0c755eab59b6b4d90838b8551744f0b0c8eeac170b1cd13a71ee83f9ac4 SHA512 dba0f0d6d4cd140e636cc70dfb7bdb298e2f2fb040bc07b0874cac994bdbabd26bfd9361d85a0f8b9a92a185281e4901606b9e4f563afdc8867341bbe6af1cb0 WHIRLPOOL 713fcc790442999d56e13efaf536fec9954dadeda680b3642d0358311332096ddedf8b55697bd1ca620d84f0dc7d025ff7931e086c74c1f5032be72dca2ff8f5
8424 -AUX portage-2.3.0-ldconfig-path.patch 1311 SHA256 7cd9acd6c1cd2a304348819a7232abe4a71473769a94ef1af9d8a956c81749ac SHA512 22ada6f4d39bdd35ffbc5e248f6ca490af8f84eb471d44bc39c8a517e61a1d04071fd1bbf3f78aed92f2c8b61ddc1465f4ccfb298dcce24ee1808d48b83c3d16 WHIRLPOOL 0023fafb781932e484278017cbf72637eed91f83673c34d5094d4c65cf981ba16d5c7c3b10879e4013fc83a8f941a99acd5d71b40673b4372f689de5a3d2e2ac
8425 -AUX portage-2.3.0-prefix-path-only.patch 1725 SHA256 1d087d0855c3f68fce817d31192209f4fe271f5bbf98030ab72621671cd4529e SHA512 408fcc71ca0dc0b8cdc99aff29c8c94e22ab1205257cc6a48e439abb0b34ddc4366f093d46719899c6c9a52075e2a72db31a28f13ca9aace45b9350266c609db WHIRLPOOL e3c2e1e27496c41d9b84188f2692f6f91b18b9317097ffe517515687a853e0c01f93fe5ec4059177892ead2bf851f9eb68c2a23905f081f13193032d5c8bf535
8426 -AUX portage-2.3.0_rc1.patch 2278 SHA256 5c10f7bf71250a87576bf81635a765e6fdfdaa7882fe7e1949c736ae1472c2d6 SHA512 0e26adc69b3b716c7435d54a2ed4252045cb24e7891eed5d88514e6066ee4b1fc32ba89d63dc63e2341456110bc7def0bf1a49c1cb3cb53c0d9092bb251f9151 WHIRLPOOL 3964864f80131293283aa79ef1e87e5975e2543e456515c00cf6bd38905c2502539b9698634a44123db9e8ab3c566645b5424c29390a0f47ae7df62431355928
8427 -DIST portage-2.3.0.tar.bz2 907500 SHA256 1fbed03f78587c80f5afd36b57d7ac085ed5e5b2cc19fea63fc8a43a477e4067 SHA512 85d15a234e446677dc3458de8dacaa0d91164b190c59f8002ff98dc27a9ad699cba6c4f871ac785ba6116ed53f1f3530ec3ed662ce7f4b3e8c49380b4b206074 WHIRLPOOL 979a7fc61a65dca790a077d4839fbbb22fc8ef31ccbe534b12b87c699a25a1930586dd6ddfb9013d57a71c03ed8d976612ea15e9dc3541aff0b67e3d604a5be2
8428 -DIST portage-2.3.0_rc1.tar.bz2 910204 SHA256 52cf0837975c4b2a8e1d3d18e3334a735b14e4ebdbdca8992548b86c1d5bebd1 SHA512 d7a5ce8800668606a2e3549621686bb8bb30bd2f5d7a57b106efc1c58d34b95cef4605f5067824db0beb6f870c9e81cb3fdb5c074e9e64bef40a9df6f524ad13 WHIRLPOOL c4c86fe20606e93ecf4d125f436077ec4d15cb453c98e83894a8383f1654a9b294107c9c04bb3019f66a643ff42c333060319d59dda47c323e9711723c3b9cfe
8429 -DIST portage-2.3.1.tar.bz2 918411 SHA256 a3c5ee98791c579687ad5ec6a7882a6b6a486a54c14d1bc73ccc9a79b4a507e9 SHA512 75a713cfa077ac271ad7fad0a48bbc923beedd2ec47000602576297fabae2de47ee69e7e6d52e02c87f9ba5d9e5b27c10fa9be7b308f72c6dcc8e7f6c321f2c6 WHIRLPOOL 4ee7942d73e8e5b977d0260b568d31d0b49387787f7ffa2e77d4ec49e00b3e67c54506840be463cb5a6da070683013192f46bb47df1df1a328457de1796d05c0
8430 -DIST portage-2.3.2.tar.bz2 919270 SHA256 724a9924209c5da5e7ba7f19812db0675bb3b4309f911e37da8c35bbc3fede67 SHA512 bee95d0308a613083a28b05e5276bc3c4eb5841e17985e3c943a92bc5b9a659eb18ae822219d26da80144febf47b5ad30766536f820162812549f0bc83975bec WHIRLPOOL 0836aac5d9e331d896053160d8e829f997697f83bd3dbe4f14b924b9aa7c41a7c53e48e4ea5873fba05d4d23d715b310e92a10fed348b7ad55afbde149864f20
8431 -DIST portage-2.3.3.tar.bz2 920984 SHA256 beec3923e14fb98d9992ede0b7718df594c50f366c3e58c2f0ba10102e77271f SHA512 7dec90a980ce6bb1266bb9c9c9979bc6cb8bdb4f37d8908c78cddf053979aef44424be86ea1fe16a072f6ed21b26233df84f6dd22d6f0c9435816090c675b53c WHIRLPOOL cc4a7e63b797766cc99ab712902b96e38fe22a482d7eeb3e29843a6070f6601b8bbe9c435b0a9c3cc1947e49c23291f1064f3d01c010d822dcb2686a103b4c3d
8432 -EBUILD portage-2.3.0.ebuild 11517 SHA256 16b10e751c98dc45735697b50a4df638ccce75745f2a04004dbc5c0897d4b0ed SHA512 bc44fd3cdab534b513fc00a6c27a06f42a9448c53008a470c976f2b520b0f606ec14f532eeff1c3740abd520a09bf886b005ec427a730bfbd1086093b4b7a6c3 WHIRLPOOL 068f283095fbe0bc417fd2856cc30be867001708e8d9b8daaa3a1027995bc0a2ef2ab7a9fa6bcc3fb892628e597fb55e1bc5a3795d609650c5c98b1c30d56e91
8433 -EBUILD portage-2.3.0_rc1-r1.ebuild 11651 SHA256 2ad29bbb196cf1aee3101e40d18b81537371358327614c1752e427ee713801fe SHA512 b289f6fb24e159ad99248438739607d5e670b1c3d5353d64708e4751961e249d81a9fabf7fe3fc274533982aeca96c091f5cb2787af7a6030d18b313d3172728 WHIRLPOOL 77b92fbecfc492aef0edeffc1742dc839bbe21fae0b6308c9f91bb96909b17d97933c15b2cacf7ec746847c63a376c280ecb28b293e7e1876df657ed3b4841b0
8434 -EBUILD portage-2.3.1.ebuild 11594 SHA256 8551819a28d41a6fb7e291e37bf9289efa329dc0addb21b7a729cbabdd96aa65 SHA512 c864bf3a6a916a9865738de504dfeef82ffe48177c1635b7a6dd4e3dcec3e78daa33be5ff6fb6edc15e5e91b8551046ff0a318579ee60f40fc1d96ad1614619a WHIRLPOOL 46a0652cf699e0c3435a7a8ba3c09705ea53b030f501bfec267a0f4020c908817e35c05b5d278791657739892f7b6e078c48107a5f1a6d05dde78b5e4f4d6eb3
8435 -EBUILD portage-2.3.2.ebuild 11529 SHA256 cce0948c655eed88b0e3e0e9dc283cb05a47c778440cd4b576796a680cb84a52 SHA512 791ce4506b24ced68dd0d09cf5cf9a1fac08b11b6b3b1dfd13831c2b2276db7d701c08b03771732e59b710c7bbd2b5cb0d92942c81123d3dfc070716ab4fefdf WHIRLPOOL b528eee31f6721e680739db5486afbf6982d01329611cc402f048ceffbae6ac550def47ce378608fdbcf7ff8c781ad00cb249bfae7c97f1d60313dc91eb5bd6a
8436 -EBUILD portage-2.3.3.ebuild 11722 SHA256 fd2c2aaccee660e0848ceedb6d29b9a72fa32e29bb0b86a74374232e02d47f19 SHA512 60d1d6ac07fb20be233c1709e03b49d557388563a3ee7f58a9fe313ddf7c7de6bcc8ebdf98a40d0088ad087a9d9359ad03563b826f4628a4e2cc6779668bfdf0 WHIRLPOOL 64a9af3696a3c601ef7a72e5c6055bbc821e07e7be892047b94da5c8008e40acb13510ab34711d651aebf77e6741005ee32c2e67be5b1d27759700662d8cfa0e
8437 -MISC metadata.xml 1017 SHA256 78bf0d7e87b917ab6eb9c43835c9c688dc3c5ab0a1043608448e12e6bad715bc SHA512 40315f8375409a6e8b86b2d11dc33b28a019911348d66f05fdd1194a4f0859f3f2ebf9c6922b795194669d992901c1fdda4cd147100979a7f661915c4094fd35 WHIRLPOOL c2817f5c0005da6f1bf0ecb8d1bde9a6b9379e3022b9e456ee5e932974493a0454166e0113092aae7de2725b0718b3cd10e05ba25012b321644403ab0677c166
8438
8439 diff --git a/sys-apps/portage/files/2.3.1-doc-Revert-URI-changes-related-to-docbook-schema.patch b/sys-apps/portage/files/2.3.1-doc-Revert-URI-changes-related-to-docbook-schema.patch
8440 deleted file mode 100644
8441 index ee191ff..0000000
8442 --- a/sys-apps/portage/files/2.3.1-doc-Revert-URI-changes-related-to-docbook-schema.patch
8443 +++ /dev/null
8444 @@ -1,39 +0,0 @@
8445 -From 35863a80b915939aac3ce6bf017d942cac879df8 Mon Sep 17 00:00:00 2001
8446 -From: Mike Gilbert <floppym@g.o>
8447 -Date: Wed, 20 Jul 2016 12:30:05 -0400
8448 -Subject: [PATCH] doc: Revert URI changes related to docbook schema
8449 -
8450 -This partially reverts b5365341dad167e314023df95d2c5e0f955962f0.
8451 -
8452 -X-Gentoo-Bug: 589210
8453 -X-Gentoo-Bug-URL: https://bugs.gentoo.org/589210
8454 ----
8455 - doc/custom.xsl | 2 +-
8456 - doc/portage.docbook | 2 +-
8457 - 2 files changed, 2 insertions(+), 2 deletions(-)
8458 -
8459 -diff --git a/doc/custom.xsl b/doc/custom.xsl
8460 -index 11a2b9e..a7763ec 100644
8461 ---- a/doc/custom.xsl
8462 -+++ b/doc/custom.xsl
8463 -@@ -1,4 +1,4 @@
8464 --<xsl:stylesheet xmlns:xsl="https://www.w3.org/1999/XSL/Transform" version="1.0">
8465 -+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
8466 - <xsl:param name="toc.section.depth" select="20"/>
8467 - <xsl:param name="chunk.section.depth" select="2"/>
8468 - <xsl:param name="generate.section.toc.level" select="2"/>
8469 -diff --git a/doc/portage.docbook b/doc/portage.docbook
8470 -index f7d539a..811544f 100644
8471 ---- a/doc/portage.docbook
8472 -+++ b/doc/portage.docbook
8473 -@@ -1,6 +1,6 @@
8474 - <?xml version="1.0" encoding="UTF-8"?>
8475 - <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V4.4//EN"
8476 -- "https://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
8477 -+ "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
8478 -
8479 - <!ENTITY date SYSTEM "fragment/date">
8480 - <!ENTITY version SYSTEM "fragment/version">
8481 ---
8482 -2.10.0
8483 -
8484
8485 diff --git a/sys-apps/portage/files/README.RESCUE b/sys-apps/portage/files/README.RESCUE
8486 deleted file mode 100644
8487 index 70c494e..0000000
8488 --- a/sys-apps/portage/files/README.RESCUE
8489 +++ /dev/null
8490 @@ -1,2 +0,0 @@
8491 -Please see http://www.gentoo.org/proj/en/portage/doc/manually-fixing-portage.xml
8492 -for a recovery guide for a broken portage installation.
8493
8494 diff --git a/sys-apps/portage/files/portage-2.3.0-ldconfig-path.patch b/sys-apps/portage/files/portage-2.3.0-ldconfig-path.patch
8495 deleted file mode 100644
8496 index 335d0cd..0000000
8497 --- a/sys-apps/portage/files/portage-2.3.0-ldconfig-path.patch
8498 +++ /dev/null
8499 @@ -1,34 +0,0 @@
8500 -commit c70609e72f7eef422af122543d66c595ee139719
8501 -Author: Benda Xu <heroxbd@g.o>
8502 -Date: Mon Jun 20 09:12:35 2016 +0900
8503 -
8504 - let env-update call ldconfig if it exists
8505 -
8506 - In Prefix, let env-update call ldconfig if it exists.
8507 -
8508 - It does not affect prefix-rpath, and handles prefix-libc(RAP) correctly.
8509 -
8510 -diff --git a/pym/portage/util/env_update.py b/pym/portage/util/env_update.py
8511 -index c0a93a8..fde2f66 100644
8512 ---- a/pym/portage/util/env_update.py
8513 -+++ b/pym/portage/util/env_update.py
8514 -@@ -306,13 +306,17 @@ def _env_update(makelinks, target_root, prev_mtimes, contents, env,
8515 - if not libdir_contents_changed:
8516 - makelinks = False
8517 -
8518 -- ldconfig = "/sbin/ldconfig"
8519 - if "CHOST" in settings and "CBUILD" in settings and \
8520 - settings["CHOST"] != settings["CBUILD"]:
8521 - ldconfig = find_binary("%s-ldconfig" % settings["CHOST"])
8522 -+ else:
8523 -+ ldconfig = os.path.join(eroot, "sbin", "ldconfig")
8524 -+
8525 -+ if not (os.access(ldconfig, os.X_OK) and os.path.isfile(ldconfig)):
8526 -+ ldconfig = None
8527 -
8528 - # Only run ldconfig as needed
8529 -- if makelinks and ldconfig and not eprefix:
8530 -+ if makelinks and ldconfig:
8531 - # ldconfig has very different behaviour between FreeBSD and Linux
8532 - if ostype == "Linux" or ostype.lower().endswith("gnu"):
8533 - # We can't update links if we haven't cleaned other versions first, as
8534
8535 diff --git a/sys-apps/portage/files/portage-2.3.0-prefix-path-only.patch b/sys-apps/portage/files/portage-2.3.0-prefix-path-only.patch
8536 deleted file mode 100644
8537 index 378b9d8..0000000
8538 --- a/sys-apps/portage/files/portage-2.3.0-prefix-path-only.patch
8539 +++ /dev/null
8540 @@ -1,44 +0,0 @@
8541 -commit b3e47525357322433126389533501c42cd092979
8542 -Author: Benda Xu <heroxbd@g.o>
8543 -Date: Sat Jun 18 14:32:07 2016 +0900
8544 -
8545 - do not use host PATH by default and prepend EPREFIX PATH.
8546 -
8547 - EPREFIX could be overridden in cross-eprefix, in that case tools
8548 - inside EPREFIX should be prioritized.
8549 -
8550 -diff --git a/pym/portage/package/ebuild/doebuild.py b/pym/portage/package/ebuild/doebuild.py
8551 -index 52dbf8b..304b164 100644
8552 ---- a/pym/portage/package/ebuild/doebuild.py
8553 -+++ b/pym/portage/package/ebuild/doebuild.py
8554 -@@ -199,16 +199,18 @@ def _doebuild_path(settings, eapi=None):
8555 - if portage_bin_path[0] != portage.const.PORTAGE_BIN_PATH:
8556 - # Add a fallback path for restarting failed builds (bug 547086)
8557 - portage_bin_path.append(portage.const.PORTAGE_BIN_PATH)
8558 -- eprefix = portage.const.EPREFIX
8559 - prerootpath = [x for x in settings.get("PREROOTPATH", "").split(":") if x]
8560 - rootpath = [x for x in settings.get("ROOTPATH", "").split(":") if x]
8561 - overrides = [x for x in settings.get(
8562 - "__PORTAGE_TEST_PATH_OVERRIDE", "").split(":") if x]
8563 -
8564 - prefixes = []
8565 -- if eprefix:
8566 -- prefixes.append(eprefix)
8567 -- prefixes.append("/")
8568 -+ # tools in EPREFIX can only be executed when ROOT is /.
8569 -+ if settings["ROOT"] == "/":
8570 -+ prefixes.append(settings["EPREFIX"])
8571 -+ # settings["EPREFIX"] could be overridden during cross-eprefix
8572 -+ if portage.const.EPREFIX != settings["EPREFIX"]:
8573 -+ prefixes.append(portage.const.EPREFIX)
8574 -
8575 - path = overrides
8576 -
8577 -@@ -232,6 +234,7 @@ def _doebuild_path(settings, eapi=None):
8578 - path.extend(prerootpath)
8579 -
8580 - for prefix in prefixes:
8581 -+ prefix = prefix if prefix else "/"
8582 - for x in ("usr/local/sbin", "usr/local/bin", "usr/sbin", "usr/bin", "sbin", "bin"):
8583 - path.append(os.path.join(prefix, x))
8584 -
8585
8586 diff --git a/sys-apps/portage/files/portage-2.3.0_rc1.patch b/sys-apps/portage/files/portage-2.3.0_rc1.patch
8587 deleted file mode 100644
8588 index 8464462..0000000
8589 --- a/sys-apps/portage/files/portage-2.3.0_rc1.patch
8590 +++ /dev/null
8591 @@ -1,52 +0,0 @@
8592 -From 9ba1bea5e24fe839ef5bd833c3974a55d5333bf1 Mon Sep 17 00:00:00 2001
8593 -From: Brian Dolbec <dolsen@g.o>
8594 -Date: Mon, 16 May 2016 02:45:45 -0700
8595 -Subject: [PATCH] portage.const.py: Remove repoman from PORTAGE_PYM_PACKAGES
8596 -
8597 -Decca (in IRC) got a traceback due to the missing repoman install
8598 -
8599 -sysresccd / # emerge -e @system
8600 -Calculating dependencies... done!
8601 -Traceback (most recent call last):
8602 - File "/usr/lib/python-exec/python3.5/emerge", line 50, in <module>
8603 - retval = emerge_main()
8604 - File "/usr/lib64/python3.5/site-packages/_emerge/main.py", line 1185, in emerge_main
8605 - return run_action(emerge_config)
8606 - File "/usr/lib64/python3.5/site-packages/_emerge/actions.py", line 3236, in run_action
8607 - emerge_config.args, spinner)
8608 - File "/usr/lib64/python3.5/site-packages/_emerge/actions.py", line 505, in action_build
8609 - retval = mergetask.merge()
8610 - File "/usr/lib64/python3.5/site-packages/_emerge/Scheduler.py", line 958, in merge
8611 - rval = self._handle_self_update()
8612 - File "/usr/lib64/python3.5/site-packages/_emerge/Scheduler.py", line 323, in _handle_self_update
8613 - _prepare_self_update(self.settings)
8614 - File "/usr/lib64/python3.5/site-packages/portage/package/ebuild/doebuild.py", line 2489, in _prepare_self_update
8615 - symlinks=True)
8616 - File "/usr/lib64/python3.5/site-packages/portage/__init__.py", line 259, in __call__
8617 - rval = self._func(*wrapped_args, **wrapped_kwargs)
8618 - File "/usr/lib64/python3.5/shutil.py", line 303, in copytree
8619 - names = os.listdir(src)
8620 -FileNotFoundError: [Errno 2] No such file or directory: b'/usr/lib64/python3.5/site-packages/repoman'
8621 -
8622 -Dirkjan <djc> found repoman was still included in the PORTAGE_PYM_PACKAGES which
8623 -caused the traceback.
8624 ----
8625 - pym/portage/const.py | 2 +-
8626 - 1 file changed, 1 insertion(+), 1 deletion(-)
8627 -
8628 -diff --git a/pym/portage/const.py b/pym/portage/const.py
8629 -index 814d7f4..179efce 100644
8630 ---- a/pym/portage/const.py
8631 -+++ b/pym/portage/const.py
8632 -@@ -278,7 +278,7 @@ SUPPORTED_XPAK_EXTENSIONS = (".tbz2", ".xpak")
8633 - TIMESTAMP_FORMAT = "%a, %d %b %Y %H:%M:%S +0000" # to be used with time.gmtime()
8634 -
8635 - # Top-level names of Python packages installed by Portage.
8636 --PORTAGE_PYM_PACKAGES = ("_emerge", "portage", "repoman")
8637 -+PORTAGE_PYM_PACKAGES = ("_emerge", "portage")
8638 -
8639 - RETURNCODE_POSTINST_FAILURE = 5
8640 -
8641 ---
8642 -2.8.2
8643 -
8644
8645 diff --git a/sys-apps/portage/metadata.xml b/sys-apps/portage/metadata.xml
8646 deleted file mode 100644
8647 index 4d95e14..0000000
8648 --- a/sys-apps/portage/metadata.xml
8649 +++ /dev/null
8650 @@ -1,20 +0,0 @@
8651 -<?xml version="1.0" encoding="UTF-8"?>
8652 -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
8653 -<pkgmetadata>
8654 - <upstream>
8655 - <bugs-to>mailto:dev-portage@g.o</bugs-to>
8656 - <changelog>https://gitweb.gentoo.org/proj/portage.git/plain/RELEASE-NOTES</changelog>
8657 - <doc>https://wiki.gentoo.org/wiki/Handbook:AMD64/Working/Portage</doc>
8658 - </upstream>
8659 - <maintainer type="project">
8660 - <email>dev-portage@g.o</email>
8661 - </maintainer>
8662 - <use>
8663 - <flag name="epydoc">Build html API documentation with epydoc.</flag>
8664 - <flag name="ipc">Use inter-process communication between portage and running ebuilds.</flag>
8665 - <flag name="pypy2_0">Use pypy-c2.0 as Python interpreter.</flag>
8666 - <flag name="python2">Use python2 as Python interpreter.</flag>
8667 - <flag name="python3">Use python3 as Python interpreter.</flag>
8668 - <flag name="xattr">Preserve extended attributes (filesystem-stored metadata) when installing files. Usually only required for hardened systems.</flag>
8669 - </use>
8670 -</pkgmetadata>
8671
8672 diff --git a/sys-apps/portage/portage-2.3.0.ebuild b/sys-apps/portage/portage-2.3.0.ebuild
8673 deleted file mode 100644
8674 index e4f475c..0000000
8675 --- a/sys-apps/portage/portage-2.3.0.ebuild
8676 +++ /dev/null
8677 @@ -1,364 +0,0 @@
8678 -# Copyright 1999-2016 Gentoo Foundation
8679 -# Distributed under the terms of the GNU General Public License v2
8680 -# $Id$
8681 -
8682 -EAPI=5
8683 -
8684 -PYTHON_COMPAT=(
8685 - pypy
8686 - python3_3 python3_4 python3_5
8687 - python2_7
8688 -)
8689 -PYTHON_REQ_USE='bzip2(+)'
8690 -
8691 -inherit distutils-r1 multilib
8692 -
8693 -DESCRIPTION="Portage is the package management and distribution system for Gentoo"
8694 -HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage"
8695 -
8696 -LICENSE="GPL-2"
8697 -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
8698 -SLOT="0"
8699 -IUSE="build doc epydoc +ipc linguas_ru selinux xattr"
8700 -
8701 -DEPEND="!build? ( $(python_gen_impl_dep 'ssl(+)') )
8702 - >=app-arch/tar-1.27
8703 - dev-lang/python-exec:2
8704 - >=sys-apps/sed-4.0.5 sys-devel/patch
8705 - doc? ( app-text/xmlto ~app-text/docbook-xml-dtd-4.4 )
8706 - epydoc? ( >=dev-python/epydoc-2.0[$(python_gen_usedep 'python2*')] )"
8707 -# Require sandbox-2.2 for bug #288863.
8708 -# For xattr, we can spawn getfattr and setfattr from sys-apps/attr, but that's
8709 -# quite slow, so it's not considered in the dependencies as an alternative to
8710 -# to python-3.3 / pyxattr. Also, xattr support is only tested with Linux, so
8711 -# for now, don't pull in xattr deps for other kernels.
8712 -# For whirlpool hash, require python[ssl] (bug #425046).
8713 -# For compgen, require bash[readline] (bug #445576).
8714 -RDEPEND="
8715 - >=app-arch/tar-1.27
8716 - dev-lang/python-exec:2
8717 - !build? (
8718 - >=sys-apps/sed-4.0.5
8719 - app-shells/bash:0[readline]
8720 - >=app-admin/eselect-1.2
8721 - )
8722 - elibc_FreeBSD? ( sys-freebsd/freebsd-bin )
8723 - elibc_glibc? ( >=sys-apps/sandbox-2.2 )
8724 - elibc_uclibc? ( >=sys-apps/sandbox-2.2 )
8725 - >=app-misc/pax-utils-0.1.17
8726 - selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
8727 - xattr? ( kernel_linux? (
8728 - >=sys-apps/install-xattr-0.3
8729 - $(python_gen_cond_dep 'dev-python/pyxattr[${PYTHON_USEDEP}]' \
8730 - python2_7 pypy)
8731 - ) )
8732 - !<app-admin/logrotate-3.8.0"
8733 -PDEPEND="
8734 - !build? (
8735 - >=net-misc/rsync-2.6.4
8736 - userland_GNU? ( >=sys-apps/coreutils-6.4 )
8737 - )"
8738 -# coreutils-6.4 rdep is for date format in emerge-webrsync #164532
8739 -# NOTE: FEATURES=installsources requires debugedit and rsync
8740 -
8741 -REQUIRED_USE="epydoc? ( $(python_gen_useflags 'python2*') )"
8742 -
8743 -SRC_ARCHIVES="https://dev.gentoo.org/~dolsen/releases/portage"
8744 -
8745 -prefix_src_archives() {
8746 - local x y
8747 - for x in ${@}; do
8748 - for y in ${SRC_ARCHIVES}; do
8749 - echo ${y}/${x}
8750 - done
8751 - done
8752 -}
8753 -
8754 -TARBALL_PV=${PV}
8755 -SRC_URI="mirror://gentoo/${PN}-${TARBALL_PV}.tar.bz2
8756 - $(prefix_src_archives ${PN}-${TARBALL_PV}.tar.bz2)"
8757 -
8758 -PATCHES=( "${FILESDIR}"/${PN}-2.3.0-ldconfig-path.patch
8759 - "${FILESDIR}"/${PN}-2.3.0-prefix-path-only.patch )
8760 -
8761 -pkg_setup() {
8762 - use epydoc && DISTUTILS_ALL_SUBPHASE_IMPLS=( python2.7 )
8763 -}
8764 -
8765 -python_prepare_all() {
8766 - distutils-r1_python_prepare_all
8767 -
8768 - if ! use ipc ; then
8769 - einfo "Disabling ipc..."
8770 - sed -e "s:_enable_ipc_daemon = True:_enable_ipc_daemon = False:" \
8771 - -i pym/_emerge/AbstractEbuildProcess.py || \
8772 - die "failed to patch AbstractEbuildProcess.py"
8773 - fi
8774 -
8775 - if use xattr && use kernel_linux ; then
8776 - einfo "Adding FEATURES=xattr to make.globals ..."
8777 - echo -e '\nFEATURES="${FEATURES} xattr"' >> cnf/make.globals \
8778 - || die "failed to append to make.globals"
8779 - fi
8780 -
8781 - if [[ -n ${EPREFIX} ]] ; then
8782 - einfo "Setting portage.const.EPREFIX ..."
8783 - sed -e "s|^\(SANDBOX_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/sandbox\"\)|\\1${EPREFIX}\\2|" \
8784 - -e "s|^\(FAKEROOT_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/fakeroot\"\)|\\1${EPREFIX}\\2|" \
8785 - -e "s|^\(BASH_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/bash\"\)|\\1${EPREFIX}\\2|" \
8786 - -e "s|^\(MOVE_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/mv\"\)|\\1${EPREFIX}\\2|" \
8787 - -e "s|^\(PRELINK_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/sbin/prelink\"\)|\\1${EPREFIX}\\2|" \
8788 - -e "s|^\(EPREFIX[[:space:]]*=[[:space:]]*\"\).*|\\1${EPREFIX}\"|" \
8789 - -i pym/portage/const.py || \
8790 - die "Failed to patch portage.const.EPREFIX"
8791 -
8792 - einfo "Prefixing shebangs ..."
8793 - while read -r -d $'\0' ; do
8794 - local shebang=$(head -n1 "$REPLY")
8795 - if [[ ${shebang} == "#!"* && ! ${shebang} == "#!${EPREFIX}/"* ]] ; then
8796 - sed -i -e "1s:.*:#!${EPREFIX}${shebang:2}:" "$REPLY" || \
8797 - die "sed failed"
8798 - fi
8799 - done < <(find . -type f -print0)
8800 -
8801 - einfo "Adjusting make.globals ..."
8802 - sed -e "s|\(/usr/portage\)|${EPREFIX}\\1|" \
8803 - -e "s|^\(PORTAGE_TMPDIR=\"\)\(/var/tmp\"\)|\\1${EPREFIX}\\2|" \
8804 - -i cnf/make.globals || die "sed failed"
8805 -
8806 - einfo "Adjusting repos.conf ..."
8807 - sed -e "s|^\(location = \)\(/usr/portage\)|\\1${EPREFIX}\\2|" \
8808 - -i cnf/repos.conf || die "sed failed"
8809 -
8810 - einfo "Adding FEATURES=force-prefix to make.globals ..."
8811 - echo -e '\nFEATURES="${FEATURES} force-prefix"' >> cnf/make.globals \
8812 - || die "failed to append to make.globals"
8813 - fi
8814 -
8815 - cd "${S}/cnf" || die
8816 - if [ -f "make.conf.example.${ARCH}".diff ]; then
8817 - patch make.conf.example "make.conf.example.${ARCH}".diff || \
8818 - die "Failed to patch make.conf.example"
8819 - else
8820 - eerror ""
8821 - eerror "Portage does not have an arch-specific configuration for this arch."
8822 - eerror "Please notify the arch maintainer about this issue. Using generic."
8823 - eerror ""
8824 - fi
8825 -}
8826 -
8827 -python_compile_all() {
8828 - local targets=()
8829 - use doc && targets+=( docbook )
8830 - use epydoc && targets+=( epydoc )
8831 -
8832 - if [[ ${targets[@]} ]]; then
8833 - esetup.py "${targets[@]}"
8834 - fi
8835 -}
8836 -
8837 -python_test() {
8838 - esetup.py test
8839 -}
8840 -
8841 -python_install() {
8842 - # Install sbin scripts to bindir for python-exec linking
8843 - # they will be relocated in pkg_preinst()
8844 - distutils-r1_python_install \
8845 - --system-prefix="${EPREFIX}/usr" \
8846 - --bindir="$(python_get_scriptdir)" \
8847 - --docdir="${EPREFIX}/usr/share/doc/${PF}" \
8848 - --htmldir="${EPREFIX}/usr/share/doc/${PF}/html" \
8849 - --portage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}" \
8850 - --sbindir="$(python_get_scriptdir)" \
8851 - --sysconfdir="${EPREFIX}/etc" \
8852 - "${@}"
8853 -}
8854 -
8855 -python_install_all() {
8856 - distutils-r1_python_install_all
8857 -
8858 - local targets=()
8859 - use doc && targets+=( install_docbook )
8860 - use epydoc && targets+=( install_epydoc )
8861 -
8862 - # install docs
8863 - if [[ ${targets[@]} ]]; then
8864 - esetup.py "${targets[@]}"
8865 - fi
8866 -
8867 - # Due to distutils/python-exec limitations
8868 - # these must be installed to /usr/bin.
8869 - local sbin_relocations='archive-conf dispatch-conf emaint env-update etc-update fixpackages regenworld'
8870 - einfo "Moving admin scripts to the correct directory"
8871 - dodir /usr/sbin
8872 - for target in ${sbin_relocations}; do
8873 - einfo "Moving /usr/bin/${target} to /usr/sbin/${target}"
8874 - mv "${ED}usr/bin/${target}" "${ED}usr/sbin/${target}" || die "sbin scripts move failed!"
8875 - done
8876 -}
8877 -
8878 -pkg_preinst() {
8879 - # comment out sanity test until it is fixed to work
8880 - # with the new PORTAGE_PYM_PATH
8881 - #if [[ $ROOT == / ]] ; then
8882 - ## Run some minimal tests as a sanity check.
8883 - #local test_runner=$(find "${ED}" -name runTests)
8884 - #if [[ -n $test_runner && -x $test_runner ]] ; then
8885 - #einfo "Running preinst sanity tests..."
8886 - #"$test_runner" || die "preinst sanity tests failed"
8887 - #fi
8888 - #fi
8889 -
8890 - # elog dir must exist to avoid logrotate error for bug #415911.
8891 - # This code runs in preinst in order to bypass the mapping of
8892 - # portage:portage to root:root which happens after src_install.
8893 - keepdir /var/log/portage/elog
8894 - # This is allowed to fail if the user/group are invalid for prefix users.
8895 - if chown portage:portage "${ED}"var/log/portage{,/elog} 2>/dev/null ; then
8896 - chmod g+s,ug+rwx "${ED}"var/log/portage{,/elog}
8897 - fi
8898 -
8899 - if has_version "<${CATEGORY}/${PN}-2.1.13" || \
8900 - {
8901 - has_version ">=${CATEGORY}/${PN}-2.2_rc0" && \
8902 - has_version "<${CATEGORY}/${PN}-2.2.0_alpha189"
8903 - } ; then
8904 - USERPRIV_UPGRADE=true
8905 - USERSYNC_UPGRADE=true
8906 - REPOS_CONF_UPGRADE=true
8907 - REPOS_CONF_SYNC=
8908 - type -P portageq >/dev/null 2>&1 && \
8909 - REPOS_CONF_SYNC=$("$(type -P portageq)" envvar SYNC)
8910 - else
8911 - USERPRIV_UPGRADE=false
8912 - USERSYNC_UPGRADE=false
8913 - REPOS_CONF_UPGRADE=false
8914 - fi
8915 -}
8916 -
8917 -get_ownership() {
8918 - case ${USERLAND} in
8919 - BSD)
8920 - stat -f '%Su:%Sg' "${1}"
8921 - ;;
8922 - *)
8923 - stat -c '%U:%G' "${1}"
8924 - ;;
8925 - esac
8926 -}
8927 -
8928 -new_config_protect() {
8929 - # Generate a ._cfg file even if the target file
8930 - # does not exist, ensuring that the user will
8931 - # notice the config change.
8932 - local basename=${1##*/}
8933 - local dirname=${1%/*}
8934 - local i=0
8935 - while true ; do
8936 - local filename=$(
8937 - echo -n "${dirname}/._cfg"
8938 - printf "%04d" ${i}
8939 - echo -n "_${basename}"
8940 - )
8941 - [[ -e ${filename} ]] || break
8942 - (( i++ ))
8943 - done
8944 - echo "${filename}"
8945 -}
8946 -
8947 -pkg_postinst() {
8948 -
8949 - if ${REPOS_CONF_UPGRADE} ; then
8950 - einfo "Generating repos.conf"
8951 - local repo_name=
8952 - [[ -f ${PORTDIR}/profiles/repo_name ]] && \
8953 - repo_name=$(< "${PORTDIR}/profiles/repo_name")
8954 - if [[ -z ${REPOS_CONF_SYNC} ]] ; then
8955 - REPOS_CONF_SYNC=$(grep "^sync-uri =" "${EROOT:-${ROOT}}usr/share/portage/config/repos.conf")
8956 - REPOS_CONF_SYNC=${REPOS_CONF_SYNC##* }
8957 - fi
8958 - local sync_type=
8959 - [[ ${REPOS_CONF_SYNC} == git://* ]] && sync_type=git
8960 -
8961 - if [[ ${REPOS_CONF_SYNC} == cvs://* ]]; then
8962 - sync_type=cvs
8963 - REPOS_CONF_SYNC=${REPOS_CONF_SYNC#cvs://}
8964 - fi
8965 -
8966 - cat <<-EOF > "${T}/repos.conf"
8967 - [DEFAULT]
8968 - main-repo = ${repo_name:-gentoo}
8969 -
8970 - [${repo_name:-gentoo}]
8971 - location = ${PORTDIR:-${EPREFIX}/usr/portage}
8972 - sync-type = ${sync_type:-rsync}
8973 - sync-uri = ${REPOS_CONF_SYNC}
8974 - EOF
8975 -
8976 - [[ ${sync_type} == cvs ]] && echo "sync-cvs-repo = $(<"${PORTDIR}/CVS/Repository")" >> "${T}/repos.conf"
8977 -
8978 - local dest=${EROOT:-${ROOT}}etc/portage/repos.conf
8979 - if [[ ! -f ${dest} ]] && mkdir -p "${dest}" 2>/dev/null ; then
8980 - dest=${EROOT:-${ROOT}}etc/portage/repos.conf/${repo_name:-gentoo}.conf
8981 - fi
8982 - # Don't install the config update if the desired repos.conf directory
8983 - # and config file exist, since users may accept it blindly and break
8984 - # their config (bug #478726).
8985 - [[ -e ${EROOT:-${ROOT}}etc/portage/repos.conf/${repo_name:-gentoo}.conf ]] || \
8986 - mv "${T}/repos.conf" "$(new_config_protect "${dest}")"
8987 -
8988 - if [[ ${PORTDIR} == ${EPREFIX}/usr/portage ]] ; then
8989 - einfo "Generating make.conf PORTDIR setting for backward compatibility"
8990 - for dest in "${EROOT:-${ROOT}}etc/make.conf" "${EROOT:-${ROOT}}etc/portage/make.conf" ; do
8991 - [[ -e ${dest} ]] && break
8992 - done
8993 - [[ -d ${dest} ]] && dest=${dest}/portdir.conf
8994 - rm -rf "${T}/make.conf"
8995 - [[ -f ${dest} ]] && cat "${dest}" > "${T}/make.conf"
8996 - cat <<-EOF >> "${T}/make.conf"
8997 -
8998 - # Set PORTDIR for backward compatibility with various tools:
8999 - # gentoo-bashcomp - bug #478444
9000 - # euse - bug #474574
9001 - # euses and ufed - bug #478318
9002 - PORTDIR="${EPREFIX}/usr/portage"
9003 - EOF
9004 - mkdir -p "${dest%/*}"
9005 - mv "${T}/make.conf" "$(new_config_protect "${dest}")"
9006 - fi
9007 - fi
9008 -
9009 - local distdir=${PORTAGE_ACTUAL_DISTDIR-${DISTDIR}}
9010 -
9011 - if ${USERSYNC_UPGRADE} && \
9012 - [[ -d ${PORTDIR} && -w ${PORTDIR} ]] ; then
9013 - local ownership=$(get_ownership "${PORTDIR}")
9014 - if [[ -n ${ownership} ]] ; then
9015 - einfo "Adjusting PORTDIR permissions for usersync"
9016 - find "${PORTDIR}" -path "${distdir%/}" -prune -o \
9017 - ! \( -user "${ownership%:*}" -a -group "${ownership#*:}" \) \
9018 - -exec chown "${ownership}" {} +
9019 - fi
9020 - fi
9021 -
9022 - # Do this last, since it could take a long time if there
9023 - # are lots of live sources, and the user may be tempted
9024 - # to kill emerge while it is running.
9025 - if ${USERPRIV_UPGRADE} && \
9026 - [[ -d ${distdir} && -w ${distdir} ]] ; then
9027 - local ownership=$(get_ownership "${distdir}")
9028 - if [[ ${ownership#*:} == portage ]] ; then
9029 - einfo "Adjusting DISTDIR permissions for userpriv"
9030 - find "${distdir}" -mindepth 1 -maxdepth 1 -type d -uid 0 \
9031 - -exec chown -R portage:portage {} +
9032 - fi
9033 - fi
9034 -
9035 - einfo ""
9036 - einfo "This release of portage NO LONGER contains the repoman code base."
9037 - einfo "Repoman has its own ebuild and release package."
9038 - einfo "For repoman functionality please emerge app-portage/repoman"
9039 - einfo "Please report any bugs you may encounter."
9040 - einfo ""
9041 -}
9042
9043 diff --git a/sys-apps/portage/portage-2.3.0_rc1-r1.ebuild b/sys-apps/portage/portage-2.3.0_rc1-r1.ebuild
9044 deleted file mode 100644
9045 index 51bca3f..0000000
9046 --- a/sys-apps/portage/portage-2.3.0_rc1-r1.ebuild
9047 +++ /dev/null
9048 @@ -1,368 +0,0 @@
9049 -# Copyright 1999-2016 Gentoo Foundation
9050 -# Distributed under the terms of the GNU General Public License v2
9051 -# $Id$
9052 -
9053 -EAPI=5
9054 -
9055 -PYTHON_COMPAT=(
9056 - pypy
9057 - python3_3 python3_4 python3_5
9058 - python2_7
9059 -)
9060 -PYTHON_REQ_USE='bzip2(+)'
9061 -
9062 -inherit distutils-r1 multilib
9063 -
9064 -DESCRIPTION="Portage is the package management and distribution system for Gentoo"
9065 -HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage"
9066 -
9067 -LICENSE="GPL-2"
9068 -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
9069 -SLOT="0"
9070 -IUSE="build doc epydoc +ipc linguas_ru selinux xattr"
9071 -
9072 -DEPEND="!build? ( $(python_gen_impl_dep 'ssl(+)') )
9073 - >=app-arch/tar-1.27
9074 - dev-lang/python-exec:2
9075 - >=sys-apps/sed-4.0.5 sys-devel/patch
9076 - doc? ( app-text/xmlto ~app-text/docbook-xml-dtd-4.4 )
9077 - epydoc? ( >=dev-python/epydoc-2.0[$(python_gen_usedep 'python2*')] )"
9078 -# Require sandbox-2.2 for bug #288863.
9079 -# For xattr, we can spawn getfattr and setfattr from sys-apps/attr, but that's
9080 -# quite slow, so it's not considered in the dependencies as an alternative to
9081 -# to python-3.3 / pyxattr. Also, xattr support is only tested with Linux, so
9082 -# for now, don't pull in xattr deps for other kernels.
9083 -# For whirlpool hash, require python[ssl] (bug #425046).
9084 -# For compgen, require bash[readline] (bug #445576).
9085 -RDEPEND="
9086 - >=app-arch/tar-1.27
9087 - dev-lang/python-exec:2
9088 - !build? (
9089 - >=sys-apps/sed-4.0.5
9090 - app-shells/bash:0[readline]
9091 - >=app-admin/eselect-1.2
9092 - )
9093 - elibc_FreeBSD? ( sys-freebsd/freebsd-bin )
9094 - elibc_glibc? ( >=sys-apps/sandbox-2.2 )
9095 - elibc_uclibc? ( >=sys-apps/sandbox-2.2 )
9096 - >=app-misc/pax-utils-0.1.17
9097 - selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
9098 - xattr? ( kernel_linux? (
9099 - >=sys-apps/install-xattr-0.3
9100 - $(python_gen_cond_dep 'dev-python/pyxattr[${PYTHON_USEDEP}]' \
9101 - python2_7 pypy)
9102 - ) )
9103 - !<app-admin/logrotate-3.8.0"
9104 -PDEPEND="
9105 - !build? (
9106 - >=net-misc/rsync-2.6.4
9107 - userland_GNU? ( >=sys-apps/coreutils-6.4 )
9108 - )"
9109 -# coreutils-6.4 rdep is for date format in emerge-webrsync #164532
9110 -# NOTE: FEATURES=installsources requires debugedit and rsync
9111 -
9112 -REQUIRED_USE="epydoc? ( $(python_gen_useflags 'python2*') )"
9113 -
9114 -SRC_ARCHIVES="https://dev.gentoo.org/~dolsen/releases/portage"
9115 -
9116 -prefix_src_archives() {
9117 - local x y
9118 - for x in ${@}; do
9119 - for y in ${SRC_ARCHIVES}; do
9120 - echo ${y}/${x}
9121 - done
9122 - done
9123 -}
9124 -
9125 -TARBALL_PV=${PV}
9126 -SRC_URI="mirror://gentoo/${PN}-${TARBALL_PV}.tar.bz2
9127 - $(prefix_src_archives ${PN}-${TARBALL_PV}.tar.bz2)"
9128 -
9129 -PATCHES=("${FILESDIR}/portage-2.3.0_rc1.patch"
9130 - "${FILESDIR}"/${PN}-2.2.28-distcc-eprefix.patch
9131 - "${FILESDIR}"/${PN}-2.3.0-scanelf-path.patch
9132 - "${FILESDIR}"/${PN}-2.3.0-prefix-path-only.patch
9133 - "${FILESDIR}"/${PN}-2.3.0-ldconfig-path.patch
9134 -)
9135 -
9136 -pkg_setup() {
9137 - use epydoc && DISTUTILS_ALL_SUBPHASE_IMPLS=( python2.7 )
9138 -}
9139 -
9140 -python_prepare_all() {
9141 - distutils-r1_python_prepare_all
9142 -
9143 - if ! use ipc ; then
9144 - einfo "Disabling ipc..."
9145 - sed -e "s:_enable_ipc_daemon = True:_enable_ipc_daemon = False:" \
9146 - -i pym/_emerge/AbstractEbuildProcess.py || \
9147 - die "failed to patch AbstractEbuildProcess.py"
9148 - fi
9149 -
9150 - if use xattr && use kernel_linux ; then
9151 - einfo "Adding FEATURES=xattr to make.globals ..."
9152 - echo -e '\nFEATURES="${FEATURES} xattr"' >> cnf/make.globals \
9153 - || die "failed to append to make.globals"
9154 - fi
9155 -
9156 - if [[ -n ${EPREFIX} ]] ; then
9157 - einfo "Setting portage.const.EPREFIX ..."
9158 - sed -e "s|^\(SANDBOX_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/sandbox\"\)|\\1${EPREFIX}\\2|" \
9159 - -e "s|^\(FAKEROOT_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/fakeroot\"\)|\\1${EPREFIX}\\2|" \
9160 - -e "s|^\(BASH_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/bash\"\)|\\1${EPREFIX}\\2|" \
9161 - -e "s|^\(MOVE_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/mv\"\)|\\1${EPREFIX}\\2|" \
9162 - -e "s|^\(PRELINK_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/sbin/prelink\"\)|\\1${EPREFIX}\\2|" \
9163 - -e "s|^\(EPREFIX[[:space:]]*=[[:space:]]*\"\).*|\\1${EPREFIX}\"|" \
9164 - -i pym/portage/const.py || \
9165 - die "Failed to patch portage.const.EPREFIX"
9166 -
9167 - einfo "Prefixing shebangs ..."
9168 - while read -r -d $'\0' ; do
9169 - local shebang=$(head -n1 "$REPLY")
9170 - if [[ ${shebang} == "#!"* && ! ${shebang} == "#!${EPREFIX}/"* ]] ; then
9171 - sed -i -e "1s:.*:#!${EPREFIX}${shebang:2}:" "$REPLY" || \
9172 - die "sed failed"
9173 - fi
9174 - done < <(find . -type f -print0)
9175 -
9176 - einfo "Adjusting make.globals ..."
9177 - sed -e "s|\(/usr/portage\)|${EPREFIX}\\1|" \
9178 - -e "s|^\(PORTAGE_TMPDIR=\"\)\(/var/tmp\"\)|\\1${EPREFIX}\\2|" \
9179 - -i cnf/make.globals || die "sed failed"
9180 -
9181 - einfo "Adjusting repos.conf ..."
9182 - sed -e "s|^\(location = \)\(/usr/portage\)|\\1${EPREFIX}\\2|" \
9183 - -i cnf/repos.conf || die "sed failed"
9184 -
9185 - einfo "Adding FEATURES=force-prefix to make.globals ..."
9186 - echo -e '\nFEATURES="${FEATURES} force-prefix"' >> cnf/make.globals \
9187 - || die "failed to append to make.globals"
9188 - fi
9189 -
9190 - cd "${S}/cnf" || die
9191 - if [ -f "make.conf.example.${ARCH}".diff ]; then
9192 - patch make.conf.example "make.conf.example.${ARCH}".diff || \
9193 - die "Failed to patch make.conf.example"
9194 - else
9195 - eerror ""
9196 - eerror "Portage does not have an arch-specific configuration for this arch."
9197 - eerror "Please notify the arch maintainer about this issue. Using generic."
9198 - eerror ""
9199 - fi
9200 -}
9201 -
9202 -python_compile_all() {
9203 - local targets=()
9204 - use doc && targets+=( docbook )
9205 - use epydoc && targets+=( epydoc )
9206 -
9207 - if [[ ${targets[@]} ]]; then
9208 - esetup.py "${targets[@]}"
9209 - fi
9210 -}
9211 -
9212 -python_test() {
9213 - esetup.py test
9214 -}
9215 -
9216 -python_install() {
9217 - # Install sbin scripts to bindir for python-exec linking
9218 - # they will be relocated in pkg_preinst()
9219 - distutils-r1_python_install \
9220 - --system-prefix="${EPREFIX}/usr" \
9221 - --bindir="$(python_get_scriptdir)" \
9222 - --docdir="${EPREFIX}/usr/share/doc/${PF}" \
9223 - --htmldir="${EPREFIX}/usr/share/doc/${PF}/html" \
9224 - --portage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}" \
9225 - --sbindir="$(python_get_scriptdir)" \
9226 - --sysconfdir="${EPREFIX}/etc" \
9227 - "${@}"
9228 -}
9229 -
9230 -python_install_all() {
9231 - distutils-r1_python_install_all
9232 -
9233 - local targets=()
9234 - use doc && targets+=( install_docbook )
9235 - use epydoc && targets+=( install_epydoc )
9236 -
9237 - # install docs
9238 - if [[ ${targets[@]} ]]; then
9239 - esetup.py "${targets[@]}"
9240 - fi
9241 -
9242 - # Due to distutils/python-exec limitations
9243 - # these must be installed to /usr/bin.
9244 - local sbin_relocations='archive-conf dispatch-conf emaint env-update etc-update fixpackages regenworld'
9245 - einfo "Moving admin scripts to the correct directory"
9246 - dodir /usr/sbin
9247 - for target in ${sbin_relocations}; do
9248 - einfo "Moving /usr/bin/${target} to /usr/sbin/${target}"
9249 - mv "${ED}usr/bin/${target}" "${ED}usr/sbin/${target}" || die "sbin scripts move failed!"
9250 - done
9251 -}
9252 -
9253 -pkg_preinst() {
9254 - # comment out sanity test until it is fixed to work
9255 - # with the new PORTAGE_PYM_PATH
9256 - #if [[ $ROOT == / ]] ; then
9257 - ## Run some minimal tests as a sanity check.
9258 - #local test_runner=$(find "${ED}" -name runTests)
9259 - #if [[ -n $test_runner && -x $test_runner ]] ; then
9260 - #einfo "Running preinst sanity tests..."
9261 - #"$test_runner" || die "preinst sanity tests failed"
9262 - #fi
9263 - #fi
9264 -
9265 - # elog dir must exist to avoid logrotate error for bug #415911.
9266 - # This code runs in preinst in order to bypass the mapping of
9267 - # portage:portage to root:root which happens after src_install.
9268 - keepdir /var/log/portage/elog
9269 - # This is allowed to fail if the user/group are invalid for prefix users.
9270 - if chown portage:portage "${ED}"var/log/portage{,/elog} 2>/dev/null ; then
9271 - chmod g+s,ug+rwx "${ED}"var/log/portage{,/elog}
9272 - fi
9273 -
9274 - if has_version "<${CATEGORY}/${PN}-2.1.13" || \
9275 - {
9276 - has_version ">=${CATEGORY}/${PN}-2.2_rc0" && \
9277 - has_version "<${CATEGORY}/${PN}-2.2.0_alpha189"
9278 - } ; then
9279 - USERPRIV_UPGRADE=true
9280 - USERSYNC_UPGRADE=true
9281 - REPOS_CONF_UPGRADE=true
9282 - REPOS_CONF_SYNC=
9283 - type -P portageq >/dev/null 2>&1 && \
9284 - REPOS_CONF_SYNC=$("$(type -P portageq)" envvar SYNC)
9285 - else
9286 - USERPRIV_UPGRADE=false
9287 - USERSYNC_UPGRADE=false
9288 - REPOS_CONF_UPGRADE=false
9289 - fi
9290 -}
9291 -
9292 -get_ownership() {
9293 - case ${USERLAND} in
9294 - BSD)
9295 - stat -f '%Su:%Sg' "${1}"
9296 - ;;
9297 - *)
9298 - stat -c '%U:%G' "${1}"
9299 - ;;
9300 - esac
9301 -}
9302 -
9303 -new_config_protect() {
9304 - # Generate a ._cfg file even if the target file
9305 - # does not exist, ensuring that the user will
9306 - # notice the config change.
9307 - local basename=${1##*/}
9308 - local dirname=${1%/*}
9309 - local i=0
9310 - while true ; do
9311 - local filename=$(
9312 - echo -n "${dirname}/._cfg"
9313 - printf "%04d" ${i}
9314 - echo -n "_${basename}"
9315 - )
9316 - [[ -e ${filename} ]] || break
9317 - (( i++ ))
9318 - done
9319 - echo "${filename}"
9320 -}
9321 -
9322 -pkg_postinst() {
9323 -
9324 - if ${REPOS_CONF_UPGRADE} ; then
9325 - einfo "Generating repos.conf"
9326 - local repo_name=
9327 - [[ -f ${PORTDIR}/profiles/repo_name ]] && \
9328 - repo_name=$(< "${PORTDIR}/profiles/repo_name")
9329 - if [[ -z ${REPOS_CONF_SYNC} ]] ; then
9330 - REPOS_CONF_SYNC=$(grep "^sync-uri =" "${EROOT:-${ROOT}}usr/share/portage/config/repos.conf")
9331 - REPOS_CONF_SYNC=${REPOS_CONF_SYNC##* }
9332 - fi
9333 - local sync_type=
9334 - [[ ${REPOS_CONF_SYNC} == git://* ]] && sync_type=git
9335 -
9336 - if [[ ${REPOS_CONF_SYNC} == cvs://* ]]; then
9337 - sync_type=cvs
9338 - REPOS_CONF_SYNC=${REPOS_CONF_SYNC#cvs://}
9339 - fi
9340 -
9341 - cat <<-EOF > "${T}/repos.conf"
9342 - [DEFAULT]
9343 - main-repo = ${repo_name:-gentoo}
9344 -
9345 - [${repo_name:-gentoo}]
9346 - location = ${PORTDIR:-${EPREFIX}/usr/portage}
9347 - sync-type = ${sync_type:-rsync}
9348 - sync-uri = ${REPOS_CONF_SYNC}
9349 - EOF
9350 -
9351 - [[ ${sync_type} == cvs ]] && echo "sync-cvs-repo = $(<"${PORTDIR}/CVS/Repository")" >> "${T}/repos.conf"
9352 -
9353 - local dest=${EROOT:-${ROOT}}etc/portage/repos.conf
9354 - if [[ ! -f ${dest} ]] && mkdir -p "${dest}" 2>/dev/null ; then
9355 - dest=${EROOT:-${ROOT}}etc/portage/repos.conf/${repo_name:-gentoo}.conf
9356 - fi
9357 - # Don't install the config update if the desired repos.conf directory
9358 - # and config file exist, since users may accept it blindly and break
9359 - # their config (bug #478726).
9360 - [[ -e ${EROOT:-${ROOT}}etc/portage/repos.conf/${repo_name:-gentoo}.conf ]] || \
9361 - mv "${T}/repos.conf" "$(new_config_protect "${dest}")"
9362 -
9363 - if [[ ${PORTDIR} == ${EPREFIX}/usr/portage ]] ; then
9364 - einfo "Generating make.conf PORTDIR setting for backward compatibility"
9365 - for dest in "${EROOT:-${ROOT}}etc/make.conf" "${EROOT:-${ROOT}}etc/portage/make.conf" ; do
9366 - [[ -e ${dest} ]] && break
9367 - done
9368 - [[ -d ${dest} ]] && dest=${dest}/portdir.conf
9369 - rm -rf "${T}/make.conf"
9370 - [[ -f ${dest} ]] && cat "${dest}" > "${T}/make.conf"
9371 - cat <<-EOF >> "${T}/make.conf"
9372 -
9373 - # Set PORTDIR for backward compatibility with various tools:
9374 - # gentoo-bashcomp - bug #478444
9375 - # euse - bug #474574
9376 - # euses and ufed - bug #478318
9377 - PORTDIR="${EPREFIX}/usr/portage"
9378 - EOF
9379 - mkdir -p "${dest%/*}"
9380 - mv "${T}/make.conf" "$(new_config_protect "${dest}")"
9381 - fi
9382 - fi
9383 -
9384 - local distdir=${PORTAGE_ACTUAL_DISTDIR-${DISTDIR}}
9385 -
9386 - if ${USERSYNC_UPGRADE} && \
9387 - [[ -d ${PORTDIR} && -w ${PORTDIR} ]] ; then
9388 - local ownership=$(get_ownership "${PORTDIR}")
9389 - if [[ -n ${ownership} ]] ; then
9390 - einfo "Adjusting PORTDIR permissions for usersync"
9391 - find "${PORTDIR}" -path "${distdir%/}" -prune -o \
9392 - ! \( -user "${ownership%:*}" -a -group "${ownership#*:}" \) \
9393 - -exec chown "${ownership}" {} +
9394 - fi
9395 - fi
9396 -
9397 - # Do this last, since it could take a long time if there
9398 - # are lots of live sources, and the user may be tempted
9399 - # to kill emerge while it is running.
9400 - if ${USERPRIV_UPGRADE} && \
9401 - [[ -d ${distdir} && -w ${distdir} ]] ; then
9402 - local ownership=$(get_ownership "${distdir}")
9403 - if [[ ${ownership#*:} == portage ]] ; then
9404 - einfo "Adjusting DISTDIR permissions for userpriv"
9405 - find "${distdir}" -mindepth 1 -maxdepth 1 -type d -uid 0 \
9406 - -exec chown -R portage:portage {} +
9407 - fi
9408 - fi
9409 -
9410 - einfo ""
9411 - einfo "This release of portage NO LONGER contains the repoman code base."
9412 - einfo "Repoman has it's own ebuild and release package."
9413 - einfo "For repoman functionality please emerge app-portage/repoman"
9414 - einfo "Please report any bugs you may encounter."
9415 - einfo ""
9416 -}
9417
9418 diff --git a/sys-apps/portage/portage-2.3.1.ebuild b/sys-apps/portage/portage-2.3.1.ebuild
9419 deleted file mode 100644
9420 index 1e432c4..0000000
9421 --- a/sys-apps/portage/portage-2.3.1.ebuild
9422 +++ /dev/null
9423 @@ -1,367 +0,0 @@
9424 -# Copyright 1999-2016 Gentoo Foundation
9425 -# Distributed under the terms of the GNU General Public License v2
9426 -# $Id$
9427 -
9428 -EAPI=5
9429 -
9430 -PYTHON_COMPAT=(
9431 - pypy
9432 - python3_3 python3_4 python3_5
9433 - python2_7
9434 -)
9435 -PYTHON_REQ_USE='bzip2(+)'
9436 -
9437 -inherit distutils-r1 multilib
9438 -
9439 -DESCRIPTION="Portage is the package management and distribution system for Gentoo"
9440 -HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage"
9441 -
9442 -LICENSE="GPL-2"
9443 -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
9444 -SLOT="0"
9445 -IUSE="build doc epydoc +ipc linguas_ru selinux xattr"
9446 -
9447 -DEPEND="!build? ( $(python_gen_impl_dep 'ssl(+)') )
9448 - >=app-arch/tar-1.27
9449 - dev-lang/python-exec:2
9450 - >=sys-apps/sed-4.0.5 sys-devel/patch
9451 - doc? ( app-text/xmlto ~app-text/docbook-xml-dtd-4.4 )
9452 - epydoc? ( >=dev-python/epydoc-2.0[$(python_gen_usedep 'python2*')] )"
9453 -# Require sandbox-2.2 for bug #288863.
9454 -# For xattr, we can spawn getfattr and setfattr from sys-apps/attr, but that's
9455 -# quite slow, so it's not considered in the dependencies as an alternative to
9456 -# to python-3.3 / pyxattr. Also, xattr support is only tested with Linux, so
9457 -# for now, don't pull in xattr deps for other kernels.
9458 -# For whirlpool hash, require python[ssl] (bug #425046).
9459 -# For compgen, require bash[readline] (bug #445576).
9460 -RDEPEND="
9461 - >=app-arch/tar-1.27
9462 - dev-lang/python-exec:2
9463 - !build? (
9464 - >=sys-apps/sed-4.0.5
9465 - app-shells/bash:0[readline]
9466 - >=app-admin/eselect-1.2
9467 - )
9468 - elibc_FreeBSD? ( sys-freebsd/freebsd-bin )
9469 - elibc_glibc? ( >=sys-apps/sandbox-2.2 )
9470 - elibc_uclibc? ( >=sys-apps/sandbox-2.2 )
9471 - >=app-misc/pax-utils-0.1.17
9472 - selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
9473 - xattr? ( kernel_linux? (
9474 - >=sys-apps/install-xattr-0.3
9475 - $(python_gen_cond_dep 'dev-python/pyxattr[${PYTHON_USEDEP}]' \
9476 - python2_7 pypy)
9477 - ) )
9478 - !<app-admin/logrotate-3.8.0"
9479 -PDEPEND="
9480 - !build? (
9481 - >=net-misc/rsync-2.6.4
9482 - userland_GNU? ( >=sys-apps/coreutils-6.4 )
9483 - )"
9484 -# coreutils-6.4 rdep is for date format in emerge-webrsync #164532
9485 -# NOTE: FEATURES=installsources requires debugedit and rsync
9486 -
9487 -REQUIRED_USE="epydoc? ( $(python_gen_useflags 'python2*') )"
9488 -
9489 -SRC_ARCHIVES="https://dev.gentoo.org/~dolsen/releases/portage"
9490 -
9491 -prefix_src_archives() {
9492 - local x y
9493 - for x in ${@}; do
9494 - for y in ${SRC_ARCHIVES}; do
9495 - echo ${y}/${x}
9496 - done
9497 - done
9498 -}
9499 -
9500 -TARBALL_PV=${PV}
9501 -SRC_URI="mirror://gentoo/${PN}-${TARBALL_PV}.tar.bz2
9502 - $(prefix_src_archives ${PN}-${TARBALL_PV}.tar.bz2)"
9503 -
9504 -PATCHES=(
9505 - "${FILESDIR}/2.3.1-doc-Revert-URI-changes-related-to-docbook-schema.patch"
9506 - "${FILESDIR}"/${PN}-2.3.0-ldconfig-path.patch
9507 - "${FILESDIR}"/${PN}-2.3.0-prefix-path-only.patch
9508 -)
9509 -
9510 -pkg_setup() {
9511 - use epydoc && DISTUTILS_ALL_SUBPHASE_IMPLS=( python2.7 )
9512 -}
9513 -
9514 -python_prepare_all() {
9515 - distutils-r1_python_prepare_all
9516 -
9517 - if ! use ipc ; then
9518 - einfo "Disabling ipc..."
9519 - sed -e "s:_enable_ipc_daemon = True:_enable_ipc_daemon = False:" \
9520 - -i pym/_emerge/AbstractEbuildProcess.py || \
9521 - die "failed to patch AbstractEbuildProcess.py"
9522 - fi
9523 -
9524 - if use xattr && use kernel_linux ; then
9525 - einfo "Adding FEATURES=xattr to make.globals ..."
9526 - echo -e '\nFEATURES="${FEATURES} xattr"' >> cnf/make.globals \
9527 - || die "failed to append to make.globals"
9528 - fi
9529 -
9530 - if [[ -n ${EPREFIX} ]] ; then
9531 - einfo "Setting portage.const.EPREFIX ..."
9532 - sed -e "s|^\(SANDBOX_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/sandbox\"\)|\\1${EPREFIX}\\2|" \
9533 - -e "s|^\(FAKEROOT_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/fakeroot\"\)|\\1${EPREFIX}\\2|" \
9534 - -e "s|^\(BASH_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/bash\"\)|\\1${EPREFIX}\\2|" \
9535 - -e "s|^\(MOVE_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/mv\"\)|\\1${EPREFIX}\\2|" \
9536 - -e "s|^\(PRELINK_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/sbin/prelink\"\)|\\1${EPREFIX}\\2|" \
9537 - -e "s|^\(EPREFIX[[:space:]]*=[[:space:]]*\"\).*|\\1${EPREFIX}\"|" \
9538 - -i pym/portage/const.py || \
9539 - die "Failed to patch portage.const.EPREFIX"
9540 -
9541 - einfo "Prefixing shebangs ..."
9542 - while read -r -d $'\0' ; do
9543 - local shebang=$(head -n1 "$REPLY")
9544 - if [[ ${shebang} == "#!"* && ! ${shebang} == "#!${EPREFIX}/"* ]] ; then
9545 - sed -i -e "1s:.*:#!${EPREFIX}${shebang:2}:" "$REPLY" || \
9546 - die "sed failed"
9547 - fi
9548 - done < <(find . -type f -print0)
9549 -
9550 - einfo "Adjusting make.globals ..."
9551 - sed -e "s|\(/usr/portage\)|${EPREFIX}\\1|" \
9552 - -e "s|^\(PORTAGE_TMPDIR=\"\)\(/var/tmp\"\)|\\1${EPREFIX}\\2|" \
9553 - -i cnf/make.globals || die "sed failed"
9554 -
9555 - einfo "Adjusting repos.conf ..."
9556 - sed -e "s|^\(location = \)\(/usr/portage\)|\\1${EPREFIX}\\2|" \
9557 - -i cnf/repos.conf || die "sed failed"
9558 -
9559 - einfo "Adding FEATURES=force-prefix to make.globals ..."
9560 - echo -e '\nFEATURES="${FEATURES} force-prefix"' >> cnf/make.globals \
9561 - || die "failed to append to make.globals"
9562 - fi
9563 -
9564 - cd "${S}/cnf" || die
9565 - if [ -f "make.conf.example.${ARCH}".diff ]; then
9566 - patch make.conf.example "make.conf.example.${ARCH}".diff || \
9567 - die "Failed to patch make.conf.example"
9568 - else
9569 - eerror ""
9570 - eerror "Portage does not have an arch-specific configuration for this arch."
9571 - eerror "Please notify the arch maintainer about this issue. Using generic."
9572 - eerror ""
9573 - fi
9574 -}
9575 -
9576 -python_compile_all() {
9577 - local targets=()
9578 - use doc && targets+=( docbook )
9579 - use epydoc && targets+=( epydoc )
9580 -
9581 - if [[ ${targets[@]} ]]; then
9582 - esetup.py "${targets[@]}"
9583 - fi
9584 -}
9585 -
9586 -python_test() {
9587 - esetup.py test
9588 -}
9589 -
9590 -python_install() {
9591 - # Install sbin scripts to bindir for python-exec linking
9592 - # they will be relocated in pkg_preinst()
9593 - distutils-r1_python_install \
9594 - --system-prefix="${EPREFIX}/usr" \
9595 - --bindir="$(python_get_scriptdir)" \
9596 - --docdir="${EPREFIX}/usr/share/doc/${PF}" \
9597 - --htmldir="${EPREFIX}/usr/share/doc/${PF}/html" \
9598 - --portage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}" \
9599 - --sbindir="$(python_get_scriptdir)" \
9600 - --sysconfdir="${EPREFIX}/etc" \
9601 - "${@}"
9602 -}
9603 -
9604 -python_install_all() {
9605 - distutils-r1_python_install_all
9606 -
9607 - local targets=()
9608 - use doc && targets+=( install_docbook )
9609 - use epydoc && targets+=( install_epydoc )
9610 -
9611 - # install docs
9612 - if [[ ${targets[@]} ]]; then
9613 - esetup.py "${targets[@]}"
9614 - fi
9615 -
9616 - # Due to distutils/python-exec limitations
9617 - # these must be installed to /usr/bin.
9618 - local sbin_relocations='archive-conf dispatch-conf emaint env-update etc-update fixpackages regenworld'
9619 - einfo "Moving admin scripts to the correct directory"
9620 - dodir /usr/sbin
9621 - for target in ${sbin_relocations}; do
9622 - einfo "Moving /usr/bin/${target} to /usr/sbin/${target}"
9623 - mv "${ED}usr/bin/${target}" "${ED}usr/sbin/${target}" || die "sbin scripts move failed!"
9624 - done
9625 -}
9626 -
9627 -pkg_preinst() {
9628 - # comment out sanity test until it is fixed to work
9629 - # with the new PORTAGE_PYM_PATH
9630 - #if [[ $ROOT == / ]] ; then
9631 - ## Run some minimal tests as a sanity check.
9632 - #local test_runner=$(find "${ED}" -name runTests)
9633 - #if [[ -n $test_runner && -x $test_runner ]] ; then
9634 - #einfo "Running preinst sanity tests..."
9635 - #"$test_runner" || die "preinst sanity tests failed"
9636 - #fi
9637 - #fi
9638 -
9639 - # elog dir must exist to avoid logrotate error for bug #415911.
9640 - # This code runs in preinst in order to bypass the mapping of
9641 - # portage:portage to root:root which happens after src_install.
9642 - keepdir /var/log/portage/elog
9643 - # This is allowed to fail if the user/group are invalid for prefix users.
9644 - if chown portage:portage "${ED}"var/log/portage{,/elog} 2>/dev/null ; then
9645 - chmod g+s,ug+rwx "${ED}"var/log/portage{,/elog}
9646 - fi
9647 -
9648 - if has_version "<${CATEGORY}/${PN}-2.1.13" || \
9649 - {
9650 - has_version ">=${CATEGORY}/${PN}-2.2_rc0" && \
9651 - has_version "<${CATEGORY}/${PN}-2.2.0_alpha189"
9652 - } ; then
9653 - USERPRIV_UPGRADE=true
9654 - USERSYNC_UPGRADE=true
9655 - REPOS_CONF_UPGRADE=true
9656 - REPOS_CONF_SYNC=
9657 - type -P portageq >/dev/null 2>&1 && \
9658 - REPOS_CONF_SYNC=$("$(type -P portageq)" envvar SYNC)
9659 - else
9660 - USERPRIV_UPGRADE=false
9661 - USERSYNC_UPGRADE=false
9662 - REPOS_CONF_UPGRADE=false
9663 - fi
9664 -}
9665 -
9666 -get_ownership() {
9667 - case ${USERLAND} in
9668 - BSD)
9669 - stat -f '%Su:%Sg' "${1}"
9670 - ;;
9671 - *)
9672 - stat -c '%U:%G' "${1}"
9673 - ;;
9674 - esac
9675 -}
9676 -
9677 -new_config_protect() {
9678 - # Generate a ._cfg file even if the target file
9679 - # does not exist, ensuring that the user will
9680 - # notice the config change.
9681 - local basename=${1##*/}
9682 - local dirname=${1%/*}
9683 - local i=0
9684 - while true ; do
9685 - local filename=$(
9686 - echo -n "${dirname}/._cfg"
9687 - printf "%04d" ${i}
9688 - echo -n "_${basename}"
9689 - )
9690 - [[ -e ${filename} ]] || break
9691 - (( i++ ))
9692 - done
9693 - echo "${filename}"
9694 -}
9695 -
9696 -pkg_postinst() {
9697 -
9698 - if ${REPOS_CONF_UPGRADE} ; then
9699 - einfo "Generating repos.conf"
9700 - local repo_name=
9701 - [[ -f ${PORTDIR}/profiles/repo_name ]] && \
9702 - repo_name=$(< "${PORTDIR}/profiles/repo_name")
9703 - if [[ -z ${REPOS_CONF_SYNC} ]] ; then
9704 - REPOS_CONF_SYNC=$(grep "^sync-uri =" "${EROOT:-${ROOT}}usr/share/portage/config/repos.conf")
9705 - REPOS_CONF_SYNC=${REPOS_CONF_SYNC##* }
9706 - fi
9707 - local sync_type=
9708 - [[ ${REPOS_CONF_SYNC} == git://* ]] && sync_type=git
9709 -
9710 - if [[ ${REPOS_CONF_SYNC} == cvs://* ]]; then
9711 - sync_type=cvs
9712 - REPOS_CONF_SYNC=${REPOS_CONF_SYNC#cvs://}
9713 - fi
9714 -
9715 - cat <<-EOF > "${T}/repos.conf"
9716 - [DEFAULT]
9717 - main-repo = ${repo_name:-gentoo}
9718 -
9719 - [${repo_name:-gentoo}]
9720 - location = ${PORTDIR:-${EPREFIX}/usr/portage}
9721 - sync-type = ${sync_type:-rsync}
9722 - sync-uri = ${REPOS_CONF_SYNC}
9723 - EOF
9724 -
9725 - [[ ${sync_type} == cvs ]] && echo "sync-cvs-repo = $(<"${PORTDIR}/CVS/Repository")" >> "${T}/repos.conf"
9726 -
9727 - local dest=${EROOT:-${ROOT}}etc/portage/repos.conf
9728 - if [[ ! -f ${dest} ]] && mkdir -p "${dest}" 2>/dev/null ; then
9729 - dest=${EROOT:-${ROOT}}etc/portage/repos.conf/${repo_name:-gentoo}.conf
9730 - fi
9731 - # Don't install the config update if the desired repos.conf directory
9732 - # and config file exist, since users may accept it blindly and break
9733 - # their config (bug #478726).
9734 - [[ -e ${EROOT:-${ROOT}}etc/portage/repos.conf/${repo_name:-gentoo}.conf ]] || \
9735 - mv "${T}/repos.conf" "$(new_config_protect "${dest}")"
9736 -
9737 - if [[ ${PORTDIR} == ${EPREFIX}/usr/portage ]] ; then
9738 - einfo "Generating make.conf PORTDIR setting for backward compatibility"
9739 - for dest in "${EROOT:-${ROOT}}etc/make.conf" "${EROOT:-${ROOT}}etc/portage/make.conf" ; do
9740 - [[ -e ${dest} ]] && break
9741 - done
9742 - [[ -d ${dest} ]] && dest=${dest}/portdir.conf
9743 - rm -rf "${T}/make.conf"
9744 - [[ -f ${dest} ]] && cat "${dest}" > "${T}/make.conf"
9745 - cat <<-EOF >> "${T}/make.conf"
9746 -
9747 - # Set PORTDIR for backward compatibility with various tools:
9748 - # gentoo-bashcomp - bug #478444
9749 - # euse - bug #474574
9750 - # euses and ufed - bug #478318
9751 - PORTDIR="${EPREFIX}/usr/portage"
9752 - EOF
9753 - mkdir -p "${dest%/*}"
9754 - mv "${T}/make.conf" "$(new_config_protect "${dest}")"
9755 - fi
9756 - fi
9757 -
9758 - local distdir=${PORTAGE_ACTUAL_DISTDIR-${DISTDIR}}
9759 -
9760 - if ${USERSYNC_UPGRADE} && \
9761 - [[ -d ${PORTDIR} && -w ${PORTDIR} ]] ; then
9762 - local ownership=$(get_ownership "${PORTDIR}")
9763 - if [[ -n ${ownership} ]] ; then
9764 - einfo "Adjusting PORTDIR permissions for usersync"
9765 - find "${PORTDIR}" -path "${distdir%/}" -prune -o \
9766 - ! \( -user "${ownership%:*}" -a -group "${ownership#*:}" \) \
9767 - -exec chown "${ownership}" {} +
9768 - fi
9769 - fi
9770 -
9771 - # Do this last, since it could take a long time if there
9772 - # are lots of live sources, and the user may be tempted
9773 - # to kill emerge while it is running.
9774 - if ${USERPRIV_UPGRADE} && \
9775 - [[ -d ${distdir} && -w ${distdir} ]] ; then
9776 - local ownership=$(get_ownership "${distdir}")
9777 - if [[ ${ownership#*:} == portage ]] ; then
9778 - einfo "Adjusting DISTDIR permissions for userpriv"
9779 - find "${distdir}" -mindepth 1 -maxdepth 1 -type d -uid 0 \
9780 - -exec chown -R portage:portage {} +
9781 - fi
9782 - fi
9783 -
9784 - einfo ""
9785 - einfo "This release of portage NO LONGER contains the repoman code base."
9786 - einfo "Repoman has its own ebuild and release package."
9787 - einfo "For repoman functionality please emerge app-portage/repoman"
9788 - einfo "Please report any bugs you may encounter."
9789 - einfo ""
9790 -}
9791
9792 diff --git a/sys-apps/portage/portage-2.3.2.ebuild b/sys-apps/portage/portage-2.3.2.ebuild
9793 deleted file mode 100644
9794 index 3c35c22..0000000
9795 --- a/sys-apps/portage/portage-2.3.2.ebuild
9796 +++ /dev/null
9797 @@ -1,366 +0,0 @@
9798 -# Copyright 1999-2016 Gentoo Foundation
9799 -# Distributed under the terms of the GNU General Public License v2
9800 -# $Id$
9801 -
9802 -EAPI=5
9803 -
9804 -PYTHON_COMPAT=(
9805 - pypy
9806 - python3_3 python3_4 python3_5
9807 - python2_7
9808 -)
9809 -PYTHON_REQ_USE='bzip2(+),threads(+)'
9810 -
9811 -inherit distutils-r1 multilib
9812 -
9813 -DESCRIPTION="Portage is the package management and distribution system for Gentoo"
9814 -HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage"
9815 -
9816 -LICENSE="GPL-2"
9817 -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
9818 -SLOT="0"
9819 -IUSE="build doc epydoc +ipc linguas_ru selinux xattr"
9820 -
9821 -DEPEND="!build? ( $(python_gen_impl_dep 'ssl(+)') )
9822 - >=app-arch/tar-1.27
9823 - dev-lang/python-exec:2
9824 - >=sys-apps/sed-4.0.5 sys-devel/patch
9825 - doc? ( app-text/xmlto ~app-text/docbook-xml-dtd-4.4 )
9826 - epydoc? ( >=dev-python/epydoc-2.0[$(python_gen_usedep 'python2*')] )"
9827 -# Require sandbox-2.2 for bug #288863.
9828 -# For xattr, we can spawn getfattr and setfattr from sys-apps/attr, but that's
9829 -# quite slow, so it's not considered in the dependencies as an alternative to
9830 -# to python-3.3 / pyxattr. Also, xattr support is only tested with Linux, so
9831 -# for now, don't pull in xattr deps for other kernels.
9832 -# For whirlpool hash, require python[ssl] (bug #425046).
9833 -# For compgen, require bash[readline] (bug #445576).
9834 -RDEPEND="
9835 - >=app-arch/tar-1.27
9836 - dev-lang/python-exec:2
9837 - !build? (
9838 - >=sys-apps/sed-4.0.5
9839 - app-shells/bash:0[readline]
9840 - >=app-admin/eselect-1.2
9841 - )
9842 - elibc_FreeBSD? ( sys-freebsd/freebsd-bin )
9843 - elibc_glibc? ( >=sys-apps/sandbox-2.2 )
9844 - elibc_uclibc? ( >=sys-apps/sandbox-2.2 )
9845 - >=app-misc/pax-utils-0.1.17
9846 - selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
9847 - xattr? ( kernel_linux? (
9848 - >=sys-apps/install-xattr-0.3
9849 - $(python_gen_cond_dep 'dev-python/pyxattr[${PYTHON_USEDEP}]' \
9850 - python2_7 pypy)
9851 - ) )
9852 - !<app-admin/logrotate-3.8.0"
9853 -PDEPEND="
9854 - !build? (
9855 - >=net-misc/rsync-2.6.4
9856 - userland_GNU? ( >=sys-apps/coreutils-6.4 )
9857 - )"
9858 -# coreutils-6.4 rdep is for date format in emerge-webrsync #164532
9859 -# NOTE: FEATURES=installsources requires debugedit and rsync
9860 -
9861 -REQUIRED_USE="epydoc? ( $(python_gen_useflags 'python2*') )"
9862 -
9863 -SRC_ARCHIVES="https://dev.gentoo.org/~dolsen/releases/portage"
9864 -
9865 -prefix_src_archives() {
9866 - local x y
9867 - for x in ${@}; do
9868 - for y in ${SRC_ARCHIVES}; do
9869 - echo ${y}/${x}
9870 - done
9871 - done
9872 -}
9873 -
9874 -TARBALL_PV=${PV}
9875 -SRC_URI="mirror://gentoo/${PN}-${TARBALL_PV}.tar.bz2
9876 - $(prefix_src_archives ${PN}-${TARBALL_PV}.tar.bz2)"
9877 -
9878 -PATCHES=(
9879 - "${FILESDIR}"/${PN}-2.3.0-ldconfig-path.patch
9880 - "${FILESDIR}"/${PN}-2.3.0-prefix-path-only.patch
9881 -)
9882 -
9883 -pkg_setup() {
9884 - use epydoc && DISTUTILS_ALL_SUBPHASE_IMPLS=( python2.7 )
9885 -}
9886 -
9887 -python_prepare_all() {
9888 - distutils-r1_python_prepare_all
9889 -
9890 - if ! use ipc ; then
9891 - einfo "Disabling ipc..."
9892 - sed -e "s:_enable_ipc_daemon = True:_enable_ipc_daemon = False:" \
9893 - -i pym/_emerge/AbstractEbuildProcess.py || \
9894 - die "failed to patch AbstractEbuildProcess.py"
9895 - fi
9896 -
9897 - if use xattr && use kernel_linux ; then
9898 - einfo "Adding FEATURES=xattr to make.globals ..."
9899 - echo -e '\nFEATURES="${FEATURES} xattr"' >> cnf/make.globals \
9900 - || die "failed to append to make.globals"
9901 - fi
9902 -
9903 - if [[ -n ${EPREFIX} ]] ; then
9904 - einfo "Setting portage.const.EPREFIX ..."
9905 - sed -e "s|^\(SANDBOX_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/sandbox\"\)|\\1${EPREFIX}\\2|" \
9906 - -e "s|^\(FAKEROOT_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/fakeroot\"\)|\\1${EPREFIX}\\2|" \
9907 - -e "s|^\(BASH_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/bash\"\)|\\1${EPREFIX}\\2|" \
9908 - -e "s|^\(MOVE_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/mv\"\)|\\1${EPREFIX}\\2|" \
9909 - -e "s|^\(PRELINK_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/sbin/prelink\"\)|\\1${EPREFIX}\\2|" \
9910 - -e "s|^\(EPREFIX[[:space:]]*=[[:space:]]*\"\).*|\\1${EPREFIX}\"|" \
9911 - -i pym/portage/const.py || \
9912 - die "Failed to patch portage.const.EPREFIX"
9913 -
9914 - einfo "Prefixing shebangs ..."
9915 - while read -r -d $'\0' ; do
9916 - local shebang=$(head -n1 "$REPLY")
9917 - if [[ ${shebang} == "#!"* && ! ${shebang} == "#!${EPREFIX}/"* ]] ; then
9918 - sed -i -e "1s:.*:#!${EPREFIX}${shebang:2}:" "$REPLY" || \
9919 - die "sed failed"
9920 - fi
9921 - done < <(find . -type f -print0)
9922 -
9923 - einfo "Adjusting make.globals ..."
9924 - sed -e "s|\(/usr/portage\)|${EPREFIX}\\1|" \
9925 - -e "s|^\(PORTAGE_TMPDIR=\"\)\(/var/tmp\"\)|\\1${EPREFIX}\\2|" \
9926 - -i cnf/make.globals || die "sed failed"
9927 -
9928 - einfo "Adjusting repos.conf ..."
9929 - sed -e "s|^\(location = \)\(/usr/portage\)|\\1${EPREFIX}\\2|" \
9930 - -i cnf/repos.conf || die "sed failed"
9931 -
9932 - einfo "Adding FEATURES=force-prefix to make.globals ..."
9933 - echo -e '\nFEATURES="${FEATURES} force-prefix"' >> cnf/make.globals \
9934 - || die "failed to append to make.globals"
9935 - fi
9936 -
9937 - cd "${S}/cnf" || die
9938 - if [ -f "make.conf.example.${ARCH}".diff ]; then
9939 - patch make.conf.example "make.conf.example.${ARCH}".diff || \
9940 - die "Failed to patch make.conf.example"
9941 - else
9942 - eerror ""
9943 - eerror "Portage does not have an arch-specific configuration for this arch."
9944 - eerror "Please notify the arch maintainer about this issue. Using generic."
9945 - eerror ""
9946 - fi
9947 -}
9948 -
9949 -python_compile_all() {
9950 - local targets=()
9951 - use doc && targets+=( docbook )
9952 - use epydoc && targets+=( epydoc )
9953 -
9954 - if [[ ${targets[@]} ]]; then
9955 - esetup.py "${targets[@]}"
9956 - fi
9957 -}
9958 -
9959 -python_test() {
9960 - esetup.py test
9961 -}
9962 -
9963 -python_install() {
9964 - # Install sbin scripts to bindir for python-exec linking
9965 - # they will be relocated in pkg_preinst()
9966 - distutils-r1_python_install \
9967 - --system-prefix="${EPREFIX}/usr" \
9968 - --bindir="$(python_get_scriptdir)" \
9969 - --docdir="${EPREFIX}/usr/share/doc/${PF}" \
9970 - --htmldir="${EPREFIX}/usr/share/doc/${PF}/html" \
9971 - --portage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}" \
9972 - --sbindir="$(python_get_scriptdir)" \
9973 - --sysconfdir="${EPREFIX}/etc" \
9974 - "${@}"
9975 -}
9976 -
9977 -python_install_all() {
9978 - distutils-r1_python_install_all
9979 -
9980 - local targets=()
9981 - use doc && targets+=( install_docbook )
9982 - use epydoc && targets+=( install_epydoc )
9983 -
9984 - # install docs
9985 - if [[ ${targets[@]} ]]; then
9986 - esetup.py "${targets[@]}"
9987 - fi
9988 -
9989 - # Due to distutils/python-exec limitations
9990 - # these must be installed to /usr/bin.
9991 - local sbin_relocations='archive-conf dispatch-conf emaint env-update etc-update fixpackages regenworld'
9992 - einfo "Moving admin scripts to the correct directory"
9993 - dodir /usr/sbin
9994 - for target in ${sbin_relocations}; do
9995 - einfo "Moving /usr/bin/${target} to /usr/sbin/${target}"
9996 - mv "${ED}usr/bin/${target}" "${ED}usr/sbin/${target}" || die "sbin scripts move failed!"
9997 - done
9998 -}
9999 -
10000 -pkg_preinst() {
10001 - # comment out sanity test until it is fixed to work
10002 - # with the new PORTAGE_PYM_PATH
10003 - #if [[ $ROOT == / ]] ; then
10004 - ## Run some minimal tests as a sanity check.
10005 - #local test_runner=$(find "${ED}" -name runTests)
10006 - #if [[ -n $test_runner && -x $test_runner ]] ; then
10007 - #einfo "Running preinst sanity tests..."
10008 - #"$test_runner" || die "preinst sanity tests failed"
10009 - #fi
10010 - #fi
10011 -
10012 - # elog dir must exist to avoid logrotate error for bug #415911.
10013 - # This code runs in preinst in order to bypass the mapping of
10014 - # portage:portage to root:root which happens after src_install.
10015 - keepdir /var/log/portage/elog
10016 - # This is allowed to fail if the user/group are invalid for prefix users.
10017 - if chown portage:portage "${ED}"var/log/portage{,/elog} 2>/dev/null ; then
10018 - chmod g+s,ug+rwx "${ED}"var/log/portage{,/elog}
10019 - fi
10020 -
10021 - if has_version "<${CATEGORY}/${PN}-2.1.13" || \
10022 - {
10023 - has_version ">=${CATEGORY}/${PN}-2.2_rc0" && \
10024 - has_version "<${CATEGORY}/${PN}-2.2.0_alpha189"
10025 - } ; then
10026 - USERPRIV_UPGRADE=true
10027 - USERSYNC_UPGRADE=true
10028 - REPOS_CONF_UPGRADE=true
10029 - REPOS_CONF_SYNC=
10030 - type -P portageq >/dev/null 2>&1 && \
10031 - REPOS_CONF_SYNC=$("$(type -P portageq)" envvar SYNC)
10032 - else
10033 - USERPRIV_UPGRADE=false
10034 - USERSYNC_UPGRADE=false
10035 - REPOS_CONF_UPGRADE=false
10036 - fi
10037 -}
10038 -
10039 -get_ownership() {
10040 - case ${USERLAND} in
10041 - BSD)
10042 - stat -f '%Su:%Sg' "${1}"
10043 - ;;
10044 - *)
10045 - stat -c '%U:%G' "${1}"
10046 - ;;
10047 - esac
10048 -}
10049 -
10050 -new_config_protect() {
10051 - # Generate a ._cfg file even if the target file
10052 - # does not exist, ensuring that the user will
10053 - # notice the config change.
10054 - local basename=${1##*/}
10055 - local dirname=${1%/*}
10056 - local i=0
10057 - while true ; do
10058 - local filename=$(
10059 - echo -n "${dirname}/._cfg"
10060 - printf "%04d" ${i}
10061 - echo -n "_${basename}"
10062 - )
10063 - [[ -e ${filename} ]] || break
10064 - (( i++ ))
10065 - done
10066 - echo "${filename}"
10067 -}
10068 -
10069 -pkg_postinst() {
10070 -
10071 - if ${REPOS_CONF_UPGRADE} ; then
10072 - einfo "Generating repos.conf"
10073 - local repo_name=
10074 - [[ -f ${PORTDIR}/profiles/repo_name ]] && \
10075 - repo_name=$(< "${PORTDIR}/profiles/repo_name")
10076 - if [[ -z ${REPOS_CONF_SYNC} ]] ; then
10077 - REPOS_CONF_SYNC=$(grep "^sync-uri =" "${EROOT:-${ROOT}}usr/share/portage/config/repos.conf")
10078 - REPOS_CONF_SYNC=${REPOS_CONF_SYNC##* }
10079 - fi
10080 - local sync_type=
10081 - [[ ${REPOS_CONF_SYNC} == git://* ]] && sync_type=git
10082 -
10083 - if [[ ${REPOS_CONF_SYNC} == cvs://* ]]; then
10084 - sync_type=cvs
10085 - REPOS_CONF_SYNC=${REPOS_CONF_SYNC#cvs://}
10086 - fi
10087 -
10088 - cat <<-EOF > "${T}/repos.conf"
10089 - [DEFAULT]
10090 - main-repo = ${repo_name:-gentoo}
10091 -
10092 - [${repo_name:-gentoo}]
10093 - location = ${PORTDIR:-${EPREFIX}/usr/portage}
10094 - sync-type = ${sync_type:-rsync}
10095 - sync-uri = ${REPOS_CONF_SYNC}
10096 - EOF
10097 -
10098 - [[ ${sync_type} == cvs ]] && echo "sync-cvs-repo = $(<"${PORTDIR}/CVS/Repository")" >> "${T}/repos.conf"
10099 -
10100 - local dest=${EROOT:-${ROOT}}etc/portage/repos.conf
10101 - if [[ ! -f ${dest} ]] && mkdir -p "${dest}" 2>/dev/null ; then
10102 - dest=${EROOT:-${ROOT}}etc/portage/repos.conf/${repo_name:-gentoo}.conf
10103 - fi
10104 - # Don't install the config update if the desired repos.conf directory
10105 - # and config file exist, since users may accept it blindly and break
10106 - # their config (bug #478726).
10107 - [[ -e ${EROOT:-${ROOT}}etc/portage/repos.conf/${repo_name:-gentoo}.conf ]] || \
10108 - mv "${T}/repos.conf" "$(new_config_protect "${dest}")"
10109 -
10110 - if [[ ${PORTDIR} == ${EPREFIX}/usr/portage ]] ; then
10111 - einfo "Generating make.conf PORTDIR setting for backward compatibility"
10112 - for dest in "${EROOT:-${ROOT}}etc/make.conf" "${EROOT:-${ROOT}}etc/portage/make.conf" ; do
10113 - [[ -e ${dest} ]] && break
10114 - done
10115 - [[ -d ${dest} ]] && dest=${dest}/portdir.conf
10116 - rm -rf "${T}/make.conf"
10117 - [[ -f ${dest} ]] && cat "${dest}" > "${T}/make.conf"
10118 - cat <<-EOF >> "${T}/make.conf"
10119 -
10120 - # Set PORTDIR for backward compatibility with various tools:
10121 - # gentoo-bashcomp - bug #478444
10122 - # euse - bug #474574
10123 - # euses and ufed - bug #478318
10124 - PORTDIR="${EPREFIX}/usr/portage"
10125 - EOF
10126 - mkdir -p "${dest%/*}"
10127 - mv "${T}/make.conf" "$(new_config_protect "${dest}")"
10128 - fi
10129 - fi
10130 -
10131 - local distdir=${PORTAGE_ACTUAL_DISTDIR-${DISTDIR}}
10132 -
10133 - if ${USERSYNC_UPGRADE} && \
10134 - [[ -d ${PORTDIR} && -w ${PORTDIR} ]] ; then
10135 - local ownership=$(get_ownership "${PORTDIR}")
10136 - if [[ -n ${ownership} ]] ; then
10137 - einfo "Adjusting PORTDIR permissions for usersync"
10138 - find "${PORTDIR}" -path "${distdir%/}" -prune -o \
10139 - ! \( -user "${ownership%:*}" -a -group "${ownership#*:}" \) \
10140 - -exec chown "${ownership}" {} +
10141 - fi
10142 - fi
10143 -
10144 - # Do this last, since it could take a long time if there
10145 - # are lots of live sources, and the user may be tempted
10146 - # to kill emerge while it is running.
10147 - if ${USERPRIV_UPGRADE} && \
10148 - [[ -d ${distdir} && -w ${distdir} ]] ; then
10149 - local ownership=$(get_ownership "${distdir}")
10150 - if [[ ${ownership#*:} == portage ]] ; then
10151 - einfo "Adjusting DISTDIR permissions for userpriv"
10152 - find "${distdir}" -mindepth 1 -maxdepth 1 -type d -uid 0 \
10153 - -exec chown -R portage:portage {} +
10154 - fi
10155 - fi
10156 -
10157 - einfo ""
10158 - einfo "This release of portage NO LONGER contains the repoman code base."
10159 - einfo "Repoman has its own ebuild and release package."
10160 - einfo "For repoman functionality please emerge app-portage/repoman"
10161 - einfo "Please report any bugs you may encounter."
10162 - einfo ""
10163 -}
10164
10165 diff --git a/sys-apps/portage/portage-2.3.3.ebuild b/sys-apps/portage/portage-2.3.3.ebuild
10166 deleted file mode 100644
10167 index 4f14483..0000000
10168 --- a/sys-apps/portage/portage-2.3.3.ebuild
10169 +++ /dev/null
10170 @@ -1,369 +0,0 @@
10171 -# Copyright 1999-2016 Gentoo Foundation
10172 -# Distributed under the terms of the GNU General Public License v2
10173 -# $Id$
10174 -
10175 -EAPI=5
10176 -
10177 -PYTHON_COMPAT=(
10178 - pypy
10179 - python3_3 python3_4 python3_5
10180 - python2_7
10181 -)
10182 -PYTHON_REQ_USE='bzip2(+),threads(+)'
10183 -
10184 -inherit distutils-r1 multilib
10185 -
10186 -DESCRIPTION="Portage is the package management and distribution system for Gentoo"
10187 -HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage"
10188 -
10189 -LICENSE="GPL-2"
10190 -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
10191 -SLOT="0"
10192 -IUSE="build doc epydoc +ipc linguas_ru selinux xattr"
10193 -
10194 -DEPEND="!build? ( $(python_gen_impl_dep 'ssl(+)') )
10195 - >=app-arch/tar-1.27
10196 - dev-lang/python-exec:2
10197 - >=sys-apps/sed-4.0.5 sys-devel/patch
10198 - doc? ( app-text/xmlto ~app-text/docbook-xml-dtd-4.4 )
10199 - epydoc? ( >=dev-python/epydoc-2.0[$(python_gen_usedep 'python2*')] )"
10200 -# Require sandbox-2.2 for bug #288863.
10201 -# For xattr, we can spawn getfattr and setfattr from sys-apps/attr, but that's
10202 -# quite slow, so it's not considered in the dependencies as an alternative to
10203 -# to python-3.3 / pyxattr. Also, xattr support is only tested with Linux, so
10204 -# for now, don't pull in xattr deps for other kernels.
10205 -# For whirlpool hash, require python[ssl] (bug #425046).
10206 -# For compgen, require bash[readline] (bug #445576).
10207 -RDEPEND="
10208 - >=app-arch/tar-1.27
10209 - dev-lang/python-exec:2
10210 - !build? (
10211 - >=sys-apps/sed-4.0.5
10212 - app-shells/bash:0[readline]
10213 - >=app-admin/eselect-1.2
10214 - )
10215 - elibc_FreeBSD? ( sys-freebsd/freebsd-bin )
10216 - elibc_glibc? ( >=sys-apps/sandbox-2.2 )
10217 - elibc_uclibc? ( >=sys-apps/sandbox-2.2 )
10218 - >=app-misc/pax-utils-0.1.17
10219 - selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
10220 - xattr? ( kernel_linux? (
10221 - >=sys-apps/install-xattr-0.3
10222 - $(python_gen_cond_dep 'dev-python/pyxattr[${PYTHON_USEDEP}]' \
10223 - python2_7 pypy)
10224 - ) )
10225 - !<app-admin/logrotate-3.8.0"
10226 -PDEPEND="
10227 - !build? (
10228 - >=net-misc/rsync-2.6.4
10229 - userland_GNU? ( >=sys-apps/coreutils-6.4 )
10230 - )"
10231 -# coreutils-6.4 rdep is for date format in emerge-webrsync #164532
10232 -# NOTE: FEATURES=installsources requires debugedit and rsync
10233 -
10234 -REQUIRED_USE="epydoc? ( $(python_gen_useflags 'python2*') )"
10235 -
10236 -SRC_ARCHIVES="https://dev.gentoo.org/~dolsen/releases/portage"
10237 -
10238 -PATCHES=(
10239 - "${FILESDIR}"/${PN}-2.3.0-ldconfig-path.patch
10240 - "${FILESDIR}"/${PN}-2.3.0-prefix-path-only.patch
10241 -)
10242 -
10243 -prefix_src_archives() {
10244 - local x y
10245 - for x in ${@}; do
10246 - for y in ${SRC_ARCHIVES}; do
10247 - echo ${y}/${x}
10248 - done
10249 - done
10250 -}
10251 -
10252 -TARBALL_PV=${PV}
10253 -SRC_URI="mirror://gentoo/${PN}-${TARBALL_PV}.tar.bz2
10254 - $(prefix_src_archives ${PN}-${TARBALL_PV}.tar.bz2)"
10255 -
10256 -pkg_setup() {
10257 - use epydoc && DISTUTILS_ALL_SUBPHASE_IMPLS=( python2.7 )
10258 -}
10259 -
10260 -python_prepare_all() {
10261 - distutils-r1_python_prepare_all
10262 -
10263 - if ! use ipc ; then
10264 - einfo "Disabling ipc..."
10265 - sed -e "s:_enable_ipc_daemon = True:_enable_ipc_daemon = False:" \
10266 - -i pym/_emerge/AbstractEbuildProcess.py || \
10267 - die "failed to patch AbstractEbuildProcess.py"
10268 - fi
10269 -
10270 - if use xattr && use kernel_linux ; then
10271 - einfo "Adding FEATURES=xattr to make.globals ..."
10272 - echo -e '\nFEATURES="${FEATURES} xattr"' >> cnf/make.globals \
10273 - || die "failed to append to make.globals"
10274 - fi
10275 -
10276 - if [[ -n ${EPREFIX} ]] ; then
10277 - einfo "Setting portage.const.EPREFIX ..."
10278 - sed -e "s|^\(SANDBOX_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/sandbox\"\)|\\1${EPREFIX}\\2|" \
10279 - -e "s|^\(FAKEROOT_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/fakeroot\"\)|\\1${EPREFIX}\\2|" \
10280 - -e "s|^\(BASH_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/bash\"\)|\\1${EPREFIX}\\2|" \
10281 - -e "s|^\(MOVE_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/mv\"\)|\\1${EPREFIX}\\2|" \
10282 - -e "s|^\(PRELINK_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/sbin/prelink\"\)|\\1${EPREFIX}\\2|" \
10283 - -e "s|^\(EPREFIX[[:space:]]*=[[:space:]]*\"\).*|\\1${EPREFIX}\"|" \
10284 - -i pym/portage/const.py || \
10285 - die "Failed to patch portage.const.EPREFIX"
10286 -
10287 - einfo "Prefixing shebangs ..."
10288 - while read -r -d $'\0' ; do
10289 - local shebang=$(head -n1 "$REPLY")
10290 - if [[ ${shebang} == "#!"* && ! ${shebang} == "#!${EPREFIX}/"* ]] ; then
10291 - sed -i -e "1s:.*:#!${EPREFIX}${shebang:2}:" "$REPLY" || \
10292 - die "sed failed"
10293 - fi
10294 - done < <(find . -type f -print0)
10295 -
10296 - einfo "Adjusting make.globals ..."
10297 - sed -e "s|\(/usr/portage\)|${EPREFIX}\\1|" \
10298 - -e "s|^\(PORTAGE_TMPDIR=\"\)\(/var/tmp\"\)|\\1${EPREFIX}\\2|" \
10299 - -i cnf/make.globals || die "sed failed"
10300 -
10301 - einfo "Adjusting repos.conf ..."
10302 - sed -e "s|^\(location = \)\(/usr/portage\)|\\1${EPREFIX}\\2|" \
10303 - -i cnf/repos.conf || die "sed failed"
10304 -
10305 - einfo "Adding FEATURES=force-prefix to make.globals ..."
10306 - echo -e '\nFEATURES="${FEATURES} force-prefix"' >> cnf/make.globals \
10307 - || die "failed to append to make.globals"
10308 - fi
10309 -
10310 - cd "${S}/cnf" || die
10311 - if [ -f "make.conf.example.${ARCH}".diff ]; then
10312 - patch make.conf.example "make.conf.example.${ARCH}".diff || \
10313 - die "Failed to patch make.conf.example"
10314 - else
10315 - eerror ""
10316 - eerror "Portage does not have an arch-specific configuration for this arch."
10317 - eerror "Please notify the arch maintainer about this issue. Using generic."
10318 - eerror ""
10319 - fi
10320 -}
10321 -
10322 -python_compile_all() {
10323 - local targets=()
10324 - use doc && targets+=( docbook )
10325 - use epydoc && targets+=( epydoc )
10326 -
10327 - if [[ ${targets[@]} ]]; then
10328 - esetup.py "${targets[@]}"
10329 - fi
10330 -}
10331 -
10332 -python_test() {
10333 - esetup.py test
10334 -}
10335 -
10336 -python_install() {
10337 - # Install sbin scripts to bindir for python-exec linking
10338 - # they will be relocated in pkg_preinst()
10339 - distutils-r1_python_install \
10340 - --system-prefix="${EPREFIX}/usr" \
10341 - --bindir="$(python_get_scriptdir)" \
10342 - --docdir="${EPREFIX}/usr/share/doc/${PF}" \
10343 - --htmldir="${EPREFIX}/usr/share/doc/${PF}/html" \
10344 - --portage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}" \
10345 - --sbindir="$(python_get_scriptdir)" \
10346 - --sysconfdir="${EPREFIX}/etc" \
10347 - "${@}"
10348 -}
10349 -
10350 -python_install_all() {
10351 - distutils-r1_python_install_all
10352 -
10353 - local targets=()
10354 - use doc && targets+=( install_docbook )
10355 - use epydoc && targets+=( install_epydoc )
10356 -
10357 - # install docs
10358 - if [[ ${targets[@]} ]]; then
10359 - esetup.py "${targets[@]}"
10360 - fi
10361 -
10362 - # Due to distutils/python-exec limitations
10363 - # these must be installed to /usr/bin.
10364 - local sbin_relocations='archive-conf dispatch-conf emaint env-update etc-update fixpackages regenworld'
10365 - einfo "Moving admin scripts to the correct directory"
10366 - dodir /usr/sbin
10367 - for target in ${sbin_relocations}; do
10368 - einfo "Moving /usr/bin/${target} to /usr/sbin/${target}"
10369 - mv "${ED}usr/bin/${target}" "${ED}usr/sbin/${target}" || die "sbin scripts move failed!"
10370 - done
10371 -}
10372 -
10373 -pkg_preinst() {
10374 - # comment out sanity test until it is fixed to work
10375 - # with the new PORTAGE_PYM_PATH
10376 - #if [[ $ROOT == / ]] ; then
10377 - ## Run some minimal tests as a sanity check.
10378 - #local test_runner=$(find "${ED}" -name runTests)
10379 - #if [[ -n $test_runner && -x $test_runner ]] ; then
10380 - #einfo "Running preinst sanity tests..."
10381 - #"$test_runner" || die "preinst sanity tests failed"
10382 - #fi
10383 - #fi
10384 -
10385 - # elog dir must exist to avoid logrotate error for bug #415911.
10386 - # This code runs in preinst in order to bypass the mapping of
10387 - # portage:portage to root:root which happens after src_install.
10388 - keepdir /var/log/portage/elog
10389 - # This is allowed to fail if the user/group are invalid for prefix users.
10390 - if chown portage:portage "${ED}"var/log/portage{,/elog} 2>/dev/null ; then
10391 - chmod g+s,ug+rwx "${ED}"var/log/portage{,/elog}
10392 - fi
10393 -
10394 - if has_version "<${CATEGORY}/${PN}-2.1.13" || \
10395 - {
10396 - has_version ">=${CATEGORY}/${PN}-2.2_rc0" && \
10397 - has_version "<${CATEGORY}/${PN}-2.2.0_alpha189"
10398 - } ; then
10399 - USERPRIV_UPGRADE=true
10400 - USERSYNC_UPGRADE=true
10401 - REPOS_CONF_UPGRADE=true
10402 - REPOS_CONF_SYNC=
10403 - type -P portageq >/dev/null 2>&1 && \
10404 - REPOS_CONF_SYNC=$("$(type -P portageq)" envvar SYNC)
10405 - else
10406 - USERPRIV_UPGRADE=false
10407 - USERSYNC_UPGRADE=false
10408 - REPOS_CONF_UPGRADE=false
10409 - fi
10410 -}
10411 -
10412 -get_ownership() {
10413 - case ${USERLAND} in
10414 - BSD)
10415 - stat -f '%Su:%Sg' "${1}"
10416 - ;;
10417 - *)
10418 - stat -c '%U:%G' "${1}"
10419 - ;;
10420 - esac
10421 -}
10422 -
10423 -new_config_protect() {
10424 - # Generate a ._cfg file even if the target file
10425 - # does not exist, ensuring that the user will
10426 - # notice the config change.
10427 - local basename=${1##*/}
10428 - local dirname=${1%/*}
10429 - local i=0
10430 - while true ; do
10431 - local filename=$(
10432 - echo -n "${dirname}/._cfg"
10433 - printf "%04d" ${i}
10434 - echo -n "_${basename}"
10435 - )
10436 - [[ -e ${filename} ]] || break
10437 - (( i++ ))
10438 - done
10439 - echo "${filename}"
10440 -}
10441 -
10442 -pkg_postinst() {
10443 -
10444 - if ${REPOS_CONF_UPGRADE} ; then
10445 - einfo "Generating repos.conf"
10446 - local repo_name=
10447 - [[ -f ${PORTDIR}/profiles/repo_name ]] && \
10448 - repo_name=$(< "${PORTDIR}/profiles/repo_name")
10449 - if [[ -z ${REPOS_CONF_SYNC} ]] ; then
10450 - REPOS_CONF_SYNC=$(grep "^sync-uri =" "${EROOT:-${ROOT}}usr/share/portage/config/repos.conf")
10451 - REPOS_CONF_SYNC=${REPOS_CONF_SYNC##* }
10452 - fi
10453 - local sync_type=
10454 - [[ ${REPOS_CONF_SYNC} == git://* ]] && sync_type=git
10455 -
10456 - if [[ ${REPOS_CONF_SYNC} == cvs://* ]]; then
10457 - sync_type=cvs
10458 - REPOS_CONF_SYNC=${REPOS_CONF_SYNC#cvs://}
10459 - fi
10460 -
10461 - cat <<-EOF > "${T}/repos.conf"
10462 - [DEFAULT]
10463 - main-repo = ${repo_name:-gentoo}
10464 -
10465 - [${repo_name:-gentoo}]
10466 - location = ${PORTDIR:-${EPREFIX}/usr/portage}
10467 - sync-type = ${sync_type:-rsync}
10468 - sync-uri = ${REPOS_CONF_SYNC}
10469 - EOF
10470 -
10471 - [[ ${sync_type} == cvs ]] && echo "sync-cvs-repo = $(<"${PORTDIR}/CVS/Repository")" >> "${T}/repos.conf"
10472 -
10473 - local dest=${EROOT:-${ROOT}}etc/portage/repos.conf
10474 - if [[ ! -f ${dest} ]] && mkdir -p "${dest}" 2>/dev/null ; then
10475 - dest=${EROOT:-${ROOT}}etc/portage/repos.conf/${repo_name:-gentoo}.conf
10476 - fi
10477 - # Don't install the config update if the desired repos.conf directory
10478 - # and config file exist, since users may accept it blindly and break
10479 - # their config (bug #478726).
10480 - [[ -e ${EROOT:-${ROOT}}etc/portage/repos.conf/${repo_name:-gentoo}.conf ]] || \
10481 - mv "${T}/repos.conf" "$(new_config_protect "${dest}")"
10482 -
10483 - if [[ ${PORTDIR} == ${EPREFIX}/usr/portage ]] ; then
10484 - einfo "Generating make.conf PORTDIR setting for backward compatibility"
10485 - for dest in "${EROOT:-${ROOT}}etc/make.conf" "${EROOT:-${ROOT}}etc/portage/make.conf" ; do
10486 - [[ -e ${dest} ]] && break
10487 - done
10488 - [[ -d ${dest} ]] && dest=${dest}/portdir.conf
10489 - rm -rf "${T}/make.conf"
10490 - [[ -f ${dest} ]] && cat "${dest}" > "${T}/make.conf"
10491 - cat <<-EOF >> "${T}/make.conf"
10492 -
10493 - # Set PORTDIR for backward compatibility with various tools:
10494 - # gentoo-bashcomp - bug #478444
10495 - # euse - bug #474574
10496 - # euses and ufed - bug #478318
10497 - PORTDIR="${EPREFIX}/usr/portage"
10498 - EOF
10499 - mkdir -p "${dest%/*}"
10500 - mv "${T}/make.conf" "$(new_config_protect "${dest}")"
10501 - fi
10502 - fi
10503 -
10504 - local distdir=${PORTAGE_ACTUAL_DISTDIR-${DISTDIR}}
10505 -
10506 - if ${USERSYNC_UPGRADE} && \
10507 - [[ -d ${PORTDIR} && -w ${PORTDIR} ]] ; then
10508 - local ownership=$(get_ownership "${PORTDIR}")
10509 - if [[ -n ${ownership} ]] ; then
10510 - einfo "Adjusting PORTDIR permissions for usersync"
10511 - find "${PORTDIR}" -path "${distdir%/}" -prune -o \
10512 - ! \( -user "${ownership%:*}" -a -group "${ownership#*:}" \) \
10513 - -exec chown "${ownership}" {} +
10514 - fi
10515 - fi
10516 -
10517 - # Do this last, since it could take a long time if there
10518 - # are lots of live sources, and the user may be tempted
10519 - # to kill emerge while it is running.
10520 - if ${USERPRIV_UPGRADE} && \
10521 - [[ -d ${distdir} && -w ${distdir} ]] ; then
10522 - local ownership=$(get_ownership "${distdir}")
10523 - if [[ ${ownership#*:} == portage ]] ; then
10524 - einfo "Adjusting DISTDIR permissions for userpriv"
10525 - find "${distdir}" -mindepth 1 -maxdepth 1 -type d -uid 0 \
10526 - -exec chown -R portage:portage {} +
10527 - fi
10528 - fi
10529 -
10530 - ewarn "Please note that this release no longer respects sync-depth for"
10531 - ewarn "git repositories. There have been too many problems and"
10532 - ewarn "performance issues. See bugs 552814, 559008"
10533 - einfo ""
10534 - einfo "This release of portage NO LONGER contains the repoman code base."
10535 - einfo "Repoman has its own ebuild and release package."
10536 - einfo "For repoman functionality please emerge app-portage/repoman"
10537 - einfo "Please report any bugs you may encounter."
10538 - einfo ""
10539 -}
10540
10541 diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest
10542 deleted file mode 100644
10543 index 51fa4f0..0000000
10544 --- a/sys-libs/glibc/Manifest
10545 +++ /dev/null
10546 @@ -1,62 +0,0 @@
10547 -AUX 2.10/glibc-2.10-gentoo-chk_fail.c 9407 SHA256 7745c0f5d37b37959b43b41e39762fc35b877161bc5740d9d3e9a83021acbc0e SHA512 d1c51c573353b3b8ae6ab1bcc8c10eda5cad8b98fc7ab4848e4fbd8a8736174f3c3fd1b72dd80c72b1e54be78f1cae4dc1ab8130df25aa6d1495e5cbbaf3b9f6 WHIRLPOOL 32028ddeb422d89c0523fec994413e67c6afd9fcfdaf147d3d6a28bd02f8feabda9571ced4509253b7061a95bb2c16cecf94a4274671b33909ff545b1787f101
10548 -AUX 2.10/glibc-2.10-hardened-configure-picdefault.patch 865 SHA256 b50b29f85d88011555bbcbe6046e6600be9344f2d78412b14aebdea515420774 SHA512 e0a09f77b209a72ab577fe1e62126609fdddedf3fba0eec749c4b506cdf793779b48390f055a3594892120f694291f8340c0b6f51862e94c03fd516897138be7 WHIRLPOOL d1b8e1536696350e0ed9eaf9a923daa7c004ef40ae94c1c3ba3d6cb293f1c19364cefbe8491089061124cbe26a9fded9f3d38d89f1bda56d408162e53702e8d4
10549 -AUX 2.10/glibc-2.10-hardened-inittls-nosysenter.patch 8823 SHA256 dcf78c6524c222dbee907200a8878aff727e29d43a4962b977a16d85752e5c10 SHA512 0605b7964af87d1d6bdccea5c4d1bfe6267d4401b8bbf0c8bb689663e6bb3ef92eebad8be6c23ffdf6632a4d5e6098d8a403c3e84ffb21b5e87b5b1d1ec3512d WHIRLPOOL 635261b547883bbfbe23c802fcf97916dee823b367f96732ccecd7506dff004b87f2d36d97ed398510711330f3a53f039a14e226d20a681cc201a8c7a3450833
10550 -AUX 2.10/glibc-2.10-hardened-ssp-compat.patch 4802 SHA256 bd6f0aa8eace0a935731749e101d5fe30210f9edb65f2f5ccd425cef581ddce4 SHA512 16fc6cbf366c3a0f476f28da8d4e465b1d894f68d33ebdb02de60d6b22bdc6341915d8529952fa4213b11c377302f18a63c462898fe0e4b13f5ec9e3ceda96c7 WHIRLPOOL 059e84269286b285261cc57846b34462524661fef3582396a6b301ee2dd156d2511c88f17f52679e4d5fd96ae0ed6673c8b75a32048e40efa87fad34da6cc066
10551 -AUX 2.11/glibc-2.11-hardened-pie.patch 1492 SHA256 74277f76ace9cb6b408ef7c1d43a3604ae0d6c1af539055aeaeb542d2bfa2a46 SHA512 31ad12fdafc20f783bde32fa3cb477e18d19c5436309b0023284c3134f99c849b0281ea7815ae7509b96f1a88e9c24d52805044cd1c65a88a1a62eebc519a0e5 WHIRLPOOL cf3fe8c5e164623bf553487cf589f85eff28d1073e55a87ef14da716ce313bfaec0dadbf322f2e705c1d4f975458d9cbd6f2eca268a9dc5dce16e54305907aa7
10552 -AUX 2.12/glibc-2.12-hardened-pie.patch 1542 SHA256 9d11da52900a4cfdaa9052476029cb1b4c8004dfaef3cf446f3b728035f75fbe SHA512 97abb62a72d95b07f546658846718755ed78286b11cb72b2cf6ebc809afb1e775ca860e3903f9936ee54761b6d6bb309e822957387900454dd3c66be35ba8148 WHIRLPOOL 4b9b95d1c6c6e02ba21ec43f382a1d932ed8be5ff548a828c3e9a1d945c44cb8435fd502f6c8becf6a2c19bd23c77ad003598b3b3b68b7bad5a5af79e92d6077
10553 -AUX 2.15/glibc-2.15-localstatedir-backport.patch 412 SHA256 465bedaaf735a48825cd6433007abfb1e40c2ef8ddf94d12d452b486c70ce36b SHA512 76506a540d47ad7e76073c3b25bc46278a9e56e34e17d49caf9fffc0622646e8e0d6905fe7d00599db02f444420ed0b9d64d3d70df78446564b137fd65021e45 WHIRLPOOL f21fb6d6eb3555421f7d90b179a7a2745e7056316eacbf209066f01e742037fd283689c5a5f5a313666a2fb79d5ad0631dbada94d9c7eb958ee01217b605533a
10554 -AUX 2.16/glibc-2.16-hardened-pie.patch 1570 SHA256 9a8d8a8268605251782b1fba509cda090f39f56edc8a5497c7b4acfc428041f7 SHA512 1dff16b1ce4ba6246336d19fac21ea6e8d5710e138a23603fa6b79896d895834b6d28bb1948c83648120ca1d038805db7dd7138ba3e28e9071254d6320cdc092 WHIRLPOOL f96487ac4bd95a99e9e70204c686c3f19bb8238cfd4a9856b031be58ac23927886f228a8b4add14213e0489a204c51ebbeb8a376311305025116b8ae45fc90c2
10555 -AUX 2.17/glibc-2.17-hardened-pie.patch 1784 SHA256 bba32e40c73aef20122b2825f31e5c3aa058b61feae4f32f336e1941f83f82d1 SHA512 9ecfe2b6c8c982a42786181d6507d5fa588a6868109065451f58a779848837bd5e69c32a24e43a186c2ff63a9784015c51487e342c87982ac074139e36c169fc WHIRLPOOL 1baffbef9e6d870ea2f2ae5be014b71020a213a1a11e9856fa207545867de444ed164cb926b2aac23471854eaaf72a87e38760702b32bfcfa639add8733d925e
10556 -AUX 2.17/glibc-2.17-runtime-prefix.patch 6695 SHA256 466198a1e2f92957017d3e550b806196de40a6cbf780320b3b11ac72459c19d8 SHA512 9adf787c8516ec86609bb2c1975d2d05c679199200732c141f4c8ae2724bc1b92a3981995f814542d2fed44662d7ccf560b0e9d904e27d68eafcfe3f55787a43 WHIRLPOOL 3bc2aab75168ad3a8b4b273577c3f0e71396a631f151974433187ecb3c73b0adc2ad15e9fd17334b9cb1332035c98937d302a03bc1afb3f66ff1d36d347d21f4
10557 -AUX 2.17/glibc-2.17-shadow-prefix.patch 950 SHA256 36fa45e0e2642c6ce8809341b69e93d45d97d3b6c451a089198f7b90a5d0eb21 SHA512 3101b9814bcbd0443d309f3949024e753cb6101e84e9cbbae1502fb4c3f85c2fad041608ba69c966cb1da2cf64f5f2c0931c08db222933a2053394f7b0fabf9d WHIRLPOOL 5243b70d2d2e2d3c3c9b07eb2251bb5e78767e776c0491f91fc8499c3d807b44bdab384f7c81867373a577574999079791695eb65ed8c2da1ce5a79c8e60a5ef
10558 -AUX 2.17/locale-gen_prefix.patch 2704 SHA256 0807c8979b7a1a63b48d155417ff8ecc7e14773e928a0d1fe6c349a36fcdadef SHA512 d6b41b953713f7fe0ba14af6d045fc0e6b649f278da691ca5f021d95be5cdabfc87de399880cf988fec2b189fac22864d004ec8d159e59a2348b41945de1d5db WHIRLPOOL 3c7d6b4e789ae494cebea620ed64a6ba8dd401837914f4ead72c7b2d6af94538c9a28f65781db7e6ae0d21c7fac13c531b71147fdb5456ffd39ae1246b331069
10559 -AUX 2.17/vdso-disable.patch 1136 SHA256 49006855c1ba3ae3d3aa5ed71787056dc64e993eec70a4bef05bcc9f4d824014 SHA512 6eeb6eae8b8c1777ebd18170a7651b9e95297125cfc3829786c4d02887cad4a5d768fc2950723d1d040d16d15d72491d7443a3c14ca9f20eb2adb1ba6d1649ca WHIRLPOOL 80367da491b958d0b7855d23d3225a5c17a3a7a1b1f9a54ebc093c53823a5ef1642b974b45e079aec0abff0476494368ed9afcaed83b87576ed8458b8348e41e
10560 -AUX 2.17/vdso.patch 697 SHA256 26f2089344709de9c1bdd2f974d02ff5d4c465f6ebebd5d1ac2cd72b732de201 SHA512 a303a6828ed001b16f2f5c3532890cff66a50259c2e2aa2843e992f2bed5e6141abc9e120afed25f2e1f30d77bc218c3940d680c3d73c227d2056370d5e6b806 WHIRLPOOL edcaa815b8f86e17d77f0582453a717fbbd848400bfdbd302730fec20a952a584ea8f5ba4f7175b25d84752bc895519d7baa55664073cae5037962b0c1825aa3
10561 -AUX 2.19/glibc-2.19-configurable-paths.patch 81250 SHA256 ae15864d46cb4d5e061465249c9a9c4585961a312d61d6e9edbf8dd8a5dc8a22 SHA512 e9b4c4d48560fc4af41505996b40f3dd0023ba86a71182d965a5c0978f1ed6236311da5b990199e2916b9fc091ce374b2d346b03c133f2d8fcf7e6f07616a3fd WHIRLPOOL 67cf918f3f26b74cf34108806195465dbfe0a51b3c97a7ed19e398c093980dbb0bf5b9102f351cdd95acad58cb3b7c947a50efd593c6a161212afe2f4a9f8ac0
10562 -AUX 2.19/glibc-2.19-hardened-configure-picdefault.patch 865 SHA256 feeb2ddc276e90f55d2fd358837e8d4922d3b2875cb8080b1d8e27e5da83a2d9 SHA512 d8e6fea72e240f1fde8a487958463140a84e8bd6bb5b176f8ce84a34df3137943db9016300884f3efdd4da130e342448e57ed0c0dc6eb2956d647286ce1d00ce WHIRLPOOL 3a5d2882b5fc1bea78c45409c848c94a260659e3ea1e28a5dc8818de8825e55453aa1cc97b86eef99c91b17bde9f2a6db1fd8ae03839f7029d93a71feaa4d4d0
10563 -AUX 2.19/glibc-2.19-ia64-gcc-4.8-reloc-hack.patch 1360 SHA256 f0d8bb004f598375b61e67e1c215b15953c293038243207f2d85cbe9f10d093e SHA512 79876b12871b3e7693340bfdf99276ac0dfd6ff30bc977a9526af9e681fcbab2f25d3ac9e2b33f027c968b38a4b670237de54ffd08edc418423ecd82dddd1d67 WHIRLPOOL 5ca64dddf58a790cc5f6090ae48fc4bd4799a9aac4c67f6ef7d1fea9498208ffc38ee8167b6ec80dc97c4f723fcdfade8f573893f1b380aff04f6d0476d0d253
10564 -AUX 2.19/glibc-2.19-vdso-disable.patch 1120 SHA256 20048700be532bd1b692471420f930951cc0be2d2c9eb2a95e895e9771a0e13c SHA512 8f52408e5acd96708e5376b3aee77d4851dbe98a7f4b2d2503d3ce5c0088bc93640023659d9e49c8c802ab33ad9f987630667bd5094e4b4aab2c48bb1183a84e WHIRLPOOL 67b6bc23ef1a90886f8860396d52b9004764f3ebefd1d48736c734db419d47402c01c9b746a16147a84b77b8510d243c63d76048c8b2a46daed8aa0acac73fe4
10565 -AUX 2.20/glibc-2.20-configurable-paths.patch 116486 SHA256 d7fe27619225d6e2941e52bc3dd049bfffbed2cf633329ad4ae9a76150ce5f1a SHA512 e2998c66d7c84e6da8f9f24e3b710c8c62f0042a65c7af6f0a2f9cf303724d732aec753e6002ed265c95947f72534de6da9fb0681328c5f8cebbb8c8a60ac61a WHIRLPOOL 50e5984c09e76dd5ebd9172c2e560dc2ff721af23a9be0d1c24fc289af20a5a4e0bf278ec4ef878151bf1cde4d51f42d536aeefdde1f5c206d7942630c8f93a2
10566 -AUX 2.20/glibc-2.20-gentoo-chk_fail.c 8978 SHA256 f9cc426b0fb21de1dc11bb36e43bca8e1b3114fe78f8b343f672a951a82c742e SHA512 5cb529ac9d18a315f25fd48a3a80a529924bee0588074c97e6df7dbe8568a67f786363c41da6300ea55818369e3609ed4315b2e2104f8a8b4f1266ba43076eda WHIRLPOOL 2d38c19a20226fc4687037b8bb19025065f039ddaa62466879ca98765c8899e64b147dd148565304419ed1a98fbe1f8403710b22c930b08a19bddba7e79b0f1d
10567 -AUX 2.20/glibc-2.20-gentoo-stack_chk_fail.c 55 SHA256 ec73e74297b5eade591bfb3a2999989e2a7aa80752140048ffa67349635f05e7 SHA512 4dfec1bd17007b826110dcb73d09331a58b7a892c87de55b94480b14c28686442c567725b610082813411cf9911e180835a400a54ea704fe80f81cfba966a989 WHIRLPOOL b2b338a50f7895c530a71a19e4582bd0116a0b9d13b2e1505f0566924557493849f93cefb2c0ad1719ef684321e145129e0f72cfc9aa85a44ea7ebf910e7304c
10568 -AUX 2.20/glibc-2.20-hardened-inittls-nosysenter.patch 9951 SHA256 992fb70b9b62674d94ef8938297a3f2591b3121495987d927f5a44c1d8788658 SHA512 a8302ee2963bd791be859233223b17cd154afbf04c13c046956bb1140d748272d7bcb3a6167ce8b61573ebcffe906dff064308374d2910656b8fad18480fe422 WHIRLPOOL b8753d6f1301650b91b5cf4f342de22010d819deb2bf4da27aac33d7540e15a140b8a7a4c5e111faba320873ed5784b22f6add29181fbaef14c3e9504b1b838f
10569 -AUX 2.20/glibc-2.20-vdso-disable.patch 725 SHA256 476d1198e990a0beb42a7350c52c34783de33d0364ab3e11d9b74a81e027977b SHA512 2c47efc06aa93eea18e6d407c2b1cfdaa80b374bdaf7ad257ca02857aab53d7a6ec46092872d3affff2ec800f6937012571115b8c83d116084c21f8130c4fdd6 WHIRLPOOL fb919be2a23f5a240817dc8540582915cb0e0497196237a7bcd891113738b81072e96f4af4668d0ebd05094c2983c411265267bbcfc2be96c5ff33f37fe7f936
10570 -AUX 2.3.3/glibc-2.3.3-localedef-fix-trampoline.patch 2329 SHA256 b5cf51d1ff5479d09fbc82992f126ca4969006c90c3a2ae94ad586d4902d791b SHA512 939ec7da977837ef46aa8894f99ac06b3fccfc36dd672889b85ae8cbbfc9a963c5d0c031d776aa2feee29ddf8341b4cc7a50ea19b7c6f7e80df74eef5f1fd977 WHIRLPOOL 47d248ddba815a517aed9b7dbfa247bdedf293cb5adad8079be803ea4a682136f01b47fd3817a1696b3758c4631d1a25376bf58ef039998ace4a6b65807fe75e
10571 -AUX 2.5/glibc-2.5-gentoo-stack_chk_fail.c 9058 SHA256 067fba2a36d2630d50198c44395ef208cdf080508f1b716bd3d079f7b964e2df SHA512 2d404bec1e009d111b775fde620102b3d0ea7614d07ba31350940f2693e937e825acc43d1ab94bad2eecac61d47c696098327096dff8f08b4b7312d0873d71a6 WHIRLPOOL bb27ef90afb256d3822787b93574d4f4f5632995663e08b7201db17a4f38f6e2a8fd6368aaf699a808cd8f7acc346625b5607dcbf1e88f8b28dcc6d3dba92399
10572 -AUX 2.5/glibc-2.5-hardened-configure-picdefault.patch 794 SHA256 0c0359f567e4ad2d3184618bf6ac7e6102b703eab6227c7e9a4ff4dcdeed2c91 SHA512 99caace6c3528db400f8039c3f5aa65a2d5088d9758894c8a49df2b5045226a4056972de2d162411617162edd9023b6c6f80d85509638b5d68a8d0cda40adafe WHIRLPOOL 1271cea2155149e789f1242759e516443c5cf152ae9612d91d2a25a727952684eb043fbcfb38186a31fc6a1568201de5ef40af45436b137453e0582f2f6facde
10573 -AUX 2.5/glibc-2.5-hardened-inittls-nosysenter.patch 9407 SHA256 2a912e82445815ae32744d990c59d8758ec74e482b856bd274c292848b9af1fd SHA512 6acdfad1c2395a8097500216df3aab7a96211e418b56eb07ad317c25049c30c4bd9538905f186eb6d5b9260d98423bf525ec005a283e385ba4a83e7425080b10 WHIRLPOOL a542db44162d1322b23c574e20f59c8df7a5c17ca26560a22f73da832ff1743c7f56915a7e43d5d13a6068b3b975521f6b33940309496ae62fa952cfc2cd23dd
10574 -AUX 2.5/glibc-2.5-hardened-pie.patch 1569 SHA256 ff9cde8857c5da89faa4039e2a81748674fbeaaa49d85c378d80711d55f2b0c1 SHA512 bd026dba9df97d5a2a66c92feb8e004fcbaf69aaff489688990f9c0716e31d35654e2ad2b4f6ee8ea02259567f28a7d389cc5d43f0a77122c3f65a61fb4db112 WHIRLPOOL 888ca7bd8d4fe89961ee582bf96c141962b6702a92af663c7cb86d245f471f55b0817232744a7218dbf9d0f9eae9a8cc6a52843257c9353eef1332cf5c368e2e
10575 -AUX 2.6/glibc-2.6-gentoo-stack_chk_fail.c 9545 SHA256 1410ded812be80d452eada5f9d6b9bd7bdb504c14f01cc27dce3e36b6f92b92a SHA512 360b77df2d19d14060e19e763878297bf042eccd5206ce4829a33c78c982b59b46144116d237a7cac73a22dd6cb4987c8dd50f1d16003baa22c2cb2942d2cbdf WHIRLPOOL 44e14dacdd258c46201a44c2c6aae4d975b960a914c24e49f2b39dae960636512049daa052d3cd8e8d93819d263327c28eac947efdb5d9e240d1bc6e9964016f
10576 -AUX 2.6/glibc-2.6-hardened-inittls-nosysenter.patch 8674 SHA256 cf58ded8fbe9fcb3dc094521feec2588c1520ff2c632b20c69d6a210325c4fcf SHA512 094b24474e42a9714f5298b0768d44f2c0e01b7d8c3b0a754bb16caa6c024106e8c0b1acbce670bacec1ead6653f8365397173d62cb8168b946c8f521ca155d2 WHIRLPOOL 9fa16256f9d3bd2f38023549c0bd4c932d3173b6c3f4ef66e19cdb3eff5cb2def6ec02fa72a7e57ba74da6d5f29b82ddb9692d59f6c694d45b5989fa0bfa6057
10577 -AUX 2.7/glibc-2.7-hardened-inittls-nosysenter.patch 8755 SHA256 b0b1bf0746f7160b89cf281502b95c38dec9cb948d6a50a907b84fd6230a2dc3 SHA512 50563c26e1fd2e71cb034c8a1b85e0e4075ac6467bae46d4cba0c105c940c5aa6531c39cf00c63ebf94be4e290ee485d7bd8239ff08dbc781db605b45c4aa38f WHIRLPOOL 2047148b53073bae4031ad864fc360112e2812115ec455142c82d4694a57387b49b36c98f400dd6f77f5dab3d419303faabe8183a16f0fd68387996c95888a43
10578 -AUX eblits/common.eblit 10934 SHA256 5e12fe093156b639b308212562a92cd68a7778272efdec9c2dbcf3c6f94406fc SHA512 d8bf175a3f88dd93bf338af9ca2edda88ba0e3b0be43f5110865da58911092c7920ffa210d82b579e402bfe29545c3376a6257ede04dc5ef27dee2318a7d452f WHIRLPOOL e7e97534c857f56c5a7821372d1209f757b89981ba6e2386aedb42acb60afd72e0f27181a5246eaf94716808551f14933c11d57b54c3308a3bbdb20c7316e346
10579 -AUX eblits/pkg_postinst.eblit 971 SHA256 abcb925bb0730d1eae22bbcee7a4ba6523280390f410f38bfdf9eb44e0280000 SHA512 65e577c77a9a488c5e93ccd4afa325ab7e3904df594c13fda17136c8aa2748fa4e6d0102f4799b4ac9b8c3bea9920faadc4db356ece9929ee708bbfa9151dfc2 WHIRLPOOL fb3cdfb702b0ce616064f94321b9225a53b300f76d95495098b6c97eb3ab1650ea2d323eae169bb8d1fd8795134aacb5c54ba6927fe743b01f124aec416b15a0
10580 -AUX eblits/pkg_preinst.eblit 2105 SHA256 aba79a4369067615bc48429ec371ae91ccfc793ddc72cc05862b705cf63c303f SHA512 993ac0b94bae95819bf11f2ba88820bdabdc41c4c63ed25f00adb16e9e965d4206b68d316faf329ab3870a3e810183662e12e554a0150829ed026567bf9829da WHIRLPOOL 01c511f6995fc5b8cd9bf564298ab6bf6609e660fce26dff23c36081ccb72b28fdd3ba0787384c11fd126a7db0f1a0744e9396c6225b0881b9d02ee52d6eaa42
10581 -AUX eblits/pkg_pretend.eblit 4990 SHA256 219947e495090b640ec6229b028299edc3f06ee81a130211cf91803923ccf477 SHA512 cb27a05b798ec892576239d6146403f2430c9568faad410f42933610c83c60317bcd79198be4ff9b6c08f9e13b3e0ea897a9ddb8613ccc75975fa227e3c9e26d WHIRLPOOL 613f1920a3d8f51fc6274f73d72cc2be1f3df8b5f2d5af173d050142cbea8b52da4eabe50ba28192af2f2a62c259d512d466b33b303a16648cc82e6422904ba7
10582 -AUX eblits/pkg_setup.eblit 275 SHA256 c5de97dc69d3508555ac579e14ead694a75edf4707c1749219677ebee88ca9ab SHA512 627740976e372842b09034b79f61f5cb5d8283f47c94cfe66b2aa1517c901df0bf3b456f1ba26a9ddc0aa0215190d0415ed4f881cc950d163d8203a0e6bba2a9 WHIRLPOOL 16ef3155b35671311443f4c231c1867d12731035aa603dedb6e86eabdc1501c67183474a26bb06048e12c19ac3bda054fdb8a107792a3dddb743b6dc7d447339
10583 -AUX eblits/src_compile.eblit 598 SHA256 3b90a6f44d307b92cee36fdd91d412bdb9fcbab555e6c6bf8174c8e3f29137ca SHA512 ee216aa3bb13f75313d141459acb47523442addf12a6bb8d829ca40eda4f63324911a13ff0ae90fe6eed1fbe0058c89308a2205c5357a0e1897a89573fea2f51 WHIRLPOOL 3bfc5406e794ee9ee4005e97aa2d40a82d77de090c72767d6b43be6993048536b4f2442bf6864157d036e7ea3fce6ba6537a97cd2afee04c61f9e98e1adc3c00
10584 -AUX eblits/src_configure.eblit 7909 SHA256 5947f6fe819d936e0e32484a6d3f49ad7aac5e5c89333251c5659fe998c6a083 SHA512 63ef84d95c47d5881db383c4c90be03434e1c1a87db673f562ead7e6edbf694a428cdc0cf69d312159797f70fc5ac74584d7a7087b314d92dc21e452d1d66477 WHIRLPOOL e5aa3b11ac35b05ea52b077ffe16f8c5fa144a5c70dcf086569a7b6bf2daf171d552dc4a72fee65b892297af1796e80247512e17c313c4c56b6f4b7351fe8ef3
10585 -AUX eblits/src_install.eblit 7814 SHA256 8d64a4a031263dd7c3e7ba710a5dbe51fa7004b9795fefdab55f7db273f5e89f SHA512 fb9fc62103e1803509f5910b71eb28398258433762b930c93cccb7578756599739714c41077a2d0fd81c78e8fd14fd30b384a2c141d8df801507414531062551 WHIRLPOOL 4634ef7da02f35d461027a4d5bd27bd4e888805de0713b577ac47eb1161048f929e1c52e38fc4ad8da333a2198877b82962416edfb30bbaafb9055fb658a6226
10586 -AUX eblits/src_prepare.eblit 2231 SHA256 02e28094bb57137d0f12031dc3ed75d022df711847904f428ffea2e0bc42b778 SHA512 967e831a0390c2fb328cb69a75489f3ecddf2a3aecd3d8b95e8ef36fdced3b0b15a320245cd1274e5bf78bc49a17a862fe4af26f610c3f864418c707e7d6150a WHIRLPOOL 4855e3979903daa6b4586d5bed08a1f7806c03b9873f4b51a0b6b73254bb40eb08cb0e6329992f663f98907e8d82f485ee7f49ee4f82fd52dbfe880f8dd1fe70
10587 -AUX eblits/src_test.eblit 698 SHA256 96b044ef9a27c2591b2a440b45bd89989022d0b41c546ce4dcea58a631315bf4 SHA512 0a46dddf53ccbfaab3f85ba7d2e8f202b4d5be98052601686592eca0ec115de29d8cb1f324ba12dcb77f3a8d4bbb39032532042b8adf809a772ebcc845b1a152 WHIRLPOOL 42af8b97859789b52a5a0c100ba109d8c3dd47532ef3f0b764c95b7a61be9d293d99de25e601dacd840c0a4cc921740b5acc2a3567b5aa3ae8ac6f88430ccf04
10588 -AUX eblits/src_unpack.eblit 3096 SHA256 f0934fe81278797a0625fde2518f5bdf8531c75443ed3dc6ba7d18aa751cb235 SHA512 6fb32f854920ac4c0df5d60d334f4b9376b05d9b2df7d1bfac979acc3d7c282846fcce36c9816558ee75db030c3551b95f2ff26e53ea166adf97a2ae5db55abf WHIRLPOOL cee004cf4967f0b073f56ef5bbc67e56981f109400622f70cfba51ce120115f4c25ee7696a5b9baf7b22080d01d038ea936d5c342d65b7331b3801510a509123
10589 -AUX nscd 1621 SHA256 6165db3a2fcb251d4f3655c0461e018ce9c92a37f7f22a8fd2b75178b5435bc8 SHA512 3e1255ab014b3806112120000c3d2189a7c1c69dcd6639d5ce55e96bec721683a22b141982f6a6c6d44b14481c33fbbaa470863bef04e9b9eab7ccad1ddd5d95 WHIRLPOOL b7152f8d888fca13a16ea403c44eadbf1da2249dae3add11f73999259061824460a5479aa7e58c012bd737b62ecc81814109832cee33638279d90d4c08bfdbdc
10590 -AUX nscd.service 337 SHA256 de7bc9946309d34f0ab44aa22a4d3cf259fe91c57e8000d741cb09ecd3a6caa0 SHA512 2001100f3b054843c69b6fd2d38852c7c824282aa8998c25a3c0352db993705429d25c70d8ce6cb3579f836b7089644c520acac423ebd69cb1b36e94a77c5bea WHIRLPOOL f01d191971b0dc45f541c9ebaaa1a40f3497e2cc838cff6a20a7b1828d726c248abbd94322a5a5ff30c33ddb7d9086cd4d2ba3bdc1811fed59ff292ef3983a72
10591 -AUX nscd.tmpfilesd 111 SHA256 f0f64c4612d2097173854d2ec2e94ecbf4b77c7a6e94d950874e37346aa90d72 SHA512 53b80b331e1a85d8ee16eb2ce547a7249e944926c3d1cdd4a47a5301a5c842ffc7ec1e3dc0a731542a8facf8261c1c57121802d01741aa89898a3476c09da340 WHIRLPOOL cf1fed1a7e2ac1623a84f1cfa2062645afe3f791da2f4ace3859d12aa05df0e282b4c2e367a460015956ac2a8d01fee4cda84917a3adf2c38561dff200335270
10592 -AUX nsswitch.conf 503 SHA256 6c38b8642d5da884327ad678d0351d57be3621562253bd9711394bad87e45e2d SHA512 c13714110f3ccc9a2270f51d0da9293ab19b9df368092d19b1a84d5051d888297bd9439a322eca1ea60d6d5e58952797d803a368a295f2db6d5e97e173907373 WHIRLPOOL 0d37755ba5928ff894c355b3fdcf7079f19c1cb7a4f3676634084da89c74d7175823a4659b8c66d8dc1395d086991857162822ddf977dbe8dff9a59bccab821e
10593 -DIST gcc-4.7.3-r1-multilib-bootstrap.tar.bz2 8064097 SHA256 34aec5a59bb4d0ecf908c62fd418461d0f3793238296897687305fd7a1f27299 SHA512 40b93e194ad41a75d649d84d1c49070680f253a13f0617803243bc61c44fed1ca2d0a7572a97ebb79353f312b58b5f6360be916dd7435928cc53935082e15269 WHIRLPOOL bbce19e7fe5c30faa55ddd4e29070f0d1fdfca3a04e8d68e0772260fa9be89ccde63ec92badb490209008df5fee6e53dfdeec4ae51857b90ba298a79315a199f
10594 -DIST glibc-2.15-patches-13.tar.bz2 154658 SHA256 59c11d8b70bc406f6bc7dd87509f1c5fa05998fb0dde8e1be530064e9dd24a53 SHA512 ceec0506e10cff25ec9acce3d4e3f174d56a7cbb00993cb8edbf532f303c48e3b2d5e965e4470f537dbed23d14a29bae4ac4c834b4c11fcd27d8e66d8500e4c6 WHIRLPOOL 9dadbcd8626df9938b6b215a0618cbc605405bf56bb143f25e029c0aa00d5d6ac75877c7b2fd2a2c22291f62587cf8011c30d32baafb5ed0dd2bb539895f1c54
10595 -DIST glibc-2.15-patches-21.tar.bz2 110297 SHA256 5553c0a37c5c0a3abb303850fa9d2ad309e2f47c3f42806c2f1dd32a48affbfe SHA512 5255ef053a2c30f9cae583133094f41604385b9d6e653a0d6aab1d13d69e6c8cbf16fde712607ab0bac738944a0410ddc050dc231ad4ea7d3584271937b0b059 WHIRLPOOL d70249c6c3c3c0a4d02c3ebbf0309bd6b3da3962231c153c77be38d217e2f57e0eba88614e34f0f219f485ba8f8474586d0059cfc505e44f312396e6a753d441
10596 -DIST glibc-2.15-patches-23.tar.bz2 118999 SHA256 11c38082635822eb7b12d538e3b9c38ee71f6a86be6cebb59f5f2c575be93830 SHA512 ff3792a0029ea24990fe2419579472bd02119ed6a2dab28e85089d232029be5f1c18c643bcb9d577dce78a7c682bb5eee1ed3644f086b5cf19230bcf37ce8a4b WHIRLPOOL 110ddb5989bf1b66a487c9ebae03a3e62ac22b7a28b4c70d142e1c56160bdd50b9f5fa6f4dc4a28cfb28d94281c582fcfc1f60df8ae2ef4e8a946b3b06d2b1b1
10597 -DIST glibc-2.15.tar.xz 10280176 SHA256 321ec482abdc27b03244f7b345ee22dc431bc55daf9c000a4e7b040fbdbecb50 SHA512 fc8bc407cd9edfd79bd286d28c84e0b8224e1f57c1d318e73da098a9693257d78970178fd59f487f0321a079fcb772e8e78473fab52f091b2addb0a48fe8dcf7 WHIRLPOOL 061fc0c9915bd821dc31c2fea8e4f9a75b6c7ec0c935ea713d8c087408a8bf3c600179273438f3d9748fe40b946866b2f160e6da6fee4da51e549a30d0f0ebbc
10598 -DIST glibc-2.17-patches-7.tar.bz2 79288 SHA256 8000409d072571d2d5119d4dd538e3a3ea39213407e202ea10033bf6aed516af SHA512 c6de4d7754cec6e7a9e36d56eadc6605ba6fcfac116eb50553503738873659977beb935112d361620c35e7b15e86f845a49fd13269ffbf98c72f54dffade19f7 WHIRLPOOL 259e938e8f4ca6b7296db4982748429f00135f80cd03965da589e4318134aeddb5acdfa0f8f61871e46330a0c96eb8e734a3c2f50d564882ba37f13f722b78c5
10599 -DIST glibc-2.17.tar.xz 10981956 SHA256 6914e337401e0e0ade23694e1b2c52a5f09e4eda3270c67e7c3ba93a89b5b23e SHA512 384e54037daaa344a26ce58242acc3f9a249d0765088d18a540a305745afa33ae6dec4024adae958eacd7100be9c713d117260ace8340f6d8c8396dbde4868d2 WHIRLPOOL 9b98c1c298aeff607aaa554341c300c15491b7314f127524fc5c048c67c5059daaf706e6cf206bb69213d5307e37bed87137ab46f504d8072bb778310081fc23
10600 -DIST glibc-2.19-patches-3.tar.bz2 80664 SHA256 6fb03292e224199e0dd9ba7ee83aca723e1560f26831e85cdc6302b187c6de3c SHA512 d281d6a2757920124cf8a3f02b97e75192598b08d96ae48840df34c7ffdcb212952d171f233e6f12a429b19437d0a296212fe1f2eae164d6a1c6793cb3cb69f0 WHIRLPOOL 6f28a2d0dff42e8ad0e77859938e3093753f77f78821375777eebb2db5568bf1c56e8b8208f02280f23acb2dd26dc8a313fedd5b2c10755f1659e6d324a1dbc3
10601 -DIST glibc-2.19.tar.xz 12083312 SHA256 2d3997f588401ea095a0b27227b1d50cdfdd416236f6567b564549d3b46ea2a2 SHA512 9e021fcb3afbb9ace2a0e37fded231a62de861bd766e29d47163a03182e37add718b7acc3963d1c525f9556773e842297725715acde48dcfbaab6e756af1a23d WHIRLPOOL 9581a3a23ebdd56bc559b56b95b7bcd21ca039546ec19c6c0e4e0738597542164fdb21ab1d1f36d5e73a205fb51f0974c7d497972615bce69ae002298f6475b6
10602 -DIST glibc-ports-2.15.tar.xz 421820 SHA256 fcc271fcc3a808bf0f3aa1d144bc39b8d0d5f730aed6e206b883961515f0d1b9 SHA512 fc3c80a9a7ede0f35054e5be043fff4b967e6ef6678f42e617dd1dd498920edb4e4c785cf8e3cd97fc2914a35a892e0fd7e1aab24f0c3c8d207765a131bf3744 WHIRLPOOL a8a617eacb326615265832f86a7ef39678364b5b65d5c16d58680ec0debfbca6780018b7da9c1a86bdfffcde58aa1258b96ea4bd50b114901b522e62d48ae4a5
10603 -EBUILD glibc-2.15-r1.ebuild 8143 SHA256 94c831d06eb6cd7c153db3267dfc7811739d90b8761751b384e85360f77e70bd SHA512 53d5b41729a282362d3447a45dd373c098e04cafddc81d7da0304b7ef56a4bf53058c4ea88763db48d3796345131f6b25cc56949770af1a628549d3e2b24af59 WHIRLPOOL 3f76b15a4db14db99afece549cd4c4982f1fbcefac313bbdf10127f10630da9c43f272ec85ee99afafeb3ab9afcf5f2eafd612386e152e3cfa08d360ca639115
10604 -EBUILD glibc-2.15-r2.ebuild 7692 SHA256 1ee891da4bbb450ce16318877a9043773c34a7418eb49f7f684155e48ecc1b6b SHA512 4e0e5c7e85a514a0fed90a9e339eef8748e3a0f06211a93463db355b9b921337ead3f645a3fe8b99dbe2f12d1c03e2ffcad7e2dbe2909b5d97fa5486fe53215f WHIRLPOOL 84ab863b0f70cf8d40291a155f21c987e9b48dce005890e34e105bb3fed950d463f0b053fe2d7988a9b218dc3ccc9afb0c952845009b2e7e2569b28298f8e479
10605 -EBUILD glibc-2.15-r3.ebuild 7764 SHA256 17540bbede72db02e113f556cd3c4a6873c45be1191bade644b5a78d2557c673 SHA512 b9f856356a1dad8f51a62610defce3984477e7f8265427c7e6d21c7868bb6756de4f66b16d3184fd51180155112339e33547a2348d55a2cf1059ccbdf68f0c3f WHIRLPOOL 9c36e9f55427b2cf0180db983446d572d63be309e64b42bbe3571105446f4eddaa815081faf79fe6fc639e3ddf3e3720f11e7af2e85ea19125ef561176eaeff5
10606 -EBUILD glibc-2.17.ebuild 7668 SHA256 b6b7142b8fded3c848424eec002b0e9b15912fe03841d854377b827ea3975eb9 SHA512 0d5dafad92578139720403aa29e1406c366892cd7bdebbfa3fee8a1a4eed06009941d9a55f6f9e9f3ec035947e03d17137e6b9ecdb4061812b0254aa48d0d1a8 WHIRLPOOL 2fdb5ab665c6ac7297e2586644f121101ab84ae3a17ade1fff87be8a31e4d89096063ccb25ceadba53328a398d65240833cf2508b3fa20c42f1e4354a3f1f81d
10607 -EBUILD glibc-2.19-r1.ebuild 7397 SHA256 c96062bad2386baf72d3e31e9858eedc5a05980fbfe90b3bc618f7027d90c80b SHA512 df34e6de33e59afb49c4c6d98bf32ce47f21c54979b2db5e21bdad8357f9e2921ab5c80f9926aeeb4cc65f010ee8407bd078ae121adedb22e8d5e6431b8123ac WHIRLPOOL f74da4cd1fbd863928551144cef903093df3db95ca7db8da982a1eede571e5cbe123700ef8d81546754cfc29a9edccd58bd42ea1d51f8cfb76a35072fc96680a
10608 -MISC metadata.xml 521 SHA256 e89c6157189c7a76823ea61ad88e85d6c5e497855abfa03d4e044b09bd0d0955 SHA512 46d36653c75257e1091d88eed54dda553a81a246407f7ae37864e3a9f1c359560bf3d08f5946a725624804e74b1684414a729a1a3b961220dc76cdedd9a4d0ce WHIRLPOOL eb3695d1ce708f3668dc85332b4ad9de6e021b3a98c1b48c4b874d7254168ee5aff2ac6b51866b1df29f1689085ab07e97a7b39708bcffbafedb21288e01f42e
10609
10610 diff --git a/sys-libs/glibc/files/2.10/glibc-2.10-gentoo-chk_fail.c b/sys-libs/glibc/files/2.10/glibc-2.10-gentoo-chk_fail.c
10611 deleted file mode 100644
10612 index 37711e8..0000000
10613 --- a/sys-libs/glibc/files/2.10/glibc-2.10-gentoo-chk_fail.c
10614 +++ /dev/null
10615 @@ -1,315 +0,0 @@
10616 -/* Copyright (C) 2004, 2005 Free Software Foundation, Inc.
10617 - This file is part of the GNU C Library.
10618 -
10619 - The GNU C Library is free software; you can redistribute it and/or
10620 - modify it under the terms of the GNU Lesser General Public
10621 - License as published by the Free Software Foundation; either
10622 - version 2.1 of the License, or (at your option) any later version.
10623 -
10624 - The GNU C Library is distributed in the hope that it will be useful,
10625 - but WITHOUT ANY WARRANTY; without even the implied warranty of
10626 - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
10627 - Lesser General Public License for more details.
10628 -
10629 - You should have received a copy of the GNU Lesser General Public
10630 - License along with the GNU C Library; if not, write to the Free
10631 - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
10632 - 02111-1307 USA. */
10633 -
10634 -/* Copyright (C) 2006-2008 Gentoo Foundation Inc.
10635 - * License terms as above.
10636 - *
10637 - * Hardened Gentoo SSP and FORTIFY handler
10638 - *
10639 - * An SSP failure handler that does not use functions from the rest of
10640 - * glibc; it uses the INTERNAL_SYSCALL methods directly. This ensures
10641 - * no possibility of recursion into the handler.
10642 - *
10643 - * Direct all bug reports to http://bugs.gentoo.org/
10644 - *
10645 - * Re-written from the glibc-2.3 Hardened Gentoo SSP handler
10646 - * by Kevin F. Quinn - <kevquinn[@]gentoo.org>
10647 - *
10648 - * The following people contributed to the glibc-2.3 Hardened
10649 - * Gentoo SSP and FORTIFY handler, from which this implementation draws much:
10650 - *
10651 - * Ned Ludd - <solar[@]gentoo.org>
10652 - * Alexander Gabert - <pappy[@]gentoo.org>
10653 - * The PaX Team - <pageexec[@]freemail.hu>
10654 - * Peter S. Mazinger - <ps.m[@]gmx.net>
10655 - * Yoann Vandoorselaere - <yoann[@]prelude-ids.org>
10656 - * Robert Connolly - <robert[@]linuxfromscratch.org>
10657 - * Cory Visi <cory[@]visi.name>
10658 - * Mike Frysinger <vapier[@]gentoo.org>
10659 - * Magnus Granberg <zorry[@]ume.nu>
10660 - */
10661 -
10662 -#include <stdio.h>
10663 -#include <stdlib.h>
10664 -#include <errno.h>
10665 -#include <unistd.h>
10666 -#include <signal.h>
10667 -
10668 -#include <sys/types.h>
10669 -
10670 -#include <sysdep-cancel.h>
10671 -#include <sys/syscall.h>
10672 -#include <bp-checks.h>
10673 -
10674 -#include <kernel-features.h>
10675 -
10676 -#include <alloca.h>
10677 -/* from sysdeps */
10678 -#include <socketcall.h>
10679 -/* for the stuff in bits/socket.h */
10680 -#include <sys/socket.h>
10681 -#include <sys/un.h>
10682 -
10683 -/* Sanity check on SYSCALL macro names - force compilation
10684 - * failure if the names used here do not exist
10685 - */
10686 -#if !defined __NR_socketcall && !defined __NR_socket
10687 -# error Cannot do syscall socket or socketcall
10688 -#endif
10689 -#if !defined __NR_socketcall && !defined __NR_connect
10690 -# error Cannot do syscall connect or socketcall
10691 -#endif
10692 -#ifndef __NR_write
10693 -# error Cannot do syscall write
10694 -#endif
10695 -#ifndef __NR_close
10696 -# error Cannot do syscall close
10697 -#endif
10698 -#ifndef __NR_getpid
10699 -# error Cannot do syscall getpid
10700 -#endif
10701 -#ifndef __NR_kill
10702 -# error Cannot do syscall kill
10703 -#endif
10704 -#ifndef __NR_exit
10705 -# error Cannot do syscall exit
10706 -#endif
10707 -#ifdef SSP_SMASH_DUMPS_CORE
10708 -# define ENABLE_SSP_SMASH_DUMPS_CORE 1
10709 -# if !defined _KERNEL_NSIG && !defined _NSIG
10710 -# error No _NSIG or _KERNEL_NSIG for rt_sigaction
10711 -# endif
10712 -# if !defined __NR_sigaction && !defined __NR_rt_sigaction
10713 -# error Cannot do syscall sigaction or rt_sigaction
10714 -# endif
10715 -/* Although rt_sigaction expects sizeof(sigset_t) - it expects the size
10716 - * of the _kernel_ sigset_t which is not the same as the user sigset_t.
10717 - * Most arches have this as _NSIG bits - mips has _KERNEL_NSIG bits for
10718 - * some reason.
10719 - */
10720 -# ifdef _KERNEL_NSIG
10721 -# define _SSP_NSIG _KERNEL_NSIG
10722 -# else
10723 -# define _SSP_NSIG _NSIG
10724 -# endif
10725 -#else
10726 -# define _SSP_NSIG 0
10727 -# define ENABLE_SSP_SMASH_DUMPS_CORE 0
10728 -#endif
10729 -
10730 -/* Define DO_SIGACTION - default to newer rt signal interface but
10731 - * fallback to old as needed.
10732 - */
10733 -#ifdef __NR_rt_sigaction
10734 -# define DO_SIGACTION(signum, act, oldact) \
10735 - INLINE_SYSCALL(rt_sigaction, 4, signum, act, oldact, _SSP_NSIG/8)
10736 -#else
10737 -# define DO_SIGACTION(signum, act, oldact) \
10738 - INLINE_SYSCALL(sigaction, 3, signum, act, oldact)
10739 -#endif
10740 -
10741 -/* Define DO_SOCKET/DO_CONNECT functions to deal with socketcall vs socket/connect */
10742 -#if defined(__NR_socket) && defined(__NR_connect)
10743 -# define USE_OLD_SOCKETCALL 0
10744 -#else
10745 -# define USE_OLD_SOCKETCALL 1
10746 -#endif
10747 -
10748 -/* stub out the __NR_'s so we can let gcc optimize away dead code */
10749 -#ifndef __NR_socketcall
10750 -# define __NR_socketcall 0
10751 -#endif
10752 -#ifndef __NR_socket
10753 -# define __NR_socket 0
10754 -#endif
10755 -#ifndef __NR_connect
10756 -# define __NR_connect 0
10757 -#endif
10758 -#define DO_SOCKET(result, domain, type, protocol) \
10759 - do { \
10760 - if (USE_OLD_SOCKETCALL) { \
10761 - socketargs[0] = domain; \
10762 - socketargs[1] = type; \
10763 - socketargs[2] = protocol; \
10764 - socketargs[3] = 0; \
10765 - result = INLINE_SYSCALL(socketcall, 2, SOCKOP_socket, socketargs); \
10766 - } else \
10767 - result = INLINE_SYSCALL(socket, 3, domain, type, protocol); \
10768 - } while (0)
10769 -#define DO_CONNECT(result, sockfd, serv_addr, addrlen) \
10770 - do { \
10771 - if (USE_OLD_SOCKETCALL) { \
10772 - socketargs[0] = sockfd; \
10773 - socketargs[1] = (unsigned long int)serv_addr; \
10774 - socketargs[2] = addrlen; \
10775 - socketargs[3] = 0; \
10776 - result = INLINE_SYSCALL(socketcall, 2, SOCKOP_connect, socketargs); \
10777 - } else \
10778 - result = INLINE_SYSCALL(connect, 3, sockfd, serv_addr, addrlen); \
10779 - } while (0)
10780 -
10781 -#ifndef _PATH_LOG
10782 -# define _PATH_LOG "/dev/log"
10783 -#endif
10784 -
10785 -static const char path_log[] = _PATH_LOG;
10786 -
10787 -/* For building glibc with SSP switched on, define __progname to a
10788 - * constant if building for the run-time loader, to avoid pulling
10789 - * in more of libc.so into ld.so
10790 - */
10791 -#ifdef IS_IN_rtld
10792 -static char *__progname = "<rtld>";
10793 -#else
10794 -extern char *__progname;
10795 -#endif
10796 -
10797 -/* Common handler code, used by chk_fail
10798 - * Inlined to ensure no self-references to the handler within itself.
10799 - * Data static to avoid putting more than necessary on the stack,
10800 - * to aid core debugging.
10801 - */
10802 -__attribute__ ((__noreturn__ , __always_inline__))
10803 -static inline void
10804 -__hardened_gentoo_chk_fail(char func[], int damaged)
10805 -{
10806 -#define MESSAGE_BUFSIZ 256
10807 - static pid_t pid;
10808 - static int plen, i;
10809 - static char message[MESSAGE_BUFSIZ];
10810 - static const char msg_ssa[] = ": buffer overflow attack";
10811 - static const char msg_inf[] = " in function ";
10812 - static const char msg_ssd[] = "*** buffer overflow detected ***: ";
10813 - static const char msg_terminated[] = " - terminated\n";
10814 - static const char msg_report[] = "Report to http://bugs.gentoo.org/\n";
10815 - static const char msg_unknown[] = "<unknown>";
10816 - static int log_socket, connect_result;
10817 - static struct sockaddr_un sock;
10818 - static unsigned long int socketargs[4];
10819 -
10820 - /* Build socket address
10821 - */
10822 - sock.sun_family = AF_UNIX;
10823 - i = 0;
10824 - while ((path_log[i] != '\0') && (i<(sizeof(sock.sun_path)-1))) {
10825 - sock.sun_path[i] = path_log[i];
10826 - i++;
10827 - }
10828 - sock.sun_path[i] = '\0';
10829 -
10830 - /* Try SOCK_DGRAM connection to syslog */
10831 - connect_result = -1;
10832 - DO_SOCKET(log_socket, AF_UNIX, SOCK_DGRAM, 0);
10833 - if (log_socket != -1)
10834 - DO_CONNECT(connect_result, log_socket, &sock, sizeof(sock));
10835 - if (connect_result == -1) {
10836 - if (log_socket != -1)
10837 - INLINE_SYSCALL(close, 1, log_socket);
10838 - /* Try SOCK_STREAM connection to syslog */
10839 - DO_SOCKET(log_socket, AF_UNIX, SOCK_STREAM, 0);
10840 - if (log_socket != -1)
10841 - DO_CONNECT(connect_result, log_socket, &sock, sizeof(sock));
10842 - }
10843 -
10844 - /* Build message. Messages are generated both in the old style and new style,
10845 - * so that log watchers that are configured for the old-style message continue
10846 - * to work.
10847 - */
10848 -#define strconcat(str) \
10849 - {i=0; while ((str[i] != '\0') && ((i+plen)<(MESSAGE_BUFSIZ-1))) \
10850 - {\
10851 - message[plen+i]=str[i];\
10852 - i++;\
10853 - }\
10854 - plen+=i;}
10855 -
10856 - /* R.Henderson post-gcc-4 style message */
10857 - plen = 0;
10858 - strconcat(msg_ssd);
10859 - if (__progname != (char *)0)
10860 - strconcat(__progname)
10861 - else
10862 - strconcat(msg_unknown);
10863 - strconcat(msg_terminated);
10864 -
10865 - /* Write out error message to STDERR, to syslog if open */
10866 - INLINE_SYSCALL(write, 3, STDERR_FILENO, message, plen);
10867 - if (connect_result != -1)
10868 - INLINE_SYSCALL(write, 3, log_socket, message, plen);
10869 -
10870 - /* Dr. Etoh pre-gcc-4 style message */
10871 - plen = 0;
10872 - if (__progname != (char *)0)
10873 - strconcat(__progname)
10874 - else
10875 - strconcat(msg_unknown);
10876 - strconcat(msg_ssa);
10877 - strconcat(msg_inf);
10878 - if (func != NULL)
10879 - strconcat(func)
10880 - else
10881 - strconcat(msg_unknown);
10882 - strconcat(msg_terminated);
10883 - /* Write out error message to STDERR, to syslog if open */
10884 - INLINE_SYSCALL(write, 3, STDERR_FILENO, message, plen);
10885 - if (connect_result != -1)
10886 - INLINE_SYSCALL(write, 3, log_socket, message, plen);
10887 -
10888 - /* Direct reports to bugs.gentoo.org */
10889 - plen=0;
10890 - strconcat(msg_report);
10891 - message[plen++]='\0';
10892 -
10893 - /* Write out error message to STDERR, to syslog if open */
10894 - INLINE_SYSCALL(write, 3, STDERR_FILENO, message, plen);
10895 - if (connect_result != -1)
10896 - INLINE_SYSCALL(write, 3, log_socket, message, plen);
10897 -
10898 - if (log_socket != -1)
10899 - INLINE_SYSCALL(close, 1, log_socket);
10900 -
10901 - /* Suicide */
10902 - pid = INLINE_SYSCALL(getpid, 0);
10903 -
10904 - if (ENABLE_SSP_SMASH_DUMPS_CORE) {
10905 - static struct sigaction default_abort_act;
10906 - /* Remove any user-supplied handler for SIGABRT, before using it */
10907 - default_abort_act.sa_handler = SIG_DFL;
10908 - default_abort_act.sa_sigaction = NULL;
10909 - __sigfillset(&default_abort_act.sa_mask);
10910 - default_abort_act.sa_flags = 0;
10911 - if (DO_SIGACTION(SIGABRT, &default_abort_act, NULL) == 0)
10912 - INLINE_SYSCALL(kill, 2, pid, SIGABRT);
10913 - }
10914 -
10915 - /* Note; actions cannot be added to SIGKILL */
10916 - INLINE_SYSCALL(kill, 2, pid, SIGKILL);
10917 -
10918 - /* In case the kill didn't work, exit anyway
10919 - * The loop prevents gcc thinking this routine returns
10920 - */
10921 - while (1)
10922 - INLINE_SYSCALL(exit, 0);
10923 -}
10924 -
10925 -__attribute__ ((__noreturn__))
10926 -void __chk_fail(void)
10927 -{
10928 - __hardened_gentoo_chk_fail(NULL, 0);
10929 -}
10930 -
10931
10932 diff --git a/sys-libs/glibc/files/2.10/glibc-2.10-hardened-configure-picdefault.patch b/sys-libs/glibc/files/2.10/glibc-2.10-hardened-configure-picdefault.patch
10933 deleted file mode 100644
10934 index e75ccc7..0000000
10935 --- a/sys-libs/glibc/files/2.10/glibc-2.10-hardened-configure-picdefault.patch
10936 +++ /dev/null
10937 @@ -1,30 +0,0 @@
10938 -Prevent default-fPIE from confusing configure into thinking
10939 -PIC code is default. This causes glibc to build both PIC and
10940 -non-PIC code as normal, which on the hardened compiler generates
10941 -PIC and PIE.
10942 -
10943 -Patch by Kevin F. Quinn <kevquinn@g.o>
10944 -Fixed for glibc 2.10 by Magnus Granberg <zorry@×××.nu>
10945 -
10946 ---- configure.in
10947 -+++ configure.in
10948 -@@ -2145,7 +2145,7 @@
10949 - # error PIC is default.
10950 - #endif
10951 - EOF
10952 --if eval "${CC-cc} -S conftest.c 2>&AS_MESSAGE_LOG_FD 1>&AS_MESSAGE_LOG_FD"; then
10953 -+if eval "${CC-cc} -fno-PIE -S conftest.c 2>&AS_MESSAGE_LOG_FD 1>&AS_MESSAGE_LOG_FD"; then
10954 - libc_cv_pic_default=no
10955 - fi
10956 - rm -f conftest.*])
10957 ---- configure
10958 -+++ configure
10959 -@@ -7698,7 +7698,7 @@
10960 - # error PIC is default.
10961 - #endif
10962 - EOF
10963 --if eval "${CC-cc} -S conftest.c 2>&5 1>&5"; then
10964 -+if eval "${CC-cc} -fno-PIE -S conftest.c 2>&5 1>&5"; then
10965 - libc_cv_pic_default=no
10966 - fi
10967 - rm -f conftest.*
10968
10969 diff --git a/sys-libs/glibc/files/2.10/glibc-2.10-hardened-inittls-nosysenter.patch b/sys-libs/glibc/files/2.10/glibc-2.10-hardened-inittls-nosysenter.patch
10970 deleted file mode 100644
10971 index cb6d8e3..0000000
10972 --- a/sys-libs/glibc/files/2.10/glibc-2.10-hardened-inittls-nosysenter.patch
10973 +++ /dev/null
10974 @@ -1,274 +0,0 @@
10975 -When building glibc PIE (which is not something upstream support),
10976 -several modifications are necessary to the glibc build process.
10977 -
10978 -First, any syscalls in PIEs must be of the PIC variant, otherwise
10979 -textrels ensue. Then, any syscalls made before the initialisation
10980 -of the TLS will fail on i386, as the sysenter variant on i386 uses
10981 -the TLS, giving rise to a chicken-and-egg situation. This patch
10982 -defines a PIC syscall variant that doesn't use sysenter, even when the sysenter
10983 -version is normally used, and uses the non-sysenter version for the brk
10984 -syscall that is performed by the TLS initialisation. Further, the TLS
10985 -initialisation is moved in this case prior to the initialisation of
10986 -dl_osversion, as that requires further syscalls.
10987 -
10988 -csu/libc-start.c: Move initial TLS initialization to before the
10989 -initialisation of dl_osversion, when INTERNAL_SYSCALL_NOSYSENTER is defined
10990 -
10991 -csu/libc-tls.c: Use the no-sysenter version of sbrk when
10992 -INTERNAL_SYSCALL_NOSYSENTER is defined.
10993 -
10994 -misc/sbrk.c: Define a no-sysenter version of sbrk, using the no-sysenter
10995 -version of brk - if INTERNAL_SYSCALL_NOSYSENTER is defined.
10996 -
10997 -misc/brk.c: Define a no-sysenter version of brk if
10998 -INTERNAL_SYSCALL_NOSYSENTER is defined.
10999 -
11000 -sysdeps/unix/sysv/linux/i386/sysdep.h: Define INTERNAL_SYSCALL_NOSYSENTER
11001 -Make INTERNAL_SYSCALL always use the PIC variant, even if not SHARED.
11002 -
11003 -Patch by Kevin F. Quinn <kevquinn@g.o>
11004 -Fixed for 2.10 by Magnus Granberg <zorry@×××.nu>
11005 -
11006 ---- csu/libc-start.c
11007 -+++ csu/libc-start.c
11008 -@@ -28,6 +28,7 @@
11009 - extern int __libc_multiple_libcs;
11010 -
11011 - #include <tls.h>
11012 -+#include <sysdep.h>
11013 - #ifndef SHARED
11014 - # include <dl-osinfo.h>
11015 - extern void __pthread_initialize_minimal (void);
11016 -@@ -129,6 +130,11 @@
11017 - # endif
11018 - _dl_aux_init (auxvec);
11019 - # endif
11020 -+# ifdef INTERNAL_SYSCALL_NOSYSENTER
11021 -+ /* Do the initial TLS initialization before _dl_osversion,
11022 -+ since the latter uses the uname syscall. */
11023 -+ __pthread_initialize_minimal ();
11024 -+# endif
11025 - # ifdef DL_SYSDEP_OSCHECK
11026 - if (!__libc_multiple_libcs)
11027 - {
11028 -@@ -138,10 +144,12 @@
11029 - }
11030 - # endif
11031 -
11032 -+# ifndef INTERNAL_SYSCALL_NOSYSENTER
11033 - /* Initialize the thread library at least a bit since the libgcc
11034 - functions are using thread functions if these are available and
11035 - we need to setup errno. */
11036 - __pthread_initialize_minimal ();
11037 -+# endif
11038 -
11039 - /* Set up the stack checker's canary. */
11040 - uintptr_t stack_chk_guard = _dl_setup_stack_chk_guard ();
11041 ---- csu/libc-tls.c
11042 -+++ csu/libc-tls.c
11043 -@@ -23,6 +23,7 @@
11044 - #include <unistd.h>
11045 - #include <stdio.h>
11046 - #include <sys/param.h>
11047 -+#include <sysdep.h>
11048 -
11049 -
11050 - #ifdef SHARED
11051 -@@ -29,6 +30,9 @@
11052 - #error makefile bug, this file is for static only
11053 - #endif
11054 -
11055 -+#ifdef INTERNAL_SYSCALL_NOSYSENTER
11056 -+extern void *__sbrk_nosysenter (intptr_t __delta);
11057 -+#endif
11058 - extern ElfW(Phdr) *_dl_phdr;
11059 - extern size_t _dl_phnum;
11060 -
11061 -@@ -141,14 +145,26 @@
11062 -
11063 - The initialized value of _dl_tls_static_size is provided by dl-open.c
11064 - to request some surplus that permits dynamic loading of modules with
11065 -- IE-model TLS. */
11066 -+ IE-model TLS.
11067 -+
11068 -+ Where the normal sbrk would use a syscall that needs the TLS (i386)
11069 -+ use the special non-sysenter version instead. */
11070 - #if TLS_TCB_AT_TP
11071 - tcb_offset = roundup (memsz + GL(dl_tls_static_size), tcbalign);
11072 -+# ifdef INTERNAL_SYSCALL_NOSYSENTER
11073 -+ tlsblock = __sbrk_nosysenter (tcb_offset + tcbsize + max_align);
11074 -+# else
11075 - tlsblock = __sbrk (tcb_offset + tcbsize + max_align);
11076 -+# endif
11077 - #elif TLS_DTV_AT_TP
11078 - tcb_offset = roundup (tcbsize, align ?: 1);
11079 -+# ifdef INTERNAL_SYSCALL_NOSYSENTER
11080 -+ tlsblock = __sbrk_nosysenter (tcb_offset + memsz + max_align
11081 -+ + TLS_PRE_TCB_SIZE + GL(dl_tls_static_size));
11082 -+# else
11083 - tlsblock = __sbrk (tcb_offset + memsz + max_align
11084 - + TLS_PRE_TCB_SIZE + GL(dl_tls_static_size));
11085 -+# endif
11086 - tlsblock += TLS_PRE_TCB_SIZE;
11087 - #else
11088 - /* In case a model with a different layout for the TCB and DTV
11089 ---- misc/sbrk.c
11090 -+++ misc/sbrk.c
11091 -@@ -18,6 +18,7 @@
11092 - #include <errno.h>
11093 - #include <stdint.h>
11094 - #include <unistd.h>
11095 -+#include <sysdep.h>
11096 -
11097 - /* Defined in brk.c. */
11098 - extern void *__curbrk;
11099 -@@ -29,6 +30,35 @@
11100 - /* Extend the process's data space by INCREMENT.
11101 - If INCREMENT is negative, shrink data space by - INCREMENT.
11102 - Return start of new space allocated, or -1 for errors. */
11103 -+#ifdef INTERNAL_SYSCALL_NOSYSENTER
11104 -+/* This version is used by csu/libc-tls.c whem initialising the TLS
11105 -+ if the SYSENTER version requires the TLS (which it does on i386).
11106 -+ Obviously using the TLS before it is initialised is broken. */
11107 -+extern int __brk_nosysenter (void *addr);
11108 -+void *
11109 -+__sbrk_nosysenter (intptr_t increment)
11110 -+{
11111 -+ void *oldbrk;
11112 -+
11113 -+ /* If this is not part of the dynamic library or the library is used
11114 -+ via dynamic loading in a statically linked program update
11115 -+ __curbrk from the kernel's brk value. That way two separate
11116 -+ instances of __brk and __sbrk can share the heap, returning
11117 -+ interleaved pieces of it. */
11118 -+ if (__curbrk == NULL || __libc_multiple_libcs)
11119 -+ if (__brk_nosysenter (0) < 0) /* Initialize the break. */
11120 -+ return (void *) -1;
11121 -+
11122 -+ if (increment == 0)
11123 -+ return __curbrk;
11124 -+
11125 -+ oldbrk = __curbrk;
11126 -+ if (__brk_nosysenter (oldbrk + increment) < 0)
11127 -+ return (void *) -1;
11128 -+
11129 -+ return oldbrk;
11130 -+}
11131 -+#endif
11132 - void *
11133 - __sbrk (intptr_t increment)
11134 - {
11135 ---- sysdeps/unix/sysv/linux/i386/brk.c
11136 -+++ sysdeps/unix/sysv/linux/i386/brk.c
11137 -@@ -31,6 +31,30 @@
11138 - linker. */
11139 - weak_alias (__curbrk, ___brk_addr)
11140 -
11141 -+#ifdef INTERNAL_SYSCALL_NOSYSENTER
11142 -+/* This version is used by csu/libc-tls.c whem initialising the TLS
11143 -+ * if the SYSENTER version requires the TLS (which it does on i386).
11144 -+ * Obviously using the TLS before it is initialised is broken. */
11145 -+int
11146 -+__brk_nosysenter (void *addr)
11147 -+{
11148 -+ void *__unbounded newbrk;
11149 -+
11150 -+ INTERNAL_SYSCALL_DECL (err);
11151 -+ newbrk = (void *__unbounded) INTERNAL_SYSCALL_NOSYSENTER (brk, err, 1,
11152 -+ __ptrvalue (addr));
11153 -+
11154 -+ __curbrk = newbrk;
11155 -+
11156 -+ if (newbrk < addr)
11157 -+ {
11158 -+ __set_errno (ENOMEM);
11159 -+ return -1;
11160 -+ }
11161 -+
11162 -+ return 0;
11163 -+}
11164 -+#endif
11165 - int
11166 - __brk (void *addr)
11167 - {
11168 ---- sysdeps/unix/sysv/linux/i386/sysdep.h
11169 -+++ sysdeps/unix/sysv/linux/i386/sysdep.h
11170 -@@ -187,7 +187,7 @@
11171 - /* The original calling convention for system calls on Linux/i386 is
11172 - to use int $0x80. */
11173 - #ifdef I386_USE_SYSENTER
11174 --# ifdef SHARED
11175 -+# if defined SHARED || defined __PIC__
11176 - # define ENTER_KERNEL call *%gs:SYSINFO_OFFSET
11177 - # else
11178 - # define ENTER_KERNEL call *_dl_sysinfo
11179 -@@ -358,7 +358,7 @@
11180 - possible to use more than four parameters. */
11181 - #undef INTERNAL_SYSCALL
11182 - #ifdef I386_USE_SYSENTER
11183 --# ifdef SHARED
11184 -+# if defined SHARED || defined __PIC__
11185 - # define INTERNAL_SYSCALL(name, err, nr, args...) \
11186 - ({ \
11187 - register unsigned int resultvar; \
11188 -@@ -384,6 +384,18 @@
11189 - : "0" (name), "i" (offsetof (tcbhead_t, sysinfo)) \
11190 - ASMFMT_##nr(args) : "memory", "cc"); \
11191 - (int) resultvar; })
11192 -+# define INTERNAL_SYSCALL_NOSYSENTER(name, err, nr, args...) \
11193 -+ ({ \
11194 -+ register unsigned int resultvar; \
11195 -+ EXTRAVAR_##nr \
11196 -+ asm volatile ( \
11197 -+ LOADARGS_NOSYSENTER_##nr \
11198 -+ "movl %1, %%eax\n\t" \
11199 -+ "int $0x80\n\t" \
11200 -+ RESTOREARGS_NOSYSENTER_##nr \
11201 -+ : "=a" (resultvar) \
11202 -+ : "i" (__NR_##name) ASMFMT_##nr(args) : "memory", "cc"); \
11203 -+ (int) resultvar; })
11204 - # else
11205 - # define INTERNAL_SYSCALL(name, err, nr, args...) \
11206 - ({ \
11207 -@@ -447,12 +459,20 @@
11208 -
11209 - #define LOADARGS_0
11210 - #ifdef __PIC__
11211 --# if defined I386_USE_SYSENTER && defined SHARED
11212 -+# if defined I386_USE_SYSENTER && ( defined SHARED || defined __PIC__ )
11213 - # define LOADARGS_1 \
11214 - "bpushl .L__X'%k3, %k3\n\t"
11215 - # define LOADARGS_5 \
11216 - "movl %%ebx, %4\n\t" \
11217 - "movl %3, %%ebx\n\t"
11218 -+# define LOADARGS_NOSYSENTER_1 \
11219 -+ "bpushl .L__X'%k2, %k2\n\t"
11220 -+# define LOADARGS_NOSYSENTER_2 LOADARGS_NOSYSENTER_1
11221 -+# define LOADARGS_NOSYSENTER_3 LOADARGS_3
11222 -+# define LOADARGS_NOSYSENTER_4 LOADARGS_3
11223 -+# define LOADARGS_NOSYSENTER_5 \
11224 -+ "movl %%ebx, %3\n\t" \
11225 -+ "movl %2, %%ebx\n\t"
11226 - # else
11227 - # define LOADARGS_1 \
11228 - "bpushl .L__X'%k2, %k2\n\t"
11229 -@@ -474,11 +495,18 @@
11230 -
11231 - #define RESTOREARGS_0
11232 - #ifdef __PIC__
11233 --# if defined I386_USE_SYSENTER && defined SHARED
11234 -+# if defined I386_USE_SYSENTER && ( defined SHARED || defined __PIC__ )
11235 - # define RESTOREARGS_1 \
11236 - "bpopl .L__X'%k3, %k3\n\t"
11237 - # define RESTOREARGS_5 \
11238 - "movl %4, %%ebx"
11239 -+# define RESTOREARGS_NOSYSENTER_1 \
11240 -+ "bpopl .L__X'%k2, %k2\n\t"
11241 -+# define RESTOREARGS_NOSYSENTER_2 RESTOREARGS_NOSYSENTER_1
11242 -+# define RESTOREARGS_NOSYSENTER_3 RESTOREARGS_3
11243 -+# define RESTOREARGS_NOSYSENTER_4 RESTOREARGS_3
11244 -+# define RESTOREARGS_NOSYSENTER_5 \
11245 -+ "movl %3, %%ebx"
11246 - # else
11247 - # define RESTOREARGS_1 \
11248 - "bpopl .L__X'%k2, %k2\n\t"
11249
11250 diff --git a/sys-libs/glibc/files/2.10/glibc-2.10-hardened-ssp-compat.patch b/sys-libs/glibc/files/2.10/glibc-2.10-hardened-ssp-compat.patch
11251 deleted file mode 100644
11252 index a1c9eef..0000000
11253 --- a/sys-libs/glibc/files/2.10/glibc-2.10-hardened-ssp-compat.patch
11254 +++ /dev/null
11255 @@ -1,168 +0,0 @@
11256 -Add backwards compat support for gcc-3.x ssp ... older ssp versions
11257 -used __guard and __stack_smash_handler symbols while gcc-4.1 and newer
11258 -uses __stack_chk_guard and __stack_chk_fail.
11259 -
11260 ---- config.h.in
11261 -+++ config.h.in
11262 -@@ -42,6 +42,9 @@
11263 - assembler instructions per line. Default is `;' */
11264 - #undef ASM_LINE_SEP
11265 -
11266 -+/* Define if we want to enable support for old ssp symbols */
11267 -+#undef ENABLE_OLD_SSP_COMPAT
11268 -+
11269 - /* Define if not using ELF, but `.init' and `.fini' sections are available. */
11270 - #undef HAVE_INITFINI
11271 -
11272 ---- configure
11273 -+++ configure
11274 -@@ -1378,6 +1378,9 @@ Optional Features:
11275 - --enable-kernel=VERSION compile for compatibility with kernel not older than
11276 - VERSION
11277 - --enable-all-warnings enable all useful warnings gcc can issue
11278 -+ --disable-old-ssp-compat
11279 -+ enable support for older ssp symbols
11280 -+ [default=no]
11281 - --enable-multi-arch enable single DSO with optimizations for multiple
11282 - architectures
11283 - --enable-experimental-malloc
11284 -@@ -6462,6 +6465,20 @@ fi
11285 - $as_echo "$libc_cv_ssp" >&6; }
11286 -
11287 -
11288 -+# Check whether --enable-old-ssp-compat or --disable-old-ssp-compat was given.
11289 -+if test "${enable_old_ssp_compat+set}" = set; then
11290 -+ enableval="$enable_old_ssp_compat"
11291 -+ enable_old_ssp_compat=$enableval
11292 -+else
11293 -+ enable_old_ssp_compat=no
11294 -+fi;
11295 -+if test "x$enable_old_ssp_compat" = "xyes"; then
11296 -+ cat >>confdefs.h <<\_ACEOF
11297 -+#define ENABLE_OLD_SSP_COMPAT 1
11298 -+_ACEOF
11299 -+
11300 -+fi
11301 -+
11302 - { $as_echo "$as_me:$LINENO: checking for -fgnu89-inline" >&5
11303 - $as_echo_n "checking for -fgnu89-inline... " >&6; }
11304 - if test "${libc_cv_gnu89_inline+set}" = set; then
11305 ---- configure.in
11306 -+++ configure.in
11307 -@@ -1641,6 +1641,15 @@ fi
11308 - rm -f conftest*])
11309 - AC_SUBST(libc_cv_ssp)
11310 -
11311 -+AC_ARG_ENABLE([old-ssp-compat],
11312 -+ AC_HELP_STRING([--enable-old-ssp-compat],
11313 -+ [enable support for older ssp symbols @<:@default=no@:>@]),
11314 -+ [enable_old_ssp_compat=$enableval],
11315 -+ [enable_old_ssp_compat=no])
11316 -+if test "x$enable_old_ssp_compat" = "xyes"; then
11317 -+ AC_DEFINE(ENABLE_OLD_SSP_COMPAT)
11318 -+fi
11319 -+
11320 - AC_CACHE_CHECK(for -fgnu89-inline, libc_cv_gnu89_inline, [dnl
11321 - cat > conftest.c <<EOF
11322 - int foo;
11323 ---- csu/libc-start.c
11324 -+++ csu/libc-start.c
11325 -@@ -37,6 +37,9 @@ extern void __pthread_initialize_minimal
11326 - uintptr_t __stack_chk_guard attribute_relro;
11327 - # endif
11328 - #endif
11329 -+#ifdef ENABLE_OLD_SSP_COMPAT
11330 -+uintptr_t __guard attribute_relro;
11331 -+#endif
11332 -
11333 - #ifdef HAVE_PTR_NTHREADS
11334 - /* We need atomic operations. */
11335 -@@ -141,6 +145,9 @@ LIBC_START_MAIN (int (*main) (int, char
11336 -
11337 - /* Set up the stack checker's canary. */
11338 - uintptr_t stack_chk_guard = _dl_setup_stack_chk_guard (_dl_random);
11339 -+#ifdef ENABLE_OLD_SSP_COMPAT
11340 -+ __guard = stack_chk_guard;
11341 -+#endif
11342 - # ifdef THREAD_SET_STACK_GUARD
11343 - THREAD_SET_STACK_GUARD (stack_chk_guard);
11344 - # else
11345 ---- csu/Versions
11346 -+++ csu/Versions
11347 -@@ -17,6 +17,12 @@ libc {
11348 - # New special glibc functions.
11349 - gnu_get_libc_release; gnu_get_libc_version;
11350 - }
11351 -+ GLIBC_2.3.2 {
11352 -+%ifdef ENABLE_OLD_SSP_COMPAT
11353 -+ # global objects and functions for the old propolice patch in gcc
11354 -+ __guard;
11355 -+%endif
11356 -+ }
11357 - GLIBC_PRIVATE {
11358 - %if HAVE___THREAD
11359 - # This version is for the TLS symbol, GLIBC_2.0 is the old object symbol.
11360 ---- debug/Versions
11361 -+++ debug/Versions
11362 -@@ -10,6 +10,12 @@ libc {
11363 - # These are to support some gcc features.
11364 - __cyg_profile_func_enter; __cyg_profile_func_exit;
11365 - }
11366 -+%ifdef ENABLE_OLD_SSP_COMPAT
11367 -+ GLIBC_2.3.2 {
11368 -+ # backwards ssp compat support; alias to __stack_chk_fail
11369 -+ __stack_smash_handler;
11370 -+ }
11371 -+%endif
11372 - GLIBC_2.3.4 {
11373 - __chk_fail;
11374 - __memcpy_chk; __memmove_chk; __mempcpy_chk; __memset_chk; __stpcpy_chk;
11375 ---- elf/rtld.c
11376 -+++ elf/rtld.c
11377 -@@ -89,6 +89,9 @@ INTDEF(_dl_argv)
11378 - in thread local area. */
11379 - uintptr_t __stack_chk_guard attribute_relro;
11380 - #endif
11381 -+#ifdef ENABLE_OLD_SSP_COMPAT
11382 -+uintptr_t __guard attribute_relro;
11383 -+#endif
11384 -
11385 - /* Only exported for architectures that don't store the pointer guard
11386 - value in thread local area. */
11387 -@@ -1817,6 +1821,9 @@ ERROR: ld.so: object '%s' cannot be load
11388 -
11389 - /* Set up the stack checker's canary. */
11390 - uintptr_t stack_chk_guard = _dl_setup_stack_chk_guard (_dl_random);
11391 -+#ifdef ENABLE_OLD_SSP_COMPAT
11392 -+ __guard = stack_chk_guard;
11393 -+#endif
11394 - #ifdef THREAD_SET_STACK_GUARD
11395 - THREAD_SET_STACK_GUARD (stack_chk_guard);
11396 - #else
11397 ---- elf/Versions
11398 -+++ elf/Versions
11399 -@@ -43,6 +43,12 @@ ld {
11400 - # runtime interface to TLS
11401 - __tls_get_addr;
11402 - }
11403 -+%ifdef ENABLE_OLD_SSP_COMPAT
11404 -+ GLIBC_2.3.2 {
11405 -+ # backwards ssp compat support
11406 -+ __guard;
11407 -+ }
11408 -+%endif
11409 - GLIBC_2.4 {
11410 - # stack canary
11411 - __stack_chk_guard;
11412 ---- Versions.def
11413 -+++ Versions.def
11414 -@@ -109,6 +109,9 @@ ld {
11415 - GLIBC_2.0
11416 - GLIBC_2.1
11417 - GLIBC_2.3
11418 -+%ifdef ENABLE_OLD_SSP_COMPAT
11419 -+ GLIBC_2.3.2
11420 -+%endif
11421 - GLIBC_2.4
11422 - GLIBC_PRIVATE
11423 - }
11424
11425 diff --git a/sys-libs/glibc/files/2.11/glibc-2.11-hardened-pie.patch b/sys-libs/glibc/files/2.11/glibc-2.11-hardened-pie.patch
11426 deleted file mode 100644
11427 index df7292f..0000000
11428 --- a/sys-libs/glibc/files/2.11/glibc-2.11-hardened-pie.patch
11429 +++ /dev/null
11430 @@ -1,40 +0,0 @@
11431 -http://bugs.gentoo.org/292139
11432 -
11433 -2009-11-08 Magnus Granberg <zorry@×××.nu>
11434 -
11435 - * Makeconfig (+link): Set to +link-pie.
11436 - (+link-static): Change $(static-start-installed-name) to
11437 - S$(static-start-installed-name).
11438 - (+prector): Set to +prectorS.
11439 - (+postctor): Set to +postctorS.
11440 -
11441 ---- libc/Makeconfig
11442 -+++ libc/Makeconfig
11443 -@@ -447,11 +447,12 @@
11444 - $(common-objpfx)libc% $(+postinit),$^) \
11445 - $(link-extra-libs) $(link-libc) $(+postctorS) $(+postinit)
11446 - endif
11447 -++link = $(+link-pie)
11448 - # Command for statically linking programs with the C library.
11449 - ifndef +link-static
11450 - +link-static = $(CC) -nostdlib -nostartfiles -static -o $@ \
11451 - $(sysdep-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \
11452 -- $(addprefix $(csu-objpfx),$(static-start-installed-name)) \
11453 -+ $(addprefix $(csu-objpfx),S$(static-start-installed-name)) \
11454 - $(+preinit) $(+prector) \
11455 - $(filter-out $(addprefix $(csu-objpfx),start.o \
11456 - $(start-installed-name))\
11457 -@@ -549,11 +550,10 @@
11458 - ifeq ($(elf),yes)
11459 - +preinit = $(addprefix $(csu-objpfx),crti.o)
11460 - +postinit = $(addprefix $(csu-objpfx),crtn.o)
11461 --+prector = `$(CC) --print-file-name=crtbegin.o`
11462 --+postctor = `$(CC) --print-file-name=crtend.o`
11463 --# Variants of the two previous definitions for linking PIE programs.
11464 - +prectorS = `$(CC) --print-file-name=crtbeginS.o`
11465 - +postctorS = `$(CC) --print-file-name=crtendS.o`
11466 -++prector = $(+prectorS)
11467 -++postctor = $(+postctorS)
11468 - +interp = $(addprefix $(elf-objpfx),interp.os)
11469 - endif
11470 - csu-objpfx = $(common-objpfx)csu/
11471
11472 diff --git a/sys-libs/glibc/files/2.12/glibc-2.12-hardened-pie.patch b/sys-libs/glibc/files/2.12/glibc-2.12-hardened-pie.patch
11473 deleted file mode 100644
11474 index 3315171..0000000
11475 --- a/sys-libs/glibc/files/2.12/glibc-2.12-hardened-pie.patch
11476 +++ /dev/null
11477 @@ -1,39 +0,0 @@
11478 -2010-08-11 Magnus Granberg <zorry@×××.nu>
11479 -
11480 - #332331
11481 - * Makeconfig (+link): Set to +link-pie.
11482 - (+link-static): Change $(static-start-installed-name) to
11483 - S$(static-start-installed-name).
11484 - (+prector): Set to +prectorS.
11485 - (+postctor): Set to +postctorS.
11486 -
11487 ---- libc/Makeconfig
11488 -+++ libc/Makeconfig
11489 -@@ -447,11 +447,12 @@
11490 - $(common-objpfx)libc% $(+postinit),$^) \
11491 - $(link-extra-libs) $(link-libc) $(+postctorS) $(+postinit)
11492 - endif
11493 -++link = $(+link-pie)
11494 - # Command for statically linking programs with the C library.
11495 - ifndef +link-static
11496 - +link-static = $(CC) -nostdlib -nostartfiles -static -o $@ \
11497 - $(sysdep-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \
11498 -- $(addprefix $(csu-objpfx),$(static-start-installed-name)) \
11499 -+ $(addprefix $(csu-objpfx),S$(static-start-installed-name)) \
11500 - $(+preinit) $(+prector) \
11501 - $(filter-out $(addprefix $(csu-objpfx),start.o \
11502 - $(start-installed-name))\
11503 -@@ -549,11 +550,10 @@
11504 - ifeq ($(elf),yes)
11505 - +preinit = $(addprefix $(csu-objpfx),crti.o)
11506 - +postinit = $(addprefix $(csu-objpfx),crtn.o)
11507 --+prector = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtbegin.o`
11508 --+postctor = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtend.o`
11509 --# Variants of the two previous definitions for linking PIE programs.
11510 - +prectorS = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtbeginS.o`
11511 - +postctorS = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtendS.o`
11512 -++prector = $(+prectorS)
11513 -++postctor = $(+postctorS)
11514 - +interp = $(addprefix $(elf-objpfx),interp.os)
11515 - endif
11516 - csu-objpfx = $(common-objpfx)csu/
11517
11518 diff --git a/sys-libs/glibc/files/2.15/glibc-2.15-localstatedir-backport.patch b/sys-libs/glibc/files/2.15/glibc-2.15-localstatedir-backport.patch
11519 deleted file mode 100644
11520 index 5f8f15a..0000000
11521 --- a/sys-libs/glibc/files/2.15/glibc-2.15-localstatedir-backport.patch
11522 +++ /dev/null
11523 @@ -1,13 +0,0 @@
11524 -Index: work/glibc-2.15/Makeconfig
11525 -===================================================================
11526 ---- work.orig/glibc-2.15/Makeconfig
11527 -+++ work/glibc-2.15/Makeconfig
11528 -@@ -293,7 +293,7 @@ inst_sysconfdir = $(install_root)$(sysco
11529 -
11530 - # Directory for the database files and Makefile for nss_db.
11531 - ifndef vardbdir
11532 --vardbdir = /var/db
11533 -+vardbdir = $(prefix)/var/db
11534 - endif
11535 - inst_vardbdir = $(install_root)$(vardbdir)
11536 -
11537
11538 diff --git a/sys-libs/glibc/files/2.16/glibc-2.16-hardened-pie.patch b/sys-libs/glibc/files/2.16/glibc-2.16-hardened-pie.patch
11539 deleted file mode 100644
11540 index a850a61..0000000
11541 --- a/sys-libs/glibc/files/2.16/glibc-2.16-hardened-pie.patch
11542 +++ /dev/null
11543 @@ -1,39 +0,0 @@
11544 -2012-11-11 Magnus Granberg <zorry@g.o>
11545 -
11546 - #442712
11547 - * Makeconfig (+link): Set to +link-pie.
11548 - (+link-static-before-libc): Change $(static-start-installed-name) to
11549 - S$(static-start-installed-name).
11550 - (+prector): Set to +prectorS.
11551 - (+postctor): Set to +postctorS.
11552 -
11553 ---- libc/Makeconfig
11554 -+++ libc/Makeconfig
11555 -@@ -447,11 +447,12 @@
11556 - $(common-objpfx)libc% $(+postinit),$^) \
11557 - $(link-extra-libs) $(link-libc) $(+postctorS) $(+postinit)
11558 - endif
11559 -++link = $(+link-pie)
11560 - # Command for statically linking programs with the C library.
11561 - ifndef +link-static
11562 - +link-static-before-libc = $(CC) -nostdlib -nostartfiles -static -o $@ \
11563 - $(sysdep-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \
11564 -- $(addprefix $(csu-objpfx),$(static-start-installed-name)) \
11565 -+ $(addprefix $(csu-objpfx),S$(static-start-installed-name)) \
11566 - $(+preinit) $(+prector) \
11567 - $(filter-out $(addprefix $(csu-objpfx),start.o \
11568 - $(start-installed-name))\
11569 -@@ -549,11 +550,10 @@
11570 - ifeq ($(elf),yes)
11571 - +preinit = $(addprefix $(csu-objpfx),crti.o)
11572 - +postinit = $(addprefix $(csu-objpfx),crtn.o)
11573 --+prector = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtbegin.o`
11574 --+postctor = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtend.o`
11575 --# Variants of the two previous definitions for linking PIE programs.
11576 - +prectorS = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtbeginS.o`
11577 - +postctorS = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtendS.o`
11578 -++prector = $(+prectorS)
11579 -++postctor = $(+postctorS)
11580 - +interp = $(addprefix $(elf-objpfx),interp.os)
11581 - endif
11582 - csu-objpfx = $(common-objpfx)csu/
11583
11584 diff --git a/sys-libs/glibc/files/2.17/glibc-2.17-hardened-pie.patch b/sys-libs/glibc/files/2.17/glibc-2.17-hardened-pie.patch
11585 deleted file mode 100644
11586 index da4fb82..0000000
11587 --- a/sys-libs/glibc/files/2.17/glibc-2.17-hardened-pie.patch
11588 +++ /dev/null
11589 @@ -1,42 +0,0 @@
11590 -2012-11-11 Magnus Granberg <zorry@g.o>
11591 -
11592 - #442712
11593 - * Makeconfig (+link): Set to +link-pie.
11594 - (+link-static-before-libc): Change $(static-start-installed-name) to
11595 - S$(static-start-installed-name).
11596 - (+prector): Set to +prectorS.
11597 - (+postctor): Set to +postctorS.
11598 -
11599 ---- libc/Makeconfig
11600 -+++ libc/Makeconfig
11601 -@@ -447,11 +447,12 @@
11602 - $(common-objpfx)libc% $(+postinit),$^) \
11603 - $(link-extra-libs) $(link-libc) $(+postctorS) $(+postinit)
11604 - endif
11605 -++link = $(+link-pie)
11606 - # Command for statically linking programs with the C library.
11607 - ifndef +link-static
11608 - +link-static-before-libc = $(CC) -nostdlib -nostartfiles -static -o $@ \
11609 - $(sysdep-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \
11610 -- $(addprefix $(csu-objpfx),$(static-start-installed-name)) \
11611 -+ $(addprefix $(csu-objpfx),S$(static-start-installed-name)) \
11612 - $(+preinit) $(+prectorT) \
11613 - $(filter-out $(addprefix $(csu-objpfx),start.o \
11614 - $(start-installed-name))\
11615 -@@ -549,11 +550,10 @@
11616 - ifeq ($(elf),yes)
11617 - +preinit = $(addprefix $(csu-objpfx),crti.o)
11618 - +postinit = $(addprefix $(csu-objpfx),crtn.o)
11619 --+prector = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtbegin.o`
11620 --+postctor = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtend.o`
11621 --# Variants of the two previous definitions for linking PIE programs.
11622 - +prectorS = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtbeginS.o`
11623 - +postctorS = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtendS.o`
11624 -++prector = $(+prectorS)
11625 -++postctor = $(+postctorS)
11626 - # Variants of the two previous definitions for statically linking programs.
11627 - +prectorT = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtbeginT.o`
11628 - +postctorT = `$(CC) $(sysdep-LDFLAGS) --print-file-name=crtend.o`
11629 - +interp = $(addprefix $(elf-objpfx),interp.os)
11630 - endif
11631 - csu-objpfx = $(common-objpfx)csu/
11632
11633 diff --git a/sys-libs/glibc/files/2.17/glibc-2.17-runtime-prefix.patch b/sys-libs/glibc/files/2.17/glibc-2.17-runtime-prefix.patch
11634 deleted file mode 100644
11635 index 8fc683d..0000000
11636 --- a/sys-libs/glibc/files/2.17/glibc-2.17-runtime-prefix.patch
11637 +++ /dev/null
11638 @@ -1,162 +0,0 @@
11639 -Index: glibc-2.19/sysdeps/generic/paths.h
11640 -===================================================================
11641 ---- glibc-2.19.orig/sysdeps/generic/paths.h
11642 -+++ glibc-2.19/sysdeps/generic/paths.h
11643 -@@ -33,43 +33,43 @@
11644 - #define _PATHS_H_
11645 -
11646 - /* Default search path. */
11647 --#define _PATH_DEFPATH "/usr/bin:/bin"
11648 -+#define _PATH_DEFPATH "@GENTOO_PORTAGE_EPREFIX@/usr/bin:@GENTOO_PORTAGE_EPREFIX@/bin"
11649 - /* All standard utilities path. */
11650 - #define _PATH_STDPATH \
11651 -- "/usr/bin:/bin:/usr/sbin:/sbin"
11652 -+ "@GENTOO_PORTAGE_EPREFIX@/usr/bin:@GENTOO_PORTAGE_EPREFIX@/bin:@GENTOO_PORTAGE_EPREFIX@/usr/sbin:@GENTOO_PORTAGE_EPREFIX@/sbin"
11653 -
11654 --#define _PATH_BSHELL "/bin/sh"
11655 -+#define _PATH_BSHELL "@GENTOO_PORTAGE_EPREFIX@/bin/sh"
11656 - #define _PATH_CONSOLE "/dev/console"
11657 --#define _PATH_CSHELL "/bin/csh"
11658 --#define _PATH_DEVDB "/var/run/dev.db"
11659 -+#define _PATH_CSHELL "@GENTOO_PORTAGE_EPREFIX@/bin/csh"
11660 -+#define _PATH_DEVDB "@GENTOO_PORTAGE_EPREFIX@/var/run/dev.db"
11661 - #define _PATH_DEVNULL "/dev/null"
11662 - #define _PATH_DRUM "/dev/drum"
11663 --#define _PATH_GSHADOW "/etc/gshadow"
11664 -+#define _PATH_GSHADOW "@GENTOO_PORTAGE_EPREFIX@/etc/gshadow"
11665 - #define _PATH_KMEM "/dev/kmem"
11666 --#define _PATH_LASTLOG "/var/log/lastlog"
11667 -+#define _PATH_LASTLOG "@GENTOO_PORTAGE_EPREFIX@/var/log/lastlog"
11668 - #define _PATH_MAILDIR "/var/mail"
11669 --#define _PATH_MAN "/usr/share/man"
11670 -+#define _PATH_MAN "@GENTOO_PORTAGE_EPREFIX@/usr/share/man"
11671 - #define _PATH_MEM "/dev/mem"
11672 --#define _PATH_MNTTAB "/etc/fstab"
11673 --#define _PATH_MOUNTED "/var/run/mtab"
11674 --#define _PATH_NOLOGIN "/etc/nologin"
11675 --#define _PATH_PRESERVE "/var/lib"
11676 --#define _PATH_RWHODIR "/var/spool/rwho"
11677 --#define _PATH_SENDMAIL "/usr/sbin/sendmail"
11678 --#define _PATH_SHADOW "/etc/shadow"
11679 --#define _PATH_SHELLS "/etc/shells"
11680 -+#define _PATH_MNTTAB "@GENTOO_PORTAGE_EPREFIX@/etc/fstab"
11681 -+#define _PATH_MOUNTED "@GENTOO_PORTAGE_EPREFIX@/var/run/mtab"
11682 -+#define _PATH_NOLOGIN "@GENTOO_PORTAGE_EPREFIX@/etc/nologin"
11683 -+#define _PATH_PRESERVE "@GENTOO_PORTAGE_EPREFIX@/var/lib"
11684 -+#define _PATH_RWHODIR "@GENTOO_PORTAGE_EPREFIX@/var/spool/rwho"
11685 -+#define _PATH_SENDMAIL "@GENTOO_PORTAGE_EPREFIX@/usr/sbin/sendmail"
11686 -+#define _PATH_SHADOW "@GENTOO_PORTAGE_EPREFIX@/etc/shadow"
11687 -+#define _PATH_SHELLS "@GENTOO_PORTAGE_EPREFIX@/etc/shells"
11688 - #define _PATH_TTY "/dev/tty"
11689 - #define _PATH_UNIX "/vmunix"
11690 --#define _PATH_UTMP "/var/run/utmp"
11691 --#define _PATH_UTMP_DB "/var/run/utmp.db"
11692 --#define _PATH_VI "/usr/bin/vi"
11693 -+#define _PATH_UTMP "@GENTOO_PORTAGE_EPREFIX@/var/run/utmp"
11694 -+#define _PATH_UTMP_DB "@GENTOO_PORTAGE_EPREFIX@/var/run/utmp.db"
11695 -+#define _PATH_VI "@GENTOO_PORTAGE_EPREFIX@/usr/bin/vi"
11696 - #define _PATH_WTMP "/var/log/wtmp"
11697 -
11698 - /* Provide trailing slash, since mostly used for building pathnames. */
11699 - #define _PATH_DEV "/dev/"
11700 - #define _PATH_TMP "/tmp/"
11701 --#define _PATH_VARDB "/var/db/"
11702 --#define _PATH_VARRUN "/var/run/"
11703 -+#define _PATH_VARDB "@GENTOO_PORTAGE_EPREFIX@/var/db/"
11704 -+#define _PATH_VARRUN "@GENTOO_PORTAGE_EPREFIX@/var/run/"
11705 - #define _PATH_VARTMP "/var/tmp/"
11706 -
11707 - #endif /* !_PATHS_H_ */
11708 -Index: glibc-2.19/sysdeps/unix/sysv/linux/paths.h
11709 -===================================================================
11710 ---- glibc-2.19.orig/sysdeps/unix/sysv/linux/paths.h
11711 -+++ glibc-2.19/sysdeps/unix/sysv/linux/paths.h
11712 -@@ -33,43 +33,43 @@
11713 - #define _PATHS_H_
11714 -
11715 - /* Default search path. */
11716 --#define _PATH_DEFPATH "/usr/bin:/bin"
11717 -+#define _PATH_DEFPATH "@GENTOO_PORTAGE_EPREFIX@/usr/bin:@GENTOO_PORTAGE_EPREFIX@/bin"
11718 - /* All standard utilities path. */
11719 - #define _PATH_STDPATH \
11720 -- "/usr/bin:/bin:/usr/sbin:/sbin"
11721 -+ "@GENTOO_PORTAGE_EPREFIX@/usr/bin:@GENTOO_PORTAGE_EPREFIX@/bin:@GENTOO_PORTAGE_EPREFIX@/usr/sbin:@GENTOO_PORTAGE_EPREFIX@/sbin"
11722 -
11723 --#define _PATH_BSHELL "/bin/sh"
11724 -+#define _PATH_BSHELL "@GENTOO_PORTAGE_EPREFIX@/bin/sh"
11725 - #define _PATH_CONSOLE "/dev/console"
11726 --#define _PATH_CSHELL "/bin/csh"
11727 --#define _PATH_DEVDB "/var/run/dev.db"
11728 -+#define _PATH_CSHELL "@GENTOO_PORTAGE_EPREFIX@/bin/csh"
11729 -+#define _PATH_DEVDB "@GENTOO_PORTAGE_EPREFIX@/var/run/dev.db"
11730 - #define _PATH_DEVNULL "/dev/null"
11731 - #define _PATH_DRUM "/dev/drum"
11732 --#define _PATH_GSHADOW "/etc/gshadow"
11733 -+#define _PATH_GSHADOW "@GENTOO_PORTAGE_EPREFIX@/etc/gshadow"
11734 - #define _PATH_KLOG "/proc/kmsg"
11735 - #define _PATH_KMEM "/dev/kmem"
11736 - #define _PATH_LASTLOG "/var/log/lastlog"
11737 - #define _PATH_MAILDIR "/var/mail"
11738 --#define _PATH_MAN "/usr/share/man"
11739 -+#define _PATH_MAN "@GENTOO_PORTAGE_EPREFIX@/usr/share/man"
11740 - #define _PATH_MEM "/dev/mem"
11741 --#define _PATH_MNTTAB "/etc/fstab"
11742 --#define _PATH_MOUNTED "/etc/mtab"
11743 --#define _PATH_NOLOGIN "/etc/nologin"
11744 --#define _PATH_PRESERVE "/var/lib"
11745 --#define _PATH_RWHODIR "/var/spool/rwho"
11746 --#define _PATH_SENDMAIL "/usr/sbin/sendmail"
11747 --#define _PATH_SHADOW "/etc/shadow"
11748 --#define _PATH_SHELLS "/etc/shells"
11749 -+#define _PATH_MNTTAB "@GENTOO_PORTAGE_EPREFIX@/etc/fstab"
11750 -+#define _PATH_MOUNTED "@GENTOO_PORTAGE_EPREFIX@/etc/mtab"
11751 -+#define _PATH_NOLOGIN "@GENTOO_PORTAGE_EPREFIX@/etc/nologin"
11752 -+#define _PATH_PRESERVE "@GENTOO_PORTAGE_EPREFIX@/var/lib"
11753 -+#define _PATH_RWHODIR "@GENTOO_PORTAGE_EPREFIX@/var/spool/rwho"
11754 -+#define _PATH_SENDMAIL "@GENTOO_PORTAGE_EPREFIX@/usr/sbin/sendmail"
11755 -+#define _PATH_SHADOW "@GENTOO_PORTAGE_EPREFIX@/etc/shadow"
11756 -+#define _PATH_SHELLS "@GENTOO_PORTAGE_EPREFIX@/etc/shells"
11757 - #define _PATH_TTY "/dev/tty"
11758 - #define _PATH_UNIX "/boot/vmlinux"
11759 --#define _PATH_UTMP "/var/run/utmp"
11760 --#define _PATH_VI "/usr/bin/vi"
11761 -+#define _PATH_UTMP "@GENTOO_PORTAGE_EPREFIX@/var/run/utmp"
11762 -+#define _PATH_VI "@GENTOO_PORTAGE_EPREFIX@/usr/bin/vi"
11763 - #define _PATH_WTMP "/var/log/wtmp"
11764 -
11765 - /* Provide trailing slash, since mostly used for building pathnames. */
11766 - #define _PATH_DEV "/dev/"
11767 - #define _PATH_TMP "/tmp/"
11768 --#define _PATH_VARDB "/var/db/"
11769 --#define _PATH_VARRUN "/var/run/"
11770 -+#define _PATH_VARDB "@GENTOO_PORTAGE_EPREFIX@/var/db/"
11771 -+#define _PATH_VARRUN "@GENTOO_PORTAGE_EPREFIX@/var/run/"
11772 - #define _PATH_VARTMP "/var/tmp/"
11773 -
11774 - #endif /* !_PATHS_H_ */
11775 -Index: glibc-2.19/sysdeps/posix/system.c
11776 -===================================================================
11777 ---- glibc-2.19.orig/sysdeps/posix/system.c
11778 -+++ glibc-2.19/sysdeps/posix/system.c
11779 -@@ -26,7 +26,7 @@
11780 - #include <sysdep-cancel.h>
11781 -
11782 -
11783 --#define SHELL_PATH "/bin/sh" /* Path of the shell. */
11784 -+#define SHELL_PATH "@GENTOO_PORTAGE_EPREFIX@/bin/sh" /* Path of the shell. */
11785 - #define SHELL_NAME "sh" /* Name to give it. */
11786 -
11787 -
11788 -Index: glibc-2.19/libio/iopopen.c
11789 -===================================================================
11790 ---- glibc-2.19.orig/libio/iopopen.c
11791 -+++ glibc-2.19/libio/iopopen.c
11792 -@@ -222,7 +222,7 @@ _IO_new_proc_open (fp, command, mode)
11793 - _IO_close (fd);
11794 - }
11795 -
11796 -- _IO_execl ("/bin/sh", "sh", "-c", command, (char *) 0);
11797 -+ _IO_execl ("@GENTOO_PORTAGE_EPREFIX@/bin/sh", "sh", "-c", command, (char *) 0);
11798 - _IO__exit (127);
11799 - }
11800 - _IO_close (child_end);
11801
11802 diff --git a/sys-libs/glibc/files/2.17/glibc-2.17-shadow-prefix.patch b/sys-libs/glibc/files/2.17/glibc-2.17-shadow-prefix.patch
11803 deleted file mode 100644
11804 index 0e3979c..0000000
11805 --- a/sys-libs/glibc/files/2.17/glibc-2.17-shadow-prefix.patch
11806 +++ /dev/null
11807 @@ -1,33 +0,0 @@
11808 -Index: shadow/Makefile
11809 -===================================================================
11810 ---- shadow/Makefile.orig
11811 -+++ shadow/Makefile
11812 -@@ -20,6 +20,8 @@
11813 - #
11814 - subdir := shadow
11815 -
11816 -+include ../Makeconfig
11817 -+
11818 - headers = shadow.h
11819 - routines = getspent getspnam sgetspent fgetspent putspent \
11820 - getspent_r getspnam_r sgetspent_r fgetspent_r \
11821 -@@ -34,5 +36,6 @@ CFLAGS-fgetspent_r.c = -fexceptions $(li
11822 - CFLAGS-putspent.c = -fexceptions $(libio-mtsafe)
11823 - CFLAGS-getspnam.c = -fexceptions
11824 - CFLAGS-getspnam_r.c = -fexceptions
11825 -+CPPFLAGS-lckpwdf.c = -DSYSCONFDIR='"$(sysconfdir)"'
11826 -
11827 - include ../Rules
11828 -Index: shadow/lckpwdf.c
11829 -===================================================================
11830 ---- shadow/lckpwdf.c.orig
11831 -+++ shadow/lckpwdf.c
11832 -@@ -29,7 +29,7 @@
11833 -
11834 -
11835 - /* Name of the lock file. */
11836 --#define PWD_LOCKFILE "/etc/.pwd.lock"
11837 -+#define PWD_LOCKFILE SYSCONFDIR "/.pwd.lock"
11838 -
11839 - /* How long to wait for getting the lock before returning with an
11840 - error. */
11841
11842 diff --git a/sys-libs/glibc/files/2.17/locale-gen_prefix.patch b/sys-libs/glibc/files/2.17/locale-gen_prefix.patch
11843 deleted file mode 100644
11844 index f378605..0000000
11845 --- a/sys-libs/glibc/files/2.17/locale-gen_prefix.patch
11846 +++ /dev/null
11847 @@ -1,77 +0,0 @@
11848 -bug #473484
11849 -Index: work/extra/locale/locale-gen
11850 -===================================================================
11851 ---- work.orig/extra/locale/locale-gen
11852 -+++ work/extra/locale/locale-gen
11853 -@@ -8,7 +8,13 @@ unset POSIXLY_CORRECT IFS
11854 - umask 0022
11855 -
11856 - argv0=${0##*/}
11857 --source /etc/init.d/functions.sh || {
11858 -+
11859 -+EPREFIX="@GENTOO_PORTAGE_EPREFIX@"
11860 -+if [[ ${EPREFIX} == "@"GENTOO_PORTAGE_EPREFIX"@" ]] ; then
11861 -+ EPREFIX=""
11862 -+fi
11863 -+
11864 -+source "${EPREFIX}"/etc/init.d/functions.sh || {
11865 - echo "${argv0}: Could not source /etc/init.d/functions.sh!" 1>&2
11866 - exit 1
11867 - }
11868 -@@ -97,13 +103,14 @@ if [[ -n ${DESTDIR} ]] && [[ ${ROOT} !=
11869 - eerror "DESTDIR and ROOT are mutually exclusive options"
11870 - exit 1
11871 - fi
11872 --if [[ ${ROOT} != "/" ]] ; then
11873 -- einfo "Using locale.gen from ROOT ${ROOT}etc/"
11874 -+: ${EROOT:="${ROOT%/}${EPREFIX}/"}
11875 -+if [[ ${EROOT} != "/" ]] ; then
11876 -+ einfo "Using locale.gen from ROOT ${EROOT}etc/"
11877 - fi
11878 - if [[ -n ${DESTDIR} ]] ; then
11879 - einfo "Building locales in DESTDIR '${DESTDIR}'"
11880 - else
11881 -- DESTDIR=${ROOT}
11882 -+ DESTDIR=${EROOT}
11883 - fi
11884 -
11885 - # XXX: should fix this ...
11886 -@@ -112,7 +119,7 @@ if [[ ${ROOT} != "/" ]] ; then
11887 - exit 0
11888 - fi
11889 -
11890 --: ${CONFIG:=${ROOT}etc/locale.gen}
11891 -+: ${CONFIG:=${EROOT}etc/locale.gen}
11892 - LOCALES=${DESTDIR}usr/share/i18n/locales
11893 - CHARMAPS=${DESTDIR}usr/share/i18n/charmaps
11894 - SUPPORTED=${DESTDIR}usr/share/i18n/SUPPORTED
11895 -@@ -150,7 +157,10 @@ fi
11896 -
11897 - # Extract the location of the locale dir on the fly as `localedef --help` has:
11898 - # locale path : /usr/lib64/locale:/usr/share/i18n
11899 --LOCALEDIR=${DESTDIR}$(LC_ALL="C" "${DESTDIR}"usr/bin/localedef --help | sed -n -e '/locale path/{s|.* : ||;s|:.*||;p}')
11900 -+# For long paths, the line may get wrapped into two, in which case space (' ') is replaced
11901 -+# by newline (\n).
11902 -+LOCALEDIR=$(LC_ALL="C" "${DESTDIR}"usr/bin/localedef --help | sed -n -r '/locale path/{N;s|.*:[ \n](.*):/.*|\1|;p}')
11903 -+LOCALEDIR="${DESTDIR}${LOCALEDIR#${EPREFIX}}"
11904 - if [[ $? -ne 0 ]] || [[ -z ${LOCALEDIR} ]] || [[ ${LOCALEDIR} != ${DESTDIR}/usr/lib*/locale ]] ; then
11905 - eerror "Unable to parse the output of your localedef utility." 1>&2
11906 - eerror "File a bug about this issue and include the output of 'localedef --help'." 1>&2
11907 -@@ -160,7 +170,7 @@ fi
11908 -
11909 -
11910 - if [[ ${QUIET} -eq 0 ]] && [[ -z ${JUST_LIST} ]] && \
11911 -- [[ -e ${ROOT}etc/locales.build ]]
11912 -+ [[ -e ${EROOT}etc/locales.build ]]
11913 - then
11914 - ewarn "You should upgrade your /etc/locales.build to /etc/locale.gen"
11915 - ewarn "and then remove /etc/locales.build when you're done.\n"
11916 -@@ -280,7 +290,7 @@ generate_locale() {
11917 - -i "${input}" \
11918 - -f "${charmap}" \
11919 - -A "${ALIAS}" \
11920 -- --prefix "${DESTDIR}" \
11921 -+ --prefix "${DESTDIR%${EPREFIX}/}/" \
11922 - "${locale}" 2>&1
11923 - ret=$?
11924 - [[ -n ${output} ]] && eend ${ret}
11925
11926 diff --git a/sys-libs/glibc/files/2.17/vdso-disable.patch b/sys-libs/glibc/files/2.17/vdso-disable.patch
11927 deleted file mode 100644
11928 index 0354ae9..0000000
11929 --- a/sys-libs/glibc/files/2.17/vdso-disable.patch
11930 +++ /dev/null
11931 @@ -1,34 +0,0 @@
11932 -Index: work/glibc-2.17/elf/dl-support.c
11933 -===================================================================
11934 ---- work.orig/glibc-2.17/elf/dl-support.c
11935 -+++ work/glibc-2.17/elf/dl-support.c
11936 -@@ -212,16 +212,6 @@ _dl_aux_init (ElfW(auxv_t) *av)
11937 - case AT_HWCAP:
11938 - GLRO(dl_hwcap) = (unsigned long int) av->a_un.a_val;
11939 - break;
11940 --#ifdef NEED_DL_SYSINFO
11941 -- case AT_SYSINFO:
11942 -- GL(dl_sysinfo) = av->a_un.a_val;
11943 -- break;
11944 --#endif
11945 --#if defined NEED_DL_SYSINFO || defined NEED_DL_SYSINFO_DSO
11946 -- case AT_SYSINFO_EHDR:
11947 -- GL(dl_sysinfo_dso) = (void *) av->a_un.a_val;
11948 -- break;
11949 --#endif
11950 - case AT_UID:
11951 - uid ^= av->a_un.a_val;
11952 - seen |= 1;
11953 -Index: work/glibc-2.17/elf/setup-vdso.h
11954 -===================================================================
11955 ---- work.orig/glibc-2.17/elf/setup-vdso.h
11956 -+++ work/glibc-2.17/elf/setup-vdso.h
11957 -@@ -20,7 +20,7 @@ static inline void __attribute__ ((alway
11958 - setup_vdso (struct link_map *main_map __attribute__ ((unused)),
11959 - struct link_map ***first_preload __attribute__ ((unused)))
11960 - {
11961 --#if defined NEED_DL_SYSINFO || defined NEED_DL_SYSINFO_DSO
11962 -+#if 0
11963 - if (GLRO(dl_sysinfo_dso) == NULL)
11964 - return;
11965 -
11966
11967 diff --git a/sys-libs/glibc/files/2.17/vdso.patch b/sys-libs/glibc/files/2.17/vdso.patch
11968 deleted file mode 100644
11969 index eb9a492..0000000
11970 --- a/sys-libs/glibc/files/2.17/vdso.patch
11971 +++ /dev/null
11972 @@ -1,17 +0,0 @@
11973 -Index: glibc-2.17/sysdeps/unix/sysv/linux/x86_64/gettimeofday.c
11974 -===================================================================
11975 ---- glibc-2.17.orig/sysdeps/unix/sysv/linux/x86_64/gettimeofday.c
11976 -+++ glibc-2.17/sysdeps/unix/sysv/linux/x86_64/gettimeofday.c
11977 -@@ -28,11 +28,7 @@ void *gettimeofday_ifunc (void) __asm__
11978 - void *
11979 - gettimeofday_ifunc (void)
11980 - {
11981 -- PREPARE_VERSION (linux26, "LINUX_2.6", 61765110);
11982 --
11983 -- /* If the vDSO is not available we fall back on the old vsyscall. */
11984 -- return (_dl_vdso_vsym ("__vdso_gettimeofday", &linux26)
11985 -- ?: (void *) VSYSCALL_ADDR_vgettimeofday);
11986 -+ return (void *) VSYSCALL_ADDR_vgettimeofday;
11987 - }
11988 - asm (".type __gettimeofday, %gnu_indirect_function");
11989 -
11990
11991 diff --git a/sys-libs/glibc/files/2.19/glibc-2.19-configurable-paths.patch b/sys-libs/glibc/files/2.19/glibc-2.19-configurable-paths.patch
11992 deleted file mode 100644
11993 index 1cf906a..0000000
11994 --- a/sys-libs/glibc/files/2.19/glibc-2.19-configurable-paths.patch
11995 +++ /dev/null
11996 @@ -1,2115 +0,0 @@
11997 -Index: glibc-2.19/nis/Makefile
11998 -===================================================================
11999 ---- glibc-2.19.orig/nis/Makefile
12000 -+++ glibc-2.19/nis/Makefile
12001 -@@ -58,6 +58,11 @@ libnsl-routines = yp_xdr ypclnt ypupdate
12002 - nis_clone_res nss-default
12003 -
12004 - libnss_compat-routines := $(addprefix compat-,grp pwd spwd initgroups)
12005 -+SYSCONF-FLAGS := -D'SYSCONFDIR="$(sysconfdir)"'
12006 -+CPPFLAGS-compat-grp.c = $(SYSCONF-FLAGS)
12007 -+CPPFLAGS-compat-pwd.c = $(SYSCONF-FLAGS)
12008 -+CPPFLAGS-compat-spwd.c = $(SYSCONF-FLAGS)
12009 -+CPPFLAGS-compat-initgroups.c = $(SYSCONF-FLAGS)
12010 - libnss_compat-inhibit-o = $(filter-out .os,$(object-suffixes))
12011 -
12012 - libnss_nis-routines := $(addprefix nis-,$(databases)) nis-initgroups \
12013 -Index: glibc-2.19/nis/nss_compat/compat-grp.c
12014 -===================================================================
12015 ---- glibc-2.19.orig/nis/nss_compat/compat-grp.c
12016 -+++ glibc-2.19/nis/nss_compat/compat-grp.c
12017 -@@ -120,7 +120,7 @@ internal_setgrent (ent_t *ent, int stayo
12018 -
12019 - if (ent->stream == NULL)
12020 - {
12021 -- ent->stream = fopen ("/etc/group", "rme");
12022 -+ ent->stream = fopen (SYSCONFDIR "/group", "rme");
12023 -
12024 - if (ent->stream == NULL)
12025 - status = errno == EAGAIN ? NSS_STATUS_TRYAGAIN : NSS_STATUS_UNAVAIL;
12026 -Index: glibc-2.19/nis/nss_compat/compat-initgroups.c
12027 -===================================================================
12028 ---- glibc-2.19.orig/nis/nss_compat/compat-initgroups.c
12029 -+++ glibc-2.19/nis/nss_compat/compat-initgroups.c
12030 -@@ -136,7 +136,7 @@ internal_setgrent (ent_t *ent)
12031 - else
12032 - ent->blacklist.current = 0;
12033 -
12034 -- ent->stream = fopen ("/etc/group", "rme");
12035 -+ ent->stream = fopen (SYSCONFDIR "/group", "rme");
12036 -
12037 - if (ent->stream == NULL)
12038 - status = errno == EAGAIN ? NSS_STATUS_TRYAGAIN : NSS_STATUS_UNAVAIL;
12039 -Index: glibc-2.19/nis/nss_compat/compat-pwd.c
12040 -===================================================================
12041 ---- glibc-2.19.orig/nis/nss_compat/compat-pwd.c
12042 -+++ glibc-2.19/nis/nss_compat/compat-pwd.c
12043 -@@ -235,7 +235,7 @@ internal_setpwent (ent_t *ent, int stayo
12044 -
12045 - if (ent->stream == NULL)
12046 - {
12047 -- ent->stream = fopen ("/etc/passwd", "rme");
12048 -+ ent->stream = fopen (SYSCONFDIR "/passwd", "rme");
12049 -
12050 - if (ent->stream == NULL)
12051 - status = errno == EAGAIN ? NSS_STATUS_TRYAGAIN : NSS_STATUS_UNAVAIL;
12052 -Index: glibc-2.19/nis/nss_compat/compat-spwd.c
12053 -===================================================================
12054 ---- glibc-2.19.orig/nis/nss_compat/compat-spwd.c
12055 -+++ glibc-2.19/nis/nss_compat/compat-spwd.c
12056 -@@ -191,7 +191,7 @@ internal_setspent (ent_t *ent, int stayo
12057 -
12058 - if (ent->stream == NULL)
12059 - {
12060 -- ent->stream = fopen ("/etc/shadow", "rme");
12061 -+ ent->stream = fopen (SYSCONFDIR "/shadow", "rme");
12062 -
12063 - if (ent->stream == NULL)
12064 - status = errno == EAGAIN ? NSS_STATUS_TRYAGAIN : NSS_STATUS_UNAVAIL;
12065 -Index: glibc-2.19/nss/Makefile
12066 -===================================================================
12067 ---- glibc-2.19.orig/nss/Makefile
12068 -+++ glibc-2.19/nss/Makefile
12069 -@@ -39,6 +39,8 @@ extra-objs += $(makedb-modules:=.o)
12070 -
12071 - tests = test-netdb tst-nss-test1 test-digits-dots
12072 - xtests = bug-erange
12073 -+SYSCONF-FLAGS := -D'SYSCONFDIR="$(sysconfdir)"'
12074 -+CPPFLAGS-bug-erange.c = $(SYSCONF-FLAGS)
12075 -
12076 - include ../Makeconfig
12077 -
12078 -@@ -57,6 +59,8 @@ vpath %.c $(subdir-dirs) ../locale/progr
12079 -
12080 - libnss_files-routines := $(addprefix files-,$(databases)) \
12081 - files-initgroups files-have_o_cloexec files-init
12082 -+CPPFLAGS-files-init.c = $(SYSCONF-FLAGS)
12083 -+CPPFLAGS-files-initgroups.c = $(SYSCONF-FLAGS)
12084 -
12085 - libnss_db-dbs := $(addprefix db-,\
12086 - $(filter-out hosts network key alias,\
12087 -@@ -102,7 +106,7 @@ $(libnss_db-dbs:%=$(objpfx)%.c): $(objpf
12088 -
12089 - $(objpfx)makedb: $(makedb-modules:%=$(objpfx)%.o)
12090 -
12091 --$(inst_vardbdir)/Makefile: db-Makefile $(+force)
12092 -+$(inst_vardbdir)/Makefile: $(objpfx)db-Makefile $(+force)
12093 - $(do-install)
12094 -
12095 - CFLAGS-nss_test1.c = -DNOT_IN_libc=1
12096 -Index: glibc-2.19/nss/bug-erange.c
12097 -===================================================================
12098 ---- glibc-2.19.orig/nss/bug-erange.c
12099 -+++ glibc-2.19/nss/bug-erange.c
12100 -@@ -37,7 +37,7 @@ main (void)
12101 - {
12102 - printf ("gethostbyname_r failed: %s (errno: %m)\n", strerror (res));
12103 -
12104 -- if (access ("/etc/resolv.conf", R_OK))
12105 -+ if (access (SYSCONFDIR "/resolv.conf", R_OK))
12106 - {
12107 - puts ("DNS probably not set up");
12108 - return 0;
12109 -Index: glibc-2.19/nss/nss_files/files-init.c
12110 -===================================================================
12111 ---- glibc-2.19.orig/nss/nss_files/files-init.c
12112 -+++ glibc-2.19/nss/nss_files/files-init.c
12113 -@@ -35,33 +35,33 @@ static union \
12114 - } \
12115 - }
12116 -
12117 --TF (pwd, "/etc/passwd");
12118 --TF (grp, "/etc/group");
12119 --TF (hst, "/etc/hosts");
12120 --TF (resolv, "/etc/resolv.conf", .call_res_init = 1);
12121 --TF (serv, "/etc/services");
12122 --TF (netgr, "/etc/netgroup");
12123 -+TF (pwd, SYSCONFDIR "/passwd");
12124 -+TF (grp, SYSCONFDIR "/group");
12125 -+TF (hst, SYSCONFDIR "/hosts");
12126 -+TF (resolv, SYSCONFDIR "/resolv.conf", .call_res_init = 1);
12127 -+TF (serv, SYSCONFDIR "/services");
12128 -+TF (netgr, SYSCONFDIR "/netgroup");
12129 -
12130 -
12131 - void
12132 - _nss_files_init (void (*cb) (size_t, struct traced_file *))
12133 - {
12134 -- strcpy (pwd_traced_file.file.fname, "/etc/passwd");
12135 -+ strcpy (pwd_traced_file.file.fname, SYSCONFDIR "/passwd");
12136 - cb (pwddb, &pwd_traced_file.file);
12137 -
12138 -- strcpy (grp_traced_file.file.fname, "/etc/group");
12139 -+ strcpy (grp_traced_file.file.fname, SYSCONFDIR "/group");
12140 - cb (grpdb, &grp_traced_file.file);
12141 -
12142 -- strcpy (hst_traced_file.file.fname, "/etc/hosts");
12143 -+ strcpy (hst_traced_file.file.fname, SYSCONFDIR "/hosts");
12144 - cb (hstdb, &hst_traced_file.file);
12145 -
12146 -- strcpy (resolv_traced_file.file.fname, "/etc/resolv.conf");
12147 -+ strcpy (resolv_traced_file.file.fname, SYSCONFDIR "/resolv.conf");
12148 - cb (hstdb, &resolv_traced_file.file);
12149 -
12150 -- strcpy (serv_traced_file.file.fname, "/etc/services");
12151 -+ strcpy (serv_traced_file.file.fname, SYSCONFDIR "/services");
12152 - cb (servdb, &serv_traced_file.file);
12153 -
12154 -- strcpy (netgr_traced_file.file.fname, "/etc/netgroup");
12155 -+ strcpy (netgr_traced_file.file.fname, SYSCONFDIR "/netgroup");
12156 - cb (netgrdb, &netgr_traced_file.file);
12157 - }
12158 -
12159 -Index: glibc-2.19/nss/nss_files/files-initgroups.c
12160 -===================================================================
12161 ---- glibc-2.19.orig/nss/nss_files/files-initgroups.c
12162 -+++ glibc-2.19/nss/nss_files/files-initgroups.c
12163 -@@ -31,7 +31,7 @@ _nss_files_initgroups_dyn (const char *u
12164 - long int *size, gid_t **groupsp, long int limit,
12165 - int *errnop)
12166 - {
12167 -- FILE *stream = fopen ("/etc/group", "rce");
12168 -+ FILE *stream = fopen (SYSCONFDIR "/group", "rce");
12169 - if (stream == NULL)
12170 - {
12171 - *errnop = errno;
12172 -Index: glibc-2.19/nss/db-Makefile
12173 -===================================================================
12174 ---- glibc-2.19.orig/nss/db-Makefile
12175 -+++ /dev/null
12176 -@@ -1,166 +0,0 @@
12177 --# Makefile to (re-)generate db versions of system database files.
12178 --# Copyright (C) 1996-2014 Free Software Foundation, Inc.
12179 --# This file is part of the GNU C Library.
12180 --# Contributed by Ulrich Drepper <drepper@××××××.com>, 1996.
12181 --#
12182 --
12183 --# The GNU C Library is free software; you can redistribute it and/or
12184 --# modify it under the terms of the GNU Lesser General Public
12185 --# License as published by the Free Software Foundation; either
12186 --# version 2.1 of the License, or (at your option) any later version.
12187 --
12188 --# The GNU C Library is distributed in the hope that it will be useful,
12189 --# but WITHOUT ANY WARRANTY; without even the implied warranty of
12190 --# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12191 --# Lesser General Public License for more details.
12192 --
12193 --# You should have received a copy of the GNU Lesser General Public
12194 --# License along with the GNU C Library; if not, see
12195 --# <http://www.gnu.org/licenses/>.
12196 --
12197 --DATABASES = $(wildcard /etc/passwd /etc/group /etc/ethers /etc/protocols \
12198 -- /etc/rpc /etc/services /etc/shadow /etc/gshadow \
12199 -- /etc/netgroup)
12200 --
12201 --VAR_DB = /var/db
12202 --
12203 --AWK = awk
12204 --MAKEDB = makedb --quiet
12205 --
12206 --all: $(patsubst %,$(VAR_DB)/%.db,$(notdir $(DATABASES)))
12207 --
12208 --
12209 --$(VAR_DB)/passwd.db: /etc/passwd
12210 -- @echo -n "$(patsubst %.db,%,$(@F))... "
12211 -- @$(AWK) 'BEGIN { FS=":"; OFS=":" } \
12212 -- /^[ \t]*$$/ { next } \
12213 -- /^[ \t]*#/ { next } \
12214 -- /^[^#]/ { printf ".%s ", $$1; print; \
12215 -- printf "=%s ", $$3; print }' $^ | \
12216 -- $(MAKEDB) -o $@ -
12217 -- @echo "done."
12218 --
12219 --$(VAR_DB)/group.db: /etc/group
12220 -- @echo -n "$(patsubst %.db,%,$(@F))... "
12221 -- @$(AWK) 'BEGIN { FS=":"; OFS=":" } \
12222 -- /^[ \t]*$$/ { next } \
12223 -- /^[ \t]*#/ { next } \
12224 -- /^[^#]/ { printf ".%s ", $$1; print; \
12225 -- printf "=%s ", $$3; print; \
12226 -- if ($$4 != "") { \
12227 -- split($$4, grmems, ","); \
12228 -- for (memidx in grmems) { \
12229 -- mem=grmems[memidx]; \
12230 -- if (members[mem] == "") \
12231 -- members[mem]=$$3; \
12232 -- else \
12233 -- members[mem]=members[mem] "," $$3; \
12234 -- } \
12235 -- delete grmems; } } \
12236 -- END { for (mem in members) \
12237 -- printf ":%s %s %s\n", mem, mem, members[mem]; }' $^ | \
12238 -- $(MAKEDB) -o $@ -
12239 -- @echo "done."
12240 --
12241 --$(VAR_DB)/ethers.db: /etc/ethers
12242 -- @echo -n "$(patsubst %.db,%,$(@F))... "
12243 -- @$(AWK) '/^[ \t]*$$/ { next } \
12244 -- /^[ \t]*#/ { next } \
12245 -- /^[^#]/ { printf ".%s ", $$1; print; \
12246 -- printf "=%s ", $$2; print }' $^ | \
12247 -- $(MAKEDB) -o $@ -
12248 -- @echo "done."
12249 --
12250 --$(VAR_DB)/protocols.db: /etc/protocols
12251 -- @echo -n "$(patsubst %.db,%,$(@F))... "
12252 -- @$(AWK) '/^[ \t]*$$/ { next } \
12253 -- /^[ \t]*#/ { next } \
12254 -- /^[^#]/ { printf ".%s ", $$1; print; \
12255 -- printf "=%s ", $$2; print; \
12256 -- for (i = 3; i <= NF && !($$i ~ /^#/); ++i) \
12257 -- { printf ".%s ", $$i; print } }' $^ | \
12258 -- $(MAKEDB) -o $@ -
12259 -- @echo "done."
12260 --
12261 --$(VAR_DB)/rpc.db: /etc/rpc
12262 -- @echo -n "$(patsubst %.db,%,$(@F))... "
12263 -- @$(AWK) '/^[ \t]*$$/ { next } \
12264 -- /^[ \t]*#/ { next } \
12265 -- /^[^#]/ { printf ".%s ", $$1; print; \
12266 -- printf "=%s ", $$2; print; \
12267 -- for (i = 3; i <= NF && !($$i ~ /^#/); ++i) \
12268 -- { printf ".%s ", $$i; print } }' $^ | \
12269 -- $(MAKEDB) -o $@ -
12270 -- @echo "done."
12271 --
12272 --$(VAR_DB)/services.db: /etc/services
12273 -- @echo -n "$(patsubst %.db,%,$(@F))... "
12274 -- @$(AWK) 'BEGIN { FS="[ \t/]+" } \
12275 -- /^[ \t]*$$/ { next } \
12276 -- /^[ \t]*#/ { next } \
12277 -- /^[^#]/ { sub(/[ \t]*#.*$$/, "");\
12278 -- printf ":%s/%s ", $$1, $$3; print; \
12279 -- printf ":%s/ ", $$1; print; \
12280 -- printf "=%s/%s ", $$2, $$3; print; \
12281 -- printf "=%s/ ", $$2; print; \
12282 -- for (i = 4; i <= NF && !($$i ~ /^#/); ++i) \
12283 -- { printf ":%s/%s ", $$i, $$3; print; \
12284 -- printf ":%s/ ", $$i; print } }' $^ | \
12285 -- $(MAKEDB) -o $@ -
12286 -- @echo "done."
12287 --
12288 --$(VAR_DB)/shadow.db: /etc/shadow
12289 -- @echo -n "$(patsubst %.db,%,$(@F))... "
12290 -- @$(AWK) 'BEGIN { FS=":"; OFS=":" } \
12291 -- /^[ \t]*$$/ { next } \
12292 -- /^[ \t]*#/ { next } \
12293 -- /^[^#]/ { printf ".%s ", $$1; print }' $^ | \
12294 -- (umask 077 && $(MAKEDB) -o $@ -)
12295 -- @echo "done."
12296 -- @if chgrp shadow $@ 2>/dev/null; then \
12297 -- chmod g+r $@; \
12298 -- else \
12299 -- chown 0 $@; chgrp 0 $@; chmod 600 $@; \
12300 -- echo; \
12301 -- echo "Warning: The shadow password database $@"; \
12302 -- echo "has been set to be readable only by root. You may want"; \
12303 -- echo "to make it readable by the \`shadow' group depending"; \
12304 -- echo "on your configuration."; \
12305 -- echo; \
12306 -- fi
12307 --
12308 --$(VAR_DB)/gshadow.db: /etc/gshadow
12309 -- @echo -n "$(patsubst %.db,%,$(@F))... "
12310 -- @$(AWK) 'BEGIN { FS=":"; OFS=":" } \
12311 -- /^[ \t]*$$/ { next } \
12312 -- /^[ \t]*#/ { next } \
12313 -- /^[^#]/ { printf ".%s ", $$1; print }' $^ | \
12314 -- (umask 077 && $(MAKEDB) -o $@ -)
12315 -- @echo "done."
12316 -- @if chgrp shadow $@ 2>/dev/null; then \
12317 -- chmod g+r $@; \
12318 -- else \
12319 -- chown 0 $@; chgrp 0 $@; chmod 600 $@; \
12320 -- echo; \
12321 -- echo "Warning: The shadow group database $@"; \
12322 -- echo "has been set to be readable only by root. You may want"; \
12323 -- echo "to make it readable by the \`shadow' group depending"; \
12324 -- echo "on your configuration."; \
12325 -- echo; \
12326 -- fi
12327 --
12328 --$(VAR_DB)/netgroup.db: /etc/netgroup
12329 -- @echo -n "$(patsubst %.db,%,$(@F))... "
12330 -- @$(AWK) 'BEGIN { ini=1 } \
12331 -- /^[ \t]*$$/ { next } \
12332 -- /^[ \t]*#/ { next } \
12333 -- /^[^#]/ { if (sub(/[ \t]*\\$$/, " ") == 0) end="\n"; \
12334 -- else end=""; \
12335 -- gsub(/[ \t]+/, " "); \
12336 -- sub(/^[ \t]*/, ""); \
12337 -- if (ini == 0) printf "%s%s", $$0, end; \
12338 -- else printf ".%s %s%s", $$1, $$0, end; \
12339 -- ini=end == "" ? 0 : 1; } \
12340 -- END { if (ini==0) printf "\n" }' $^ | \
12341 -- $(MAKEDB) -o $@ -
12342 -- @echo "done."
12343 -Index: glibc-2.19/nss/db-Makefile.in
12344 -===================================================================
12345 ---- /dev/null
12346 -+++ glibc-2.19/nss/db-Makefile.in
12347 -@@ -0,0 +1,173 @@
12348 -+
12349 -+# Makefile to (re-)generate db versions of system database files.
12350 -+# Copyright (C) 1996-2014 Free Software Foundation, Inc.
12351 -+# This file is part of the GNU C Library.
12352 -+# Contributed by Ulrich Drepper <drepper@××××××.com>, 1996.
12353 -+#
12354 -+
12355 -+# The GNU C Library is free software; you can redistribute it and/or
12356 -+# modify it under the terms of the GNU Lesser General Public
12357 -+# License as published by the Free Software Foundation; either
12358 -+# version 2.1 of the License, or (at your option) any later version.
12359 -+
12360 -+# The GNU C Library is distributed in the hope that it will be useful,
12361 -+# but WITHOUT ANY WARRANTY; without even the implied warranty of
12362 -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12363 -+# Lesser General Public License for more details.
12364 -+
12365 -+# You should have received a copy of the GNU Lesser General Public
12366 -+# License along with the GNU C Library; if not, see
12367 -+# <http://www.gnu.org/licenses/>.
12368 -+
12369 -+DATABASES = $(wildcard @libc_cv_sysconfdir@/passwd \
12370 -+ @libc_cv_sysconfdir@/group \
12371 -+ @libc_cv_sysconfdir@/ethers \
12372 -+ @libc_cv_sysconfdir@/protocols \
12373 -+ @libc_cv_sysconfdir@/rpc \
12374 -+ @libc_cv_sysconfdir@/services \
12375 -+ @libc_cv_sysconfdir@/shadow \
12376 -+ @libc_cv_sysconfdir@/gshadow \
12377 -+ @libc_cv_sysconfdir@/netgroup)
12378 -+
12379 -+VAR_DB = /var/db
12380 -+
12381 -+AWK = awk
12382 -+MAKEDB = makedb --quiet
12383 -+
12384 -+all: $(patsubst %,$(VAR_DB)/%.db,$(notdir $(DATABASES)))
12385 -+
12386 -+
12387 -+$(VAR_DB)/passwd.db: @libc_cv_sysconfdir@/passwd
12388 -+ @echo -n "$(patsubst %.db,%,$(@F))... "
12389 -+ @$(AWK) 'BEGIN { FS=":"; OFS=":" } \
12390 -+ /^[ \t]*$$/ { next } \
12391 -+ /^[ \t]*#/ { next } \
12392 -+ /^[^#]/ { printf ".%s ", $$1; print; \
12393 -+ printf "=%s ", $$3; print }' $^ | \
12394 -+ $(MAKEDB) -o $@ -
12395 -+ @echo "done."
12396 -+
12397 -+$(VAR_DB)/group.db: @libc_cv_sysconfdir@/group
12398 -+ @echo -n "$(patsubst %.db,%,$(@F))... "
12399 -+ @$(AWK) 'BEGIN { FS=":"; OFS=":" } \
12400 -+ /^[ \t]*$$/ { next } \
12401 -+ /^[ \t]*#/ { next } \
12402 -+ /^[^#]/ { printf ".%s ", $$1; print; \
12403 -+ printf "=%s ", $$3; print; \
12404 -+ if ($$4 != "") { \
12405 -+ split($$4, grmems, ","); \
12406 -+ for (memidx in grmems) { \
12407 -+ mem=grmems[memidx]; \
12408 -+ if (members[mem] == "") \
12409 -+ members[mem]=$$3; \
12410 -+ else \
12411 -+ members[mem]=members[mem] "," $$3; \
12412 -+ } \
12413 -+ delete grmems; } } \
12414 -+ END { for (mem in members) \
12415 -+ printf ":%s %s %s\n", mem, mem, members[mem]; }' $^ | \
12416 -+ $(MAKEDB) -o $@ -
12417 -+ @echo "done."
12418 -+
12419 -+$(VAR_DB)/ethers.db: @libc_cv_sysconfdir@/ethers
12420 -+ @echo -n "$(patsubst %.db,%,$(@F))... "
12421 -+ @$(AWK) '/^[ \t]*$$/ { next } \
12422 -+ /^[ \t]*#/ { next } \
12423 -+ /^[^#]/ { printf ".%s ", $$1; print; \
12424 -+ printf "=%s ", $$2; print }' $^ | \
12425 -+ $(MAKEDB) -o $@ -
12426 -+ @echo "done."
12427 -+
12428 -+$(VAR_DB)/protocols.db: @libc_cv_sysconfdir@/protocols
12429 -+ @echo -n "$(patsubst %.db,%,$(@F))... "
12430 -+ @$(AWK) '/^[ \t]*$$/ { next } \
12431 -+ /^[ \t]*#/ { next } \
12432 -+ /^[^#]/ { printf ".%s ", $$1; print; \
12433 -+ printf "=%s ", $$2; print; \
12434 -+ for (i = 3; i <= NF && !($$i ~ /^#/); ++i) \
12435 -+ { printf ".%s ", $$i; print } }' $^ | \
12436 -+ $(MAKEDB) -o $@ -
12437 -+ @echo "done."
12438 -+
12439 -+$(VAR_DB)/rpc.db: @libc_cv_sysconfdir@/rpc
12440 -+ @echo -n "$(patsubst %.db,%,$(@F))... "
12441 -+ @$(AWK) '/^[ \t]*$$/ { next } \
12442 -+ /^[ \t]*#/ { next } \
12443 -+ /^[^#]/ { printf ".%s ", $$1; print; \
12444 -+ printf "=%s ", $$2; print; \
12445 -+ for (i = 3; i <= NF && !($$i ~ /^#/); ++i) \
12446 -+ { printf ".%s ", $$i; print } }' $^ | \
12447 -+ $(MAKEDB) -o $@ -
12448 -+ @echo "done."
12449 -+
12450 -+$(VAR_DB)/services.db: @libc_cv_sysconfdir@/services
12451 -+ @echo -n "$(patsubst %.db,%,$(@F))... "
12452 -+ @$(AWK) 'BEGIN { FS="[ \t/]+" } \
12453 -+ /^[ \t]*$$/ { next } \
12454 -+ /^[ \t]*#/ { next } \
12455 -+ /^[^#]/ { sub(/[ \t]*#.*$$/, "");\
12456 -+ printf ":%s/%s ", $$1, $$3; print; \
12457 -+ printf ":%s/ ", $$1; print; \
12458 -+ printf "=%s/%s ", $$2, $$3; print; \
12459 -+ printf "=%s/ ", $$2; print; \
12460 -+ for (i = 4; i <= NF && !($$i ~ /^#/); ++i) \
12461 -+ { printf ":%s/%s ", $$i, $$3; print; \
12462 -+ printf ":%s/ ", $$i; print } }' $^ | \
12463 -+ $(MAKEDB) -o $@ -
12464 -+ @echo "done."
12465 -+
12466 -+$(VAR_DB)/shadow.db: @libc_cv_sysconfdir@/shadow
12467 -+ @echo -n "$(patsubst %.db,%,$(@F))... "
12468 -+ @$(AWK) 'BEGIN { FS=":"; OFS=":" } \
12469 -+ /^[ \t]*$$/ { next } \
12470 -+ /^[ \t]*#/ { next } \
12471 -+ /^[^#]/ { printf ".%s ", $$1; print }' $^ | \
12472 -+ (umask 077 && $(MAKEDB) -o $@ -)
12473 -+ @echo "done."
12474 -+ @if chgrp shadow $@ 2>/dev/null; then \
12475 -+ chmod g+r $@; \
12476 -+ else \
12477 -+ chown 0 $@; chgrp 0 $@; chmod 600 $@; \
12478 -+ echo; \
12479 -+ echo "Warning: The shadow password database $@"; \
12480 -+ echo "has been set to be readable only by root. You may want"; \
12481 -+ echo "to make it readable by the \`shadow' group depending"; \
12482 -+ echo "on your configuration."; \
12483 -+ echo; \
12484 -+ fi
12485 -+
12486 -+$(VAR_DB)/gshadow.db: @libc_cv_sysconfdir@/gshadow
12487 -+ @echo -n "$(patsubst %.db,%,$(@F))... "
12488 -+ @$(AWK) 'BEGIN { FS=":"; OFS=":" } \
12489 -+ /^[ \t]*$$/ { next } \
12490 -+ /^[ \t]*#/ { next } \
12491 -+ /^[^#]/ { printf ".%s ", $$1; print }' $^ | \
12492 -+ (umask 077 && $(MAKEDB) -o $@ -)
12493 -+ @echo "done."
12494 -+ @if chgrp shadow $@ 2>/dev/null; then \
12495 -+ chmod g+r $@; \
12496 -+ else \
12497 -+ chown 0 $@; chgrp 0 $@; chmod 600 $@; \
12498 -+ echo; \
12499 -+ echo "Warning: The shadow group database $@"; \
12500 -+ echo "has been set to be readable only by root. You may want"; \
12501 -+ echo "to make it readable by the \`shadow' group depending"; \
12502 -+ echo "on your configuration."; \
12503 -+ echo; \
12504 -+ fi
12505 -+
12506 -+$(VAR_DB)/netgroup.db: @libc_cv_sysconfdir@/netgroup
12507 -+ @echo -n "$(patsubst %.db,%,$(@F))... "
12508 -+ @$(AWK) 'BEGIN { ini=1 } \
12509 -+ /^[ \t]*$$/ { next } \
12510 -+ /^[ \t]*#/ { next } \
12511 -+ /^[^#]/ { if (sub(/[ \t]*\\$$/, " ") == 0) end="\n"; \
12512 -+ else end=""; \
12513 -+ gsub(/[ \t]+/, " "); \
12514 -+ sub(/^[ \t]*/, ""); \
12515 -+ if (ini == 0) printf "%s%s", $$0, end; \
12516 -+ else printf ".%s %s%s", $$1, $$0, end; \
12517 -+ ini=end == "" ? 0 : 1; } \
12518 -+ END { if (ini==0) printf "\n" }' $^ | \
12519 -+ $(MAKEDB) -o $@ -
12520 -+ @echo "done."
12521 -Index: glibc-2.19/resolv/netdb.h
12522 -===================================================================
12523 ---- glibc-2.19.orig/resolv/netdb.h
12524 -+++ glibc-2.19/resolv/netdb.h
12525 -@@ -42,12 +42,12 @@
12526 - #include <bits/netdb.h>
12527 -
12528 - /* Absolute file name for network data base files. */
12529 --#define _PATH_HEQUIV "/etc/hosts.equiv"
12530 --#define _PATH_HOSTS "/etc/hosts"
12531 --#define _PATH_NETWORKS "/etc/networks"
12532 --#define _PATH_NSSWITCH_CONF "/etc/nsswitch.conf"
12533 --#define _PATH_PROTOCOLS "/etc/protocols"
12534 --#define _PATH_SERVICES "/etc/services"
12535 -+#define _PATH_HEQUIV SYSCONFDIR "/hosts.equiv"
12536 -+#define _PATH_HOSTS SYSCONFDIR "/hosts"
12537 -+#define _PATH_NETWORKS SYSCONFDIR "/networks"
12538 -+#define _PATH_NSSWITCH_CONF SYSCONFDIR "/nsswitch.conf"
12539 -+#define _PATH_PROTOCOLS SYSCONFDIR "/protocols"
12540 -+#define _PATH_SERVICES SYSCONFDIR "/services"
12541 -
12542 -
12543 - __BEGIN_DECLS
12544 -Index: glibc-2.19/resolv/resolv.h
12545 -===================================================================
12546 ---- glibc-2.19.orig/resolv/resolv.h
12547 -+++ /dev/null
12548 -@@ -1,389 +0,0 @@
12549 --/*
12550 -- * Copyright (c) 1983, 1987, 1989
12551 -- * The Regents of the University of California. All rights reserved.
12552 -- *
12553 -- * Redistribution and use in source and binary forms, with or without
12554 -- * modification, are permitted provided that the following conditions
12555 -- * are met:
12556 -- * 1. Redistributions of source code must retain the above copyright
12557 -- * notice, this list of conditions and the following disclaimer.
12558 -- * 2. Redistributions in binary form must reproduce the above copyright
12559 -- * notice, this list of conditions and the following disclaimer in the
12560 -- * documentation and/or other materials provided with the distribution.
12561 -- * 4. Neither the name of the University nor the names of its contributors
12562 -- * may be used to endorse or promote products derived from this software
12563 -- * without specific prior written permission.
12564 -- *
12565 -- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
12566 -- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
12567 -- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
12568 -- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
12569 -- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
12570 -- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
12571 -- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
12572 -- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
12573 -- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
12574 -- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
12575 -- * SUCH DAMAGE.
12576 -- */
12577 --
12578 --/*
12579 -- * Portions Copyright (c) 1996-1999 by Internet Software Consortium.
12580 -- *
12581 -- * Permission to use, copy, modify, and distribute this software for any
12582 -- * purpose with or without fee is hereby granted, provided that the above
12583 -- * copyright notice and this permission notice appear in all copies.
12584 -- *
12585 -- * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS
12586 -- * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
12587 -- * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE
12588 -- * CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
12589 -- * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
12590 -- * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
12591 -- * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
12592 -- * SOFTWARE.
12593 -- */
12594 --
12595 --/*
12596 -- * @(#)resolv.h 8.1 (Berkeley) 6/2/93
12597 -- * $BINDId: resolv.h,v 8.31 2000/03/30 20:16:50 vixie Exp $
12598 -- */
12599 --
12600 --#ifndef _RESOLV_H_
12601 --
12602 --/* These headers are needed for types used in the `struct res_state'
12603 -- declaration. */
12604 --#include <sys/types.h>
12605 --#include <netinet/in.h>
12606 --
12607 --#ifndef __need_res_state
12608 --# define _RESOLV_H_
12609 --
12610 --# include <sys/param.h>
12611 --# include <sys/cdefs.h>
12612 --# include <stdio.h>
12613 --# include <arpa/nameser.h>
12614 --#endif
12615 --
12616 --#ifndef __res_state_defined
12617 --# define __res_state_defined
12618 --
12619 --typedef enum { res_goahead, res_nextns, res_modified, res_done, res_error }
12620 -- res_sendhookact;
12621 --
12622 --typedef res_sendhookact (*res_send_qhook) (struct sockaddr_in * const *__ns,
12623 -- const u_char **__query,
12624 -- int *__querylen,
12625 -- u_char *__ans,
12626 -- int __anssiz,
12627 -- int *__resplen);
12628 --
12629 --typedef res_sendhookact (*res_send_rhook) (const struct sockaddr_in *__ns,
12630 -- const u_char *__query,
12631 -- int __querylen,
12632 -- u_char *__ans,
12633 -- int __anssiz,
12634 -- int *__resplen);
12635 --
12636 --/*
12637 -- * Global defines and variables for resolver stub.
12638 -- */
12639 --# define MAXNS 3 /* max # name servers we'll track */
12640 --# define MAXDFLSRCH 3 /* # default domain levels to try */
12641 --# define MAXDNSRCH 6 /* max # domains in search path */
12642 --# define LOCALDOMAINPARTS 2 /* min levels in name that is "local" */
12643 --
12644 --# define RES_TIMEOUT 5 /* min. seconds between retries */
12645 --# define MAXRESOLVSORT 10 /* number of net to sort on */
12646 --# define RES_MAXNDOTS 15 /* should reflect bit field size */
12647 --# define RES_MAXRETRANS 30 /* only for resolv.conf/RES_OPTIONS */
12648 --# define RES_MAXRETRY 5 /* only for resolv.conf/RES_OPTIONS */
12649 --# define RES_DFLRETRY 2 /* Default #/tries. */
12650 --# define RES_MAXTIME 65535 /* Infinity, in milliseconds. */
12651 --
12652 --struct __res_state {
12653 -- int retrans; /* retransmition time interval */
12654 -- int retry; /* number of times to retransmit */
12655 -- u_long options; /* option flags - see below. */
12656 -- int nscount; /* number of name servers */
12657 -- struct sockaddr_in
12658 -- nsaddr_list[MAXNS]; /* address of name server */
12659 --# define nsaddr nsaddr_list[0] /* for backward compatibility */
12660 -- u_short id; /* current message id */
12661 -- /* 2 byte hole here. */
12662 -- char *dnsrch[MAXDNSRCH+1]; /* components of domain to search */
12663 -- char defdname[256]; /* default domain (deprecated) */
12664 -- u_long pfcode; /* RES_PRF_ flags - see below. */
12665 -- unsigned ndots:4; /* threshold for initial abs. query */
12666 -- unsigned nsort:4; /* number of elements in sort_list[] */
12667 -- unsigned ipv6_unavail:1; /* connecting to IPv6 server failed */
12668 -- unsigned unused:23;
12669 -- struct {
12670 -- struct in_addr addr;
12671 -- u_int32_t mask;
12672 -- } sort_list[MAXRESOLVSORT];
12673 -- /* 4 byte hole here on 64-bit architectures. */
12674 -- res_send_qhook qhook; /* query hook */
12675 -- res_send_rhook rhook; /* response hook */
12676 -- int res_h_errno; /* last one set for this context */
12677 -- int _vcsock; /* PRIVATE: for res_send VC i/o */
12678 -- u_int _flags; /* PRIVATE: see below */
12679 -- /* 4 byte hole here on 64-bit architectures. */
12680 -- union {
12681 -- char pad[52]; /* On an i386 this means 512b total. */
12682 -- struct {
12683 -- u_int16_t nscount;
12684 -- u_int16_t nsmap[MAXNS];
12685 -- int nssocks[MAXNS];
12686 -- u_int16_t nscount6;
12687 -- u_int16_t nsinit;
12688 -- struct sockaddr_in6 *nsaddrs[MAXNS];
12689 --#ifdef _LIBC
12690 -- unsigned long long int initstamp
12691 -- __attribute__((packed));
12692 --#else
12693 -- unsigned int _initstamp[2];
12694 --#endif
12695 -- } _ext;
12696 -- } _u;
12697 --};
12698 --
12699 --typedef struct __res_state *res_state;
12700 --# undef __need_res_state
12701 --#endif
12702 --
12703 --#ifdef _RESOLV_H_
12704 --/*
12705 -- * Revision information. This is the release date in YYYYMMDD format.
12706 -- * It can change every day so the right thing to do with it is use it
12707 -- * in preprocessor commands such as "#if (__RES > 19931104)". Do not
12708 -- * compare for equality; rather, use it to determine whether your resolver
12709 -- * is new enough to contain a certain feature.
12710 -- */
12711 --
12712 --#define __RES 19991006
12713 --
12714 --/*
12715 -- * Resolver configuration file.
12716 -- * Normally not present, but may contain the address of the
12717 -- * inital name server(s) to query and the domain search list.
12718 -- */
12719 --
12720 --#ifndef _PATH_RESCONF
12721 --#define _PATH_RESCONF "/etc/resolv.conf"
12722 --#endif
12723 --
12724 --struct res_sym {
12725 -- int number; /* Identifying number, like T_MX */
12726 -- char * name; /* Its symbolic name, like "MX" */
12727 -- char * humanname; /* Its fun name, like "mail exchanger" */
12728 --};
12729 --
12730 --/*
12731 -- * Resolver flags (used to be discrete per-module statics ints).
12732 -- */
12733 --#define RES_F_VC 0x00000001 /* socket is TCP */
12734 --#define RES_F_CONN 0x00000002 /* socket is connected */
12735 --#define RES_F_EDNS0ERR 0x00000004 /* EDNS0 caused errors */
12736 --
12737 --/* res_findzonecut() options */
12738 --#define RES_EXHAUSTIVE 0x00000001 /* always do all queries */
12739 --
12740 --/*
12741 -- * Resolver options (keep these in synch with res_debug.c, please)
12742 -- */
12743 --#define RES_INIT 0x00000001 /* address initialized */
12744 --#define RES_DEBUG 0x00000002 /* print debug messages */
12745 --#define RES_AAONLY 0x00000004 /* authoritative answers only (!IMPL)*/
12746 --#define RES_USEVC 0x00000008 /* use virtual circuit */
12747 --#define RES_PRIMARY 0x00000010 /* query primary server only (!IMPL) */
12748 --#define RES_IGNTC 0x00000020 /* ignore trucation errors */
12749 --#define RES_RECURSE 0x00000040 /* recursion desired */
12750 --#define RES_DEFNAMES 0x00000080 /* use default domain name */
12751 --#define RES_STAYOPEN 0x00000100 /* Keep TCP socket open */
12752 --#define RES_DNSRCH 0x00000200 /* search up local domain tree */
12753 --#define RES_INSECURE1 0x00000400 /* type 1 security disabled */
12754 --#define RES_INSECURE2 0x00000800 /* type 2 security disabled */
12755 --#define RES_NOALIASES 0x00001000 /* shuts off HOSTALIASES feature */
12756 --#define RES_USE_INET6 0x00002000 /* use/map IPv6 in gethostbyname() */
12757 --#define RES_ROTATE 0x00004000 /* rotate ns list after each query */
12758 --#define RES_NOCHECKNAME 0x00008000 /* do not check names for sanity (!IMPL) */
12759 --#define RES_KEEPTSIG 0x00010000 /* do not strip TSIG records */
12760 --#define RES_BLAST 0x00020000 /* blast all recursive servers */
12761 --#define RES_USEBSTRING 0x00040000 /* IPv6 reverse lookup with byte
12762 -- strings */
12763 --#define RES_NOIP6DOTINT 0x00080000 /* Do not use .ip6.int in IPv6
12764 -- reverse lookup */
12765 --#define RES_USE_EDNS0 0x00100000 /* Use EDNS0. */
12766 --#define RES_SNGLKUP 0x00200000 /* one outstanding request at a time */
12767 --#define RES_SNGLKUPREOP 0x00400000 /* -"-, but open new socket for each
12768 -- request */
12769 --#define RES_USE_DNSSEC 0x00800000 /* use DNSSEC using OK bit in OPT */
12770 --#define RES_NOTLDQUERY 0x01000000 /* Do not look up unqualified name
12771 -- as a TLD. */
12772 --
12773 --#define RES_DEFAULT (RES_RECURSE|RES_DEFNAMES|RES_DNSRCH|RES_NOIP6DOTINT)
12774 --
12775 --/*
12776 -- * Resolver "pfcode" values. Used by dig.
12777 -- */
12778 --#define RES_PRF_STATS 0x00000001
12779 --#define RES_PRF_UPDATE 0x00000002
12780 --#define RES_PRF_CLASS 0x00000004
12781 --#define RES_PRF_CMD 0x00000008
12782 --#define RES_PRF_QUES 0x00000010
12783 --#define RES_PRF_ANS 0x00000020
12784 --#define RES_PRF_AUTH 0x00000040
12785 --#define RES_PRF_ADD 0x00000080
12786 --#define RES_PRF_HEAD1 0x00000100
12787 --#define RES_PRF_HEAD2 0x00000200
12788 --#define RES_PRF_TTLID 0x00000400
12789 --#define RES_PRF_HEADX 0x00000800
12790 --#define RES_PRF_QUERY 0x00001000
12791 --#define RES_PRF_REPLY 0x00002000
12792 --#define RES_PRF_INIT 0x00004000
12793 --/* 0x00008000 */
12794 --
12795 --/* Things involving an internal (static) resolver context. */
12796 --__BEGIN_DECLS
12797 --extern struct __res_state *__res_state(void) __attribute__ ((__const__));
12798 --__END_DECLS
12799 --#define _res (*__res_state())
12800 --
12801 --#ifndef __BIND_NOSTATIC
12802 --#define fp_nquery __fp_nquery
12803 --#define fp_query __fp_query
12804 --#define hostalias __hostalias
12805 --#define p_query __p_query
12806 --#define res_close __res_close
12807 --#define res_init __res_init
12808 --#define res_isourserver __res_isourserver
12809 --#define res_mkquery __res_mkquery
12810 --#define res_query __res_query
12811 --#define res_querydomain __res_querydomain
12812 --#define res_search __res_search
12813 --#define res_send __res_send
12814 --
12815 --__BEGIN_DECLS
12816 --void fp_nquery (const u_char *, int, FILE *) __THROW;
12817 --void fp_query (const u_char *, FILE *) __THROW;
12818 --const char * hostalias (const char *) __THROW;
12819 --void p_query (const u_char *) __THROW;
12820 --void res_close (void) __THROW;
12821 --int res_init (void) __THROW;
12822 --int res_isourserver (const struct sockaddr_in *) __THROW;
12823 --int res_mkquery (int, const char *, int, int, const u_char *,
12824 -- int, const u_char *, u_char *, int) __THROW;
12825 --int res_query (const char *, int, int, u_char *, int) __THROW;
12826 --int res_querydomain (const char *, const char *, int, int,
12827 -- u_char *, int) __THROW;
12828 --int res_search (const char *, int, int, u_char *, int) __THROW;
12829 --int res_send (const u_char *, int, u_char *, int) __THROW;
12830 --__END_DECLS
12831 --#endif
12832 --
12833 --#define b64_ntop __b64_ntop
12834 --#define b64_pton __b64_pton
12835 --#define dn_comp __dn_comp
12836 --#define dn_count_labels __dn_count_labels
12837 --#define dn_expand __dn_expand
12838 --#define dn_skipname __dn_skipname
12839 --#define fp_resstat __fp_resstat
12840 --#define loc_aton __loc_aton
12841 --#define loc_ntoa __loc_ntoa
12842 --#define p_cdname __p_cdname
12843 --#define p_cdnname __p_cdnname
12844 --#define p_class __p_class
12845 --#define p_fqname __p_fqname
12846 --#define p_fqnname __p_fqnname
12847 --#define p_option __p_option
12848 --#define p_secstodate __p_secstodate
12849 --#define p_section __p_section
12850 --#define p_time __p_time
12851 --#define p_type __p_type
12852 --#define p_rcode __p_rcode
12853 --#define putlong __putlong
12854 --#define putshort __putshort
12855 --#define res_dnok __res_dnok
12856 --#define res_hnok __res_hnok
12857 --#define res_hostalias __res_hostalias
12858 --#define res_mailok __res_mailok
12859 --#define res_nameinquery __res_nameinquery
12860 --#define res_nclose __res_nclose
12861 --#define res_ninit __res_ninit
12862 --#define res_nmkquery __res_nmkquery
12863 --#define res_npquery __res_npquery
12864 --#define res_nquery __res_nquery
12865 --#define res_nquerydomain __res_nquerydomain
12866 --#define res_nsearch __res_nsearch
12867 --#define res_nsend __res_nsend
12868 --#define res_nisourserver __res_nisourserver
12869 --#define res_ownok __res_ownok
12870 --#define res_queriesmatch __res_queriesmatch
12871 --#define res_randomid __res_randomid
12872 --#define sym_ntop __sym_ntop
12873 --#define sym_ntos __sym_ntos
12874 --#define sym_ston __sym_ston
12875 --__BEGIN_DECLS
12876 --int res_hnok (const char *) __THROW;
12877 --int res_ownok (const char *) __THROW;
12878 --int res_mailok (const char *) __THROW;
12879 --int res_dnok (const char *) __THROW;
12880 --int sym_ston (const struct res_sym *, const char *, int *) __THROW;
12881 --const char * sym_ntos (const struct res_sym *, int, int *) __THROW;
12882 --const char * sym_ntop (const struct res_sym *, int, int *) __THROW;
12883 --int b64_ntop (u_char const *, size_t, char *, size_t) __THROW;
12884 --int b64_pton (char const *, u_char *, size_t) __THROW;
12885 --int loc_aton (const char *__ascii, u_char *__binary) __THROW;
12886 --const char * loc_ntoa (const u_char *__binary, char *__ascii) __THROW;
12887 --int dn_skipname (const u_char *, const u_char *) __THROW;
12888 --void putlong (u_int32_t, u_char *) __THROW;
12889 --void putshort (u_int16_t, u_char *) __THROW;
12890 --const char * p_class (int) __THROW;
12891 --const char * p_time (u_int32_t) __THROW;
12892 --const char * p_type (int) __THROW;
12893 --const char * p_rcode (int) __THROW;
12894 --const u_char * p_cdnname (const u_char *, const u_char *, int, FILE *)
12895 -- __THROW;
12896 --const u_char * p_cdname (const u_char *, const u_char *, FILE *) __THROW;
12897 --const u_char * p_fqnname (const u_char *__cp, const u_char *__msg,
12898 -- int, char *, int) __THROW;
12899 --const u_char * p_fqname (const u_char *, const u_char *, FILE *) __THROW;
12900 --const char * p_option (u_long __option) __THROW;
12901 --char * p_secstodate (u_long) __THROW;
12902 --int dn_count_labels (const char *) __THROW;
12903 --int dn_comp (const char *, u_char *, int, u_char **, u_char **)
12904 -- __THROW;
12905 --int dn_expand (const u_char *, const u_char *, const u_char *,
12906 -- char *, int) __THROW;
12907 --u_int res_randomid (void) __THROW;
12908 --int res_nameinquery (const char *, int, int,
12909 -- const u_char *, const u_char *) __THROW;
12910 --int res_queriesmatch (const u_char *, const u_char *,
12911 -- const u_char *, const u_char *) __THROW;
12912 --const char * p_section (int __section, int __opcode) __THROW;
12913 --/* Things involving a resolver context. */
12914 --int res_ninit (res_state) __THROW;
12915 --int res_nisourserver (const res_state,
12916 -- const struct sockaddr_in *) __THROW;
12917 --void fp_resstat (const res_state, FILE *) __THROW;
12918 --void res_npquery (const res_state, const u_char *, int, FILE *)
12919 -- __THROW;
12920 --const char * res_hostalias (const res_state, const char *, char *, size_t)
12921 -- __THROW;
12922 --int res_nquery (res_state, const char *, int, int, u_char *, int)
12923 -- __THROW;
12924 --int res_nsearch (res_state, const char *, int, int, u_char *, int)
12925 -- __THROW;
12926 --int res_nquerydomain (res_state, const char *, const char *, int,
12927 -- int, u_char *, int) __THROW;
12928 --int res_nmkquery (res_state, int, const char *, int, int,
12929 -- const u_char *, int, const u_char *, u_char *,
12930 -- int) __THROW;
12931 --int res_nsend (res_state, const u_char *, int, u_char *, int)
12932 -- __THROW;
12933 --void res_nclose (res_state) __THROW;
12934 --__END_DECLS
12935 --#endif
12936 --
12937 --#endif /* !_RESOLV_H_ */
12938 -Index: glibc-2.19/shadow/Makefile
12939 -===================================================================
12940 ---- glibc-2.19.orig/shadow/Makefile
12941 -+++ glibc-2.19/shadow/Makefile
12942 -@@ -34,5 +34,6 @@ CFLAGS-fgetspent_r.c = -fexceptions $(li
12943 - CFLAGS-putspent.c = -fexceptions $(libio-mtsafe)
12944 - CFLAGS-getspnam.c = -fexceptions
12945 - CFLAGS-getspnam_r.c = -fexceptions
12946 -+CPPFLAGS-lckpwdf.c = -DSYSCONFDIR='"$(sysconfdir)"'
12947 -
12948 - include ../Rules
12949 -Index: glibc-2.19/shadow/lckpwdf.c
12950 -===================================================================
12951 ---- glibc-2.19.orig/shadow/lckpwdf.c
12952 -+++ glibc-2.19/shadow/lckpwdf.c
12953 -@@ -29,7 +29,7 @@
12954 -
12955 -
12956 - /* Name of the lock file. */
12957 --#define PWD_LOCKFILE "/etc/.pwd.lock"
12958 -+#define PWD_LOCKFILE SYSCONFDIR "/.pwd.lock"
12959 -
12960 - /* How long to wait for getting the lock before returning with an
12961 - error. */
12962 -Index: glibc-2.19/configure.ac
12963 -===================================================================
12964 ---- glibc-2.19.orig/configure.ac
12965 -+++ glibc-2.19/configure.ac
12966 -@@ -2173,7 +2173,7 @@ RELEASE=`sed -n -e 's/^#define RELEASE "
12967 - AC_SUBST(VERSION)
12968 - AC_SUBST(RELEASE)
12969 -
12970 --AC_CONFIG_FILES([config.make Makefile])
12971 -+AC_CONFIG_FILES([config.make Makefile nss/db-Makefile resolv/netdb.h resolv/resolv.h])
12972 - AC_CONFIG_COMMANDS([default],[[
12973 - case $CONFIG_FILES in *config.make*)
12974 - echo "$config_vars" >> config.make;;
12975 -Index: glibc-2.19/resolv/netdb.h.in
12976 -===================================================================
12977 ---- /dev/null
12978 -+++ glibc-2.19/resolv/netdb.h.in
12979 -@@ -0,0 +1,715 @@
12980 -+ /* Copyright (C) 1996-2014 Free Software Foundation, Inc.
12981 -+ This file is part of the GNU C Library.
12982 -+
12983 -+ The GNU C Library is free software; you can redistribute it and/or
12984 -+ modify it under the terms of the GNU Lesser General Public
12985 -+ License as published by the Free Software Foundation; either
12986 -+ version 2.1 of the License, or (at your option) any later version.
12987 -+
12988 -+ The GNU C Library is distributed in the hope that it will be useful,
12989 -+ but WITHOUT ANY WARRANTY; without even the implied warranty of
12990 -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12991 -+ Lesser General Public License for more details.
12992 -+
12993 -+ You should have received a copy of the GNU Lesser General Public
12994 -+ License along with the GNU C Library; if not, see
12995 -+ <http://www.gnu.org/licenses/>. */
12996 -+
12997 -+/* All data returned by the network data base library are supplied in
12998 -+ host order and returned in network order (suitable for use in
12999 -+ system calls). */
13000 -+
13001 -+#ifndef _NETDB_H
13002 -+#define _NETDB_H 1
13003 -+
13004 -+#include <features.h>
13005 -+
13006 -+#include <netinet/in.h>
13007 -+#include <stdint.h>
13008 -+#ifdef __USE_MISC
13009 -+/* This is necessary to make this include file properly replace the
13010 -+ Sun version. */
13011 -+# include <rpc/netdb.h>
13012 -+#endif
13013 -+
13014 -+#ifdef __USE_GNU
13015 -+# define __need_sigevent_t
13016 -+# include <bits/siginfo.h>
13017 -+# define __need_timespec
13018 -+# include <time.h>
13019 -+#endif
13020 -+
13021 -+#include <bits/netdb.h>
13022 -+
13023 -+/* Absolute file name for network data base files. */
13024 -+#define _PATH_HEQUIV "@libc_cv_sysconfdir@/hosts.equiv"
13025 -+#define _PATH_HOSTS "@libc_cv_sysconfdir@/hosts"
13026 -+#define _PATH_NETWORKS "@libc_cv_sysconfdir@/networks"
13027 -+#define _PATH_NSSWITCH_CONF "@libc_cv_sysconfdir@/nsswitch.conf"
13028 -+#define _PATH_PROTOCOLS "@libc_cv_sysconfdir@/protocols"
13029 -+#define _PATH_SERVICES "@libc_cv_sysconfdir@/services"
13030 -+
13031 -+
13032 -+__BEGIN_DECLS
13033 -+
13034 -+#if defined __USE_MISC || !defined __USE_XOPEN2K8
13035 -+/* Error status for non-reentrant lookup functions.
13036 -+ We use a macro to access always the thread-specific `h_errno' variable. */
13037 -+# define h_errno (*__h_errno_location ())
13038 -+
13039 -+/* Function to get address of global `h_errno' variable. */
13040 -+extern int *__h_errno_location (void) __THROW __attribute__ ((__const__));
13041 -+
13042 -+
13043 -+/* Possible values left in `h_errno'. */
13044 -+# define HOST_NOT_FOUND 1 /* Authoritative Answer Host not found. */
13045 -+# define TRY_AGAIN 2 /* Non-Authoritative Host not found,
13046 -+ or SERVERFAIL. */
13047 -+# define NO_RECOVERY 3 /* Non recoverable errors, FORMERR, REFUSED,
13048 -+ NOTIMP. */
13049 -+# define NO_DATA 4 /* Valid name, no data record of requested
13050 -+ type. */
13051 -+#endif
13052 -+#ifdef __USE_MISC
13053 -+# define NETDB_INTERNAL -1 /* See errno. */
13054 -+# define NETDB_SUCCESS 0 /* No problem. */
13055 -+# define NO_ADDRESS NO_DATA /* No address, look for MX record. */
13056 -+#endif
13057 -+
13058 -+#if defined __USE_XOPEN2K || defined __USE_XOPEN_EXTENDED
13059 -+/* Highest reserved Internet port number. */
13060 -+# define IPPORT_RESERVED 1024
13061 -+#endif
13062 -+
13063 -+#ifdef __USE_GNU
13064 -+/* Scope delimiter for getaddrinfo(), getnameinfo(). */
13065 -+# define SCOPE_DELIMITER '%'
13066 -+#endif
13067 -+
13068 -+#ifdef __USE_MISC
13069 -+/* Print error indicated by `h_errno' variable on standard error. STR
13070 -+ if non-null is printed before the error string. */
13071 -+extern void herror (const char *__str) __THROW;
13072 -+
13073 -+/* Return string associated with error ERR_NUM. */
13074 -+extern const char *hstrerror (int __err_num) __THROW;
13075 -+#endif
13076 -+
13077 -+
13078 -+/* Description of data base entry for a single host. */
13079 -+struct hostent
13080 -+{
13081 -+ char *h_name; /* Official name of host. */
13082 -+ char **h_aliases; /* Alias list. */
13083 -+ int h_addrtype; /* Host address type. */
13084 -+ int h_length; /* Length of address. */
13085 -+ char **h_addr_list; /* List of addresses from name server. */
13086 -+#ifdef __USE_MISC
13087 -+# define h_addr h_addr_list[0] /* Address, for backward compatibility.*/
13088 -+#endif
13089 -+};
13090 -+
13091 -+/* Open host data base files and mark them as staying open even after
13092 -+ a later search if STAY_OPEN is non-zero.
13093 -+
13094 -+ This function is a possible cancellation point and therefore not
13095 -+ marked with __THROW. */
13096 -+extern void sethostent (int __stay_open);
13097 -+
13098 -+/* Close host data base files and clear `stay open' flag.
13099 -+
13100 -+ This function is a possible cancellation point and therefore not
13101 -+ marked with __THROW. */
13102 -+extern void endhostent (void);
13103 -+
13104 -+/* Get next entry from host data base file. Open data base if
13105 -+ necessary.
13106 -+
13107 -+ This function is a possible cancellation point and therefore not
13108 -+ marked with __THROW. */
13109 -+extern struct hostent *gethostent (void);
13110 -+
13111 -+/* Return entry from host data base which address match ADDR with
13112 -+ length LEN and type TYPE.
13113 -+
13114 -+ This function is a possible cancellation point and therefore not
13115 -+ marked with __THROW. */
13116 -+extern struct hostent *gethostbyaddr (const void *__addr, __socklen_t __len,
13117 -+ int __type);
13118 -+
13119 -+/* Return entry from host data base for host with NAME.
13120 -+
13121 -+ This function is a possible cancellation point and therefore not
13122 -+ marked with __THROW. */
13123 -+extern struct hostent *gethostbyname (const char *__name);
13124 -+
13125 -+#ifdef __USE_MISC
13126 -+/* Return entry from host data base for host with NAME. AF must be
13127 -+ set to the address type which is `AF_INET' for IPv4 or `AF_INET6'
13128 -+ for IPv6.
13129 -+
13130 -+ This function is not part of POSIX and therefore no official
13131 -+ cancellation point. But due to similarity with an POSIX interface
13132 -+ or due to the implementation it is a cancellation point and
13133 -+ therefore not marked with __THROW. */
13134 -+extern struct hostent *gethostbyname2 (const char *__name, int __af);
13135 -+
13136 -+/* Reentrant versions of the functions above. The additional
13137 -+ arguments specify a buffer of BUFLEN starting at BUF. The last
13138 -+ argument is a pointer to a variable which gets the value which
13139 -+ would be stored in the global variable `herrno' by the
13140 -+ non-reentrant functions.
13141 -+
13142 -+ These functions are not part of POSIX and therefore no official
13143 -+ cancellation point. But due to similarity with an POSIX interface
13144 -+ or due to the implementation they are cancellation points and
13145 -+ therefore not marked with __THROW. */
13146 -+extern int gethostent_r (struct hostent *__restrict __result_buf,
13147 -+ char *__restrict __buf, size_t __buflen,
13148 -+ struct hostent **__restrict __result,
13149 -+ int *__restrict __h_errnop);
13150 -+
13151 -+extern int gethostbyaddr_r (const void *__restrict __addr, __socklen_t __len,
13152 -+ int __type,
13153 -+ struct hostent *__restrict __result_buf,
13154 -+ char *__restrict __buf, size_t __buflen,
13155 -+ struct hostent **__restrict __result,
13156 -+ int *__restrict __h_errnop);
13157 -+
13158 -+extern int gethostbyname_r (const char *__restrict __name,
13159 -+ struct hostent *__restrict __result_buf,
13160 -+ char *__restrict __buf, size_t __buflen,
13161 -+ struct hostent **__restrict __result,
13162 -+ int *__restrict __h_errnop);
13163 -+
13164 -+extern int gethostbyname2_r (const char *__restrict __name, int __af,
13165 -+ struct hostent *__restrict __result_buf,
13166 -+ char *__restrict __buf, size_t __buflen,
13167 -+ struct hostent **__restrict __result,
13168 -+ int *__restrict __h_errnop);
13169 -+#endif /* misc */
13170 -+
13171 -+
13172 -+/* Open network data base files and mark them as staying open even
13173 -+ after a later search if STAY_OPEN is non-zero.
13174 -+
13175 -+ This function is a possible cancellation point and therefore not
13176 -+ marked with __THROW. */
13177 -+extern void setnetent (int __stay_open);
13178 -+
13179 -+/* Close network data base files and clear `stay open' flag.
13180 -+
13181 -+ This function is a possible cancellation point and therefore not
13182 -+ marked with __THROW. */
13183 -+extern void endnetent (void);
13184 -+
13185 -+/* Get next entry from network data base file. Open data base if
13186 -+ necessary.
13187 -+
13188 -+ This function is a possible cancellation point and therefore not
13189 -+ marked with __THROW. */
13190 -+extern struct netent *getnetent (void);
13191 -+
13192 -+/* Return entry from network data base which address match NET and
13193 -+ type TYPE.
13194 -+
13195 -+ This function is a possible cancellation point and therefore not
13196 -+ marked with __THROW. */
13197 -+extern struct netent *getnetbyaddr (uint32_t __net, int __type);
13198 -+
13199 -+/* Return entry from network data base for network with NAME.
13200 -+
13201 -+ This function is a possible cancellation point and therefore not
13202 -+ marked with __THROW. */
13203 -+extern struct netent *getnetbyname (const char *__name);
13204 -+
13205 -+#ifdef __USE_MISC
13206 -+/* Reentrant versions of the functions above. The additional
13207 -+ arguments specify a buffer of BUFLEN starting at BUF. The last
13208 -+ argument is a pointer to a variable which gets the value which
13209 -+ would be stored in the global variable `herrno' by the
13210 -+ non-reentrant functions.
13211 -+
13212 -+ These functions are not part of POSIX and therefore no official
13213 -+ cancellation point. But due to similarity with an POSIX interface
13214 -+ or due to the implementation they are cancellation points and
13215 -+ therefore not marked with __THROW. */
13216 -+extern int getnetent_r (struct netent *__restrict __result_buf,
13217 -+ char *__restrict __buf, size_t __buflen,
13218 -+ struct netent **__restrict __result,
13219 -+ int *__restrict __h_errnop);
13220 -+
13221 -+extern int getnetbyaddr_r (uint32_t __net, int __type,
13222 -+ struct netent *__restrict __result_buf,
13223 -+ char *__restrict __buf, size_t __buflen,
13224 -+ struct netent **__restrict __result,
13225 -+ int *__restrict __h_errnop);
13226 -+
13227 -+extern int getnetbyname_r (const char *__restrict __name,
13228 -+ struct netent *__restrict __result_buf,
13229 -+ char *__restrict __buf, size_t __buflen,
13230 -+ struct netent **__restrict __result,
13231 -+ int *__restrict __h_errnop);
13232 -+#endif /* misc */
13233 -+
13234 -+
13235 -+/* Description of data base entry for a single service. */
13236 -+struct servent
13237 -+{
13238 -+ char *s_name; /* Official service name. */
13239 -+ char **s_aliases; /* Alias list. */
13240 -+ int s_port; /* Port number. */
13241 -+ char *s_proto; /* Protocol to use. */
13242 -+};
13243 -+
13244 -+/* Open service data base files and mark them as staying open even
13245 -+ after a later search if STAY_OPEN is non-zero.
13246 -+
13247 -+ This function is a possible cancellation point and therefore not
13248 -+ marked with __THROW. */
13249 -+extern void setservent (int __stay_open);
13250 -+
13251 -+/* Close service data base files and clear `stay open' flag.
13252 -+
13253 -+ This function is a possible cancellation point and therefore not
13254 -+ marked with __THROW. */
13255 -+extern void endservent (void);
13256 -+
13257 -+/* Get next entry from service data base file. Open data base if
13258 -+ necessary.
13259 -+
13260 -+ This function is a possible cancellation point and therefore not
13261 -+ marked with __THROW. */
13262 -+extern struct servent *getservent (void);
13263 -+
13264 -+/* Return entry from network data base for network with NAME and
13265 -+ protocol PROTO.
13266 -+
13267 -+ This function is a possible cancellation point and therefore not
13268 -+ marked with __THROW. */
13269 -+extern struct servent *getservbyname (const char *__name, const char *__proto);
13270 -+
13271 -+/* Return entry from service data base which matches port PORT and
13272 -+ protocol PROTO.
13273 -+
13274 -+ This function is a possible cancellation point and therefore not
13275 -+ marked with __THROW. */
13276 -+extern struct servent *getservbyport (int __port, const char *__proto);
13277 -+
13278 -+
13279 -+#ifdef __USE_MISC
13280 -+/* Reentrant versions of the functions above. The additional
13281 -+ arguments specify a buffer of BUFLEN starting at BUF.
13282 -+
13283 -+ These functions are not part of POSIX and therefore no official
13284 -+ cancellation point. But due to similarity with an POSIX interface
13285 -+ or due to the implementation they are cancellation points and
13286 -+ therefore not marked with __THROW. */
13287 -+extern int getservent_r (struct servent *__restrict __result_buf,
13288 -+ char *__restrict __buf, size_t __buflen,
13289 -+ struct servent **__restrict __result);
13290 -+
13291 -+extern int getservbyname_r (const char *__restrict __name,
13292 -+ const char *__restrict __proto,
13293 -+ struct servent *__restrict __result_buf,
13294 -+ char *__restrict __buf, size_t __buflen,
13295 -+ struct servent **__restrict __result);
13296 -+
13297 -+extern int getservbyport_r (int __port, const char *__restrict __proto,
13298 -+ struct servent *__restrict __result_buf,
13299 -+ char *__restrict __buf, size_t __buflen,
13300 -+ struct servent **__restrict __result);
13301 -+#endif /* misc */
13302 -+
13303 -+
13304 -+/* Description of data base entry for a single service. */
13305 -+struct protoent
13306 -+{
13307 -+ char *p_name; /* Official protocol name. */
13308 -+ char **p_aliases; /* Alias list. */
13309 -+ int p_proto; /* Protocol number. */
13310 -+};
13311 -+
13312 -+/* Open protocol data base files and mark them as staying open even
13313 -+ after a later search if STAY_OPEN is non-zero.
13314 -+
13315 -+ This function is a possible cancellation point and therefore not
13316 -+ marked with __THROW. */
13317 -+extern void setprotoent (int __stay_open);
13318 -+
13319 -+/* Close protocol data base files and clear `stay open' flag.
13320 -+
13321 -+ This function is a possible cancellation point and therefore not
13322 -+ marked with __THROW. */
13323 -+extern void endprotoent (void);
13324 -+
13325 -+/* Get next entry from protocol data base file. Open data base if
13326 -+ necessary.
13327 -+
13328 -+ This function is a possible cancellation point and therefore not
13329 -+ marked with __THROW. */
13330 -+extern struct protoent *getprotoent (void);
13331 -+
13332 -+/* Return entry from protocol data base for network with NAME.
13333 -+
13334 -+ This function is a possible cancellation point and therefore not
13335 -+ marked with __THROW. */
13336 -+extern struct protoent *getprotobyname (const char *__name);
13337 -+
13338 -+/* Return entry from protocol data base which number is PROTO.
13339 -+
13340 -+ This function is a possible cancellation point and therefore not
13341 -+ marked with __THROW. */
13342 -+extern struct protoent *getprotobynumber (int __proto);
13343 -+
13344 -+
13345 -+#ifdef __USE_MISC
13346 -+/* Reentrant versions of the functions above. The additional
13347 -+ arguments specify a buffer of BUFLEN starting at BUF.
13348 -+
13349 -+ These functions are not part of POSIX and therefore no official
13350 -+ cancellation point. But due to similarity with an POSIX interface
13351 -+ or due to the implementation they are cancellation points and
13352 -+ therefore not marked with __THROW. */
13353 -+extern int getprotoent_r (struct protoent *__restrict __result_buf,
13354 -+ char *__restrict __buf, size_t __buflen,
13355 -+ struct protoent **__restrict __result);
13356 -+
13357 -+extern int getprotobyname_r (const char *__restrict __name,
13358 -+ struct protoent *__restrict __result_buf,
13359 -+ char *__restrict __buf, size_t __buflen,
13360 -+ struct protoent **__restrict __result);
13361 -+
13362 -+extern int getprotobynumber_r (int __proto,
13363 -+ struct protoent *__restrict __result_buf,
13364 -+ char *__restrict __buf, size_t __buflen,
13365 -+ struct protoent **__restrict __result);
13366 -+
13367 -+
13368 -+/* Establish network group NETGROUP for enumeration.
13369 -+
13370 -+ This function is not part of POSIX and therefore no official
13371 -+ cancellation point. But due to similarity with an POSIX interface
13372 -+ or due to the implementation it is a cancellation point and
13373 -+ therefore not marked with __THROW. */
13374 -+extern int setnetgrent (const char *__netgroup);
13375 -+
13376 -+/* Free all space allocated by previous `setnetgrent' call.
13377 -+
13378 -+ This function is not part of POSIX and therefore no official
13379 -+ cancellation point. But due to similarity with an POSIX interface
13380 -+ or due to the implementation it is a cancellation point and
13381 -+ therefore not marked with __THROW. */
13382 -+extern void endnetgrent (void);
13383 -+
13384 -+/* Get next member of netgroup established by last `setnetgrent' call
13385 -+ and return pointers to elements in HOSTP, USERP, and DOMAINP.
13386 -+
13387 -+ This function is not part of POSIX and therefore no official
13388 -+ cancellation point. But due to similarity with an POSIX interface
13389 -+ or due to the implementation it is a cancellation point and
13390 -+ therefore not marked with __THROW. */
13391 -+extern int getnetgrent (char **__restrict __hostp,
13392 -+ char **__restrict __userp,
13393 -+ char **__restrict __domainp);
13394 -+
13395 -+
13396 -+/* Test whether NETGROUP contains the triple (HOST,USER,DOMAIN).
13397 -+
13398 -+ This function is not part of POSIX and therefore no official
13399 -+ cancellation point. But due to similarity with an POSIX interface
13400 -+ or due to the implementation it is a cancellation point and
13401 -+ therefore not marked with __THROW. */
13402 -+extern int innetgr (const char *__netgroup, const char *__host,
13403 -+ const char *__user, const char *__domain);
13404 -+
13405 -+/* Reentrant version of `getnetgrent' where result is placed in BUFFER.
13406 -+
13407 -+ This function is not part of POSIX and therefore no official
13408 -+ cancellation point. But due to similarity with an POSIX interface
13409 -+ or due to the implementation it is a cancellation point and
13410 -+ therefore not marked with __THROW. */
13411 -+extern int getnetgrent_r (char **__restrict __hostp,
13412 -+ char **__restrict __userp,
13413 -+ char **__restrict __domainp,
13414 -+ char *__restrict __buffer, size_t __buflen);
13415 -+#endif /* misc */
13416 -+
13417 -+
13418 -+#ifdef __USE_MISC
13419 -+/* Call `rshd' at port RPORT on remote machine *AHOST to execute CMD.
13420 -+ The local user is LOCUSER, on the remote machine the command is
13421 -+ executed as REMUSER. In *FD2P the descriptor to the socket for the
13422 -+ connection is returned. The caller must have the right to use a
13423 -+ reserved port. When the function returns *AHOST contains the
13424 -+ official host name.
13425 -+
13426 -+ This function is not part of POSIX and therefore no official
13427 -+ cancellation point. But due to similarity with an POSIX interface
13428 -+ or due to the implementation it is a cancellation point and
13429 -+ therefore not marked with __THROW. */
13430 -+extern int rcmd (char **__restrict __ahost, unsigned short int __rport,
13431 -+ const char *__restrict __locuser,
13432 -+ const char *__restrict __remuser,
13433 -+ const char *__restrict __cmd, int *__restrict __fd2p);
13434 -+
13435 -+/* This is the equivalent function where the protocol can be selected
13436 -+ and which therefore can be used for IPv6.
13437 -+
13438 -+ This function is not part of POSIX and therefore no official
13439 -+ cancellation point. But due to similarity with an POSIX interface
13440 -+ or due to the implementation it is a cancellation point and
13441 -+ therefore not marked with __THROW. */
13442 -+extern int rcmd_af (char **__restrict __ahost, unsigned short int __rport,
13443 -+ const char *__restrict __locuser,
13444 -+ const char *__restrict __remuser,
13445 -+ const char *__restrict __cmd, int *__restrict __fd2p,
13446 -+ sa_family_t __af);
13447 -+
13448 -+/* Call `rexecd' at port RPORT on remote machine *AHOST to execute
13449 -+ CMD. The process runs at the remote machine using the ID of user
13450 -+ NAME whose cleartext password is PASSWD. In *FD2P the descriptor
13451 -+ to the socket for the connection is returned. When the function
13452 -+ returns *AHOST contains the official host name.
13453 -+
13454 -+ This function is not part of POSIX and therefore no official
13455 -+ cancellation point. But due to similarity with an POSIX interface
13456 -+ or due to the implementation it is a cancellation point and
13457 -+ therefore not marked with __THROW. */
13458 -+extern int rexec (char **__restrict __ahost, int __rport,
13459 -+ const char *__restrict __name,
13460 -+ const char *__restrict __pass,
13461 -+ const char *__restrict __cmd, int *__restrict __fd2p);
13462 -+
13463 -+/* This is the equivalent function where the protocol can be selected
13464 -+ and which therefore can be used for IPv6.
13465 -+
13466 -+ This function is not part of POSIX and therefore no official
13467 -+ cancellation point. But due to similarity with an POSIX interface
13468 -+ or due to the implementation it is a cancellation point and
13469 -+ therefore not marked with __THROW. */
13470 -+extern int rexec_af (char **__restrict __ahost, int __rport,
13471 -+ const char *__restrict __name,
13472 -+ const char *__restrict __pass,
13473 -+ const char *__restrict __cmd, int *__restrict __fd2p,
13474 -+ sa_family_t __af);
13475 -+
13476 -+/* Check whether user REMUSER on system RHOST is allowed to login as LOCUSER.
13477 -+ If SUSER is not zero the user tries to become superuser. Return 0 if
13478 -+ it is possible.
13479 -+
13480 -+ This function is not part of POSIX and therefore no official
13481 -+ cancellation point. But due to similarity with an POSIX interface
13482 -+ or due to the implementation it is a cancellation point and
13483 -+ therefore not marked with __THROW. */
13484 -+extern int ruserok (const char *__rhost, int __suser,
13485 -+ const char *__remuser, const char *__locuser);
13486 -+
13487 -+/* This is the equivalent function where the protocol can be selected
13488 -+ and which therefore can be used for IPv6.
13489 -+
13490 -+ This function is not part of POSIX and therefore no official
13491 -+ cancellation point. But due to similarity with an POSIX interface
13492 -+ or due to the implementation it is a cancellation point and
13493 -+ therefore not marked with __THROW. */
13494 -+extern int ruserok_af (const char *__rhost, int __suser,
13495 -+ const char *__remuser, const char *__locuser,
13496 -+ sa_family_t __af);
13497 -+
13498 -+/* Check whether user REMUSER on system indicated by IPv4 address
13499 -+ RADDR is allowed to login as LOCUSER. Non-IPv4 (e.g., IPv6) are
13500 -+ not supported. If SUSER is not zero the user tries to become
13501 -+ superuser. Return 0 if it is possible.
13502 -+
13503 -+ This function is not part of POSIX and therefore no official
13504 -+ cancellation point. But due to similarity with an POSIX interface
13505 -+ or due to the implementation it is a cancellation point and
13506 -+ therefore not marked with __THROW. */
13507 -+extern int iruserok (uint32_t __raddr, int __suser,
13508 -+ const char *__remuser, const char *__locuser);
13509 -+
13510 -+/* This is the equivalent function where the pfamiliy if the address
13511 -+ pointed to by RADDR is determined by the value of AF. It therefore
13512 -+ can be used for IPv6
13513 -+
13514 -+ This function is not part of POSIX and therefore no official
13515 -+ cancellation point. But due to similarity with an POSIX interface
13516 -+ or due to the implementation it is a cancellation point and
13517 -+ therefore not marked with __THROW. */
13518 -+extern int iruserok_af (const void *__raddr, int __suser,
13519 -+ const char *__remuser, const char *__locuser,
13520 -+ sa_family_t __af);
13521 -+
13522 -+/* Try to allocate reserved port, returning a descriptor for a socket opened
13523 -+ at this port or -1 if unsuccessful. The search for an available port
13524 -+ will start at ALPORT and continues with lower numbers.
13525 -+
13526 -+ This function is not part of POSIX and therefore no official
13527 -+ cancellation point. But due to similarity with an POSIX interface
13528 -+ or due to the implementation it is a cancellation point and
13529 -+ therefore not marked with __THROW. */
13530 -+extern int rresvport (int *__alport);
13531 -+
13532 -+/* This is the equivalent function where the protocol can be selected
13533 -+ and which therefore can be used for IPv6.
13534 -+
13535 -+ This function is not part of POSIX and therefore no official
13536 -+ cancellation point. But due to similarity with an POSIX interface
13537 -+ or due to the implementation it is a cancellation point and
13538 -+ therefore not marked with __THROW. */
13539 -+extern int rresvport_af (int *__alport, sa_family_t __af);
13540 -+#endif
13541 -+
13542 -+
13543 -+/* Extension from POSIX.1g. */
13544 -+#ifdef __USE_POSIX
13545 -+/* Structure to contain information about address of a service provider. */
13546 -+struct addrinfo
13547 -+{
13548 -+ int ai_flags; /* Input flags. */
13549 -+ int ai_family; /* Protocol family for socket. */
13550 -+ int ai_socktype; /* Socket type. */
13551 -+ int ai_protocol; /* Protocol for socket. */
13552 -+ socklen_t ai_addrlen; /* Length of socket address. */
13553 -+ struct sockaddr *ai_addr; /* Socket address for socket. */
13554 -+ char *ai_canonname; /* Canonical name for service location. */
13555 -+ struct addrinfo *ai_next; /* Pointer to next in list. */
13556 -+};
13557 -+
13558 -+# ifdef __USE_GNU
13559 -+/* Structure used as control block for asynchronous lookup. */
13560 -+struct gaicb
13561 -+{
13562 -+ const char *ar_name; /* Name to look up. */
13563 -+ const char *ar_service; /* Service name. */
13564 -+ const struct addrinfo *ar_request; /* Additional request specification. */
13565 -+ struct addrinfo *ar_result; /* Pointer to result. */
13566 -+ /* The following are internal elements. */
13567 -+ int __return;
13568 -+ int __glibc_reserved[5];
13569 -+};
13570 -+
13571 -+/* Lookup mode. */
13572 -+# define GAI_WAIT 0
13573 -+# define GAI_NOWAIT 1
13574 -+# endif
13575 -+
13576 -+/* Possible values for `ai_flags' field in `addrinfo' structure. */
13577 -+# define AI_PASSIVE 0x0001 /* Socket address is intended for `bind'. */
13578 -+# define AI_CANONNAME 0x0002 /* Request for canonical name. */
13579 -+# define AI_NUMERICHOST 0x0004 /* Don't use name resolution. */
13580 -+# define AI_V4MAPPED 0x0008 /* IPv4 mapped addresses are acceptable. */
13581 -+# define AI_ALL 0x0010 /* Return IPv4 mapped and IPv6 addresses. */
13582 -+# define AI_ADDRCONFIG 0x0020 /* Use configuration of this host to choose
13583 -+ returned address type.. */
13584 -+# ifdef __USE_GNU
13585 -+# define AI_IDN 0x0040 /* IDN encode input (assuming it is encoded
13586 -+ in the current locale's character set)
13587 -+ before looking it up. */
13588 -+# define AI_CANONIDN 0x0080 /* Translate canonical name from IDN format. */
13589 -+# define AI_IDN_ALLOW_UNASSIGNED 0x0100 /* Don't reject unassigned Unicode
13590 -+ code points. */
13591 -+# define AI_IDN_USE_STD3_ASCII_RULES 0x0200 /* Validate strings according to
13592 -+ STD3 rules. */
13593 -+# endif
13594 -+# define AI_NUMERICSERV 0x0400 /* Don't use name resolution. */
13595 -+
13596 -+/* Error values for `getaddrinfo' function. */
13597 -+# define EAI_BADFLAGS -1 /* Invalid value for `ai_flags' field. */
13598 -+# define EAI_NONAME -2 /* NAME or SERVICE is unknown. */
13599 -+# define EAI_AGAIN -3 /* Temporary failure in name resolution. */
13600 -+# define EAI_FAIL -4 /* Non-recoverable failure in name res. */
13601 -+# define EAI_FAMILY -6 /* `ai_family' not supported. */
13602 -+# define EAI_SOCKTYPE -7 /* `ai_socktype' not supported. */
13603 -+# define EAI_SERVICE -8 /* SERVICE not supported for `ai_socktype'. */
13604 -+# define EAI_MEMORY -10 /* Memory allocation failure. */
13605 -+# define EAI_SYSTEM -11 /* System error returned in `errno'. */
13606 -+# define EAI_OVERFLOW -12 /* Argument buffer overflow. */
13607 -+# ifdef __USE_GNU
13608 -+# define EAI_NODATA -5 /* No address associated with NAME. */
13609 -+# define EAI_ADDRFAMILY -9 /* Address family for NAME not supported. */
13610 -+# define EAI_INPROGRESS -100 /* Processing request in progress. */
13611 -+# define EAI_CANCELED -101 /* Request canceled. */
13612 -+# define EAI_NOTCANCELED -102 /* Request not canceled. */
13613 -+# define EAI_ALLDONE -103 /* All requests done. */
13614 -+# define EAI_INTR -104 /* Interrupted by a signal. */
13615 -+# define EAI_IDN_ENCODE -105 /* IDN encoding failed. */
13616 -+# endif
13617 -+
13618 -+# ifdef __USE_MISC
13619 -+# define NI_MAXHOST 1025
13620 -+# define NI_MAXSERV 32
13621 -+# endif
13622 -+
13623 -+# define NI_NUMERICHOST 1 /* Don't try to look up hostname. */
13624 -+# define NI_NUMERICSERV 2 /* Don't convert port number to name. */
13625 -+# define NI_NOFQDN 4 /* Only return nodename portion. */
13626 -+# define NI_NAMEREQD 8 /* Don't return numeric addresses. */
13627 -+# define NI_DGRAM 16 /* Look up UDP service rather than TCP. */
13628 -+# ifdef __USE_GNU
13629 -+# define NI_IDN 32 /* Convert name from IDN format. */
13630 -+# define NI_IDN_ALLOW_UNASSIGNED 64 /* Don't reject unassigned Unicode
13631 -+ code points. */
13632 -+# define NI_IDN_USE_STD3_ASCII_RULES 128 /* Validate strings according to
13633 -+ STD3 rules. */
13634 -+# endif
13635 -+
13636 -+/* Translate name of a service location and/or a service name to set of
13637 -+ socket addresses.
13638 -+
13639 -+ This function is a possible cancellation point and therefore not
13640 -+ marked with __THROW. */
13641 -+extern int getaddrinfo (const char *__restrict __name,
13642 -+ const char *__restrict __service,
13643 -+ const struct addrinfo *__restrict __req,
13644 -+ struct addrinfo **__restrict __pai);
13645 -+
13646 -+/* Free `addrinfo' structure AI including associated storage. */
13647 -+extern void freeaddrinfo (struct addrinfo *__ai) __THROW;
13648 -+
13649 -+/* Convert error return from getaddrinfo() to a string. */
13650 -+extern const char *gai_strerror (int __ecode) __THROW;
13651 -+
13652 -+/* Translate a socket address to a location and service name.
13653 -+
13654 -+ This function is a possible cancellation point and therefore not
13655 -+ marked with __THROW. */
13656 -+extern int getnameinfo (const struct sockaddr *__restrict __sa,
13657 -+ socklen_t __salen, char *__restrict __host,
13658 -+ socklen_t __hostlen, char *__restrict __serv,
13659 -+ socklen_t __servlen, int __flags);
13660 -+#endif /* POSIX */
13661 -+
13662 -+#ifdef __USE_GNU
13663 -+/* Enqueue ENT requests from the LIST. If MODE is GAI_WAIT wait until all
13664 -+ requests are handled. If WAIT is GAI_NOWAIT return immediately after
13665 -+ queueing the requests and signal completion according to SIG.
13666 -+
13667 -+ This function is not part of POSIX and therefore no official
13668 -+ cancellation point. But due to similarity with an POSIX interface
13669 -+ or due to the implementation it is a cancellation point and
13670 -+ therefore not marked with __THROW. */
13671 -+extern int getaddrinfo_a (int __mode, struct gaicb *__list[__restrict_arr],
13672 -+ int __ent, struct sigevent *__restrict __sig);
13673 -+
13674 -+/* Suspend execution of the thread until at least one of the ENT requests
13675 -+ in LIST is handled. If TIMEOUT is not a null pointer it specifies the
13676 -+ longest time the function keeps waiting before returning with an error.
13677 -+
13678 -+ This function is not part of POSIX and therefore no official
13679 -+ cancellation point. But due to similarity with an POSIX interface
13680 -+ or due to the implementation it is a cancellation point and
13681 -+ therefore not marked with __THROW. */
13682 -+extern int gai_suspend (const struct gaicb *const __list[], int __ent,
13683 -+ const struct timespec *__timeout);
13684 -+
13685 -+/* Get the error status of the request REQ. */
13686 -+extern int gai_error (struct gaicb *__req) __THROW;
13687 -+
13688 -+/* Cancel the requests associated with GAICBP. */
13689 -+extern int gai_cancel (struct gaicb *__gaicbp) __THROW;
13690 -+#endif /* GNU */
13691 -+
13692 -+__END_DECLS
13693 -+
13694 -+#endif /* netdb.h */
13695 -Index: glibc-2.19/resolv/resolv.h.in
13696 -===================================================================
13697 ---- /dev/null
13698 -+++ glibc-2.19/resolv/resolv.h.in
13699 -@@ -0,0 +1,389 @@
13700 -+/*
13701 -+ * Copyright (c) 1983, 1987, 1989
13702 -+ * The Regents of the University of California. All rights reserved.
13703 -+ *
13704 -+ * Redistribution and use in source and binary forms, with or without
13705 -+ * modification, are permitted provided that the following conditions
13706 -+ * are met:
13707 -+ * 1. Redistributions of source code must retain the above copyright
13708 -+ * notice, this list of conditions and the following disclaimer.
13709 -+ * 2. Redistributions in binary form must reproduce the above copyright
13710 -+ * notice, this list of conditions and the following disclaimer in the
13711 -+ * documentation and/or other materials provided with the distribution.
13712 -+ * 4. Neither the name of the University nor the names of its contributors
13713 -+ * may be used to endorse or promote products derived from this software
13714 -+ * without specific prior written permission.
13715 -+ *
13716 -+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
13717 -+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
13718 -+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
13719 -+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
13720 -+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
13721 -+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
13722 -+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
13723 -+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
13724 -+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
13725 -+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
13726 -+ * SUCH DAMAGE.
13727 -+ */
13728 -+
13729 -+/*
13730 -+ * Portions Copyright (c) 1996-1999 by Internet Software Consortium.
13731 -+ *
13732 -+ * Permission to use, copy, modify, and distribute this software for any
13733 -+ * purpose with or without fee is hereby granted, provided that the above
13734 -+ * copyright notice and this permission notice appear in all copies.
13735 -+ *
13736 -+ * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS
13737 -+ * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
13738 -+ * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE
13739 -+ * CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
13740 -+ * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
13741 -+ * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
13742 -+ * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
13743 -+ * SOFTWARE.
13744 -+ */
13745 -+
13746 -+/*
13747 -+ * @(#)resolv.h 8.1 (Berkeley) 6/2/93
13748 -+ * $BINDId: resolv.h,v 8.31 2000/03/30 20:16:50 vixie Exp $
13749 -+ */
13750 -+
13751 -+#ifndef _RESOLV_H_
13752 -+
13753 -+/* These headers are needed for types used in the `struct res_state'
13754 -+ declaration. */
13755 -+#include <sys/types.h>
13756 -+#include <netinet/in.h>
13757 -+
13758 -+#ifndef __need_res_state
13759 -+# define _RESOLV_H_
13760 -+
13761 -+# include <sys/param.h>
13762 -+# include <sys/cdefs.h>
13763 -+# include <stdio.h>
13764 -+# include <arpa/nameser.h>
13765 -+#endif
13766 -+
13767 -+#ifndef __res_state_defined
13768 -+# define __res_state_defined
13769 -+
13770 -+typedef enum { res_goahead, res_nextns, res_modified, res_done, res_error }
13771 -+ res_sendhookact;
13772 -+
13773 -+typedef res_sendhookact (*res_send_qhook) (struct sockaddr_in * const *__ns,
13774 -+ const u_char **__query,
13775 -+ int *__querylen,
13776 -+ u_char *__ans,
13777 -+ int __anssiz,
13778 -+ int *__resplen);
13779 -+
13780 -+typedef res_sendhookact (*res_send_rhook) (const struct sockaddr_in *__ns,
13781 -+ const u_char *__query,
13782 -+ int __querylen,
13783 -+ u_char *__ans,
13784 -+ int __anssiz,
13785 -+ int *__resplen);
13786 -+
13787 -+/*
13788 -+ * Global defines and variables for resolver stub.
13789 -+ */
13790 -+# define MAXNS 3 /* max # name servers we'll track */
13791 -+# define MAXDFLSRCH 3 /* # default domain levels to try */
13792 -+# define MAXDNSRCH 6 /* max # domains in search path */
13793 -+# define LOCALDOMAINPARTS 2 /* min levels in name that is "local" */
13794 -+
13795 -+# define RES_TIMEOUT 5 /* min. seconds between retries */
13796 -+# define MAXRESOLVSORT 10 /* number of net to sort on */
13797 -+# define RES_MAXNDOTS 15 /* should reflect bit field size */
13798 -+# define RES_MAXRETRANS 30 /* only for resolv.conf/RES_OPTIONS */
13799 -+# define RES_MAXRETRY 5 /* only for resolv.conf/RES_OPTIONS */
13800 -+# define RES_DFLRETRY 2 /* Default #/tries. */
13801 -+# define RES_MAXTIME 65535 /* Infinity, in milliseconds. */
13802 -+
13803 -+struct __res_state {
13804 -+ int retrans; /* retransmition time interval */
13805 -+ int retry; /* number of times to retransmit */
13806 -+ u_long options; /* option flags - see below. */
13807 -+ int nscount; /* number of name servers */
13808 -+ struct sockaddr_in
13809 -+ nsaddr_list[MAXNS]; /* address of name server */
13810 -+# define nsaddr nsaddr_list[0] /* for backward compatibility */
13811 -+ u_short id; /* current message id */
13812 -+ /* 2 byte hole here. */
13813 -+ char *dnsrch[MAXDNSRCH+1]; /* components of domain to search */
13814 -+ char defdname[256]; /* default domain (deprecated) */
13815 -+ u_long pfcode; /* RES_PRF_ flags - see below. */
13816 -+ unsigned ndots:4; /* threshold for initial abs. query */
13817 -+ unsigned nsort:4; /* number of elements in sort_list[] */
13818 -+ unsigned ipv6_unavail:1; /* connecting to IPv6 server failed */
13819 -+ unsigned unused:23;
13820 -+ struct {
13821 -+ struct in_addr addr;
13822 -+ u_int32_t mask;
13823 -+ } sort_list[MAXRESOLVSORT];
13824 -+ /* 4 byte hole here on 64-bit architectures. */
13825 -+ res_send_qhook qhook; /* query hook */
13826 -+ res_send_rhook rhook; /* response hook */
13827 -+ int res_h_errno; /* last one set for this context */
13828 -+ int _vcsock; /* PRIVATE: for res_send VC i/o */
13829 -+ u_int _flags; /* PRIVATE: see below */
13830 -+ /* 4 byte hole here on 64-bit architectures. */
13831 -+ union {
13832 -+ char pad[52]; /* On an i386 this means 512b total. */
13833 -+ struct {
13834 -+ u_int16_t nscount;
13835 -+ u_int16_t nsmap[MAXNS];
13836 -+ int nssocks[MAXNS];
13837 -+ u_int16_t nscount6;
13838 -+ u_int16_t nsinit;
13839 -+ struct sockaddr_in6 *nsaddrs[MAXNS];
13840 -+#ifdef _LIBC
13841 -+ unsigned long long int initstamp
13842 -+ __attribute__((packed));
13843 -+#else
13844 -+ unsigned int _initstamp[2];
13845 -+#endif
13846 -+ } _ext;
13847 -+ } _u;
13848 -+};
13849 -+
13850 -+typedef struct __res_state *res_state;
13851 -+# undef __need_res_state
13852 -+#endif
13853 -+
13854 -+#ifdef _RESOLV_H_
13855 -+/*
13856 -+ * Revision information. This is the release date in YYYYMMDD format.
13857 -+ * It can change every day so the right thing to do with it is use it
13858 -+ * in preprocessor commands such as "#if (__RES > 19931104)". Do not
13859 -+ * compare for equality; rather, use it to determine whether your resolver
13860 -+ * is new enough to contain a certain feature.
13861 -+ */
13862 -+
13863 -+#define __RES 19991006
13864 -+
13865 -+/*
13866 -+ * Resolver configuration file.
13867 -+ * Normally not present, but may contain the address of the
13868 -+ * inital name server(s) to query and the domain search list.
13869 -+ */
13870 -+
13871 -+#ifndef _PATH_RESCONF
13872 -+#define _PATH_RESCONF "@libc_cv_sysconfdir@/resolv.conf"
13873 -+#endif
13874 -+
13875 -+struct res_sym {
13876 -+ int number; /* Identifying number, like T_MX */
13877 -+ char * name; /* Its symbolic name, like "MX" */
13878 -+ char * humanname; /* Its fun name, like "mail exchanger" */
13879 -+};
13880 -+
13881 -+/*
13882 -+ * Resolver flags (used to be discrete per-module statics ints).
13883 -+ */
13884 -+#define RES_F_VC 0x00000001 /* socket is TCP */
13885 -+#define RES_F_CONN 0x00000002 /* socket is connected */
13886 -+#define RES_F_EDNS0ERR 0x00000004 /* EDNS0 caused errors */
13887 -+
13888 -+/* res_findzonecut() options */
13889 -+#define RES_EXHAUSTIVE 0x00000001 /* always do all queries */
13890 -+
13891 -+/*
13892 -+ * Resolver options (keep these in synch with res_debug.c, please)
13893 -+ */
13894 -+#define RES_INIT 0x00000001 /* address initialized */
13895 -+#define RES_DEBUG 0x00000002 /* print debug messages */
13896 -+#define RES_AAONLY 0x00000004 /* authoritative answers only (!IMPL)*/
13897 -+#define RES_USEVC 0x00000008 /* use virtual circuit */
13898 -+#define RES_PRIMARY 0x00000010 /* query primary server only (!IMPL) */
13899 -+#define RES_IGNTC 0x00000020 /* ignore trucation errors */
13900 -+#define RES_RECURSE 0x00000040 /* recursion desired */
13901 -+#define RES_DEFNAMES 0x00000080 /* use default domain name */
13902 -+#define RES_STAYOPEN 0x00000100 /* Keep TCP socket open */
13903 -+#define RES_DNSRCH 0x00000200 /* search up local domain tree */
13904 -+#define RES_INSECURE1 0x00000400 /* type 1 security disabled */
13905 -+#define RES_INSECURE2 0x00000800 /* type 2 security disabled */
13906 -+#define RES_NOALIASES 0x00001000 /* shuts off HOSTALIASES feature */
13907 -+#define RES_USE_INET6 0x00002000 /* use/map IPv6 in gethostbyname() */
13908 -+#define RES_ROTATE 0x00004000 /* rotate ns list after each query */
13909 -+#define RES_NOCHECKNAME 0x00008000 /* do not check names for sanity (!IMPL) */
13910 -+#define RES_KEEPTSIG 0x00010000 /* do not strip TSIG records */
13911 -+#define RES_BLAST 0x00020000 /* blast all recursive servers */
13912 -+#define RES_USEBSTRING 0x00040000 /* IPv6 reverse lookup with byte
13913 -+ strings */
13914 -+#define RES_NOIP6DOTINT 0x00080000 /* Do not use .ip6.int in IPv6
13915 -+ reverse lookup */
13916 -+#define RES_USE_EDNS0 0x00100000 /* Use EDNS0. */
13917 -+#define RES_SNGLKUP 0x00200000 /* one outstanding request at a time */
13918 -+#define RES_SNGLKUPREOP 0x00400000 /* -"-, but open new socket for each
13919 -+ request */
13920 -+#define RES_USE_DNSSEC 0x00800000 /* use DNSSEC using OK bit in OPT */
13921 -+#define RES_NOTLDQUERY 0x01000000 /* Do not look up unqualified name
13922 -+ as a TLD. */
13923 -+
13924 -+#define RES_DEFAULT (RES_RECURSE|RES_DEFNAMES|RES_DNSRCH|RES_NOIP6DOTINT)
13925 -+
13926 -+/*
13927 -+ * Resolver "pfcode" values. Used by dig.
13928 -+ */
13929 -+#define RES_PRF_STATS 0x00000001
13930 -+#define RES_PRF_UPDATE 0x00000002
13931 -+#define RES_PRF_CLASS 0x00000004
13932 -+#define RES_PRF_CMD 0x00000008
13933 -+#define RES_PRF_QUES 0x00000010
13934 -+#define RES_PRF_ANS 0x00000020
13935 -+#define RES_PRF_AUTH 0x00000040
13936 -+#define RES_PRF_ADD 0x00000080
13937 -+#define RES_PRF_HEAD1 0x00000100
13938 -+#define RES_PRF_HEAD2 0x00000200
13939 -+#define RES_PRF_TTLID 0x00000400
13940 -+#define RES_PRF_HEADX 0x00000800
13941 -+#define RES_PRF_QUERY 0x00001000
13942 -+#define RES_PRF_REPLY 0x00002000
13943 -+#define RES_PRF_INIT 0x00004000
13944 -+/* 0x00008000 */
13945 -+
13946 -+/* Things involving an internal (static) resolver context. */
13947 -+__BEGIN_DECLS
13948 -+extern struct __res_state *__res_state(void) __attribute__ ((__const__));
13949 -+__END_DECLS
13950 -+#define _res (*__res_state())
13951 -+
13952 -+#ifndef __BIND_NOSTATIC
13953 -+#define fp_nquery __fp_nquery
13954 -+#define fp_query __fp_query
13955 -+#define hostalias __hostalias
13956 -+#define p_query __p_query
13957 -+#define res_close __res_close
13958 -+#define res_init __res_init
13959 -+#define res_isourserver __res_isourserver
13960 -+#define res_mkquery __res_mkquery
13961 -+#define res_query __res_query
13962 -+#define res_querydomain __res_querydomain
13963 -+#define res_search __res_search
13964 -+#define res_send __res_send
13965 -+
13966 -+__BEGIN_DECLS
13967 -+void fp_nquery (const u_char *, int, FILE *) __THROW;
13968 -+void fp_query (const u_char *, FILE *) __THROW;
13969 -+const char * hostalias (const char *) __THROW;
13970 -+void p_query (const u_char *) __THROW;
13971 -+void res_close (void) __THROW;
13972 -+int res_init (void) __THROW;
13973 -+int res_isourserver (const struct sockaddr_in *) __THROW;
13974 -+int res_mkquery (int, const char *, int, int, const u_char *,
13975 -+ int, const u_char *, u_char *, int) __THROW;
13976 -+int res_query (const char *, int, int, u_char *, int) __THROW;
13977 -+int res_querydomain (const char *, const char *, int, int,
13978 -+ u_char *, int) __THROW;
13979 -+int res_search (const char *, int, int, u_char *, int) __THROW;
13980 -+int res_send (const u_char *, int, u_char *, int) __THROW;
13981 -+__END_DECLS
13982 -+#endif
13983 -+
13984 -+#define b64_ntop __b64_ntop
13985 -+#define b64_pton __b64_pton
13986 -+#define dn_comp __dn_comp
13987 -+#define dn_count_labels __dn_count_labels
13988 -+#define dn_expand __dn_expand
13989 -+#define dn_skipname __dn_skipname
13990 -+#define fp_resstat __fp_resstat
13991 -+#define loc_aton __loc_aton
13992 -+#define loc_ntoa __loc_ntoa
13993 -+#define p_cdname __p_cdname
13994 -+#define p_cdnname __p_cdnname
13995 -+#define p_class __p_class
13996 -+#define p_fqname __p_fqname
13997 -+#define p_fqnname __p_fqnname
13998 -+#define p_option __p_option
13999 -+#define p_secstodate __p_secstodate
14000 -+#define p_section __p_section
14001 -+#define p_time __p_time
14002 -+#define p_type __p_type
14003 -+#define p_rcode __p_rcode
14004 -+#define putlong __putlong
14005 -+#define putshort __putshort
14006 -+#define res_dnok __res_dnok
14007 -+#define res_hnok __res_hnok
14008 -+#define res_hostalias __res_hostalias
14009 -+#define res_mailok __res_mailok
14010 -+#define res_nameinquery __res_nameinquery
14011 -+#define res_nclose __res_nclose
14012 -+#define res_ninit __res_ninit
14013 -+#define res_nmkquery __res_nmkquery
14014 -+#define res_npquery __res_npquery
14015 -+#define res_nquery __res_nquery
14016 -+#define res_nquerydomain __res_nquerydomain
14017 -+#define res_nsearch __res_nsearch
14018 -+#define res_nsend __res_nsend
14019 -+#define res_nisourserver __res_nisourserver
14020 -+#define res_ownok __res_ownok
14021 -+#define res_queriesmatch __res_queriesmatch
14022 -+#define res_randomid __res_randomid
14023 -+#define sym_ntop __sym_ntop
14024 -+#define sym_ntos __sym_ntos
14025 -+#define sym_ston __sym_ston
14026 -+__BEGIN_DECLS
14027 -+int res_hnok (const char *) __THROW;
14028 -+int res_ownok (const char *) __THROW;
14029 -+int res_mailok (const char *) __THROW;
14030 -+int res_dnok (const char *) __THROW;
14031 -+int sym_ston (const struct res_sym *, const char *, int *) __THROW;
14032 -+const char * sym_ntos (const struct res_sym *, int, int *) __THROW;
14033 -+const char * sym_ntop (const struct res_sym *, int, int *) __THROW;
14034 -+int b64_ntop (u_char const *, size_t, char *, size_t) __THROW;
14035 -+int b64_pton (char const *, u_char *, size_t) __THROW;
14036 -+int loc_aton (const char *__ascii, u_char *__binary) __THROW;
14037 -+const char * loc_ntoa (const u_char *__binary, char *__ascii) __THROW;
14038 -+int dn_skipname (const u_char *, const u_char *) __THROW;
14039 -+void putlong (u_int32_t, u_char *) __THROW;
14040 -+void putshort (u_int16_t, u_char *) __THROW;
14041 -+const char * p_class (int) __THROW;
14042 -+const char * p_time (u_int32_t) __THROW;
14043 -+const char * p_type (int) __THROW;
14044 -+const char * p_rcode (int) __THROW;
14045 -+const u_char * p_cdnname (const u_char *, const u_char *, int, FILE *)
14046 -+ __THROW;
14047 -+const u_char * p_cdname (const u_char *, const u_char *, FILE *) __THROW;
14048 -+const u_char * p_fqnname (const u_char *__cp, const u_char *__msg,
14049 -+ int, char *, int) __THROW;
14050 -+const u_char * p_fqname (const u_char *, const u_char *, FILE *) __THROW;
14051 -+const char * p_option (u_long __option) __THROW;
14052 -+char * p_secstodate (u_long) __THROW;
14053 -+int dn_count_labels (const char *) __THROW;
14054 -+int dn_comp (const char *, u_char *, int, u_char **, u_char **)
14055 -+ __THROW;
14056 -+int dn_expand (const u_char *, const u_char *, const u_char *,
14057 -+ char *, int) __THROW;
14058 -+u_int res_randomid (void) __THROW;
14059 -+int res_nameinquery (const char *, int, int,
14060 -+ const u_char *, const u_char *) __THROW;
14061 -+int res_queriesmatch (const u_char *, const u_char *,
14062 -+ const u_char *, const u_char *) __THROW;
14063 -+const char * p_section (int __section, int __opcode) __THROW;
14064 -+/* Things involving a resolver context. */
14065 -+int res_ninit (res_state) __THROW;
14066 -+int res_nisourserver (const res_state,
14067 -+ const struct sockaddr_in *) __THROW;
14068 -+void fp_resstat (const res_state, FILE *) __THROW;
14069 -+void res_npquery (const res_state, const u_char *, int, FILE *)
14070 -+ __THROW;
14071 -+const char * res_hostalias (const res_state, const char *, char *, size_t)
14072 -+ __THROW;
14073 -+int res_nquery (res_state, const char *, int, int, u_char *, int)
14074 -+ __THROW;
14075 -+int res_nsearch (res_state, const char *, int, int, u_char *, int)
14076 -+ __THROW;
14077 -+int res_nquerydomain (res_state, const char *, const char *, int,
14078 -+ int, u_char *, int) __THROW;
14079 -+int res_nmkquery (res_state, int, const char *, int, int,
14080 -+ const u_char *, int, const u_char *, u_char *,
14081 -+ int) __THROW;
14082 -+int res_nsend (res_state, const u_char *, int, u_char *, int)
14083 -+ __THROW;
14084 -+void res_nclose (res_state) __THROW;
14085 -+__END_DECLS
14086 -+#endif
14087 -+
14088 -+#endif /* !_RESOLV_H_ */
14089 -Index: glibc-2.19/configure
14090 -===================================================================
14091 ---- glibc-2.19.orig/configure
14092 -+++ glibc-2.19/configure
14093 -@@ -7387,7 +7387,7 @@ RELEASE=`sed -n -e 's/^#define RELEASE "
14094 -
14095 -
14096 -
14097 --ac_config_files="$ac_config_files config.make Makefile"
14098 -+ac_config_files="$ac_config_files config.make Makefile nss/db-Makefile resolv/netdb.h resolv/resolv.h"
14099 -
14100 - ac_config_commands="$ac_config_commands default"
14101 -
14102 -@@ -8107,6 +8107,9 @@ do
14103 - "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
14104 - "config.make") CONFIG_FILES="$CONFIG_FILES config.make" ;;
14105 - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
14106 -+ "nss/db-Makefile") CONFIG_FILES="$CONFIG_FILES nss/db-Makefile" ;;
14107 -+ "resolv/netdb.h") CONFIG_FILES="$CONFIG_FILES resolv/netdb.h" ;;
14108 -+ "resolv/resolv.h") CONFIG_FILES="$CONFIG_FILES resolv/resolv.h" ;;
14109 - "default") CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;;
14110 -
14111 - *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
14112
14113 diff --git a/sys-libs/glibc/files/2.19/glibc-2.19-hardened-configure-picdefault.patch b/sys-libs/glibc/files/2.19/glibc-2.19-hardened-configure-picdefault.patch
14114 deleted file mode 100644
14115 index 341d8c5..0000000
14116 --- a/sys-libs/glibc/files/2.19/glibc-2.19-hardened-configure-picdefault.patch
14117 +++ /dev/null
14118 @@ -1,30 +0,0 @@
14119 -Prevent default-fPIE from confusing configure into thinking
14120 -PIC code is default. This causes glibc to build both PIC and
14121 -non-PIC code as normal, which on the hardened compiler generates
14122 -PIC and PIE.
14123 -
14124 -Patch by Kevin F. Quinn <kevquinn@g.o>
14125 -Fixed for glibc 2.19 by Magnus Granberg <zorry@×××.nu>
14126 -
14127 ---- configure.ac
14128 -+++ configure.ac
14129 -@@ -2145,7 +2145,7 @@
14130 - # error PIC is default.
14131 - #endif
14132 - EOF
14133 --if eval "${CC-cc} -S conftest.c 2>&AS_MESSAGE_LOG_FD 1>&AS_MESSAGE_LOG_FD"; then
14134 -+if eval "${CC-cc} -fno-PIE -S conftest.c 2>&AS_MESSAGE_LOG_FD 1>&AS_MESSAGE_LOG_FD"; then
14135 - libc_cv_pic_default=no
14136 - fi
14137 - rm -f conftest.*])
14138 ---- configure
14139 -+++ configure
14140 -@@ -7698,7 +7698,7 @@
14141 - # error PIC is default.
14142 - #endif
14143 - EOF
14144 --if eval "${CC-cc} -S conftest.c 2>&5 1>&5"; then
14145 -+if eval "${CC-cc} -fno-PIE -S conftest.c 2>&5 1>&5"; then
14146 - libc_cv_pic_default=no
14147 - fi
14148 - rm -f conftest.*
14149
14150 diff --git a/sys-libs/glibc/files/2.19/glibc-2.19-ia64-gcc-4.8-reloc-hack.patch b/sys-libs/glibc/files/2.19/glibc-2.19-ia64-gcc-4.8-reloc-hack.patch
14151 deleted file mode 100644
14152 index 72a616a..0000000
14153 --- a/sys-libs/glibc/files/2.19/glibc-2.19-ia64-gcc-4.8-reloc-hack.patch
14154 +++ /dev/null
14155 @@ -1,32 +0,0 @@
14156 -https://bugs.gentoo.org/503838
14157 -http://gcc.gnu.org/PR60465
14158 -https://sourceware.org/ml/libc-alpha/2015-12/msg00556.html
14159 -https://trofi.github.io/posts/189-glibc-on-ia64-or-how-relocations-bootstrap.html
14160 -
14161 -newer versions of gcc generate relocations in the elf_get_dynamic_info func
14162 -which glibc relies on to populate some info structs. those structs are then
14163 -used by ldso to process relocations in itself. glibc requires that there are
14164 -no relocations until that point (*after* elf_get_dynamic_info), so we end up
14165 -crashing during elf_get_dynamic_info because the relocation has not yet been
14166 -processed.
14167 -
14168 -this hack shuffles the code in a way that tricks gcc into not generating the
14169 -relocation. we need to figure out something better for upstream.
14170 -
14171 ---- a/elf/get-dynamic-info.h
14172 -+++ b/elf/get-dynamic-info.h
14173 -@@ -66,8 +66,12 @@ elf_get_dynamic_info (struct link_map *l, ElfW(Dyn) *temp)
14174 - info[DT_VALTAGIDX (dyn->d_tag) + DT_NUM + DT_THISPROCNUM
14175 - + DT_VERSIONTAGNUM + DT_EXTRANUM] = dyn;
14176 - else if ((d_tag_utype) DT_ADDRTAGIDX (dyn->d_tag) < DT_ADDRNUM)
14177 -- info[DT_ADDRTAGIDX (dyn->d_tag) + DT_NUM + DT_THISPROCNUM
14178 -- + DT_VERSIONTAGNUM + DT_EXTRANUM + DT_VALNUM] = dyn;
14179 -+ {
14180 -+ d_tag_utype i =
14181 -+ DT_ADDRTAGIDX (dyn->d_tag) + DT_NUM + DT_THISPROCNUM
14182 -+ + DT_VERSIONTAGNUM + DT_EXTRANUM + DT_VALNUM;
14183 -+ info[i] = dyn;
14184 -+ }
14185 - ++dyn;
14186 - }
14187 -
14188
14189 diff --git a/sys-libs/glibc/files/2.19/glibc-2.19-vdso-disable.patch b/sys-libs/glibc/files/2.19/glibc-2.19-vdso-disable.patch
14190 deleted file mode 100644
14191 index 31ed0d4..0000000
14192 --- a/sys-libs/glibc/files/2.19/glibc-2.19-vdso-disable.patch
14193 +++ /dev/null
14194 @@ -1,37 +0,0 @@
14195 -Disable vdso for some buggy kernels
14196 -http://thread.gmane.org/gmane.comp.lib.glibc.user/1903
14197 -
14198 -Index: glibc-2.19/elf/dl-support.c
14199 -===================================================================
14200 ---- glibc-2.19.orig/elf/dl-support.c
14201 -+++ glibc-2.19/elf/dl-support.c
14202 -@@ -260,16 +260,6 @@ _dl_aux_init (ElfW(auxv_t) *av)
14203 - case AT_FPUCW:
14204 - GLRO(dl_fpu_control) = av->a_un.a_val;
14205 - break;
14206 --#ifdef NEED_DL_SYSINFO
14207 -- case AT_SYSINFO:
14208 -- GL(dl_sysinfo) = av->a_un.a_val;
14209 -- break;
14210 --#endif
14211 --#ifdef NEED_DL_SYSINFO_DSO
14212 -- case AT_SYSINFO_EHDR:
14213 -- GL(dl_sysinfo_dso) = (void *) av->a_un.a_val;
14214 -- break;
14215 --#endif
14216 - case AT_UID:
14217 - uid ^= av->a_un.a_val;
14218 - seen |= 1;
14219 -Index: glibc-2.19/elf/setup-vdso.h
14220 -===================================================================
14221 ---- glibc-2.19.orig/elf/setup-vdso.h
14222 -+++ glibc-2.19/elf/setup-vdso.h
14223 -@@ -20,7 +20,7 @@ static inline void __attribute__ ((alway
14224 - setup_vdso (struct link_map *main_map __attribute__ ((unused)),
14225 - struct link_map ***first_preload __attribute__ ((unused)))
14226 - {
14227 --#ifdef NEED_DL_SYSINFO_DSO
14228 -+#if 0
14229 - if (GLRO(dl_sysinfo_dso) == NULL)
14230 - return;
14231 -
14232
14233 diff --git a/sys-libs/glibc/files/2.20/glibc-2.20-configurable-paths.patch b/sys-libs/glibc/files/2.20/glibc-2.20-configurable-paths.patch
14234 deleted file mode 100644
14235 index 1480595..0000000
14236 --- a/sys-libs/glibc/files/2.20/glibc-2.20-configurable-paths.patch
14237 +++ /dev/null
14238 @@ -1,3012 +0,0 @@
14239 -Index: glibc-2.20/nis/Makefile
14240 -===================================================================
14241 ---- glibc-2.20.orig/nis/Makefile
14242 -+++ glibc-2.20/nis/Makefile
14243 -@@ -58,6 +58,11 @@ libnsl-routines = yp_xdr ypclnt ypupdate
14244 - nis_clone_res nss-default
14245 -
14246 - libnss_compat-routines := $(addprefix compat-,grp pwd spwd initgroups)
14247 -+SYSCONF-FLAGS := -D'SYSCONFDIR="$(sysconfdir)"'
14248 -+CPPFLAGS-compat-grp.c = $(SYSCONF-FLAGS)
14249 -+CPPFLAGS-compat-pwd.c = $(SYSCONF-FLAGS)
14250 -+CPPFLAGS-compat-spwd.c = $(SYSCONF-FLAGS)
14251 -+CPPFLAGS-compat-initgroups.c = $(SYSCONF-FLAGS)
14252 - libnss_compat-inhibit-o = $(filter-out .os,$(object-suffixes))
14253 -
14254 - libnss_nis-routines := $(addprefix nis-,$(databases)) nis-initgroups \
14255 -Index: glibc-2.20/nis/nss_compat/compat-grp.c
14256 -===================================================================
14257 ---- glibc-2.20.orig/nis/nss_compat/compat-grp.c
14258 -+++ glibc-2.20/nis/nss_compat/compat-grp.c
14259 -@@ -120,7 +120,7 @@ internal_setgrent (ent_t *ent, int stayo
14260 -
14261 - if (ent->stream == NULL)
14262 - {
14263 -- ent->stream = fopen ("/etc/group", "rme");
14264 -+ ent->stream = fopen (SYSCONFDIR "/group", "rme");
14265 -
14266 - if (ent->stream == NULL)
14267 - status = errno == EAGAIN ? NSS_STATUS_TRYAGAIN : NSS_STATUS_UNAVAIL;
14268 -Index: glibc-2.20/nis/nss_compat/compat-initgroups.c
14269 -===================================================================
14270 ---- glibc-2.20.orig/nis/nss_compat/compat-initgroups.c
14271 -+++ glibc-2.20/nis/nss_compat/compat-initgroups.c
14272 -@@ -136,7 +136,7 @@ internal_setgrent (ent_t *ent)
14273 - else
14274 - ent->blacklist.current = 0;
14275 -
14276 -- ent->stream = fopen ("/etc/group", "rme");
14277 -+ ent->stream = fopen (SYSCONFDIR "/group", "rme");
14278 -
14279 - if (ent->stream == NULL)
14280 - status = errno == EAGAIN ? NSS_STATUS_TRYAGAIN : NSS_STATUS_UNAVAIL;
14281 -Index: glibc-2.20/nis/nss_compat/compat-pwd.c
14282 -===================================================================
14283 ---- glibc-2.20.orig/nis/nss_compat/compat-pwd.c
14284 -+++ glibc-2.20/nis/nss_compat/compat-pwd.c
14285 -@@ -235,7 +235,7 @@ internal_setpwent (ent_t *ent, int stayo
14286 -
14287 - if (ent->stream == NULL)
14288 - {
14289 -- ent->stream = fopen ("/etc/passwd", "rme");
14290 -+ ent->stream = fopen (SYSCONFDIR "/passwd", "rme");
14291 -
14292 - if (ent->stream == NULL)
14293 - status = errno == EAGAIN ? NSS_STATUS_TRYAGAIN : NSS_STATUS_UNAVAIL;
14294 -Index: glibc-2.20/nis/nss_compat/compat-spwd.c
14295 -===================================================================
14296 ---- glibc-2.20.orig/nis/nss_compat/compat-spwd.c
14297 -+++ glibc-2.20/nis/nss_compat/compat-spwd.c
14298 -@@ -191,7 +191,7 @@ internal_setspent (ent_t *ent, int stayo
14299 -
14300 - if (ent->stream == NULL)
14301 - {
14302 -- ent->stream = fopen ("/etc/shadow", "rme");
14303 -+ ent->stream = fopen (SYSCONFDIR "/shadow", "rme");
14304 -
14305 - if (ent->stream == NULL)
14306 - status = errno == EAGAIN ? NSS_STATUS_TRYAGAIN : NSS_STATUS_UNAVAIL;
14307 -Index: glibc-2.20/nss/Makefile
14308 -===================================================================
14309 ---- glibc-2.20.orig/nss/Makefile
14310 -+++ glibc-2.20/nss/Makefile
14311 -@@ -41,6 +41,8 @@ extra-objs += $(makedb-modules:=.o)
14312 -
14313 - tests = test-netdb tst-nss-test1 test-digits-dots
14314 - xtests = bug-erange
14315 -+SYSCONF-FLAGS := -D'SYSCONFDIR="$(sysconfdir)"'
14316 -+CPPFLAGS-bug-erange.c = $(SYSCONF-FLAGS)
14317 -
14318 - # Specify rules for the nss_* modules. We have some services.
14319 - services := files db
14320 -@@ -57,6 +59,8 @@ vpath %.c $(subdir-dirs) ../locale/progr
14321 -
14322 - libnss_files-routines := $(addprefix files-,$(databases)) \
14323 - files-initgroups files-have_o_cloexec files-init
14324 -+CPPFLAGS-files-init.c = $(SYSCONF-FLAGS)
14325 -+CPPFLAGS-files-initgroups.c = $(SYSCONF-FLAGS)
14326 -
14327 - libnss_db-dbs := $(addprefix db-,\
14328 - $(filter-out hosts network key alias,\
14329 -@@ -102,7 +106,7 @@ $(libnss_db-dbs:%=$(objpfx)%.c): $(objpf
14330 -
14331 - $(objpfx)makedb: $(makedb-modules:%=$(objpfx)%.o)
14332 -
14333 --$(inst_vardbdir)/Makefile: db-Makefile $(+force)
14334 -+$(inst_vardbdir)/Makefile: $(objpfx)db-Makefile $(+force)
14335 - $(do-install)
14336 -
14337 - CFLAGS-nss_test1.c = -DNOT_IN_libc=1
14338 -Index: glibc-2.20/nss/bug-erange.c
14339 -===================================================================
14340 ---- glibc-2.20.orig/nss/bug-erange.c
14341 -+++ glibc-2.20/nss/bug-erange.c
14342 -@@ -37,7 +37,7 @@ main (void)
14343 - {
14344 - printf ("gethostbyname_r failed: %s (errno: %m)\n", strerror (res));
14345 -
14346 -- if (access ("/etc/resolv.conf", R_OK))
14347 -+ if (access (SYSCONFDIR "/resolv.conf", R_OK))
14348 - {
14349 - puts ("DNS probably not set up");
14350 - return 0;
14351 -Index: glibc-2.20/nss/nss_files/files-init.c
14352 -===================================================================
14353 ---- glibc-2.20.orig/nss/nss_files/files-init.c
14354 -+++ glibc-2.20/nss/nss_files/files-init.c
14355 -@@ -35,33 +35,33 @@ static union \
14356 - } \
14357 - }
14358 -
14359 --TF (pwd, "/etc/passwd");
14360 --TF (grp, "/etc/group");
14361 --TF (hst, "/etc/hosts");
14362 --TF (resolv, "/etc/resolv.conf", .call_res_init = 1);
14363 --TF (serv, "/etc/services");
14364 --TF (netgr, "/etc/netgroup");
14365 -+TF (pwd, SYSCONFDIR "/passwd");
14366 -+TF (grp, SYSCONFDIR "/group");
14367 -+TF (hst, SYSCONFDIR "/hosts");
14368 -+TF (resolv, SYSCONFDIR "/resolv.conf", .call_res_init = 1);
14369 -+TF (serv, SYSCONFDIR "/services");
14370 -+TF (netgr, SYSCONFDIR "/netgroup");
14371 -
14372 -
14373 - void
14374 - _nss_files_init (void (*cb) (size_t, struct traced_file *))
14375 - {
14376 -- strcpy (pwd_traced_file.file.fname, "/etc/passwd");
14377 -+ strcpy (pwd_traced_file.file.fname, SYSCONFDIR "/passwd");
14378 - cb (pwddb, &pwd_traced_file.file);
14379 -
14380 -- strcpy (grp_traced_file.file.fname, "/etc/group");
14381 -+ strcpy (grp_traced_file.file.fname, SYSCONFDIR "/group");
14382 - cb (grpdb, &grp_traced_file.file);
14383 -
14384 -- strcpy (hst_traced_file.file.fname, "/etc/hosts");
14385 -+ strcpy (hst_traced_file.file.fname, SYSCONFDIR "/hosts");
14386 - cb (hstdb, &hst_traced_file.file);
14387 -
14388 -- strcpy (resolv_traced_file.file.fname, "/etc/resolv.conf");
14389 -+ strcpy (resolv_traced_file.file.fname, SYSCONFDIR "/resolv.conf");
14390 - cb (hstdb, &resolv_traced_file.file);
14391 -
14392 -- strcpy (serv_traced_file.file.fname, "/etc/services");
14393 -+ strcpy (serv_traced_file.file.fname, SYSCONFDIR "/services");
14394 - cb (servdb, &serv_traced_file.file);
14395 -
14396 -- strcpy (netgr_traced_file.file.fname, "/etc/netgroup");
14397 -+ strcpy (netgr_traced_file.file.fname, SYSCONFDIR "/netgroup");
14398 - cb (netgrdb, &netgr_traced_file.file);
14399 - }
14400 -
14401 -Index: glibc-2.20/nss/nss_files/files-initgroups.c
14402 -===================================================================
14403 ---- glibc-2.20.orig/nss/nss_files/files-initgroups.c
14404 -+++ glibc-2.20/nss/nss_files/files-initgroups.c
14405 -@@ -31,7 +31,7 @@ _nss_files_initgroups_dyn (const char *u
14406 - long int *size, gid_t **groupsp, long int limit,
14407 - int *errnop)
14408 - {
14409 -- FILE *stream = fopen ("/etc/group", "rce");
14410 -+ FILE *stream = fopen (SYSCONFDIR "/group", "rce");
14411 - if (stream == NULL)
14412 - {
14413 - *errnop = errno;
14414 -Index: glibc-2.20/nss/db-Makefile
14415 -===================================================================
14416 ---- glibc-2.20.orig/nss/db-Makefile
14417 -+++ /dev/null
14418 -@@ -1,166 +0,0 @@
14419 --# Makefile to (re-)generate db versions of system database files.
14420 --# Copyright (C) 1996-2014 Free Software Foundation, Inc.
14421 --# This file is part of the GNU C Library.
14422 --# Contributed by Ulrich Drepper <drepper@××××××.com>, 1996.
14423 --#
14424 --
14425 --# The GNU C Library is free software; you can redistribute it and/or
14426 --# modify it under the terms of the GNU Lesser General Public
14427 --# License as published by the Free Software Foundation; either
14428 --# version 2.1 of the License, or (at your option) any later version.
14429 --
14430 --# The GNU C Library is distributed in the hope that it will be useful,
14431 --# but WITHOUT ANY WARRANTY; without even the implied warranty of
14432 --# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14433 --# Lesser General Public License for more details.
14434 --
14435 --# You should have received a copy of the GNU Lesser General Public
14436 --# License along with the GNU C Library; if not, see
14437 --# <http://www.gnu.org/licenses/>.
14438 --
14439 --DATABASES = $(wildcard /etc/passwd /etc/group /etc/ethers /etc/protocols \
14440 -- /etc/rpc /etc/services /etc/shadow /etc/gshadow \
14441 -- /etc/netgroup)
14442 --
14443 --VAR_DB = /var/db
14444 --
14445 --AWK = awk
14446 --MAKEDB = makedb --quiet
14447 --
14448 --all: $(patsubst %,$(VAR_DB)/%.db,$(notdir $(DATABASES)))
14449 --
14450 --
14451 --$(VAR_DB)/passwd.db: /etc/passwd
14452 -- @echo -n "$(patsubst %.db,%,$(@F))... "
14453 -- @$(AWK) 'BEGIN { FS=":"; OFS=":" } \
14454 -- /^[ \t]*$$/ { next } \
14455 -- /^[ \t]*#/ { next } \
14456 -- /^[^#]/ { printf ".%s ", $$1; print; \
14457 -- printf "=%s ", $$3; print }' $^ | \
14458 -- $(MAKEDB) -o $@ -
14459 -- @echo "done."
14460 --
14461 --$(VAR_DB)/group.db: /etc/group
14462 -- @echo -n "$(patsubst %.db,%,$(@F))... "
14463 -- @$(AWK) 'BEGIN { FS=":"; OFS=":" } \
14464 -- /^[ \t]*$$/ { next } \
14465 -- /^[ \t]*#/ { next } \
14466 -- /^[^#]/ { printf ".%s ", $$1; print; \
14467 -- printf "=%s ", $$3; print; \
14468 -- if ($$4 != "") { \
14469 -- split($$4, grmems, ","); \
14470 -- for (memidx in grmems) { \
14471 -- mem=grmems[memidx]; \
14472 -- if (members[mem] == "") \
14473 -- members[mem]=$$3; \
14474 -- else \
14475 -- members[mem]=members[mem] "," $$3; \
14476 -- } \
14477 -- delete grmems; } } \
14478 -- END { for (mem in members) \
14479 -- printf ":%s %s %s\n", mem, mem, members[mem]; }' $^ | \
14480 -- $(MAKEDB) -o $@ -
14481 -- @echo "done."
14482 --
14483 --$(VAR_DB)/ethers.db: /etc/ethers
14484 -- @echo -n "$(patsubst %.db,%,$(@F))... "
14485 -- @$(AWK) '/^[ \t]*$$/ { next } \
14486 -- /^[ \t]*#/ { next } \
14487 -- /^[^#]/ { printf ".%s ", $$1; print; \
14488 -- printf "=%s ", $$2; print }' $^ | \
14489 -- $(MAKEDB) -o $@ -
14490 -- @echo "done."
14491 --
14492 --$(VAR_DB)/protocols.db: /etc/protocols
14493 -- @echo -n "$(patsubst %.db,%,$(@F))... "
14494 -- @$(AWK) '/^[ \t]*$$/ { next } \
14495 -- /^[ \t]*#/ { next } \
14496 -- /^[^#]/ { printf ".%s ", $$1; print; \
14497 -- printf "=%s ", $$2; print; \
14498 -- for (i = 3; i <= NF && !($$i ~ /^#/); ++i) \
14499 -- { printf ".%s ", $$i; print } }' $^ | \
14500 -- $(MAKEDB) -o $@ -
14501 -- @echo "done."
14502 --
14503 --$(VAR_DB)/rpc.db: /etc/rpc
14504 -- @echo -n "$(patsubst %.db,%,$(@F))... "
14505 -- @$(AWK) '/^[ \t]*$$/ { next } \
14506 -- /^[ \t]*#/ { next } \
14507 -- /^[^#]/ { printf ".%s ", $$1; print; \
14508 -- printf "=%s ", $$2; print; \
14509 -- for (i = 3; i <= NF && !($$i ~ /^#/); ++i) \
14510 -- { printf ".%s ", $$i; print } }' $^ | \
14511 -- $(MAKEDB) -o $@ -
14512 -- @echo "done."
14513 --
14514 --$(VAR_DB)/services.db: /etc/services
14515 -- @echo -n "$(patsubst %.db,%,$(@F))... "
14516 -- @$(AWK) 'BEGIN { FS="[ \t/]+" } \
14517 -- /^[ \t]*$$/ { next } \
14518 -- /^[ \t]*#/ { next } \
14519 -- /^[^#]/ { sub(/[ \t]*#.*$$/, "");\
14520 -- printf ":%s/%s ", $$1, $$3; print; \
14521 -- printf ":%s/ ", $$1; print; \
14522 -- printf "=%s/%s ", $$2, $$3; print; \
14523 -- printf "=%s/ ", $$2; print; \
14524 -- for (i = 4; i <= NF && !($$i ~ /^#/); ++i) \
14525 -- { printf ":%s/%s ", $$i, $$3; print; \
14526 -- printf ":%s/ ", $$i; print } }' $^ | \
14527 -- $(MAKEDB) -o $@ -
14528 -- @echo "done."
14529 --
14530 --$(VAR_DB)/shadow.db: /etc/shadow
14531 -- @echo -n "$(patsubst %.db,%,$(@F))... "
14532 -- @$(AWK) 'BEGIN { FS=":"; OFS=":" } \
14533 -- /^[ \t]*$$/ { next } \
14534 -- /^[ \t]*#/ { next } \
14535 -- /^[^#]/ { printf ".%s ", $$1; print }' $^ | \
14536 -- (umask 077 && $(MAKEDB) -o $@ -)
14537 -- @echo "done."
14538 -- @if chgrp shadow $@ 2>/dev/null; then \
14539 -- chmod g+r $@; \
14540 -- else \
14541 -- chown 0 $@; chgrp 0 $@; chmod 600 $@; \
14542 -- echo; \
14543 -- echo "Warning: The shadow password database $@"; \
14544 -- echo "has been set to be readable only by root. You may want"; \
14545 -- echo "to make it readable by the \`shadow' group depending"; \
14546 -- echo "on your configuration."; \
14547 -- echo; \
14548 -- fi
14549 --
14550 --$(VAR_DB)/gshadow.db: /etc/gshadow
14551 -- @echo -n "$(patsubst %.db,%,$(@F))... "
14552 -- @$(AWK) 'BEGIN { FS=":"; OFS=":" } \
14553 -- /^[ \t]*$$/ { next } \
14554 -- /^[ \t]*#/ { next } \
14555 -- /^[^#]/ { printf ".%s ", $$1; print }' $^ | \
14556 -- (umask 077 && $(MAKEDB) -o $@ -)
14557 -- @echo "done."
14558 -- @if chgrp shadow $@ 2>/dev/null; then \
14559 -- chmod g+r $@; \
14560 -- else \
14561 -- chown 0 $@; chgrp 0 $@; chmod 600 $@; \
14562 -- echo; \
14563 -- echo "Warning: The shadow group database $@"; \
14564 -- echo "has been set to be readable only by root. You may want"; \
14565 -- echo "to make it readable by the \`shadow' group depending"; \
14566 -- echo "on your configuration."; \
14567 -- echo; \
14568 -- fi
14569 --
14570 --$(VAR_DB)/netgroup.db: /etc/netgroup
14571 -- @echo -n "$(patsubst %.db,%,$(@F))... "
14572 -- @$(AWK) 'BEGIN { ini=1 } \
14573 -- /^[ \t]*$$/ { next } \
14574 -- /^[ \t]*#/ { next } \
14575 -- /^[^#]/ { if (sub(/[ \t]*\\$$/, " ") == 0) end="\n"; \
14576 -- else end=""; \
14577 -- gsub(/[ \t]+/, " "); \
14578 -- sub(/^[ \t]*/, ""); \
14579 -- if (ini == 0) printf "%s%s", $$0, end; \
14580 -- else printf ".%s %s%s", $$1, $$0, end; \
14581 -- ini=end == "" ? 0 : 1; } \
14582 -- END { if (ini==0) printf "\n" }' $^ | \
14583 -- $(MAKEDB) -o $@ -
14584 -- @echo "done."
14585 -Index: glibc-2.20/nss/db-Makefile.in
14586 -===================================================================
14587 ---- /dev/null
14588 -+++ glibc-2.20/nss/db-Makefile.in
14589 -@@ -0,0 +1,173 @@
14590 -+
14591 -+# Makefile to (re-)generate db versions of system database files.
14592 -+# Copyright (C) 1996-2014 Free Software Foundation, Inc.
14593 -+# This file is part of the GNU C Library.
14594 -+# Contributed by Ulrich Drepper <drepper@××××××.com>, 1996.
14595 -+#
14596 -+
14597 -+# The GNU C Library is free software; you can redistribute it and/or
14598 -+# modify it under the terms of the GNU Lesser General Public
14599 -+# License as published by the Free Software Foundation; either
14600 -+# version 2.1 of the License, or (at your option) any later version.
14601 -+
14602 -+# The GNU C Library is distributed in the hope that it will be useful,
14603 -+# but WITHOUT ANY WARRANTY; without even the implied warranty of
14604 -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14605 -+# Lesser General Public License for more details.
14606 -+
14607 -+# You should have received a copy of the GNU Lesser General Public
14608 -+# License along with the GNU C Library; if not, see
14609 -+# <http://www.gnu.org/licenses/>.
14610 -+
14611 -+DATABASES = $(wildcard @libc_cv_sysconfdir@/passwd \
14612 -+ @libc_cv_sysconfdir@/group \
14613 -+ @libc_cv_sysconfdir@/ethers \
14614 -+ @libc_cv_sysconfdir@/protocols \
14615 -+ @libc_cv_sysconfdir@/rpc \
14616 -+ @libc_cv_sysconfdir@/services \
14617 -+ @libc_cv_sysconfdir@/shadow \
14618 -+ @libc_cv_sysconfdir@/gshadow \
14619 -+ @libc_cv_sysconfdir@/netgroup)
14620 -+
14621 -+VAR_DB = /var/db
14622 -+
14623 -+AWK = awk
14624 -+MAKEDB = makedb --quiet
14625 -+
14626 -+all: $(patsubst %,$(VAR_DB)/%.db,$(notdir $(DATABASES)))
14627 -+
14628 -+
14629 -+$(VAR_DB)/passwd.db: @libc_cv_sysconfdir@/passwd
14630 -+ @echo -n "$(patsubst %.db,%,$(@F))... "
14631 -+ @$(AWK) 'BEGIN { FS=":"; OFS=":" } \
14632 -+ /^[ \t]*$$/ { next } \
14633 -+ /^[ \t]*#/ { next } \
14634 -+ /^[^#]/ { printf ".%s ", $$1; print; \
14635 -+ printf "=%s ", $$3; print }' $^ | \
14636 -+ $(MAKEDB) -o $@ -
14637 -+ @echo "done."
14638 -+
14639 -+$(VAR_DB)/group.db: @libc_cv_sysconfdir@/group
14640 -+ @echo -n "$(patsubst %.db,%,$(@F))... "
14641 -+ @$(AWK) 'BEGIN { FS=":"; OFS=":" } \
14642 -+ /^[ \t]*$$/ { next } \
14643 -+ /^[ \t]*#/ { next } \
14644 -+ /^[^#]/ { printf ".%s ", $$1; print; \
14645 -+ printf "=%s ", $$3; print; \
14646 -+ if ($$4 != "") { \
14647 -+ split($$4, grmems, ","); \
14648 -+ for (memidx in grmems) { \
14649 -+ mem=grmems[memidx]; \
14650 -+ if (members[mem] == "") \
14651 -+ members[mem]=$$3; \
14652 -+ else \
14653 -+ members[mem]=members[mem] "," $$3; \
14654 -+ } \
14655 -+ delete grmems; } } \
14656 -+ END { for (mem in members) \
14657 -+ printf ":%s %s %s\n", mem, mem, members[mem]; }' $^ | \
14658 -+ $(MAKEDB) -o $@ -
14659 -+ @echo "done."
14660 -+
14661 -+$(VAR_DB)/ethers.db: @libc_cv_sysconfdir@/ethers
14662 -+ @echo -n "$(patsubst %.db,%,$(@F))... "
14663 -+ @$(AWK) '/^[ \t]*$$/ { next } \
14664 -+ /^[ \t]*#/ { next } \
14665 -+ /^[^#]/ { printf ".%s ", $$1; print; \
14666 -+ printf "=%s ", $$2; print }' $^ | \
14667 -+ $(MAKEDB) -o $@ -
14668 -+ @echo "done."
14669 -+
14670 -+$(VAR_DB)/protocols.db: @libc_cv_sysconfdir@/protocols
14671 -+ @echo -n "$(patsubst %.db,%,$(@F))... "
14672 -+ @$(AWK) '/^[ \t]*$$/ { next } \
14673 -+ /^[ \t]*#/ { next } \
14674 -+ /^[^#]/ { printf ".%s ", $$1; print; \
14675 -+ printf "=%s ", $$2; print; \
14676 -+ for (i = 3; i <= NF && !($$i ~ /^#/); ++i) \
14677 -+ { printf ".%s ", $$i; print } }' $^ | \
14678 -+ $(MAKEDB) -o $@ -
14679 -+ @echo "done."
14680 -+
14681 -+$(VAR_DB)/rpc.db: @libc_cv_sysconfdir@/rpc
14682 -+ @echo -n "$(patsubst %.db,%,$(@F))... "
14683 -+ @$(AWK) '/^[ \t]*$$/ { next } \
14684 -+ /^[ \t]*#/ { next } \
14685 -+ /^[^#]/ { printf ".%s ", $$1; print; \
14686 -+ printf "=%s ", $$2; print; \
14687 -+ for (i = 3; i <= NF && !($$i ~ /^#/); ++i) \
14688 -+ { printf ".%s ", $$i; print } }' $^ | \
14689 -+ $(MAKEDB) -o $@ -
14690 -+ @echo "done."
14691 -+
14692 -+$(VAR_DB)/services.db: @libc_cv_sysconfdir@/services
14693 -+ @echo -n "$(patsubst %.db,%,$(@F))... "
14694 -+ @$(AWK) 'BEGIN { FS="[ \t/]+" } \
14695 -+ /^[ \t]*$$/ { next } \
14696 -+ /^[ \t]*#/ { next } \
14697 -+ /^[^#]/ { sub(/[ \t]*#.*$$/, "");\
14698 -+ printf ":%s/%s ", $$1, $$3; print; \
14699 -+ printf ":%s/ ", $$1; print; \
14700 -+ printf "=%s/%s ", $$2, $$3; print; \
14701 -+ printf "=%s/ ", $$2; print; \
14702 -+ for (i = 4; i <= NF && !($$i ~ /^#/); ++i) \
14703 -+ { printf ":%s/%s ", $$i, $$3; print; \
14704 -+ printf ":%s/ ", $$i; print } }' $^ | \
14705 -+ $(MAKEDB) -o $@ -
14706 -+ @echo "done."
14707 -+
14708 -+$(VAR_DB)/shadow.db: @libc_cv_sysconfdir@/shadow
14709 -+ @echo -n "$(patsubst %.db,%,$(@F))... "
14710 -+ @$(AWK) 'BEGIN { FS=":"; OFS=":" } \
14711 -+ /^[ \t]*$$/ { next } \
14712 -+ /^[ \t]*#/ { next } \
14713 -+ /^[^#]/ { printf ".%s ", $$1; print }' $^ | \
14714 -+ (umask 077 && $(MAKEDB) -o $@ -)
14715 -+ @echo "done."
14716 -+ @if chgrp shadow $@ 2>/dev/null; then \
14717 -+ chmod g+r $@; \
14718 -+ else \
14719 -+ chown 0 $@; chgrp 0 $@; chmod 600 $@; \
14720 -+ echo; \
14721 -+ echo "Warning: The shadow password database $@"; \
14722 -+ echo "has been set to be readable only by root. You may want"; \
14723 -+ echo "to make it readable by the \`shadow' group depending"; \
14724 -+ echo "on your configuration."; \
14725 -+ echo; \
14726 -+ fi
14727 -+
14728 -+$(VAR_DB)/gshadow.db: @libc_cv_sysconfdir@/gshadow
14729 -+ @echo -n "$(patsubst %.db,%,$(@F))... "
14730 -+ @$(AWK) 'BEGIN { FS=":"; OFS=":" } \
14731 -+ /^[ \t]*$$/ { next } \
14732 -+ /^[ \t]*#/ { next } \
14733 -+ /^[^#]/ { printf ".%s ", $$1; print }' $^ | \
14734 -+ (umask 077 && $(MAKEDB) -o $@ -)
14735 -+ @echo "done."
14736 -+ @if chgrp shadow $@ 2>/dev/null; then \
14737 -+ chmod g+r $@; \
14738 -+ else \
14739 -+ chown 0 $@; chgrp 0 $@; chmod 600 $@; \
14740 -+ echo; \
14741 -+ echo "Warning: The shadow group database $@"; \
14742 -+ echo "has been set to be readable only by root. You may want"; \
14743 -+ echo "to make it readable by the \`shadow' group depending"; \
14744 -+ echo "on your configuration."; \
14745 -+ echo; \
14746 -+ fi
14747 -+
14748 -+$(VAR_DB)/netgroup.db: @libc_cv_sysconfdir@/netgroup
14749 -+ @echo -n "$(patsubst %.db,%,$(@F))... "
14750 -+ @$(AWK) 'BEGIN { ini=1 } \
14751 -+ /^[ \t]*$$/ { next } \
14752 -+ /^[ \t]*#/ { next } \
14753 -+ /^[^#]/ { if (sub(/[ \t]*\\$$/, " ") == 0) end="\n"; \
14754 -+ else end=""; \
14755 -+ gsub(/[ \t]+/, " "); \
14756 -+ sub(/^[ \t]*/, ""); \
14757 -+ if (ini == 0) printf "%s%s", $$0, end; \
14758 -+ else printf ".%s %s%s", $$1, $$0, end; \
14759 -+ ini=end == "" ? 0 : 1; } \
14760 -+ END { if (ini==0) printf "\n" }' $^ | \
14761 -+ $(MAKEDB) -o $@ -
14762 -+ @echo "done."
14763 -Index: glibc-2.20/resolv/netdb.h
14764 -===================================================================
14765 ---- glibc-2.20.orig/resolv/netdb.h
14766 -+++ /dev/null
14767 -@@ -1,715 +0,0 @@
14768 -- /* Copyright (C) 1996-2014 Free Software Foundation, Inc.
14769 -- This file is part of the GNU C Library.
14770 --
14771 -- The GNU C Library is free software; you can redistribute it and/or
14772 -- modify it under the terms of the GNU Lesser General Public
14773 -- License as published by the Free Software Foundation; either
14774 -- version 2.1 of the License, or (at your option) any later version.
14775 --
14776 -- The GNU C Library is distributed in the hope that it will be useful,
14777 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
14778 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14779 -- Lesser General Public License for more details.
14780 --
14781 -- You should have received a copy of the GNU Lesser General Public
14782 -- License along with the GNU C Library; if not, see
14783 -- <http://www.gnu.org/licenses/>. */
14784 --
14785 --/* All data returned by the network data base library are supplied in
14786 -- host order and returned in network order (suitable for use in
14787 -- system calls). */
14788 --
14789 --#ifndef _NETDB_H
14790 --#define _NETDB_H 1
14791 --
14792 --#include <features.h>
14793 --
14794 --#include <netinet/in.h>
14795 --#include <stdint.h>
14796 --#ifdef __USE_MISC
14797 --/* This is necessary to make this include file properly replace the
14798 -- Sun version. */
14799 --# include <rpc/netdb.h>
14800 --#endif
14801 --
14802 --#ifdef __USE_GNU
14803 --# define __need_sigevent_t
14804 --# include <bits/siginfo.h>
14805 --# define __need_timespec
14806 --# include <time.h>
14807 --#endif
14808 --
14809 --#include <bits/netdb.h>
14810 --
14811 --/* Absolute file name for network data base files. */
14812 --#define _PATH_HEQUIV "/etc/hosts.equiv"
14813 --#define _PATH_HOSTS "/etc/hosts"
14814 --#define _PATH_NETWORKS "/etc/networks"
14815 --#define _PATH_NSSWITCH_CONF "/etc/nsswitch.conf"
14816 --#define _PATH_PROTOCOLS "/etc/protocols"
14817 --#define _PATH_SERVICES "/etc/services"
14818 --
14819 --
14820 --__BEGIN_DECLS
14821 --
14822 --#if defined __USE_MISC || !defined __USE_XOPEN2K8
14823 --/* Error status for non-reentrant lookup functions.
14824 -- We use a macro to access always the thread-specific `h_errno' variable. */
14825 --# define h_errno (*__h_errno_location ())
14826 --
14827 --/* Function to get address of global `h_errno' variable. */
14828 --extern int *__h_errno_location (void) __THROW __attribute__ ((__const__));
14829 --
14830 --
14831 --/* Possible values left in `h_errno'. */
14832 --# define HOST_NOT_FOUND 1 /* Authoritative Answer Host not found. */
14833 --# define TRY_AGAIN 2 /* Non-Authoritative Host not found,
14834 -- or SERVERFAIL. */
14835 --# define NO_RECOVERY 3 /* Non recoverable errors, FORMERR, REFUSED,
14836 -- NOTIMP. */
14837 --# define NO_DATA 4 /* Valid name, no data record of requested
14838 -- type. */
14839 --#endif
14840 --#ifdef __USE_MISC
14841 --# define NETDB_INTERNAL -1 /* See errno. */
14842 --# define NETDB_SUCCESS 0 /* No problem. */
14843 --# define NO_ADDRESS NO_DATA /* No address, look for MX record. */
14844 --#endif
14845 --
14846 --#if defined __USE_XOPEN2K || defined __USE_XOPEN_EXTENDED
14847 --/* Highest reserved Internet port number. */
14848 --# define IPPORT_RESERVED 1024
14849 --#endif
14850 --
14851 --#ifdef __USE_GNU
14852 --/* Scope delimiter for getaddrinfo(), getnameinfo(). */
14853 --# define SCOPE_DELIMITER '%'
14854 --#endif
14855 --
14856 --#ifdef __USE_MISC
14857 --/* Print error indicated by `h_errno' variable on standard error. STR
14858 -- if non-null is printed before the error string. */
14859 --extern void herror (const char *__str) __THROW;
14860 --
14861 --/* Return string associated with error ERR_NUM. */
14862 --extern const char *hstrerror (int __err_num) __THROW;
14863 --#endif
14864 --
14865 --
14866 --/* Description of data base entry for a single host. */
14867 --struct hostent
14868 --{
14869 -- char *h_name; /* Official name of host. */
14870 -- char **h_aliases; /* Alias list. */
14871 -- int h_addrtype; /* Host address type. */
14872 -- int h_length; /* Length of address. */
14873 -- char **h_addr_list; /* List of addresses from name server. */
14874 --#ifdef __USE_MISC
14875 --# define h_addr h_addr_list[0] /* Address, for backward compatibility.*/
14876 --#endif
14877 --};
14878 --
14879 --/* Open host data base files and mark them as staying open even after
14880 -- a later search if STAY_OPEN is non-zero.
14881 --
14882 -- This function is a possible cancellation point and therefore not
14883 -- marked with __THROW. */
14884 --extern void sethostent (int __stay_open);
14885 --
14886 --/* Close host data base files and clear `stay open' flag.
14887 --
14888 -- This function is a possible cancellation point and therefore not
14889 -- marked with __THROW. */
14890 --extern void endhostent (void);
14891 --
14892 --/* Get next entry from host data base file. Open data base if
14893 -- necessary.
14894 --
14895 -- This function is a possible cancellation point and therefore not
14896 -- marked with __THROW. */
14897 --extern struct hostent *gethostent (void);
14898 --
14899 --/* Return entry from host data base which address match ADDR with
14900 -- length LEN and type TYPE.
14901 --
14902 -- This function is a possible cancellation point and therefore not
14903 -- marked with __THROW. */
14904 --extern struct hostent *gethostbyaddr (const void *__addr, __socklen_t __len,
14905 -- int __type);
14906 --
14907 --/* Return entry from host data base for host with NAME.
14908 --
14909 -- This function is a possible cancellation point and therefore not
14910 -- marked with __THROW. */
14911 --extern struct hostent *gethostbyname (const char *__name);
14912 --
14913 --#ifdef __USE_MISC
14914 --/* Return entry from host data base for host with NAME. AF must be
14915 -- set to the address type which is `AF_INET' for IPv4 or `AF_INET6'
14916 -- for IPv6.
14917 --
14918 -- This function is not part of POSIX and therefore no official
14919 -- cancellation point. But due to similarity with an POSIX interface
14920 -- or due to the implementation it is a cancellation point and
14921 -- therefore not marked with __THROW. */
14922 --extern struct hostent *gethostbyname2 (const char *__name, int __af);
14923 --
14924 --/* Reentrant versions of the functions above. The additional
14925 -- arguments specify a buffer of BUFLEN starting at BUF. The last
14926 -- argument is a pointer to a variable which gets the value which
14927 -- would be stored in the global variable `herrno' by the
14928 -- non-reentrant functions.
14929 --
14930 -- These functions are not part of POSIX and therefore no official
14931 -- cancellation point. But due to similarity with an POSIX interface
14932 -- or due to the implementation they are cancellation points and
14933 -- therefore not marked with __THROW. */
14934 --extern int gethostent_r (struct hostent *__restrict __result_buf,
14935 -- char *__restrict __buf, size_t __buflen,
14936 -- struct hostent **__restrict __result,
14937 -- int *__restrict __h_errnop);
14938 --
14939 --extern int gethostbyaddr_r (const void *__restrict __addr, __socklen_t __len,
14940 -- int __type,
14941 -- struct hostent *__restrict __result_buf,
14942 -- char *__restrict __buf, size_t __buflen,
14943 -- struct hostent **__restrict __result,
14944 -- int *__restrict __h_errnop);
14945 --
14946 --extern int gethostbyname_r (const char *__restrict __name,
14947 -- struct hostent *__restrict __result_buf,
14948 -- char *__restrict __buf, size_t __buflen,
14949 -- struct hostent **__restrict __result,
14950 -- int *__restrict __h_errnop);
14951 --
14952 --extern int gethostbyname2_r (const char *__restrict __name, int __af,
14953 -- struct hostent *__restrict __result_buf,
14954 -- char *__restrict __buf, size_t __buflen,
14955 -- struct hostent **__restrict __result,
14956 -- int *__restrict __h_errnop);
14957 --#endif /* misc */
14958 --
14959 --
14960 --/* Open network data base files and mark them as staying open even
14961 -- after a later search if STAY_OPEN is non-zero.
14962 --
14963 -- This function is a possible cancellation point and therefore not
14964 -- marked with __THROW. */
14965 --extern void setnetent (int __stay_open);
14966 --
14967 --/* Close network data base files and clear `stay open' flag.
14968 --
14969 -- This function is a possible cancellation point and therefore not
14970 -- marked with __THROW. */
14971 --extern void endnetent (void);
14972 --
14973 --/* Get next entry from network data base file. Open data base if
14974 -- necessary.
14975 --
14976 -- This function is a possible cancellation point and therefore not
14977 -- marked with __THROW. */
14978 --extern struct netent *getnetent (void);
14979 --
14980 --/* Return entry from network data base which address match NET and
14981 -- type TYPE.
14982 --
14983 -- This function is a possible cancellation point and therefore not
14984 -- marked with __THROW. */
14985 --extern struct netent *getnetbyaddr (uint32_t __net, int __type);
14986 --
14987 --/* Return entry from network data base for network with NAME.
14988 --
14989 -- This function is a possible cancellation point and therefore not
14990 -- marked with __THROW. */
14991 --extern struct netent *getnetbyname (const char *__name);
14992 --
14993 --#ifdef __USE_MISC
14994 --/* Reentrant versions of the functions above. The additional
14995 -- arguments specify a buffer of BUFLEN starting at BUF. The last
14996 -- argument is a pointer to a variable which gets the value which
14997 -- would be stored in the global variable `herrno' by the
14998 -- non-reentrant functions.
14999 --
15000 -- These functions are not part of POSIX and therefore no official
15001 -- cancellation point. But due to similarity with an POSIX interface
15002 -- or due to the implementation they are cancellation points and
15003 -- therefore not marked with __THROW. */
15004 --extern int getnetent_r (struct netent *__restrict __result_buf,
15005 -- char *__restrict __buf, size_t __buflen,
15006 -- struct netent **__restrict __result,
15007 -- int *__restrict __h_errnop);
15008 --
15009 --extern int getnetbyaddr_r (uint32_t __net, int __type,
15010 -- struct netent *__restrict __result_buf,
15011 -- char *__restrict __buf, size_t __buflen,
15012 -- struct netent **__restrict __result,
15013 -- int *__restrict __h_errnop);
15014 --
15015 --extern int getnetbyname_r (const char *__restrict __name,
15016 -- struct netent *__restrict __result_buf,
15017 -- char *__restrict __buf, size_t __buflen,
15018 -- struct netent **__restrict __result,
15019 -- int *__restrict __h_errnop);
15020 --#endif /* misc */
15021 --
15022 --
15023 --/* Description of data base entry for a single service. */
15024 --struct servent
15025 --{
15026 -- char *s_name; /* Official service name. */
15027 -- char **s_aliases; /* Alias list. */
15028 -- int s_port; /* Port number. */
15029 -- char *s_proto; /* Protocol to use. */
15030 --};
15031 --
15032 --/* Open service data base files and mark them as staying open even
15033 -- after a later search if STAY_OPEN is non-zero.
15034 --
15035 -- This function is a possible cancellation point and therefore not
15036 -- marked with __THROW. */
15037 --extern void setservent (int __stay_open);
15038 --
15039 --/* Close service data base files and clear `stay open' flag.
15040 --
15041 -- This function is a possible cancellation point and therefore not
15042 -- marked with __THROW. */
15043 --extern void endservent (void);
15044 --
15045 --/* Get next entry from service data base file. Open data base if
15046 -- necessary.
15047 --
15048 -- This function is a possible cancellation point and therefore not
15049 -- marked with __THROW. */
15050 --extern struct servent *getservent (void);
15051 --
15052 --/* Return entry from network data base for network with NAME and
15053 -- protocol PROTO.
15054 --
15055 -- This function is a possible cancellation point and therefore not
15056 -- marked with __THROW. */
15057 --extern struct servent *getservbyname (const char *__name, const char *__proto);
15058 --
15059 --/* Return entry from service data base which matches port PORT and
15060 -- protocol PROTO.
15061 --
15062 -- This function is a possible cancellation point and therefore not
15063 -- marked with __THROW. */
15064 --extern struct servent *getservbyport (int __port, const char *__proto);
15065 --
15066 --
15067 --#ifdef __USE_MISC
15068 --/* Reentrant versions of the functions above. The additional
15069 -- arguments specify a buffer of BUFLEN starting at BUF.
15070 --
15071 -- These functions are not part of POSIX and therefore no official
15072 -- cancellation point. But due to similarity with an POSIX interface
15073 -- or due to the implementation they are cancellation points and
15074 -- therefore not marked with __THROW. */
15075 --extern int getservent_r (struct servent *__restrict __result_buf,
15076 -- char *__restrict __buf, size_t __buflen,
15077 -- struct servent **__restrict __result);
15078 --
15079 --extern int getservbyname_r (const char *__restrict __name,
15080 -- const char *__restrict __proto,
15081 -- struct servent *__restrict __result_buf,
15082 -- char *__restrict __buf, size_t __buflen,
15083 -- struct servent **__restrict __result);
15084 --
15085 --extern int getservbyport_r (int __port, const char *__restrict __proto,
15086 -- struct servent *__restrict __result_buf,
15087 -- char *__restrict __buf, size_t __buflen,
15088 -- struct servent **__restrict __result);
15089 --#endif /* misc */
15090 --
15091 --
15092 --/* Description of data base entry for a single service. */
15093 --struct protoent
15094 --{
15095 -- char *p_name; /* Official protocol name. */
15096 -- char **p_aliases; /* Alias list. */
15097 -- int p_proto; /* Protocol number. */
15098 --};
15099 --
15100 --/* Open protocol data base files and mark them as staying open even
15101 -- after a later search if STAY_OPEN is non-zero.
15102 --
15103 -- This function is a possible cancellation point and therefore not
15104 -- marked with __THROW. */
15105 --extern void setprotoent (int __stay_open);
15106 --
15107 --/* Close protocol data base files and clear `stay open' flag.
15108 --
15109 -- This function is a possible cancellation point and therefore not
15110 -- marked with __THROW. */
15111 --extern void endprotoent (void);
15112 --
15113 --/* Get next entry from protocol data base file. Open data base if
15114 -- necessary.
15115 --
15116 -- This function is a possible cancellation point and therefore not
15117 -- marked with __THROW. */
15118 --extern struct protoent *getprotoent (void);
15119 --
15120 --/* Return entry from protocol data base for network with NAME.
15121 --
15122 -- This function is a possible cancellation point and therefore not
15123 -- marked with __THROW. */
15124 --extern struct protoent *getprotobyname (const char *__name);
15125 --
15126 --/* Return entry from protocol data base which number is PROTO.
15127 --
15128 -- This function is a possible cancellation point and therefore not
15129 -- marked with __THROW. */
15130 --extern struct protoent *getprotobynumber (int __proto);
15131 --
15132 --
15133 --#ifdef __USE_MISC
15134 --/* Reentrant versions of the functions above. The additional
15135 -- arguments specify a buffer of BUFLEN starting at BUF.
15136 --
15137 -- These functions are not part of POSIX and therefore no official
15138 -- cancellation point. But due to similarity with an POSIX interface
15139 -- or due to the implementation they are cancellation points and
15140 -- therefore not marked with __THROW. */
15141 --extern int getprotoent_r (struct protoent *__restrict __result_buf,
15142 -- char *__restrict __buf, size_t __buflen,
15143 -- struct protoent **__restrict __result);
15144 --
15145 --extern int getprotobyname_r (const char *__restrict __name,
15146 -- struct protoent *__restrict __result_buf,
15147 -- char *__restrict __buf, size_t __buflen,
15148 -- struct protoent **__restrict __result);
15149 --
15150 --extern int getprotobynumber_r (int __proto,
15151 -- struct protoent *__restrict __result_buf,
15152 -- char *__restrict __buf, size_t __buflen,
15153 -- struct protoent **__restrict __result);
15154 --
15155 --
15156 --/* Establish network group NETGROUP for enumeration.
15157 --
15158 -- This function is not part of POSIX and therefore no official
15159 -- cancellation point. But due to similarity with an POSIX interface
15160 -- or due to the implementation it is a cancellation point and
15161 -- therefore not marked with __THROW. */
15162 --extern int setnetgrent (const char *__netgroup);
15163 --
15164 --/* Free all space allocated by previous `setnetgrent' call.
15165 --
15166 -- This function is not part of POSIX and therefore no official
15167 -- cancellation point. But due to similarity with an POSIX interface
15168 -- or due to the implementation it is a cancellation point and
15169 -- therefore not marked with __THROW. */
15170 --extern void endnetgrent (void);
15171 --
15172 --/* Get next member of netgroup established by last `setnetgrent' call
15173 -- and return pointers to elements in HOSTP, USERP, and DOMAINP.
15174 --
15175 -- This function is not part of POSIX and therefore no official
15176 -- cancellation point. But due to similarity with an POSIX interface
15177 -- or due to the implementation it is a cancellation point and
15178 -- therefore not marked with __THROW. */
15179 --extern int getnetgrent (char **__restrict __hostp,
15180 -- char **__restrict __userp,
15181 -- char **__restrict __domainp);
15182 --
15183 --
15184 --/* Test whether NETGROUP contains the triple (HOST,USER,DOMAIN).
15185 --
15186 -- This function is not part of POSIX and therefore no official
15187 -- cancellation point. But due to similarity with an POSIX interface
15188 -- or due to the implementation it is a cancellation point and
15189 -- therefore not marked with __THROW. */
15190 --extern int innetgr (const char *__netgroup, const char *__host,
15191 -- const char *__user, const char *__domain);
15192 --
15193 --/* Reentrant version of `getnetgrent' where result is placed in BUFFER.
15194 --
15195 -- This function is not part of POSIX and therefore no official
15196 -- cancellation point. But due to similarity with an POSIX interface
15197 -- or due to the implementation it is a cancellation point and
15198 -- therefore not marked with __THROW. */
15199 --extern int getnetgrent_r (char **__restrict __hostp,
15200 -- char **__restrict __userp,
15201 -- char **__restrict __domainp,
15202 -- char *__restrict __buffer, size_t __buflen);
15203 --#endif /* misc */
15204 --
15205 --
15206 --#ifdef __USE_MISC
15207 --/* Call `rshd' at port RPORT on remote machine *AHOST to execute CMD.
15208 -- The local user is LOCUSER, on the remote machine the command is
15209 -- executed as REMUSER. In *FD2P the descriptor to the socket for the
15210 -- connection is returned. The caller must have the right to use a
15211 -- reserved port. When the function returns *AHOST contains the
15212 -- official host name.
15213 --
15214 -- This function is not part of POSIX and therefore no official
15215 -- cancellation point. But due to similarity with an POSIX interface
15216 -- or due to the implementation it is a cancellation point and
15217 -- therefore not marked with __THROW. */
15218 --extern int rcmd (char **__restrict __ahost, unsigned short int __rport,
15219 -- const char *__restrict __locuser,
15220 -- const char *__restrict __remuser,
15221 -- const char *__restrict __cmd, int *__restrict __fd2p);
15222 --
15223 --/* This is the equivalent function where the protocol can be selected
15224 -- and which therefore can be used for IPv6.
15225 --
15226 -- This function is not part of POSIX and therefore no official
15227 -- cancellation point. But due to similarity with an POSIX interface
15228 -- or due to the implementation it is a cancellation point and
15229 -- therefore not marked with __THROW. */
15230 --extern int rcmd_af (char **__restrict __ahost, unsigned short int __rport,
15231 -- const char *__restrict __locuser,
15232 -- const char *__restrict __remuser,
15233 -- const char *__restrict __cmd, int *__restrict __fd2p,
15234 -- sa_family_t __af);
15235 --
15236 --/* Call `rexecd' at port RPORT on remote machine *AHOST to execute
15237 -- CMD. The process runs at the remote machine using the ID of user
15238 -- NAME whose cleartext password is PASSWD. In *FD2P the descriptor
15239 -- to the socket for the connection is returned. When the function
15240 -- returns *AHOST contains the official host name.
15241 --
15242 -- This function is not part of POSIX and therefore no official
15243 -- cancellation point. But due to similarity with an POSIX interface
15244 -- or due to the implementation it is a cancellation point and
15245 -- therefore not marked with __THROW. */
15246 --extern int rexec (char **__restrict __ahost, int __rport,
15247 -- const char *__restrict __name,
15248 -- const char *__restrict __pass,
15249 -- const char *__restrict __cmd, int *__restrict __fd2p);
15250 --
15251 --/* This is the equivalent function where the protocol can be selected
15252 -- and which therefore can be used for IPv6.
15253 --
15254 -- This function is not part of POSIX and therefore no official
15255 -- cancellation point. But due to similarity with an POSIX interface
15256 -- or due to the implementation it is a cancellation point and
15257 -- therefore not marked with __THROW. */
15258 --extern int rexec_af (char **__restrict __ahost, int __rport,
15259 -- const char *__restrict __name,
15260 -- const char *__restrict __pass,
15261 -- const char *__restrict __cmd, int *__restrict __fd2p,
15262 -- sa_family_t __af);
15263 --
15264 --/* Check whether user REMUSER on system RHOST is allowed to login as LOCUSER.
15265 -- If SUSER is not zero the user tries to become superuser. Return 0 if
15266 -- it is possible.
15267 --
15268 -- This function is not part of POSIX and therefore no official
15269 -- cancellation point. But due to similarity with an POSIX interface
15270 -- or due to the implementation it is a cancellation point and
15271 -- therefore not marked with __THROW. */
15272 --extern int ruserok (const char *__rhost, int __suser,
15273 -- const char *__remuser, const char *__locuser);
15274 --
15275 --/* This is the equivalent function where the protocol can be selected
15276 -- and which therefore can be used for IPv6.
15277 --
15278 -- This function is not part of POSIX and therefore no official
15279 -- cancellation point. But due to similarity with an POSIX interface
15280 -- or due to the implementation it is a cancellation point and
15281 -- therefore not marked with __THROW. */
15282 --extern int ruserok_af (const char *__rhost, int __suser,
15283 -- const char *__remuser, const char *__locuser,
15284 -- sa_family_t __af);
15285 --
15286 --/* Check whether user REMUSER on system indicated by IPv4 address
15287 -- RADDR is allowed to login as LOCUSER. Non-IPv4 (e.g., IPv6) are
15288 -- not supported. If SUSER is not zero the user tries to become
15289 -- superuser. Return 0 if it is possible.
15290 --
15291 -- This function is not part of POSIX and therefore no official
15292 -- cancellation point. But due to similarity with an POSIX interface
15293 -- or due to the implementation it is a cancellation point and
15294 -- therefore not marked with __THROW. */
15295 --extern int iruserok (uint32_t __raddr, int __suser,
15296 -- const char *__remuser, const char *__locuser);
15297 --
15298 --/* This is the equivalent function where the pfamiliy if the address
15299 -- pointed to by RADDR is determined by the value of AF. It therefore
15300 -- can be used for IPv6
15301 --
15302 -- This function is not part of POSIX and therefore no official
15303 -- cancellation point. But due to similarity with an POSIX interface
15304 -- or due to the implementation it is a cancellation point and
15305 -- therefore not marked with __THROW. */
15306 --extern int iruserok_af (const void *__raddr, int __suser,
15307 -- const char *__remuser, const char *__locuser,
15308 -- sa_family_t __af);
15309 --
15310 --/* Try to allocate reserved port, returning a descriptor for a socket opened
15311 -- at this port or -1 if unsuccessful. The search for an available port
15312 -- will start at ALPORT and continues with lower numbers.
15313 --
15314 -- This function is not part of POSIX and therefore no official
15315 -- cancellation point. But due to similarity with an POSIX interface
15316 -- or due to the implementation it is a cancellation point and
15317 -- therefore not marked with __THROW. */
15318 --extern int rresvport (int *__alport);
15319 --
15320 --/* This is the equivalent function where the protocol can be selected
15321 -- and which therefore can be used for IPv6.
15322 --
15323 -- This function is not part of POSIX and therefore no official
15324 -- cancellation point. But due to similarity with an POSIX interface
15325 -- or due to the implementation it is a cancellation point and
15326 -- therefore not marked with __THROW. */
15327 --extern int rresvport_af (int *__alport, sa_family_t __af);
15328 --#endif
15329 --
15330 --
15331 --/* Extension from POSIX.1g. */
15332 --#ifdef __USE_POSIX
15333 --/* Structure to contain information about address of a service provider. */
15334 --struct addrinfo
15335 --{
15336 -- int ai_flags; /* Input flags. */
15337 -- int ai_family; /* Protocol family for socket. */
15338 -- int ai_socktype; /* Socket type. */
15339 -- int ai_protocol; /* Protocol for socket. */
15340 -- socklen_t ai_addrlen; /* Length of socket address. */
15341 -- struct sockaddr *ai_addr; /* Socket address for socket. */
15342 -- char *ai_canonname; /* Canonical name for service location. */
15343 -- struct addrinfo *ai_next; /* Pointer to next in list. */
15344 --};
15345 --
15346 --# ifdef __USE_GNU
15347 --/* Structure used as control block for asynchronous lookup. */
15348 --struct gaicb
15349 --{
15350 -- const char *ar_name; /* Name to look up. */
15351 -- const char *ar_service; /* Service name. */
15352 -- const struct addrinfo *ar_request; /* Additional request specification. */
15353 -- struct addrinfo *ar_result; /* Pointer to result. */
15354 -- /* The following are internal elements. */
15355 -- int __return;
15356 -- int __glibc_reserved[5];
15357 --};
15358 --
15359 --/* Lookup mode. */
15360 --# define GAI_WAIT 0
15361 --# define GAI_NOWAIT 1
15362 --# endif
15363 --
15364 --/* Possible values for `ai_flags' field in `addrinfo' structure. */
15365 --# define AI_PASSIVE 0x0001 /* Socket address is intended for `bind'. */
15366 --# define AI_CANONNAME 0x0002 /* Request for canonical name. */
15367 --# define AI_NUMERICHOST 0x0004 /* Don't use name resolution. */
15368 --# define AI_V4MAPPED 0x0008 /* IPv4 mapped addresses are acceptable. */
15369 --# define AI_ALL 0x0010 /* Return IPv4 mapped and IPv6 addresses. */
15370 --# define AI_ADDRCONFIG 0x0020 /* Use configuration of this host to choose
15371 -- returned address type.. */
15372 --# ifdef __USE_GNU
15373 --# define AI_IDN 0x0040 /* IDN encode input (assuming it is encoded
15374 -- in the current locale's character set)
15375 -- before looking it up. */
15376 --# define AI_CANONIDN 0x0080 /* Translate canonical name from IDN format. */
15377 --# define AI_IDN_ALLOW_UNASSIGNED 0x0100 /* Don't reject unassigned Unicode
15378 -- code points. */
15379 --# define AI_IDN_USE_STD3_ASCII_RULES 0x0200 /* Validate strings according to
15380 -- STD3 rules. */
15381 --# endif
15382 --# define AI_NUMERICSERV 0x0400 /* Don't use name resolution. */
15383 --
15384 --/* Error values for `getaddrinfo' function. */
15385 --# define EAI_BADFLAGS -1 /* Invalid value for `ai_flags' field. */
15386 --# define EAI_NONAME -2 /* NAME or SERVICE is unknown. */
15387 --# define EAI_AGAIN -3 /* Temporary failure in name resolution. */
15388 --# define EAI_FAIL -4 /* Non-recoverable failure in name res. */
15389 --# define EAI_FAMILY -6 /* `ai_family' not supported. */
15390 --# define EAI_SOCKTYPE -7 /* `ai_socktype' not supported. */
15391 --# define EAI_SERVICE -8 /* SERVICE not supported for `ai_socktype'. */
15392 --# define EAI_MEMORY -10 /* Memory allocation failure. */
15393 --# define EAI_SYSTEM -11 /* System error returned in `errno'. */
15394 --# define EAI_OVERFLOW -12 /* Argument buffer overflow. */
15395 --# ifdef __USE_GNU
15396 --# define EAI_NODATA -5 /* No address associated with NAME. */
15397 --# define EAI_ADDRFAMILY -9 /* Address family for NAME not supported. */
15398 --# define EAI_INPROGRESS -100 /* Processing request in progress. */
15399 --# define EAI_CANCELED -101 /* Request canceled. */
15400 --# define EAI_NOTCANCELED -102 /* Request not canceled. */
15401 --# define EAI_ALLDONE -103 /* All requests done. */
15402 --# define EAI_INTR -104 /* Interrupted by a signal. */
15403 --# define EAI_IDN_ENCODE -105 /* IDN encoding failed. */
15404 --# endif
15405 --
15406 --# ifdef __USE_MISC
15407 --# define NI_MAXHOST 1025
15408 --# define NI_MAXSERV 32
15409 --# endif
15410 --
15411 --# define NI_NUMERICHOST 1 /* Don't try to look up hostname. */
15412 --# define NI_NUMERICSERV 2 /* Don't convert port number to name. */
15413 --# define NI_NOFQDN 4 /* Only return nodename portion. */
15414 --# define NI_NAMEREQD 8 /* Don't return numeric addresses. */
15415 --# define NI_DGRAM 16 /* Look up UDP service rather than TCP. */
15416 --# ifdef __USE_GNU
15417 --# define NI_IDN 32 /* Convert name from IDN format. */
15418 --# define NI_IDN_ALLOW_UNASSIGNED 64 /* Don't reject unassigned Unicode
15419 -- code points. */
15420 --# define NI_IDN_USE_STD3_ASCII_RULES 128 /* Validate strings according to
15421 -- STD3 rules. */
15422 --# endif
15423 --
15424 --/* Translate name of a service location and/or a service name to set of
15425 -- socket addresses.
15426 --
15427 -- This function is a possible cancellation point and therefore not
15428 -- marked with __THROW. */
15429 --extern int getaddrinfo (const char *__restrict __name,
15430 -- const char *__restrict __service,
15431 -- const struct addrinfo *__restrict __req,
15432 -- struct addrinfo **__restrict __pai);
15433 --
15434 --/* Free `addrinfo' structure AI including associated storage. */
15435 --extern void freeaddrinfo (struct addrinfo *__ai) __THROW;
15436 --
15437 --/* Convert error return from getaddrinfo() to a string. */
15438 --extern const char *gai_strerror (int __ecode) __THROW;
15439 --
15440 --/* Translate a socket address to a location and service name.
15441 --
15442 -- This function is a possible cancellation point and therefore not
15443 -- marked with __THROW. */
15444 --extern int getnameinfo (const struct sockaddr *__restrict __sa,
15445 -- socklen_t __salen, char *__restrict __host,
15446 -- socklen_t __hostlen, char *__restrict __serv,
15447 -- socklen_t __servlen, int __flags);
15448 --#endif /* POSIX */
15449 --
15450 --#ifdef __USE_GNU
15451 --/* Enqueue ENT requests from the LIST. If MODE is GAI_WAIT wait until all
15452 -- requests are handled. If WAIT is GAI_NOWAIT return immediately after
15453 -- queueing the requests and signal completion according to SIG.
15454 --
15455 -- This function is not part of POSIX and therefore no official
15456 -- cancellation point. But due to similarity with an POSIX interface
15457 -- or due to the implementation it is a cancellation point and
15458 -- therefore not marked with __THROW. */
15459 --extern int getaddrinfo_a (int __mode, struct gaicb *__list[__restrict_arr],
15460 -- int __ent, struct sigevent *__restrict __sig);
15461 --
15462 --/* Suspend execution of the thread until at least one of the ENT requests
15463 -- in LIST is handled. If TIMEOUT is not a null pointer it specifies the
15464 -- longest time the function keeps waiting before returning with an error.
15465 --
15466 -- This function is not part of POSIX and therefore no official
15467 -- cancellation point. But due to similarity with an POSIX interface
15468 -- or due to the implementation it is a cancellation point and
15469 -- therefore not marked with __THROW. */
15470 --extern int gai_suspend (const struct gaicb *const __list[], int __ent,
15471 -- const struct timespec *__timeout);
15472 --
15473 --/* Get the error status of the request REQ. */
15474 --extern int gai_error (struct gaicb *__req) __THROW;
15475 --
15476 --/* Cancel the requests associated with GAICBP. */
15477 --extern int gai_cancel (struct gaicb *__gaicbp) __THROW;
15478 --#endif /* GNU */
15479 --
15480 --__END_DECLS
15481 --
15482 --#endif /* netdb.h */
15483 -Index: glibc-2.20/resolv/resolv.h
15484 -===================================================================
15485 ---- glibc-2.20.orig/resolv/resolv.h
15486 -+++ /dev/null
15487 -@@ -1,389 +0,0 @@
15488 --/*
15489 -- * Copyright (c) 1983, 1987, 1989
15490 -- * The Regents of the University of California. All rights reserved.
15491 -- *
15492 -- * Redistribution and use in source and binary forms, with or without
15493 -- * modification, are permitted provided that the following conditions
15494 -- * are met:
15495 -- * 1. Redistributions of source code must retain the above copyright
15496 -- * notice, this list of conditions and the following disclaimer.
15497 -- * 2. Redistributions in binary form must reproduce the above copyright
15498 -- * notice, this list of conditions and the following disclaimer in the
15499 -- * documentation and/or other materials provided with the distribution.
15500 -- * 4. Neither the name of the University nor the names of its contributors
15501 -- * may be used to endorse or promote products derived from this software
15502 -- * without specific prior written permission.
15503 -- *
15504 -- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
15505 -- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15506 -- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
15507 -- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
15508 -- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
15509 -- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
15510 -- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
15511 -- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
15512 -- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
15513 -- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
15514 -- * SUCH DAMAGE.
15515 -- */
15516 --
15517 --/*
15518 -- * Portions Copyright (c) 1996-1999 by Internet Software Consortium.
15519 -- *
15520 -- * Permission to use, copy, modify, and distribute this software for any
15521 -- * purpose with or without fee is hereby granted, provided that the above
15522 -- * copyright notice and this permission notice appear in all copies.
15523 -- *
15524 -- * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS
15525 -- * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
15526 -- * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE
15527 -- * CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
15528 -- * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
15529 -- * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
15530 -- * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
15531 -- * SOFTWARE.
15532 -- */
15533 --
15534 --/*
15535 -- * @(#)resolv.h 8.1 (Berkeley) 6/2/93
15536 -- * $BINDId: resolv.h,v 8.31 2000/03/30 20:16:50 vixie Exp $
15537 -- */
15538 --
15539 --#ifndef _RESOLV_H_
15540 --
15541 --/* These headers are needed for types used in the `struct res_state'
15542 -- declaration. */
15543 --#include <sys/types.h>
15544 --#include <netinet/in.h>
15545 --
15546 --#ifndef __need_res_state
15547 --# define _RESOLV_H_
15548 --
15549 --# include <sys/param.h>
15550 --# include <sys/cdefs.h>
15551 --# include <stdio.h>
15552 --# include <arpa/nameser.h>
15553 --#endif
15554 --
15555 --#ifndef __res_state_defined
15556 --# define __res_state_defined
15557 --
15558 --typedef enum { res_goahead, res_nextns, res_modified, res_done, res_error }
15559 -- res_sendhookact;
15560 --
15561 --typedef res_sendhookact (*res_send_qhook) (struct sockaddr_in * const *__ns,
15562 -- const u_char **__query,
15563 -- int *__querylen,
15564 -- u_char *__ans,
15565 -- int __anssiz,
15566 -- int *__resplen);
15567 --
15568 --typedef res_sendhookact (*res_send_rhook) (const struct sockaddr_in *__ns,
15569 -- const u_char *__query,
15570 -- int __querylen,
15571 -- u_char *__ans,
15572 -- int __anssiz,
15573 -- int *__resplen);
15574 --
15575 --/*
15576 -- * Global defines and variables for resolver stub.
15577 -- */
15578 --# define MAXNS 3 /* max # name servers we'll track */
15579 --# define MAXDFLSRCH 3 /* # default domain levels to try */
15580 --# define MAXDNSRCH 6 /* max # domains in search path */
15581 --# define LOCALDOMAINPARTS 2 /* min levels in name that is "local" */
15582 --
15583 --# define RES_TIMEOUT 5 /* min. seconds between retries */
15584 --# define MAXRESOLVSORT 10 /* number of net to sort on */
15585 --# define RES_MAXNDOTS 15 /* should reflect bit field size */
15586 --# define RES_MAXRETRANS 30 /* only for resolv.conf/RES_OPTIONS */
15587 --# define RES_MAXRETRY 5 /* only for resolv.conf/RES_OPTIONS */
15588 --# define RES_DFLRETRY 2 /* Default #/tries. */
15589 --# define RES_MAXTIME 65535 /* Infinity, in milliseconds. */
15590 --
15591 --struct __res_state {
15592 -- int retrans; /* retransmition time interval */
15593 -- int retry; /* number of times to retransmit */
15594 -- u_long options; /* option flags - see below. */
15595 -- int nscount; /* number of name servers */
15596 -- struct sockaddr_in
15597 -- nsaddr_list[MAXNS]; /* address of name server */
15598 --# define nsaddr nsaddr_list[0] /* for backward compatibility */
15599 -- u_short id; /* current message id */
15600 -- /* 2 byte hole here. */
15601 -- char *dnsrch[MAXDNSRCH+1]; /* components of domain to search */
15602 -- char defdname[256]; /* default domain (deprecated) */
15603 -- u_long pfcode; /* RES_PRF_ flags - see below. */
15604 -- unsigned ndots:4; /* threshold for initial abs. query */
15605 -- unsigned nsort:4; /* number of elements in sort_list[] */
15606 -- unsigned ipv6_unavail:1; /* connecting to IPv6 server failed */
15607 -- unsigned unused:23;
15608 -- struct {
15609 -- struct in_addr addr;
15610 -- u_int32_t mask;
15611 -- } sort_list[MAXRESOLVSORT];
15612 -- /* 4 byte hole here on 64-bit architectures. */
15613 -- res_send_qhook qhook; /* query hook */
15614 -- res_send_rhook rhook; /* response hook */
15615 -- int res_h_errno; /* last one set for this context */
15616 -- int _vcsock; /* PRIVATE: for res_send VC i/o */
15617 -- u_int _flags; /* PRIVATE: see below */
15618 -- /* 4 byte hole here on 64-bit architectures. */
15619 -- union {
15620 -- char pad[52]; /* On an i386 this means 512b total. */
15621 -- struct {
15622 -- u_int16_t nscount;
15623 -- u_int16_t nsmap[MAXNS];
15624 -- int nssocks[MAXNS];
15625 -- u_int16_t nscount6;
15626 -- u_int16_t nsinit;
15627 -- struct sockaddr_in6 *nsaddrs[MAXNS];
15628 --#ifdef _LIBC
15629 -- unsigned long long int initstamp
15630 -- __attribute__((packed));
15631 --#else
15632 -- unsigned int _initstamp[2];
15633 --#endif
15634 -- } _ext;
15635 -- } _u;
15636 --};
15637 --
15638 --typedef struct __res_state *res_state;
15639 --# undef __need_res_state
15640 --#endif
15641 --
15642 --#ifdef _RESOLV_H_
15643 --/*
15644 -- * Revision information. This is the release date in YYYYMMDD format.
15645 -- * It can change every day so the right thing to do with it is use it
15646 -- * in preprocessor commands such as "#if (__RES > 19931104)". Do not
15647 -- * compare for equality; rather, use it to determine whether your resolver
15648 -- * is new enough to contain a certain feature.
15649 -- */
15650 --
15651 --#define __RES 19991006
15652 --
15653 --/*
15654 -- * Resolver configuration file.
15655 -- * Normally not present, but may contain the address of the
15656 -- * inital name server(s) to query and the domain search list.
15657 -- */
15658 --
15659 --#ifndef _PATH_RESCONF
15660 --#define _PATH_RESCONF "/etc/resolv.conf"
15661 --#endif
15662 --
15663 --struct res_sym {
15664 -- int number; /* Identifying number, like T_MX */
15665 -- char * name; /* Its symbolic name, like "MX" */
15666 -- char * humanname; /* Its fun name, like "mail exchanger" */
15667 --};
15668 --
15669 --/*
15670 -- * Resolver flags (used to be discrete per-module statics ints).
15671 -- */
15672 --#define RES_F_VC 0x00000001 /* socket is TCP */
15673 --#define RES_F_CONN 0x00000002 /* socket is connected */
15674 --#define RES_F_EDNS0ERR 0x00000004 /* EDNS0 caused errors */
15675 --
15676 --/* res_findzonecut() options */
15677 --#define RES_EXHAUSTIVE 0x00000001 /* always do all queries */
15678 --
15679 --/*
15680 -- * Resolver options (keep these in synch with res_debug.c, please)
15681 -- */
15682 --#define RES_INIT 0x00000001 /* address initialized */
15683 --#define RES_DEBUG 0x00000002 /* print debug messages */
15684 --#define RES_AAONLY 0x00000004 /* authoritative answers only (!IMPL)*/
15685 --#define RES_USEVC 0x00000008 /* use virtual circuit */
15686 --#define RES_PRIMARY 0x00000010 /* query primary server only (!IMPL) */
15687 --#define RES_IGNTC 0x00000020 /* ignore trucation errors */
15688 --#define RES_RECURSE 0x00000040 /* recursion desired */
15689 --#define RES_DEFNAMES 0x00000080 /* use default domain name */
15690 --#define RES_STAYOPEN 0x00000100 /* Keep TCP socket open */
15691 --#define RES_DNSRCH 0x00000200 /* search up local domain tree */
15692 --#define RES_INSECURE1 0x00000400 /* type 1 security disabled */
15693 --#define RES_INSECURE2 0x00000800 /* type 2 security disabled */
15694 --#define RES_NOALIASES 0x00001000 /* shuts off HOSTALIASES feature */
15695 --#define RES_USE_INET6 0x00002000 /* use/map IPv6 in gethostbyname() */
15696 --#define RES_ROTATE 0x00004000 /* rotate ns list after each query */
15697 --#define RES_NOCHECKNAME 0x00008000 /* do not check names for sanity (!IMPL) */
15698 --#define RES_KEEPTSIG 0x00010000 /* do not strip TSIG records */
15699 --#define RES_BLAST 0x00020000 /* blast all recursive servers */
15700 --#define RES_USEBSTRING 0x00040000 /* IPv6 reverse lookup with byte
15701 -- strings */
15702 --#define RES_NOIP6DOTINT 0x00080000 /* Do not use .ip6.int in IPv6
15703 -- reverse lookup */
15704 --#define RES_USE_EDNS0 0x00100000 /* Use EDNS0. */
15705 --#define RES_SNGLKUP 0x00200000 /* one outstanding request at a time */
15706 --#define RES_SNGLKUPREOP 0x00400000 /* -"-, but open new socket for each
15707 -- request */
15708 --#define RES_USE_DNSSEC 0x00800000 /* use DNSSEC using OK bit in OPT */
15709 --#define RES_NOTLDQUERY 0x01000000 /* Do not look up unqualified name
15710 -- as a TLD. */
15711 --
15712 --#define RES_DEFAULT (RES_RECURSE|RES_DEFNAMES|RES_DNSRCH|RES_NOIP6DOTINT)
15713 --
15714 --/*
15715 -- * Resolver "pfcode" values. Used by dig.
15716 -- */
15717 --#define RES_PRF_STATS 0x00000001
15718 --#define RES_PRF_UPDATE 0x00000002
15719 --#define RES_PRF_CLASS 0x00000004
15720 --#define RES_PRF_CMD 0x00000008
15721 --#define RES_PRF_QUES 0x00000010
15722 --#define RES_PRF_ANS 0x00000020
15723 --#define RES_PRF_AUTH 0x00000040
15724 --#define RES_PRF_ADD 0x00000080
15725 --#define RES_PRF_HEAD1 0x00000100
15726 --#define RES_PRF_HEAD2 0x00000200
15727 --#define RES_PRF_TTLID 0x00000400
15728 --#define RES_PRF_HEADX 0x00000800
15729 --#define RES_PRF_QUERY 0x00001000
15730 --#define RES_PRF_REPLY 0x00002000
15731 --#define RES_PRF_INIT 0x00004000
15732 --/* 0x00008000 */
15733 --
15734 --/* Things involving an internal (static) resolver context. */
15735 --__BEGIN_DECLS
15736 --extern struct __res_state *__res_state(void) __attribute__ ((__const__));
15737 --__END_DECLS
15738 --#define _res (*__res_state())
15739 --
15740 --#ifndef __BIND_NOSTATIC
15741 --#define fp_nquery __fp_nquery
15742 --#define fp_query __fp_query
15743 --#define hostalias __hostalias
15744 --#define p_query __p_query
15745 --#define res_close __res_close
15746 --#define res_init __res_init
15747 --#define res_isourserver __res_isourserver
15748 --#define res_mkquery __res_mkquery
15749 --#define res_query __res_query
15750 --#define res_querydomain __res_querydomain
15751 --#define res_search __res_search
15752 --#define res_send __res_send
15753 --
15754 --__BEGIN_DECLS
15755 --void fp_nquery (const u_char *, int, FILE *) __THROW;
15756 --void fp_query (const u_char *, FILE *) __THROW;
15757 --const char * hostalias (const char *) __THROW;
15758 --void p_query (const u_char *) __THROW;
15759 --void res_close (void) __THROW;
15760 --int res_init (void) __THROW;
15761 --int res_isourserver (const struct sockaddr_in *) __THROW;
15762 --int res_mkquery (int, const char *, int, int, const u_char *,
15763 -- int, const u_char *, u_char *, int) __THROW;
15764 --int res_query (const char *, int, int, u_char *, int) __THROW;
15765 --int res_querydomain (const char *, const char *, int, int,
15766 -- u_char *, int) __THROW;
15767 --int res_search (const char *, int, int, u_char *, int) __THROW;
15768 --int res_send (const u_char *, int, u_char *, int) __THROW;
15769 --__END_DECLS
15770 --#endif
15771 --
15772 --#define b64_ntop __b64_ntop
15773 --#define b64_pton __b64_pton
15774 --#define dn_comp __dn_comp
15775 --#define dn_count_labels __dn_count_labels
15776 --#define dn_expand __dn_expand
15777 --#define dn_skipname __dn_skipname
15778 --#define fp_resstat __fp_resstat
15779 --#define loc_aton __loc_aton
15780 --#define loc_ntoa __loc_ntoa
15781 --#define p_cdname __p_cdname
15782 --#define p_cdnname __p_cdnname
15783 --#define p_class __p_class
15784 --#define p_fqname __p_fqname
15785 --#define p_fqnname __p_fqnname
15786 --#define p_option __p_option
15787 --#define p_secstodate __p_secstodate
15788 --#define p_section __p_section
15789 --#define p_time __p_time
15790 --#define p_type __p_type
15791 --#define p_rcode __p_rcode
15792 --#define putlong __putlong
15793 --#define putshort __putshort
15794 --#define res_dnok __res_dnok
15795 --#define res_hnok __res_hnok
15796 --#define res_hostalias __res_hostalias
15797 --#define res_mailok __res_mailok
15798 --#define res_nameinquery __res_nameinquery
15799 --#define res_nclose __res_nclose
15800 --#define res_ninit __res_ninit
15801 --#define res_nmkquery __res_nmkquery
15802 --#define res_npquery __res_npquery
15803 --#define res_nquery __res_nquery
15804 --#define res_nquerydomain __res_nquerydomain
15805 --#define res_nsearch __res_nsearch
15806 --#define res_nsend __res_nsend
15807 --#define res_nisourserver __res_nisourserver
15808 --#define res_ownok __res_ownok
15809 --#define res_queriesmatch __res_queriesmatch
15810 --#define res_randomid __res_randomid
15811 --#define sym_ntop __sym_ntop
15812 --#define sym_ntos __sym_ntos
15813 --#define sym_ston __sym_ston
15814 --__BEGIN_DECLS
15815 --int res_hnok (const char *) __THROW;
15816 --int res_ownok (const char *) __THROW;
15817 --int res_mailok (const char *) __THROW;
15818 --int res_dnok (const char *) __THROW;
15819 --int sym_ston (const struct res_sym *, const char *, int *) __THROW;
15820 --const char * sym_ntos (const struct res_sym *, int, int *) __THROW;
15821 --const char * sym_ntop (const struct res_sym *, int, int *) __THROW;
15822 --int b64_ntop (u_char const *, size_t, char *, size_t) __THROW;
15823 --int b64_pton (char const *, u_char *, size_t) __THROW;
15824 --int loc_aton (const char *__ascii, u_char *__binary) __THROW;
15825 --const char * loc_ntoa (const u_char *__binary, char *__ascii) __THROW;
15826 --int dn_skipname (const u_char *, const u_char *) __THROW;
15827 --void putlong (u_int32_t, u_char *) __THROW;
15828 --void putshort (u_int16_t, u_char *) __THROW;
15829 --const char * p_class (int) __THROW;
15830 --const char * p_time (u_int32_t) __THROW;
15831 --const char * p_type (int) __THROW;
15832 --const char * p_rcode (int) __THROW;
15833 --const u_char * p_cdnname (const u_char *, const u_char *, int, FILE *)
15834 -- __THROW;
15835 --const u_char * p_cdname (const u_char *, const u_char *, FILE *) __THROW;
15836 --const u_char * p_fqnname (const u_char *__cp, const u_char *__msg,
15837 -- int, char *, int) __THROW;
15838 --const u_char * p_fqname (const u_char *, const u_char *, FILE *) __THROW;
15839 --const char * p_option (u_long __option) __THROW;
15840 --char * p_secstodate (u_long) __THROW;
15841 --int dn_count_labels (const char *) __THROW;
15842 --int dn_comp (const char *, u_char *, int, u_char **, u_char **)
15843 -- __THROW;
15844 --int dn_expand (const u_char *, const u_char *, const u_char *,
15845 -- char *, int) __THROW;
15846 --u_int res_randomid (void) __THROW;
15847 --int res_nameinquery (const char *, int, int,
15848 -- const u_char *, const u_char *) __THROW;
15849 --int res_queriesmatch (const u_char *, const u_char *,
15850 -- const u_char *, const u_char *) __THROW;
15851 --const char * p_section (int __section, int __opcode) __THROW;
15852 --/* Things involving a resolver context. */
15853 --int res_ninit (res_state) __THROW;
15854 --int res_nisourserver (const res_state,
15855 -- const struct sockaddr_in *) __THROW;
15856 --void fp_resstat (const res_state, FILE *) __THROW;
15857 --void res_npquery (const res_state, const u_char *, int, FILE *)
15858 -- __THROW;
15859 --const char * res_hostalias (const res_state, const char *, char *, size_t)
15860 -- __THROW;
15861 --int res_nquery (res_state, const char *, int, int, u_char *, int)
15862 -- __THROW;
15863 --int res_nsearch (res_state, const char *, int, int, u_char *, int)
15864 -- __THROW;
15865 --int res_nquerydomain (res_state, const char *, const char *, int,
15866 -- int, u_char *, int) __THROW;
15867 --int res_nmkquery (res_state, int, const char *, int, int,
15868 -- const u_char *, int, const u_char *, u_char *,
15869 -- int) __THROW;
15870 --int res_nsend (res_state, const u_char *, int, u_char *, int)
15871 -- __THROW;
15872 --void res_nclose (res_state) __THROW;
15873 --__END_DECLS
15874 --#endif
15875 --
15876 --#endif /* !_RESOLV_H_ */
15877 -Index: glibc-2.20/shadow/Makefile
15878 -===================================================================
15879 ---- glibc-2.20.orig/shadow/Makefile
15880 -+++ glibc-2.20/shadow/Makefile
15881 -@@ -36,5 +36,6 @@ CFLAGS-fgetspent_r.c = -fexceptions $(li
15882 - CFLAGS-putspent.c = -fexceptions $(libio-mtsafe)
15883 - CFLAGS-getspnam.c = -fexceptions
15884 - CFLAGS-getspnam_r.c = -fexceptions
15885 -+CPPFLAGS-lckpwdf.c = -DSYSCONFDIR='"$(sysconfdir)"'
15886 -
15887 - include ../Rules
15888 -Index: glibc-2.20/shadow/lckpwdf.c
15889 -===================================================================
15890 ---- glibc-2.20.orig/shadow/lckpwdf.c
15891 -+++ glibc-2.20/shadow/lckpwdf.c
15892 -@@ -29,7 +29,7 @@
15893 -
15894 -
15895 - /* Name of the lock file. */
15896 --#define PWD_LOCKFILE "/etc/.pwd.lock"
15897 -+#define PWD_LOCKFILE SYSCONFDIR "/.pwd.lock"
15898 -
15899 - /* How long to wait for getting the lock before returning with an
15900 - error. */
15901 -Index: glibc-2.20/configure.ac
15902 -===================================================================
15903 ---- glibc-2.20.orig/configure.ac
15904 -+++ glibc-2.20/configure.ac
15905 -@@ -2038,7 +2038,8 @@ RELEASE=`sed -n -e 's/^#define RELEASE "
15906 - AC_SUBST(VERSION)
15907 - AC_SUBST(RELEASE)
15908 -
15909 --AC_CONFIG_FILES([config.make Makefile])
15910 -+AC_CONFIG_FILES([config.make Makefile nss/db-Makefile resolv/netdb.h resolv/resolv.h
15911 -+ sysdeps/generic/ldconfig.h])
15912 - AC_CONFIG_COMMANDS([default],[[
15913 - case $CONFIG_FILES in *config.make*)
15914 - echo "$config_vars" >> config.make;;
15915 -Index: glibc-2.20/resolv/netdb.h.in
15916 -===================================================================
15917 ---- /dev/null
15918 -+++ glibc-2.20/resolv/netdb.h.in
15919 -@@ -0,0 +1,715 @@
15920 -+ /* Copyright (C) 1996-2014 Free Software Foundation, Inc.
15921 -+ This file is part of the GNU C Library.
15922 -+
15923 -+ The GNU C Library is free software; you can redistribute it and/or
15924 -+ modify it under the terms of the GNU Lesser General Public
15925 -+ License as published by the Free Software Foundation; either
15926 -+ version 2.1 of the License, or (at your option) any later version.
15927 -+
15928 -+ The GNU C Library is distributed in the hope that it will be useful,
15929 -+ but WITHOUT ANY WARRANTY; without even the implied warranty of
15930 -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15931 -+ Lesser General Public License for more details.
15932 -+
15933 -+ You should have received a copy of the GNU Lesser General Public
15934 -+ License along with the GNU C Library; if not, see
15935 -+ <http://www.gnu.org/licenses/>. */
15936 -+
15937 -+/* All data returned by the network data base library are supplied in
15938 -+ host order and returned in network order (suitable for use in
15939 -+ system calls). */
15940 -+
15941 -+#ifndef _NETDB_H
15942 -+#define _NETDB_H 1
15943 -+
15944 -+#include <features.h>
15945 -+
15946 -+#include <netinet/in.h>
15947 -+#include <stdint.h>
15948 -+#ifdef __USE_MISC
15949 -+/* This is necessary to make this include file properly replace the
15950 -+ Sun version. */
15951 -+# include <rpc/netdb.h>
15952 -+#endif
15953 -+
15954 -+#ifdef __USE_GNU
15955 -+# define __need_sigevent_t
15956 -+# include <bits/siginfo.h>
15957 -+# define __need_timespec
15958 -+# include <time.h>
15959 -+#endif
15960 -+
15961 -+#include <bits/netdb.h>
15962 -+
15963 -+/* Absolute file name for network data base files. */
15964 -+#define _PATH_HEQUIV "@libc_cv_sysconfdir@/hosts.equiv"
15965 -+#define _PATH_HOSTS "@libc_cv_sysconfdir@/hosts"
15966 -+#define _PATH_NETWORKS "@libc_cv_sysconfdir@/networks"
15967 -+#define _PATH_NSSWITCH_CONF "@libc_cv_sysconfdir@/nsswitch.conf"
15968 -+#define _PATH_PROTOCOLS "@libc_cv_sysconfdir@/protocols"
15969 -+#define _PATH_SERVICES "@libc_cv_sysconfdir@/services"
15970 -+
15971 -+
15972 -+__BEGIN_DECLS
15973 -+
15974 -+#if defined __USE_MISC || !defined __USE_XOPEN2K8
15975 -+/* Error status for non-reentrant lookup functions.
15976 -+ We use a macro to access always the thread-specific `h_errno' variable. */
15977 -+# define h_errno (*__h_errno_location ())
15978 -+
15979 -+/* Function to get address of global `h_errno' variable. */
15980 -+extern int *__h_errno_location (void) __THROW __attribute__ ((__const__));
15981 -+
15982 -+
15983 -+/* Possible values left in `h_errno'. */
15984 -+# define HOST_NOT_FOUND 1 /* Authoritative Answer Host not found. */
15985 -+# define TRY_AGAIN 2 /* Non-Authoritative Host not found,
15986 -+ or SERVERFAIL. */
15987 -+# define NO_RECOVERY 3 /* Non recoverable errors, FORMERR, REFUSED,
15988 -+ NOTIMP. */
15989 -+# define NO_DATA 4 /* Valid name, no data record of requested
15990 -+ type. */
15991 -+#endif
15992 -+#ifdef __USE_MISC
15993 -+# define NETDB_INTERNAL -1 /* See errno. */
15994 -+# define NETDB_SUCCESS 0 /* No problem. */
15995 -+# define NO_ADDRESS NO_DATA /* No address, look for MX record. */
15996 -+#endif
15997 -+
15998 -+#if defined __USE_XOPEN2K || defined __USE_XOPEN_EXTENDED
15999 -+/* Highest reserved Internet port number. */
16000 -+# define IPPORT_RESERVED 1024
16001 -+#endif
16002 -+
16003 -+#ifdef __USE_GNU
16004 -+/* Scope delimiter for getaddrinfo(), getnameinfo(). */
16005 -+# define SCOPE_DELIMITER '%'
16006 -+#endif
16007 -+
16008 -+#ifdef __USE_MISC
16009 -+/* Print error indicated by `h_errno' variable on standard error. STR
16010 -+ if non-null is printed before the error string. */
16011 -+extern void herror (const char *__str) __THROW;
16012 -+
16013 -+/* Return string associated with error ERR_NUM. */
16014 -+extern const char *hstrerror (int __err_num) __THROW;
16015 -+#endif
16016 -+
16017 -+
16018 -+/* Description of data base entry for a single host. */
16019 -+struct hostent
16020 -+{
16021 -+ char *h_name; /* Official name of host. */
16022 -+ char **h_aliases; /* Alias list. */
16023 -+ int h_addrtype; /* Host address type. */
16024 -+ int h_length; /* Length of address. */
16025 -+ char **h_addr_list; /* List of addresses from name server. */
16026 -+#ifdef __USE_MISC
16027 -+# define h_addr h_addr_list[0] /* Address, for backward compatibility.*/
16028 -+#endif
16029 -+};
16030 -+
16031 -+/* Open host data base files and mark them as staying open even after
16032 -+ a later search if STAY_OPEN is non-zero.
16033 -+
16034 -+ This function is a possible cancellation point and therefore not
16035 -+ marked with __THROW. */
16036 -+extern void sethostent (int __stay_open);
16037 -+
16038 -+/* Close host data base files and clear `stay open' flag.
16039 -+
16040 -+ This function is a possible cancellation point and therefore not
16041 -+ marked with __THROW. */
16042 -+extern void endhostent (void);
16043 -+
16044 -+/* Get next entry from host data base file. Open data base if
16045 -+ necessary.
16046 -+
16047 -+ This function is a possible cancellation point and therefore not
16048 -+ marked with __THROW. */
16049 -+extern struct hostent *gethostent (void);
16050 -+
16051 -+/* Return entry from host data base which address match ADDR with
16052 -+ length LEN and type TYPE.
16053 -+
16054 -+ This function is a possible cancellation point and therefore not
16055 -+ marked with __THROW. */
16056 -+extern struct hostent *gethostbyaddr (const void *__addr, __socklen_t __len,
16057 -+ int __type);
16058 -+
16059 -+/* Return entry from host data base for host with NAME.
16060 -+
16061 -+ This function is a possible cancellation point and therefore not
16062 -+ marked with __THROW. */
16063 -+extern struct hostent *gethostbyname (const char *__name);
16064 -+
16065 -+#ifdef __USE_MISC
16066 -+/* Return entry from host data base for host with NAME. AF must be
16067 -+ set to the address type which is `AF_INET' for IPv4 or `AF_INET6'
16068 -+ for IPv6.
16069 -+
16070 -+ This function is not part of POSIX and therefore no official
16071 -+ cancellation point. But due to similarity with an POSIX interface
16072 -+ or due to the implementation it is a cancellation point and
16073 -+ therefore not marked with __THROW. */
16074 -+extern struct hostent *gethostbyname2 (const char *__name, int __af);
16075 -+
16076 -+/* Reentrant versions of the functions above. The additional
16077 -+ arguments specify a buffer of BUFLEN starting at BUF. The last
16078 -+ argument is a pointer to a variable which gets the value which
16079 -+ would be stored in the global variable `herrno' by the
16080 -+ non-reentrant functions.
16081 -+
16082 -+ These functions are not part of POSIX and therefore no official
16083 -+ cancellation point. But due to similarity with an POSIX interface
16084 -+ or due to the implementation they are cancellation points and
16085 -+ therefore not marked with __THROW. */
16086 -+extern int gethostent_r (struct hostent *__restrict __result_buf,
16087 -+ char *__restrict __buf, size_t __buflen,
16088 -+ struct hostent **__restrict __result,
16089 -+ int *__restrict __h_errnop);
16090 -+
16091 -+extern int gethostbyaddr_r (const void *__restrict __addr, __socklen_t __len,
16092 -+ int __type,
16093 -+ struct hostent *__restrict __result_buf,
16094 -+ char *__restrict __buf, size_t __buflen,
16095 -+ struct hostent **__restrict __result,
16096 -+ int *__restrict __h_errnop);
16097 -+
16098 -+extern int gethostbyname_r (const char *__restrict __name,
16099 -+ struct hostent *__restrict __result_buf,
16100 -+ char *__restrict __buf, size_t __buflen,
16101 -+ struct hostent **__restrict __result,
16102 -+ int *__restrict __h_errnop);
16103 -+
16104 -+extern int gethostbyname2_r (const char *__restrict __name, int __af,
16105 -+ struct hostent *__restrict __result_buf,
16106 -+ char *__restrict __buf, size_t __buflen,
16107 -+ struct hostent **__restrict __result,
16108 -+ int *__restrict __h_errnop);
16109 -+#endif /* misc */
16110 -+
16111 -+
16112 -+/* Open network data base files and mark them as staying open even
16113 -+ after a later search if STAY_OPEN is non-zero.
16114 -+
16115 -+ This function is a possible cancellation point and therefore not
16116 -+ marked with __THROW. */
16117 -+extern void setnetent (int __stay_open);
16118 -+
16119 -+/* Close network data base files and clear `stay open' flag.
16120 -+
16121 -+ This function is a possible cancellation point and therefore not
16122 -+ marked with __THROW. */
16123 -+extern void endnetent (void);
16124 -+
16125 -+/* Get next entry from network data base file. Open data base if
16126 -+ necessary.
16127 -+
16128 -+ This function is a possible cancellation point and therefore not
16129 -+ marked with __THROW. */
16130 -+extern struct netent *getnetent (void);
16131 -+
16132 -+/* Return entry from network data base which address match NET and
16133 -+ type TYPE.
16134 -+
16135 -+ This function is a possible cancellation point and therefore not
16136 -+ marked with __THROW. */
16137 -+extern struct netent *getnetbyaddr (uint32_t __net, int __type);
16138 -+
16139 -+/* Return entry from network data base for network with NAME.
16140 -+
16141 -+ This function is a possible cancellation point and therefore not
16142 -+ marked with __THROW. */
16143 -+extern struct netent *getnetbyname (const char *__name);
16144 -+
16145 -+#ifdef __USE_MISC
16146 -+/* Reentrant versions of the functions above. The additional
16147 -+ arguments specify a buffer of BUFLEN starting at BUF. The last
16148 -+ argument is a pointer to a variable which gets the value which
16149 -+ would be stored in the global variable `herrno' by the
16150 -+ non-reentrant functions.
16151 -+
16152 -+ These functions are not part of POSIX and therefore no official
16153 -+ cancellation point. But due to similarity with an POSIX interface
16154 -+ or due to the implementation they are cancellation points and
16155 -+ therefore not marked with __THROW. */
16156 -+extern int getnetent_r (struct netent *__restrict __result_buf,
16157 -+ char *__restrict __buf, size_t __buflen,
16158 -+ struct netent **__restrict __result,
16159 -+ int *__restrict __h_errnop);
16160 -+
16161 -+extern int getnetbyaddr_r (uint32_t __net, int __type,
16162 -+ struct netent *__restrict __result_buf,
16163 -+ char *__restrict __buf, size_t __buflen,
16164 -+ struct netent **__restrict __result,
16165 -+ int *__restrict __h_errnop);
16166 -+
16167 -+extern int getnetbyname_r (const char *__restrict __name,
16168 -+ struct netent *__restrict __result_buf,
16169 -+ char *__restrict __buf, size_t __buflen,
16170 -+ struct netent **__restrict __result,
16171 -+ int *__restrict __h_errnop);
16172 -+#endif /* misc */
16173 -+
16174 -+
16175 -+/* Description of data base entry for a single service. */
16176 -+struct servent
16177 -+{
16178 -+ char *s_name; /* Official service name. */
16179 -+ char **s_aliases; /* Alias list. */
16180 -+ int s_port; /* Port number. */
16181 -+ char *s_proto; /* Protocol to use. */
16182 -+};
16183 -+
16184 -+/* Open service data base files and mark them as staying open even
16185 -+ after a later search if STAY_OPEN is non-zero.
16186 -+
16187 -+ This function is a possible cancellation point and therefore not
16188 -+ marked with __THROW. */
16189 -+extern void setservent (int __stay_open);
16190 -+
16191 -+/* Close service data base files and clear `stay open' flag.
16192 -+
16193 -+ This function is a possible cancellation point and therefore not
16194 -+ marked with __THROW. */
16195 -+extern void endservent (void);
16196 -+
16197 -+/* Get next entry from service data base file. Open data base if
16198 -+ necessary.
16199 -+
16200 -+ This function is a possible cancellation point and therefore not
16201 -+ marked with __THROW. */
16202 -+extern struct servent *getservent (void);
16203 -+
16204 -+/* Return entry from network data base for network with NAME and
16205 -+ protocol PROTO.
16206 -+
16207 -+ This function is a possible cancellation point and therefore not
16208 -+ marked with __THROW. */
16209 -+extern struct servent *getservbyname (const char *__name, const char *__proto);
16210 -+
16211 -+/* Return entry from service data base which matches port PORT and
16212 -+ protocol PROTO.
16213 -+
16214 -+ This function is a possible cancellation point and therefore not
16215 -+ marked with __THROW. */
16216 -+extern struct servent *getservbyport (int __port, const char *__proto);
16217 -+
16218 -+
16219 -+#ifdef __USE_MISC
16220 -+/* Reentrant versions of the functions above. The additional
16221 -+ arguments specify a buffer of BUFLEN starting at BUF.
16222 -+
16223 -+ These functions are not part of POSIX and therefore no official
16224 -+ cancellation point. But due to similarity with an POSIX interface
16225 -+ or due to the implementation they are cancellation points and
16226 -+ therefore not marked with __THROW. */
16227 -+extern int getservent_r (struct servent *__restrict __result_buf,
16228 -+ char *__restrict __buf, size_t __buflen,
16229 -+ struct servent **__restrict __result);
16230 -+
16231 -+extern int getservbyname_r (const char *__restrict __name,
16232 -+ const char *__restrict __proto,
16233 -+ struct servent *__restrict __result_buf,
16234 -+ char *__restrict __buf, size_t __buflen,
16235 -+ struct servent **__restrict __result);
16236 -+
16237 -+extern int getservbyport_r (int __port, const char *__restrict __proto,
16238 -+ struct servent *__restrict __result_buf,
16239 -+ char *__restrict __buf, size_t __buflen,
16240 -+ struct servent **__restrict __result);
16241 -+#endif /* misc */
16242 -+
16243 -+
16244 -+/* Description of data base entry for a single service. */
16245 -+struct protoent
16246 -+{
16247 -+ char *p_name; /* Official protocol name. */
16248 -+ char **p_aliases; /* Alias list. */
16249 -+ int p_proto; /* Protocol number. */
16250 -+};
16251 -+
16252 -+/* Open protocol data base files and mark them as staying open even
16253 -+ after a later search if STAY_OPEN is non-zero.
16254 -+
16255 -+ This function is a possible cancellation point and therefore not
16256 -+ marked with __THROW. */
16257 -+extern void setprotoent (int __stay_open);
16258 -+
16259 -+/* Close protocol data base files and clear `stay open' flag.
16260 -+
16261 -+ This function is a possible cancellation point and therefore not
16262 -+ marked with __THROW. */
16263 -+extern void endprotoent (void);
16264 -+
16265 -+/* Get next entry from protocol data base file. Open data base if
16266 -+ necessary.
16267 -+
16268 -+ This function is a possible cancellation point and therefore not
16269 -+ marked with __THROW. */
16270 -+extern struct protoent *getprotoent (void);
16271 -+
16272 -+/* Return entry from protocol data base for network with NAME.
16273 -+
16274 -+ This function is a possible cancellation point and therefore not
16275 -+ marked with __THROW. */
16276 -+extern struct protoent *getprotobyname (const char *__name);
16277 -+
16278 -+/* Return entry from protocol data base which number is PROTO.
16279 -+
16280 -+ This function is a possible cancellation point and therefore not
16281 -+ marked with __THROW. */
16282 -+extern struct protoent *getprotobynumber (int __proto);
16283 -+
16284 -+
16285 -+#ifdef __USE_MISC
16286 -+/* Reentrant versions of the functions above. The additional
16287 -+ arguments specify a buffer of BUFLEN starting at BUF.
16288 -+
16289 -+ These functions are not part of POSIX and therefore no official
16290 -+ cancellation point. But due to similarity with an POSIX interface
16291 -+ or due to the implementation they are cancellation points and
16292 -+ therefore not marked with __THROW. */
16293 -+extern int getprotoent_r (struct protoent *__restrict __result_buf,
16294 -+ char *__restrict __buf, size_t __buflen,
16295 -+ struct protoent **__restrict __result);
16296 -+
16297 -+extern int getprotobyname_r (const char *__restrict __name,
16298 -+ struct protoent *__restrict __result_buf,
16299 -+ char *__restrict __buf, size_t __buflen,
16300 -+ struct protoent **__restrict __result);
16301 -+
16302 -+extern int getprotobynumber_r (int __proto,
16303 -+ struct protoent *__restrict __result_buf,
16304 -+ char *__restrict __buf, size_t __buflen,
16305 -+ struct protoent **__restrict __result);
16306 -+
16307 -+
16308 -+/* Establish network group NETGROUP for enumeration.
16309 -+
16310 -+ This function is not part of POSIX and therefore no official
16311 -+ cancellation point. But due to similarity with an POSIX interface
16312 -+ or due to the implementation it is a cancellation point and
16313 -+ therefore not marked with __THROW. */
16314 -+extern int setnetgrent (const char *__netgroup);
16315 -+
16316 -+/* Free all space allocated by previous `setnetgrent' call.
16317 -+
16318 -+ This function is not part of POSIX and therefore no official
16319 -+ cancellation point. But due to similarity with an POSIX interface
16320 -+ or due to the implementation it is a cancellation point and
16321 -+ therefore not marked with __THROW. */
16322 -+extern void endnetgrent (void);
16323 -+
16324 -+/* Get next member of netgroup established by last `setnetgrent' call
16325 -+ and return pointers to elements in HOSTP, USERP, and DOMAINP.
16326 -+
16327 -+ This function is not part of POSIX and therefore no official
16328 -+ cancellation point. But due to similarity with an POSIX interface
16329 -+ or due to the implementation it is a cancellation point and
16330 -+ therefore not marked with __THROW. */
16331 -+extern int getnetgrent (char **__restrict __hostp,
16332 -+ char **__restrict __userp,
16333 -+ char **__restrict __domainp);
16334 -+
16335 -+
16336 -+/* Test whether NETGROUP contains the triple (HOST,USER,DOMAIN).
16337 -+
16338 -+ This function is not part of POSIX and therefore no official
16339 -+ cancellation point. But due to similarity with an POSIX interface
16340 -+ or due to the implementation it is a cancellation point and
16341 -+ therefore not marked with __THROW. */
16342 -+extern int innetgr (const char *__netgroup, const char *__host,
16343 -+ const char *__user, const char *__domain);
16344 -+
16345 -+/* Reentrant version of `getnetgrent' where result is placed in BUFFER.
16346 -+
16347 -+ This function is not part of POSIX and therefore no official
16348 -+ cancellation point. But due to similarity with an POSIX interface
16349 -+ or due to the implementation it is a cancellation point and
16350 -+ therefore not marked with __THROW. */
16351 -+extern int getnetgrent_r (char **__restrict __hostp,
16352 -+ char **__restrict __userp,
16353 -+ char **__restrict __domainp,
16354 -+ char *__restrict __buffer, size_t __buflen);
16355 -+#endif /* misc */
16356 -+
16357 -+
16358 -+#ifdef __USE_MISC
16359 -+/* Call `rshd' at port RPORT on remote machine *AHOST to execute CMD.
16360 -+ The local user is LOCUSER, on the remote machine the command is
16361 -+ executed as REMUSER. In *FD2P the descriptor to the socket for the
16362 -+ connection is returned. The caller must have the right to use a
16363 -+ reserved port. When the function returns *AHOST contains the
16364 -+ official host name.
16365 -+
16366 -+ This function is not part of POSIX and therefore no official
16367 -+ cancellation point. But due to similarity with an POSIX interface
16368 -+ or due to the implementation it is a cancellation point and
16369 -+ therefore not marked with __THROW. */
16370 -+extern int rcmd (char **__restrict __ahost, unsigned short int __rport,
16371 -+ const char *__restrict __locuser,
16372 -+ const char *__restrict __remuser,
16373 -+ const char *__restrict __cmd, int *__restrict __fd2p);
16374 -+
16375 -+/* This is the equivalent function where the protocol can be selected
16376 -+ and which therefore can be used for IPv6.
16377 -+
16378 -+ This function is not part of POSIX and therefore no official
16379 -+ cancellation point. But due to similarity with an POSIX interface
16380 -+ or due to the implementation it is a cancellation point and
16381 -+ therefore not marked with __THROW. */
16382 -+extern int rcmd_af (char **__restrict __ahost, unsigned short int __rport,
16383 -+ const char *__restrict __locuser,
16384 -+ const char *__restrict __remuser,
16385 -+ const char *__restrict __cmd, int *__restrict __fd2p,
16386 -+ sa_family_t __af);
16387 -+
16388 -+/* Call `rexecd' at port RPORT on remote machine *AHOST to execute
16389 -+ CMD. The process runs at the remote machine using the ID of user
16390 -+ NAME whose cleartext password is PASSWD. In *FD2P the descriptor
16391 -+ to the socket for the connection is returned. When the function
16392 -+ returns *AHOST contains the official host name.
16393 -+
16394 -+ This function is not part of POSIX and therefore no official
16395 -+ cancellation point. But due to similarity with an POSIX interface
16396 -+ or due to the implementation it is a cancellation point and
16397 -+ therefore not marked with __THROW. */
16398 -+extern int rexec (char **__restrict __ahost, int __rport,
16399 -+ const char *__restrict __name,
16400 -+ const char *__restrict __pass,
16401 -+ const char *__restrict __cmd, int *__restrict __fd2p);
16402 -+
16403 -+/* This is the equivalent function where the protocol can be selected
16404 -+ and which therefore can be used for IPv6.
16405 -+
16406 -+ This function is not part of POSIX and therefore no official
16407 -+ cancellation point. But due to similarity with an POSIX interface
16408 -+ or due to the implementation it is a cancellation point and
16409 -+ therefore not marked with __THROW. */
16410 -+extern int rexec_af (char **__restrict __ahost, int __rport,
16411 -+ const char *__restrict __name,
16412 -+ const char *__restrict __pass,
16413 -+ const char *__restrict __cmd, int *__restrict __fd2p,
16414 -+ sa_family_t __af);
16415 -+
16416 -+/* Check whether user REMUSER on system RHOST is allowed to login as LOCUSER.
16417 -+ If SUSER is not zero the user tries to become superuser. Return 0 if
16418 -+ it is possible.
16419 -+
16420 -+ This function is not part of POSIX and therefore no official
16421 -+ cancellation point. But due to similarity with an POSIX interface
16422 -+ or due to the implementation it is a cancellation point and
16423 -+ therefore not marked with __THROW. */
16424 -+extern int ruserok (const char *__rhost, int __suser,
16425 -+ const char *__remuser, const char *__locuser);
16426 -+
16427 -+/* This is the equivalent function where the protocol can be selected
16428 -+ and which therefore can be used for IPv6.
16429 -+
16430 -+ This function is not part of POSIX and therefore no official
16431 -+ cancellation point. But due to similarity with an POSIX interface
16432 -+ or due to the implementation it is a cancellation point and
16433 -+ therefore not marked with __THROW. */
16434 -+extern int ruserok_af (const char *__rhost, int __suser,
16435 -+ const char *__remuser, const char *__locuser,
16436 -+ sa_family_t __af);
16437 -+
16438 -+/* Check whether user REMUSER on system indicated by IPv4 address
16439 -+ RADDR is allowed to login as LOCUSER. Non-IPv4 (e.g., IPv6) are
16440 -+ not supported. If SUSER is not zero the user tries to become
16441 -+ superuser. Return 0 if it is possible.
16442 -+
16443 -+ This function is not part of POSIX and therefore no official
16444 -+ cancellation point. But due to similarity with an POSIX interface
16445 -+ or due to the implementation it is a cancellation point and
16446 -+ therefore not marked with __THROW. */
16447 -+extern int iruserok (uint32_t __raddr, int __suser,
16448 -+ const char *__remuser, const char *__locuser);
16449 -+
16450 -+/* This is the equivalent function where the pfamiliy if the address
16451 -+ pointed to by RADDR is determined by the value of AF. It therefore
16452 -+ can be used for IPv6
16453 -+
16454 -+ This function is not part of POSIX and therefore no official
16455 -+ cancellation point. But due to similarity with an POSIX interface
16456 -+ or due to the implementation it is a cancellation point and
16457 -+ therefore not marked with __THROW. */
16458 -+extern int iruserok_af (const void *__raddr, int __suser,
16459 -+ const char *__remuser, const char *__locuser,
16460 -+ sa_family_t __af);
16461 -+
16462 -+/* Try to allocate reserved port, returning a descriptor for a socket opened
16463 -+ at this port or -1 if unsuccessful. The search for an available port
16464 -+ will start at ALPORT and continues with lower numbers.
16465 -+
16466 -+ This function is not part of POSIX and therefore no official
16467 -+ cancellation point. But due to similarity with an POSIX interface
16468 -+ or due to the implementation it is a cancellation point and
16469 -+ therefore not marked with __THROW. */
16470 -+extern int rresvport (int *__alport);
16471 -+
16472 -+/* This is the equivalent function where the protocol can be selected
16473 -+ and which therefore can be used for IPv6.
16474 -+
16475 -+ This function is not part of POSIX and therefore no official
16476 -+ cancellation point. But due to similarity with an POSIX interface
16477 -+ or due to the implementation it is a cancellation point and
16478 -+ therefore not marked with __THROW. */
16479 -+extern int rresvport_af (int *__alport, sa_family_t __af);
16480 -+#endif
16481 -+
16482 -+
16483 -+/* Extension from POSIX.1g. */
16484 -+#ifdef __USE_POSIX
16485 -+/* Structure to contain information about address of a service provider. */
16486 -+struct addrinfo
16487 -+{
16488 -+ int ai_flags; /* Input flags. */
16489 -+ int ai_family; /* Protocol family for socket. */
16490 -+ int ai_socktype; /* Socket type. */
16491 -+ int ai_protocol; /* Protocol for socket. */
16492 -+ socklen_t ai_addrlen; /* Length of socket address. */
16493 -+ struct sockaddr *ai_addr; /* Socket address for socket. */
16494 -+ char *ai_canonname; /* Canonical name for service location. */
16495 -+ struct addrinfo *ai_next; /* Pointer to next in list. */
16496 -+};
16497 -+
16498 -+# ifdef __USE_GNU
16499 -+/* Structure used as control block for asynchronous lookup. */
16500 -+struct gaicb
16501 -+{
16502 -+ const char *ar_name; /* Name to look up. */
16503 -+ const char *ar_service; /* Service name. */
16504 -+ const struct addrinfo *ar_request; /* Additional request specification. */
16505 -+ struct addrinfo *ar_result; /* Pointer to result. */
16506 -+ /* The following are internal elements. */
16507 -+ int __return;
16508 -+ int __glibc_reserved[5];
16509 -+};
16510 -+
16511 -+/* Lookup mode. */
16512 -+# define GAI_WAIT 0
16513 -+# define GAI_NOWAIT 1
16514 -+# endif
16515 -+
16516 -+/* Possible values for `ai_flags' field in `addrinfo' structure. */
16517 -+# define AI_PASSIVE 0x0001 /* Socket address is intended for `bind'. */
16518 -+# define AI_CANONNAME 0x0002 /* Request for canonical name. */
16519 -+# define AI_NUMERICHOST 0x0004 /* Don't use name resolution. */
16520 -+# define AI_V4MAPPED 0x0008 /* IPv4 mapped addresses are acceptable. */
16521 -+# define AI_ALL 0x0010 /* Return IPv4 mapped and IPv6 addresses. */
16522 -+# define AI_ADDRCONFIG 0x0020 /* Use configuration of this host to choose
16523 -+ returned address type.. */
16524 -+# ifdef __USE_GNU
16525 -+# define AI_IDN 0x0040 /* IDN encode input (assuming it is encoded
16526 -+ in the current locale's character set)
16527 -+ before looking it up. */
16528 -+# define AI_CANONIDN 0x0080 /* Translate canonical name from IDN format. */
16529 -+# define AI_IDN_ALLOW_UNASSIGNED 0x0100 /* Don't reject unassigned Unicode
16530 -+ code points. */
16531 -+# define AI_IDN_USE_STD3_ASCII_RULES 0x0200 /* Validate strings according to
16532 -+ STD3 rules. */
16533 -+# endif
16534 -+# define AI_NUMERICSERV 0x0400 /* Don't use name resolution. */
16535 -+
16536 -+/* Error values for `getaddrinfo' function. */
16537 -+# define EAI_BADFLAGS -1 /* Invalid value for `ai_flags' field. */
16538 -+# define EAI_NONAME -2 /* NAME or SERVICE is unknown. */
16539 -+# define EAI_AGAIN -3 /* Temporary failure in name resolution. */
16540 -+# define EAI_FAIL -4 /* Non-recoverable failure in name res. */
16541 -+# define EAI_FAMILY -6 /* `ai_family' not supported. */
16542 -+# define EAI_SOCKTYPE -7 /* `ai_socktype' not supported. */
16543 -+# define EAI_SERVICE -8 /* SERVICE not supported for `ai_socktype'. */
16544 -+# define EAI_MEMORY -10 /* Memory allocation failure. */
16545 -+# define EAI_SYSTEM -11 /* System error returned in `errno'. */
16546 -+# define EAI_OVERFLOW -12 /* Argument buffer overflow. */
16547 -+# ifdef __USE_GNU
16548 -+# define EAI_NODATA -5 /* No address associated with NAME. */
16549 -+# define EAI_ADDRFAMILY -9 /* Address family for NAME not supported. */
16550 -+# define EAI_INPROGRESS -100 /* Processing request in progress. */
16551 -+# define EAI_CANCELED -101 /* Request canceled. */
16552 -+# define EAI_NOTCANCELED -102 /* Request not canceled. */
16553 -+# define EAI_ALLDONE -103 /* All requests done. */
16554 -+# define EAI_INTR -104 /* Interrupted by a signal. */
16555 -+# define EAI_IDN_ENCODE -105 /* IDN encoding failed. */
16556 -+# endif
16557 -+
16558 -+# ifdef __USE_MISC
16559 -+# define NI_MAXHOST 1025
16560 -+# define NI_MAXSERV 32
16561 -+# endif
16562 -+
16563 -+# define NI_NUMERICHOST 1 /* Don't try to look up hostname. */
16564 -+# define NI_NUMERICSERV 2 /* Don't convert port number to name. */
16565 -+# define NI_NOFQDN 4 /* Only return nodename portion. */
16566 -+# define NI_NAMEREQD 8 /* Don't return numeric addresses. */
16567 -+# define NI_DGRAM 16 /* Look up UDP service rather than TCP. */
16568 -+# ifdef __USE_GNU
16569 -+# define NI_IDN 32 /* Convert name from IDN format. */
16570 -+# define NI_IDN_ALLOW_UNASSIGNED 64 /* Don't reject unassigned Unicode
16571 -+ code points. */
16572 -+# define NI_IDN_USE_STD3_ASCII_RULES 128 /* Validate strings according to
16573 -+ STD3 rules. */
16574 -+# endif
16575 -+
16576 -+/* Translate name of a service location and/or a service name to set of
16577 -+ socket addresses.
16578 -+
16579 -+ This function is a possible cancellation point and therefore not
16580 -+ marked with __THROW. */
16581 -+extern int getaddrinfo (const char *__restrict __name,
16582 -+ const char *__restrict __service,
16583 -+ const struct addrinfo *__restrict __req,
16584 -+ struct addrinfo **__restrict __pai);
16585 -+
16586 -+/* Free `addrinfo' structure AI including associated storage. */
16587 -+extern void freeaddrinfo (struct addrinfo *__ai) __THROW;
16588 -+
16589 -+/* Convert error return from getaddrinfo() to a string. */
16590 -+extern const char *gai_strerror (int __ecode) __THROW;
16591 -+
16592 -+/* Translate a socket address to a location and service name.
16593 -+
16594 -+ This function is a possible cancellation point and therefore not
16595 -+ marked with __THROW. */
16596 -+extern int getnameinfo (const struct sockaddr *__restrict __sa,
16597 -+ socklen_t __salen, char *__restrict __host,
16598 -+ socklen_t __hostlen, char *__restrict __serv,
16599 -+ socklen_t __servlen, int __flags);
16600 -+#endif /* POSIX */
16601 -+
16602 -+#ifdef __USE_GNU
16603 -+/* Enqueue ENT requests from the LIST. If MODE is GAI_WAIT wait until all
16604 -+ requests are handled. If WAIT is GAI_NOWAIT return immediately after
16605 -+ queueing the requests and signal completion according to SIG.
16606 -+
16607 -+ This function is not part of POSIX and therefore no official
16608 -+ cancellation point. But due to similarity with an POSIX interface
16609 -+ or due to the implementation it is a cancellation point and
16610 -+ therefore not marked with __THROW. */
16611 -+extern int getaddrinfo_a (int __mode, struct gaicb *__list[__restrict_arr],
16612 -+ int __ent, struct sigevent *__restrict __sig);
16613 -+
16614 -+/* Suspend execution of the thread until at least one of the ENT requests
16615 -+ in LIST is handled. If TIMEOUT is not a null pointer it specifies the
16616 -+ longest time the function keeps waiting before returning with an error.
16617 -+
16618 -+ This function is not part of POSIX and therefore no official
16619 -+ cancellation point. But due to similarity with an POSIX interface
16620 -+ or due to the implementation it is a cancellation point and
16621 -+ therefore not marked with __THROW. */
16622 -+extern int gai_suspend (const struct gaicb *const __list[], int __ent,
16623 -+ const struct timespec *__timeout);
16624 -+
16625 -+/* Get the error status of the request REQ. */
16626 -+extern int gai_error (struct gaicb *__req) __THROW;
16627 -+
16628 -+/* Cancel the requests associated with GAICBP. */
16629 -+extern int gai_cancel (struct gaicb *__gaicbp) __THROW;
16630 -+#endif /* GNU */
16631 -+
16632 -+__END_DECLS
16633 -+
16634 -+#endif /* netdb.h */
16635 -Index: glibc-2.20/resolv/resolv.h.in
16636 -===================================================================
16637 ---- /dev/null
16638 -+++ glibc-2.20/resolv/resolv.h.in
16639 -@@ -0,0 +1,389 @@
16640 -+/*
16641 -+ * Copyright (c) 1983, 1987, 1989
16642 -+ * The Regents of the University of California. All rights reserved.
16643 -+ *
16644 -+ * Redistribution and use in source and binary forms, with or without
16645 -+ * modification, are permitted provided that the following conditions
16646 -+ * are met:
16647 -+ * 1. Redistributions of source code must retain the above copyright
16648 -+ * notice, this list of conditions and the following disclaimer.
16649 -+ * 2. Redistributions in binary form must reproduce the above copyright
16650 -+ * notice, this list of conditions and the following disclaimer in the
16651 -+ * documentation and/or other materials provided with the distribution.
16652 -+ * 4. Neither the name of the University nor the names of its contributors
16653 -+ * may be used to endorse or promote products derived from this software
16654 -+ * without specific prior written permission.
16655 -+ *
16656 -+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
16657 -+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16658 -+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16659 -+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
16660 -+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
16661 -+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
16662 -+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
16663 -+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
16664 -+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
16665 -+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
16666 -+ * SUCH DAMAGE.
16667 -+ */
16668 -+
16669 -+/*
16670 -+ * Portions Copyright (c) 1996-1999 by Internet Software Consortium.
16671 -+ *
16672 -+ * Permission to use, copy, modify, and distribute this software for any
16673 -+ * purpose with or without fee is hereby granted, provided that the above
16674 -+ * copyright notice and this permission notice appear in all copies.
16675 -+ *
16676 -+ * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS
16677 -+ * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
16678 -+ * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE
16679 -+ * CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
16680 -+ * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
16681 -+ * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
16682 -+ * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
16683 -+ * SOFTWARE.
16684 -+ */
16685 -+
16686 -+/*
16687 -+ * @(#)resolv.h 8.1 (Berkeley) 6/2/93
16688 -+ * $BINDId: resolv.h,v 8.31 2000/03/30 20:16:50 vixie Exp $
16689 -+ */
16690 -+
16691 -+#ifndef _RESOLV_H_
16692 -+
16693 -+/* These headers are needed for types used in the `struct res_state'
16694 -+ declaration. */
16695 -+#include <sys/types.h>
16696 -+#include <netinet/in.h>
16697 -+
16698 -+#ifndef __need_res_state
16699 -+# define _RESOLV_H_
16700 -+
16701 -+# include <sys/param.h>
16702 -+# include <sys/cdefs.h>
16703 -+# include <stdio.h>
16704 -+# include <arpa/nameser.h>
16705 -+#endif
16706 -+
16707 -+#ifndef __res_state_defined
16708 -+# define __res_state_defined
16709 -+
16710 -+typedef enum { res_goahead, res_nextns, res_modified, res_done, res_error }
16711 -+ res_sendhookact;
16712 -+
16713 -+typedef res_sendhookact (*res_send_qhook) (struct sockaddr_in * const *__ns,
16714 -+ const u_char **__query,
16715 -+ int *__querylen,
16716 -+ u_char *__ans,
16717 -+ int __anssiz,
16718 -+ int *__resplen);
16719 -+
16720 -+typedef res_sendhookact (*res_send_rhook) (const struct sockaddr_in *__ns,
16721 -+ const u_char *__query,
16722 -+ int __querylen,
16723 -+ u_char *__ans,
16724 -+ int __anssiz,
16725 -+ int *__resplen);
16726 -+
16727 -+/*
16728 -+ * Global defines and variables for resolver stub.
16729 -+ */
16730 -+# define MAXNS 3 /* max # name servers we'll track */
16731 -+# define MAXDFLSRCH 3 /* # default domain levels to try */
16732 -+# define MAXDNSRCH 6 /* max # domains in search path */
16733 -+# define LOCALDOMAINPARTS 2 /* min levels in name that is "local" */
16734 -+
16735 -+# define RES_TIMEOUT 5 /* min. seconds between retries */
16736 -+# define MAXRESOLVSORT 10 /* number of net to sort on */
16737 -+# define RES_MAXNDOTS 15 /* should reflect bit field size */
16738 -+# define RES_MAXRETRANS 30 /* only for resolv.conf/RES_OPTIONS */
16739 -+# define RES_MAXRETRY 5 /* only for resolv.conf/RES_OPTIONS */
16740 -+# define RES_DFLRETRY 2 /* Default #/tries. */
16741 -+# define RES_MAXTIME 65535 /* Infinity, in milliseconds. */
16742 -+
16743 -+struct __res_state {
16744 -+ int retrans; /* retransmition time interval */
16745 -+ int retry; /* number of times to retransmit */
16746 -+ u_long options; /* option flags - see below. */
16747 -+ int nscount; /* number of name servers */
16748 -+ struct sockaddr_in
16749 -+ nsaddr_list[MAXNS]; /* address of name server */
16750 -+# define nsaddr nsaddr_list[0] /* for backward compatibility */
16751 -+ u_short id; /* current message id */
16752 -+ /* 2 byte hole here. */
16753 -+ char *dnsrch[MAXDNSRCH+1]; /* components of domain to search */
16754 -+ char defdname[256]; /* default domain (deprecated) */
16755 -+ u_long pfcode; /* RES_PRF_ flags - see below. */
16756 -+ unsigned ndots:4; /* threshold for initial abs. query */
16757 -+ unsigned nsort:4; /* number of elements in sort_list[] */
16758 -+ unsigned ipv6_unavail:1; /* connecting to IPv6 server failed */
16759 -+ unsigned unused:23;
16760 -+ struct {
16761 -+ struct in_addr addr;
16762 -+ u_int32_t mask;
16763 -+ } sort_list[MAXRESOLVSORT];
16764 -+ /* 4 byte hole here on 64-bit architectures. */
16765 -+ res_send_qhook qhook; /* query hook */
16766 -+ res_send_rhook rhook; /* response hook */
16767 -+ int res_h_errno; /* last one set for this context */
16768 -+ int _vcsock; /* PRIVATE: for res_send VC i/o */
16769 -+ u_int _flags; /* PRIVATE: see below */
16770 -+ /* 4 byte hole here on 64-bit architectures. */
16771 -+ union {
16772 -+ char pad[52]; /* On an i386 this means 512b total. */
16773 -+ struct {
16774 -+ u_int16_t nscount;
16775 -+ u_int16_t nsmap[MAXNS];
16776 -+ int nssocks[MAXNS];
16777 -+ u_int16_t nscount6;
16778 -+ u_int16_t nsinit;
16779 -+ struct sockaddr_in6 *nsaddrs[MAXNS];
16780 -+#ifdef _LIBC
16781 -+ unsigned long long int initstamp
16782 -+ __attribute__((packed));
16783 -+#else
16784 -+ unsigned int _initstamp[2];
16785 -+#endif
16786 -+ } _ext;
16787 -+ } _u;
16788 -+};
16789 -+
16790 -+typedef struct __res_state *res_state;
16791 -+# undef __need_res_state
16792 -+#endif
16793 -+
16794 -+#ifdef _RESOLV_H_
16795 -+/*
16796 -+ * Revision information. This is the release date in YYYYMMDD format.
16797 -+ * It can change every day so the right thing to do with it is use it
16798 -+ * in preprocessor commands such as "#if (__RES > 19931104)". Do not
16799 -+ * compare for equality; rather, use it to determine whether your resolver
16800 -+ * is new enough to contain a certain feature.
16801 -+ */
16802 -+
16803 -+#define __RES 19991006
16804 -+
16805 -+/*
16806 -+ * Resolver configuration file.
16807 -+ * Normally not present, but may contain the address of the
16808 -+ * inital name server(s) to query and the domain search list.
16809 -+ */
16810 -+
16811 -+#ifndef _PATH_RESCONF
16812 -+#define _PATH_RESCONF "@libc_cv_sysconfdir@/resolv.conf"
16813 -+#endif
16814 -+
16815 -+struct res_sym {
16816 -+ int number; /* Identifying number, like T_MX */
16817 -+ char * name; /* Its symbolic name, like "MX" */
16818 -+ char * humanname; /* Its fun name, like "mail exchanger" */
16819 -+};
16820 -+
16821 -+/*
16822 -+ * Resolver flags (used to be discrete per-module statics ints).
16823 -+ */
16824 -+#define RES_F_VC 0x00000001 /* socket is TCP */
16825 -+#define RES_F_CONN 0x00000002 /* socket is connected */
16826 -+#define RES_F_EDNS0ERR 0x00000004 /* EDNS0 caused errors */
16827 -+
16828 -+/* res_findzonecut() options */
16829 -+#define RES_EXHAUSTIVE 0x00000001 /* always do all queries */
16830 -+
16831 -+/*
16832 -+ * Resolver options (keep these in synch with res_debug.c, please)
16833 -+ */
16834 -+#define RES_INIT 0x00000001 /* address initialized */
16835 -+#define RES_DEBUG 0x00000002 /* print debug messages */
16836 -+#define RES_AAONLY 0x00000004 /* authoritative answers only (!IMPL)*/
16837 -+#define RES_USEVC 0x00000008 /* use virtual circuit */
16838 -+#define RES_PRIMARY 0x00000010 /* query primary server only (!IMPL) */
16839 -+#define RES_IGNTC 0x00000020 /* ignore trucation errors */
16840 -+#define RES_RECURSE 0x00000040 /* recursion desired */
16841 -+#define RES_DEFNAMES 0x00000080 /* use default domain name */
16842 -+#define RES_STAYOPEN 0x00000100 /* Keep TCP socket open */
16843 -+#define RES_DNSRCH 0x00000200 /* search up local domain tree */
16844 -+#define RES_INSECURE1 0x00000400 /* type 1 security disabled */
16845 -+#define RES_INSECURE2 0x00000800 /* type 2 security disabled */
16846 -+#define RES_NOALIASES 0x00001000 /* shuts off HOSTALIASES feature */
16847 -+#define RES_USE_INET6 0x00002000 /* use/map IPv6 in gethostbyname() */
16848 -+#define RES_ROTATE 0x00004000 /* rotate ns list after each query */
16849 -+#define RES_NOCHECKNAME 0x00008000 /* do not check names for sanity (!IMPL) */
16850 -+#define RES_KEEPTSIG 0x00010000 /* do not strip TSIG records */
16851 -+#define RES_BLAST 0x00020000 /* blast all recursive servers */
16852 -+#define RES_USEBSTRING 0x00040000 /* IPv6 reverse lookup with byte
16853 -+ strings */
16854 -+#define RES_NOIP6DOTINT 0x00080000 /* Do not use .ip6.int in IPv6
16855 -+ reverse lookup */
16856 -+#define RES_USE_EDNS0 0x00100000 /* Use EDNS0. */
16857 -+#define RES_SNGLKUP 0x00200000 /* one outstanding request at a time */
16858 -+#define RES_SNGLKUPREOP 0x00400000 /* -"-, but open new socket for each
16859 -+ request */
16860 -+#define RES_USE_DNSSEC 0x00800000 /* use DNSSEC using OK bit in OPT */
16861 -+#define RES_NOTLDQUERY 0x01000000 /* Do not look up unqualified name
16862 -+ as a TLD. */
16863 -+
16864 -+#define RES_DEFAULT (RES_RECURSE|RES_DEFNAMES|RES_DNSRCH|RES_NOIP6DOTINT)
16865 -+
16866 -+/*
16867 -+ * Resolver "pfcode" values. Used by dig.
16868 -+ */
16869 -+#define RES_PRF_STATS 0x00000001
16870 -+#define RES_PRF_UPDATE 0x00000002
16871 -+#define RES_PRF_CLASS 0x00000004
16872 -+#define RES_PRF_CMD 0x00000008
16873 -+#define RES_PRF_QUES 0x00000010
16874 -+#define RES_PRF_ANS 0x00000020
16875 -+#define RES_PRF_AUTH 0x00000040
16876 -+#define RES_PRF_ADD 0x00000080
16877 -+#define RES_PRF_HEAD1 0x00000100
16878 -+#define RES_PRF_HEAD2 0x00000200
16879 -+#define RES_PRF_TTLID 0x00000400
16880 -+#define RES_PRF_HEADX 0x00000800
16881 -+#define RES_PRF_QUERY 0x00001000
16882 -+#define RES_PRF_REPLY 0x00002000
16883 -+#define RES_PRF_INIT 0x00004000
16884 -+/* 0x00008000 */
16885 -+
16886 -+/* Things involving an internal (static) resolver context. */
16887 -+__BEGIN_DECLS
16888 -+extern struct __res_state *__res_state(void) __attribute__ ((__const__));
16889 -+__END_DECLS
16890 -+#define _res (*__res_state())
16891 -+
16892 -+#ifndef __BIND_NOSTATIC
16893 -+#define fp_nquery __fp_nquery
16894 -+#define fp_query __fp_query
16895 -+#define hostalias __hostalias
16896 -+#define p_query __p_query
16897 -+#define res_close __res_close
16898 -+#define res_init __res_init
16899 -+#define res_isourserver __res_isourserver
16900 -+#define res_mkquery __res_mkquery
16901 -+#define res_query __res_query
16902 -+#define res_querydomain __res_querydomain
16903 -+#define res_search __res_search
16904 -+#define res_send __res_send
16905 -+
16906 -+__BEGIN_DECLS
16907 -+void fp_nquery (const u_char *, int, FILE *) __THROW;
16908 -+void fp_query (const u_char *, FILE *) __THROW;
16909 -+const char * hostalias (const char *) __THROW;
16910 -+void p_query (const u_char *) __THROW;
16911 -+void res_close (void) __THROW;
16912 -+int res_init (void) __THROW;
16913 -+int res_isourserver (const struct sockaddr_in *) __THROW;
16914 -+int res_mkquery (int, const char *, int, int, const u_char *,
16915 -+ int, const u_char *, u_char *, int) __THROW;
16916 -+int res_query (const char *, int, int, u_char *, int) __THROW;
16917 -+int res_querydomain (const char *, const char *, int, int,
16918 -+ u_char *, int) __THROW;
16919 -+int res_search (const char *, int, int, u_char *, int) __THROW;
16920 -+int res_send (const u_char *, int, u_char *, int) __THROW;
16921 -+__END_DECLS
16922 -+#endif
16923 -+
16924 -+#define b64_ntop __b64_ntop
16925 -+#define b64_pton __b64_pton
16926 -+#define dn_comp __dn_comp
16927 -+#define dn_count_labels __dn_count_labels
16928 -+#define dn_expand __dn_expand
16929 -+#define dn_skipname __dn_skipname
16930 -+#define fp_resstat __fp_resstat
16931 -+#define loc_aton __loc_aton
16932 -+#define loc_ntoa __loc_ntoa
16933 -+#define p_cdname __p_cdname
16934 -+#define p_cdnname __p_cdnname
16935 -+#define p_class __p_class
16936 -+#define p_fqname __p_fqname
16937 -+#define p_fqnname __p_fqnname
16938 -+#define p_option __p_option
16939 -+#define p_secstodate __p_secstodate
16940 -+#define p_section __p_section
16941 -+#define p_time __p_time
16942 -+#define p_type __p_type
16943 -+#define p_rcode __p_rcode
16944 -+#define putlong __putlong
16945 -+#define putshort __putshort
16946 -+#define res_dnok __res_dnok
16947 -+#define res_hnok __res_hnok
16948 -+#define res_hostalias __res_hostalias
16949 -+#define res_mailok __res_mailok
16950 -+#define res_nameinquery __res_nameinquery
16951 -+#define res_nclose __res_nclose
16952 -+#define res_ninit __res_ninit
16953 -+#define res_nmkquery __res_nmkquery
16954 -+#define res_npquery __res_npquery
16955 -+#define res_nquery __res_nquery
16956 -+#define res_nquerydomain __res_nquerydomain
16957 -+#define res_nsearch __res_nsearch
16958 -+#define res_nsend __res_nsend
16959 -+#define res_nisourserver __res_nisourserver
16960 -+#define res_ownok __res_ownok
16961 -+#define res_queriesmatch __res_queriesmatch
16962 -+#define res_randomid __res_randomid
16963 -+#define sym_ntop __sym_ntop
16964 -+#define sym_ntos __sym_ntos
16965 -+#define sym_ston __sym_ston
16966 -+__BEGIN_DECLS
16967 -+int res_hnok (const char *) __THROW;
16968 -+int res_ownok (const char *) __THROW;
16969 -+int res_mailok (const char *) __THROW;
16970 -+int res_dnok (const char *) __THROW;
16971 -+int sym_ston (const struct res_sym *, const char *, int *) __THROW;
16972 -+const char * sym_ntos (const struct res_sym *, int, int *) __THROW;
16973 -+const char * sym_ntop (const struct res_sym *, int, int *) __THROW;
16974 -+int b64_ntop (u_char const *, size_t, char *, size_t) __THROW;
16975 -+int b64_pton (char const *, u_char *, size_t) __THROW;
16976 -+int loc_aton (const char *__ascii, u_char *__binary) __THROW;
16977 -+const char * loc_ntoa (const u_char *__binary, char *__ascii) __THROW;
16978 -+int dn_skipname (const u_char *, const u_char *) __THROW;
16979 -+void putlong (u_int32_t, u_char *) __THROW;
16980 -+void putshort (u_int16_t, u_char *) __THROW;
16981 -+const char * p_class (int) __THROW;
16982 -+const char * p_time (u_int32_t) __THROW;
16983 -+const char * p_type (int) __THROW;
16984 -+const char * p_rcode (int) __THROW;
16985 -+const u_char * p_cdnname (const u_char *, const u_char *, int, FILE *)
16986 -+ __THROW;
16987 -+const u_char * p_cdname (const u_char *, const u_char *, FILE *) __THROW;
16988 -+const u_char * p_fqnname (const u_char *__cp, const u_char *__msg,
16989 -+ int, char *, int) __THROW;
16990 -+const u_char * p_fqname (const u_char *, const u_char *, FILE *) __THROW;
16991 -+const char * p_option (u_long __option) __THROW;
16992 -+char * p_secstodate (u_long) __THROW;
16993 -+int dn_count_labels (const char *) __THROW;
16994 -+int dn_comp (const char *, u_char *, int, u_char **, u_char **)
16995 -+ __THROW;
16996 -+int dn_expand (const u_char *, const u_char *, const u_char *,
16997 -+ char *, int) __THROW;
16998 -+u_int res_randomid (void) __THROW;
16999 -+int res_nameinquery (const char *, int, int,
17000 -+ const u_char *, const u_char *) __THROW;
17001 -+int res_queriesmatch (const u_char *, const u_char *,
17002 -+ const u_char *, const u_char *) __THROW;
17003 -+const char * p_section (int __section, int __opcode) __THROW;
17004 -+/* Things involving a resolver context. */
17005 -+int res_ninit (res_state) __THROW;
17006 -+int res_nisourserver (const res_state,
17007 -+ const struct sockaddr_in *) __THROW;
17008 -+void fp_resstat (const res_state, FILE *) __THROW;
17009 -+void res_npquery (const res_state, const u_char *, int, FILE *)
17010 -+ __THROW;
17011 -+const char * res_hostalias (const res_state, const char *, char *, size_t)
17012 -+ __THROW;
17013 -+int res_nquery (res_state, const char *, int, int, u_char *, int)
17014 -+ __THROW;
17015 -+int res_nsearch (res_state, const char *, int, int, u_char *, int)
17016 -+ __THROW;
17017 -+int res_nquerydomain (res_state, const char *, const char *, int,
17018 -+ int, u_char *, int) __THROW;
17019 -+int res_nmkquery (res_state, int, const char *, int, int,
17020 -+ const u_char *, int, const u_char *, u_char *,
17021 -+ int) __THROW;
17022 -+int res_nsend (res_state, const u_char *, int, u_char *, int)
17023 -+ __THROW;
17024 -+void res_nclose (res_state) __THROW;
17025 -+__END_DECLS
17026 -+#endif
17027 -+
17028 -+#endif /* !_RESOLV_H_ */
17029 -Index: glibc-2.20/configure
17030 -===================================================================
17031 ---- glibc-2.20.orig/configure
17032 -+++ glibc-2.20/configure
17033 -@@ -7177,7 +7177,7 @@ RELEASE=`sed -n -e 's/^#define RELEASE "
17034 -
17035 -
17036 -
17037 --ac_config_files="$ac_config_files config.make Makefile"
17038 -+ac_config_files="$ac_config_files config.make Makefile nss/db-Makefile resolv/netdb.h resolv/resolv.h sysdeps/generic/ldconfig.h"
17039 -
17040 - ac_config_commands="$ac_config_commands default"
17041 -
17042 -@@ -7897,6 +7897,10 @@ do
17043 - "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
17044 - "config.make") CONFIG_FILES="$CONFIG_FILES config.make" ;;
17045 - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
17046 -+ "nss/db-Makefile") CONFIG_FILES="$CONFIG_FILES nss/db-Makefile" ;;
17047 -+ "resolv/netdb.h") CONFIG_FILES="$CONFIG_FILES resolv/netdb.h" ;;
17048 -+ "resolv/resolv.h") CONFIG_FILES="$CONFIG_FILES resolv/resolv.h" ;;
17049 -+ "sysdeps/generic/ldconfig.h") CONFIG_FILES="$CONFIG_FILES sysdeps/generic/ldconfig.h" ;;
17050 - "default") CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;;
17051 -
17052 - *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
17053 -Index: glibc-2.20/sysdeps/generic/ldconfig.h
17054 -===================================================================
17055 ---- glibc-2.20.orig/sysdeps/generic/ldconfig.h
17056 -+++ /dev/null
17057 -@@ -1,94 +0,0 @@
17058 --/* Copyright (C) 1999-2014 Free Software Foundation, Inc.
17059 -- This file is part of the GNU C Library.
17060 -- Contributed by Andreas Jaeger <aj@××××.de>, 1999.
17061 --
17062 -- The GNU C Library is free software; you can redistribute it and/or
17063 -- modify it under the terms of the GNU Lesser General Public
17064 -- License as published by the Free Software Foundation; either
17065 -- version 2.1 of the License, or (at your option) any later version.
17066 --
17067 -- The GNU C Library is distributed in the hope that it will be useful,
17068 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
17069 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17070 -- Lesser General Public License for more details.
17071 --
17072 -- You should have received a copy of the GNU Lesser General Public
17073 -- License along with the GNU C Library; if not, see
17074 -- <http://www.gnu.org/licenses/>. */
17075 --
17076 --#ifndef _LDCONFIG_H
17077 --#define _LDCONFIG_H
17078 --
17079 --#include <stdint.h>
17080 --
17081 --#define FLAG_ANY -1
17082 --#define FLAG_TYPE_MASK 0x00ff
17083 --#define FLAG_LIBC4 0x0000
17084 --#define FLAG_ELF 0x0001
17085 --#define FLAG_ELF_LIBC5 0x0002
17086 --#define FLAG_ELF_LIBC6 0x0003
17087 --#define FLAG_REQUIRED_MASK 0xff00
17088 --#define FLAG_SPARC_LIB64 0x0100
17089 --#define FLAG_IA64_LIB64 0x0200
17090 --#define FLAG_X8664_LIB64 0x0300
17091 --#define FLAG_S390_LIB64 0x0400
17092 --#define FLAG_POWERPC_LIB64 0x0500
17093 --#define FLAG_MIPS64_LIBN32 0x0600
17094 --#define FLAG_MIPS64_LIBN64 0x0700
17095 --#define FLAG_X8664_LIBX32 0x0800
17096 --#define FLAG_ARM_LIBHF 0x0900
17097 --#define FLAG_AARCH64_LIB64 0x0a00
17098 --#define FLAG_ARM_LIBSF 0x0b00
17099 --#define FLAG_MIPS_LIB32_NAN2008 0x0c00
17100 --#define FLAG_MIPS64_LIBN32_NAN2008 0x0d00
17101 --#define FLAG_MIPS64_LIBN64_NAN2008 0x0e00
17102 --
17103 --/* Name of auxiliary cache. */
17104 --#define _PATH_LDCONFIG_AUX_CACHE "/var/cache/ldconfig/aux-cache"
17105 --
17106 --/* Declared in cache.c. */
17107 --extern void print_cache (const char *cache_name);
17108 --
17109 --extern void init_cache (void);
17110 --
17111 --extern void save_cache (const char *cache_name);
17112 --
17113 --extern void add_to_cache (const char *path, const char *lib, int flags,
17114 -- unsigned int osversion, uint64_t hwcap);
17115 --
17116 --extern void init_aux_cache (void);
17117 --
17118 --extern void load_aux_cache (const char *aux_cache_name);
17119 --
17120 --extern int search_aux_cache (struct stat64 *stat_buf, int *flags,
17121 -- unsigned int *osversion, char **soname);
17122 --
17123 --extern void add_to_aux_cache (struct stat64 *stat_buf, int flags,
17124 -- unsigned int osversion, const char *soname);
17125 --
17126 --extern void save_aux_cache (const char *aux_cache_name);
17127 --
17128 --/* Declared in readlib.c. */
17129 --extern int process_file (const char *real_file_name, const char *file_name,
17130 -- const char *lib, int *flag, unsigned int *osversion,
17131 -- char **soname, int is_link, struct stat64 *stat_buf);
17132 --
17133 --extern char *implicit_soname (const char *lib, int flag);
17134 --
17135 --/* Declared in readelflib.c. */
17136 --extern int process_elf_file (const char *file_name, const char *lib, int *flag,
17137 -- unsigned int *osversion, char **soname,
17138 -- void *file_contents, size_t file_length);
17139 --
17140 --/* Declared in chroot_canon.c. */
17141 --extern char *chroot_canon (const char *chroot, const char *name);
17142 --
17143 --/* Declared in ldconfig.c. */
17144 --extern int opt_verbose;
17145 --
17146 --extern int opt_format;
17147 --
17148 --/* Prototypes for a few program-wide used functions. */
17149 --#include <programs/xmalloc.h>
17150 --
17151 --#endif /* ! _LDCONFIG_H */
17152 -Index: glibc-2.20/sysdeps/generic/ldconfig.h.in
17153 -===================================================================
17154 ---- /dev/null
17155 -+++ glibc-2.20/sysdeps/generic/ldconfig.h.in
17156 -@@ -0,0 +1,94 @@
17157 -+/* Copyright (C) 1999-2014 Free Software Foundation, Inc.
17158 -+ This file is part of the GNU C Library.
17159 -+ Contributed by Andreas Jaeger <aj@××××.de>, 1999.
17160 -+
17161 -+ The GNU C Library is free software; you can redistribute it and/or
17162 -+ modify it under the terms of the GNU Lesser General Public
17163 -+ License as published by the Free Software Foundation; either
17164 -+ version 2.1 of the License, or (at your option) any later version.
17165 -+
17166 -+ The GNU C Library is distributed in the hope that it will be useful,
17167 -+ but WITHOUT ANY WARRANTY; without even the implied warranty of
17168 -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17169 -+ Lesser General Public License for more details.
17170 -+
17171 -+ You should have received a copy of the GNU Lesser General Public
17172 -+ License along with the GNU C Library; if not, see
17173 -+ <http://www.gnu.org/licenses/>. */
17174 -+
17175 -+#ifndef _LDCONFIG_H
17176 -+#define _LDCONFIG_H
17177 -+
17178 -+#include <stdint.h>
17179 -+
17180 -+#define FLAG_ANY -1
17181 -+#define FLAG_TYPE_MASK 0x00ff
17182 -+#define FLAG_LIBC4 0x0000
17183 -+#define FLAG_ELF 0x0001
17184 -+#define FLAG_ELF_LIBC5 0x0002
17185 -+#define FLAG_ELF_LIBC6 0x0003
17186 -+#define FLAG_REQUIRED_MASK 0xff00
17187 -+#define FLAG_SPARC_LIB64 0x0100
17188 -+#define FLAG_IA64_LIB64 0x0200
17189 -+#define FLAG_X8664_LIB64 0x0300
17190 -+#define FLAG_S390_LIB64 0x0400
17191 -+#define FLAG_POWERPC_LIB64 0x0500
17192 -+#define FLAG_MIPS64_LIBN32 0x0600
17193 -+#define FLAG_MIPS64_LIBN64 0x0700
17194 -+#define FLAG_X8664_LIBX32 0x0800
17195 -+#define FLAG_ARM_LIBHF 0x0900
17196 -+#define FLAG_AARCH64_LIB64 0x0a00
17197 -+#define FLAG_ARM_LIBSF 0x0b00
17198 -+#define FLAG_MIPS_LIB32_NAN2008 0x0c00
17199 -+#define FLAG_MIPS64_LIBN32_NAN2008 0x0d00
17200 -+#define FLAG_MIPS64_LIBN64_NAN2008 0x0e00
17201 -+
17202 -+/* Name of auxiliary cache. */
17203 -+#define _PATH_LDCONFIG_AUX_CACHE "@libc_cv_localstatedir@/cache/ldconfig/aux-cache"
17204 -+
17205 -+/* Declared in cache.c. */
17206 -+extern void print_cache (const char *cache_name);
17207 -+
17208 -+extern void init_cache (void);
17209 -+
17210 -+extern void save_cache (const char *cache_name);
17211 -+
17212 -+extern void add_to_cache (const char *path, const char *lib, int flags,
17213 -+ unsigned int osversion, uint64_t hwcap);
17214 -+
17215 -+extern void init_aux_cache (void);
17216 -+
17217 -+extern void load_aux_cache (const char *aux_cache_name);
17218 -+
17219 -+extern int search_aux_cache (struct stat64 *stat_buf, int *flags,
17220 -+ unsigned int *osversion, char **soname);
17221 -+
17222 -+extern void add_to_aux_cache (struct stat64 *stat_buf, int flags,
17223 -+ unsigned int osversion, const char *soname);
17224 -+
17225 -+extern void save_aux_cache (const char *aux_cache_name);
17226 -+
17227 -+/* Declared in readlib.c. */
17228 -+extern int process_file (const char *real_file_name, const char *file_name,
17229 -+ const char *lib, int *flag, unsigned int *osversion,
17230 -+ char **soname, int is_link, struct stat64 *stat_buf);
17231 -+
17232 -+extern char *implicit_soname (const char *lib, int flag);
17233 -+
17234 -+/* Declared in readelflib.c. */
17235 -+extern int process_elf_file (const char *file_name, const char *lib, int *flag,
17236 -+ unsigned int *osversion, char **soname,
17237 -+ void *file_contents, size_t file_length);
17238 -+
17239 -+/* Declared in chroot_canon.c. */
17240 -+extern char *chroot_canon (const char *chroot, const char *name);
17241 -+
17242 -+/* Declared in ldconfig.c. */
17243 -+extern int opt_verbose;
17244 -+
17245 -+extern int opt_format;
17246 -+
17247 -+/* Prototypes for a few program-wide used functions. */
17248 -+#include <programs/xmalloc.h>
17249 -+
17250 -+#endif /* ! _LDCONFIG_H */
17251
17252 diff --git a/sys-libs/glibc/files/2.20/glibc-2.20-gentoo-chk_fail.c b/sys-libs/glibc/files/2.20/glibc-2.20-gentoo-chk_fail.c
17253 deleted file mode 100644
17254 index a8ab9d8..0000000
17255 --- a/sys-libs/glibc/files/2.20/glibc-2.20-gentoo-chk_fail.c
17256 +++ /dev/null
17257 @@ -1,299 +0,0 @@
17258 -/* Copyright (C) 2004-2014 Free Software Foundation, Inc.
17259 - Copyright (C) 2006-2014 Gentoo Foundation Inc.
17260 - This file is part of the GNU C Library.
17261 -
17262 - The GNU C Library is free software; you can redistribute it and/or
17263 - modify it under the terms of the GNU Lesser General Public
17264 - License as published by the Free Software Foundation; either
17265 - version 2.1 of the License, or (at your option) any later version.
17266 -
17267 - The GNU C Library is distributed in the hope that it will be useful,
17268 - but WITHOUT ANY WARRANTY; without even the implied warranty of
17269 - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17270 - Lesser General Public License for more details.
17271 -
17272 - You should have received a copy of the GNU Lesser General Public
17273 - License along with the GNU C Library; if not, write to the Free
17274 - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
17275 - 02111-1307 USA. */
17276 -
17277 -/* Hardened Gentoo SSP and FORTIFY handler
17278 -
17279 - A failure handler that does not use functions from the rest of glibc;
17280 - it uses the INTERNAL_SYSCALL methods directly. This helps ensure no
17281 - possibility of recursion into the handler.
17282 -
17283 - Direct all bug reports to http://bugs.gentoo.org/
17284 -
17285 - People who have contributed significantly to the evolution of this file:
17286 - Ned Ludd - <solar[@]gentoo.org>
17287 - Alexander Gabert - <pappy[@]gentoo.org>
17288 - The PaX Team - <pageexec[@]freemail.hu>
17289 - Peter S. Mazinger - <ps.m[@]gmx.net>
17290 - Yoann Vandoorselaere - <yoann[@]prelude-ids.org>
17291 - Robert Connolly - <robert[@]linuxfromscratch.org>
17292 - Cory Visi <cory[@]visi.name>
17293 - Mike Frysinger <vapier[@]gentoo.org>
17294 - Magnus Granberg <zorry[@]gentoo.org>
17295 - Kevin F. Quinn - <kevquinn[@]gentoo.org>
17296 - */
17297 -
17298 -#include <errno.h>
17299 -#include <stdio.h>
17300 -#include <stdlib.h>
17301 -#include <unistd.h>
17302 -#include <signal.h>
17303 -
17304 -#include <sys/types.h>
17305 -
17306 -#include <sysdep-cancel.h>
17307 -#include <sys/syscall.h>
17308 -
17309 -#include <kernel-features.h>
17310 -
17311 -#include <alloca.h>
17312 -/* from sysdeps */
17313 -#include <socketcall.h>
17314 -/* for the stuff in bits/socket.h */
17315 -#include <sys/socket.h>
17316 -#include <sys/un.h>
17317 -
17318 -/* Sanity check on SYSCALL macro names - force compilation
17319 - * failure if the names used here do not exist
17320 - */
17321 -#if !defined __NR_socketcall && !defined __NR_socket
17322 -# error Cannot do syscall socket or socketcall
17323 -#endif
17324 -#if !defined __NR_socketcall && !defined __NR_connect
17325 -# error Cannot do syscall connect or socketcall
17326 -#endif
17327 -#ifndef __NR_write
17328 -# error Cannot do syscall write
17329 -#endif
17330 -#ifndef __NR_close
17331 -# error Cannot do syscall close
17332 -#endif
17333 -#ifndef __NR_getpid
17334 -# error Cannot do syscall getpid
17335 -#endif
17336 -#ifndef __NR_kill
17337 -# error Cannot do syscall kill
17338 -#endif
17339 -#ifndef __NR_exit
17340 -# error Cannot do syscall exit
17341 -#endif
17342 -#ifdef SSP_SMASH_DUMPS_CORE
17343 -# define ENABLE_SSP_SMASH_DUMPS_CORE 1
17344 -# if !defined _KERNEL_NSIG && !defined _NSIG
17345 -# error No _NSIG or _KERNEL_NSIG for rt_sigaction
17346 -# endif
17347 -# if !defined __NR_sigaction && !defined __NR_rt_sigaction
17348 -# error Cannot do syscall sigaction or rt_sigaction
17349 -# endif
17350 -/* Although rt_sigaction expects sizeof(sigset_t) - it expects the size
17351 - * of the _kernel_ sigset_t which is not the same as the user sigset_t.
17352 - * Most arches have this as _NSIG bits - mips has _KERNEL_NSIG bits for
17353 - * some reason.
17354 - */
17355 -# ifdef _KERNEL_NSIG
17356 -# define _SSP_NSIG _KERNEL_NSIG
17357 -# else
17358 -# define _SSP_NSIG _NSIG
17359 -# endif
17360 -#else
17361 -# define _SSP_NSIG 0
17362 -# define ENABLE_SSP_SMASH_DUMPS_CORE 0
17363 -#endif
17364 -
17365 -/* Define DO_SIGACTION - default to newer rt signal interface but
17366 - * fallback to old as needed.
17367 - */
17368 -#ifdef __NR_rt_sigaction
17369 -# define DO_SIGACTION(signum, act, oldact) \
17370 - INLINE_SYSCALL(rt_sigaction, 4, signum, act, oldact, _SSP_NSIG/8)
17371 -#else
17372 -# define DO_SIGACTION(signum, act, oldact) \
17373 - INLINE_SYSCALL(sigaction, 3, signum, act, oldact)
17374 -#endif
17375 -
17376 -/* Define DO_SOCKET/DO_CONNECT functions to deal with socketcall vs socket/connect */
17377 -#if defined(__NR_socket) && defined(__NR_connect)
17378 -# define USE_OLD_SOCKETCALL 0
17379 -#else
17380 -# define USE_OLD_SOCKETCALL 1
17381 -#endif
17382 -
17383 -/* stub out the __NR_'s so we can let gcc optimize away dead code */
17384 -#ifndef __NR_socketcall
17385 -# define __NR_socketcall 0
17386 -#endif
17387 -#ifndef __NR_socket
17388 -# define __NR_socket 0
17389 -#endif
17390 -#ifndef __NR_connect
17391 -# define __NR_connect 0
17392 -#endif
17393 -#define DO_SOCKET(result, domain, type, protocol) \
17394 - do { \
17395 - if (USE_OLD_SOCKETCALL) { \
17396 - socketargs[0] = domain; \
17397 - socketargs[1] = type; \
17398 - socketargs[2] = protocol; \
17399 - socketargs[3] = 0; \
17400 - result = INLINE_SYSCALL(socketcall, 2, SOCKOP_socket, socketargs); \
17401 - } else \
17402 - result = INLINE_SYSCALL(socket, 3, domain, type, protocol); \
17403 - } while (0)
17404 -#define DO_CONNECT(result, sockfd, serv_addr, addrlen) \
17405 - do { \
17406 - if (USE_OLD_SOCKETCALL) { \
17407 - socketargs[0] = sockfd; \
17408 - socketargs[1] = (unsigned long int)serv_addr; \
17409 - socketargs[2] = addrlen; \
17410 - socketargs[3] = 0; \
17411 - result = INLINE_SYSCALL(socketcall, 2, SOCKOP_connect, socketargs); \
17412 - } else \
17413 - result = INLINE_SYSCALL(connect, 3, sockfd, serv_addr, addrlen); \
17414 - } while (0)
17415 -
17416 -#ifndef _PATH_LOG
17417 -# define _PATH_LOG "/dev/log"
17418 -#endif
17419 -
17420 -static const char path_log[] = _PATH_LOG;
17421 -
17422 -/* For building glibc with SSP switched on, define __progname to a
17423 - * constant if building for the run-time loader, to avoid pulling
17424 - * in more of libc.so into ld.so
17425 - */
17426 -#ifdef IS_IN_rtld
17427 -static const char *__progname = "<ldso>";
17428 -#else
17429 -extern const char *__progname;
17430 -#endif
17431 -
17432 -#ifdef GENTOO_SSP_HANDLER
17433 -# define ERROR_MSG "stack smashing"
17434 -#else
17435 -# define ERROR_MSG "buffer overflow"
17436 -#endif
17437 -
17438 -/* Common handler code, used by chk_fail
17439 - * Inlined to ensure no self-references to the handler within itself.
17440 - * Data static to avoid putting more than necessary on the stack,
17441 - * to aid core debugging.
17442 - */
17443 -__attribute__ ((__noreturn__, __always_inline__))
17444 -static inline void
17445 -__hardened_gentoo_fail(void)
17446 -{
17447 -#define MESSAGE_BUFSIZ 512
17448 - static pid_t pid;
17449 - static int plen, i, hlen;
17450 - static char message[MESSAGE_BUFSIZ];
17451 - /* <11> is LOG_USER|LOG_ERR. A dummy date for loggers to skip over. */
17452 - static const char msg_header[] = "<11>" __DATE__ " " __TIME__ " glibc-gentoo-hardened-check: ";
17453 - static const char msg_ssd[] = "*** " ERROR_MSG " detected ***: ";
17454 - static const char msg_terminated[] = " terminated; ";
17455 - static const char msg_report[] = "report to " REPORT_BUGS_TO "\n";
17456 - static const char msg_unknown[] = "<unknown>";
17457 - static int log_socket, connect_result;
17458 - static struct sockaddr_un sock;
17459 - static unsigned long int socketargs[4];
17460 -
17461 - /* Build socket address */
17462 - sock.sun_family = AF_UNIX;
17463 - i = 0;
17464 - while (path_log[i] != '\0' && i < sizeof(sock.sun_path) - 1) {
17465 - sock.sun_path[i] = path_log[i];
17466 - ++i;
17467 - }
17468 - sock.sun_path[i] = '\0';
17469 -
17470 - /* Try SOCK_DGRAM connection to syslog */
17471 - connect_result = -1;
17472 - DO_SOCKET(log_socket, AF_UNIX, SOCK_DGRAM, 0);
17473 - if (log_socket != -1)
17474 - DO_CONNECT(connect_result, log_socket, &sock, sizeof(sock));
17475 - if (connect_result == -1) {
17476 - if (log_socket != -1)
17477 - INLINE_SYSCALL(close, 1, log_socket);
17478 - /* Try SOCK_STREAM connection to syslog */
17479 - DO_SOCKET(log_socket, AF_UNIX, SOCK_STREAM, 0);
17480 - if (log_socket != -1)
17481 - DO_CONNECT(connect_result, log_socket, &sock, sizeof(sock));
17482 - }
17483 -
17484 - /* Build message. Messages are generated both in the old style and new style,
17485 - * so that log watchers that are configured for the old-style message continue
17486 - * to work.
17487 - */
17488 -#define strconcat(str) \
17489 - ({ \
17490 - i = 0; \
17491 - while ((str[i] != '\0') && ((i + plen) < (MESSAGE_BUFSIZ - 1))) { \
17492 - message[plen + i] = str[i]; \
17493 - ++i; \
17494 - } \
17495 - plen += i; \
17496 - })
17497 -
17498 - /* Tersely log the failure */
17499 - plen = 0;
17500 - strconcat(msg_header);
17501 - hlen = plen;
17502 - strconcat(msg_ssd);
17503 - if (__progname != NULL)
17504 - strconcat(__progname);
17505 - else
17506 - strconcat(msg_unknown);
17507 - strconcat(msg_terminated);
17508 - strconcat(msg_report);
17509 -
17510 - /* Write out error message to STDERR, to syslog if open */
17511 - INLINE_SYSCALL(write, 3, STDERR_FILENO, message + hlen, plen - hlen);
17512 - if (connect_result != -1) {
17513 - INLINE_SYSCALL(write, 3, log_socket, message, plen);
17514 - INLINE_SYSCALL(close, 1, log_socket);
17515 - }
17516 -
17517 - /* Time to kill self since we have no idea what is going on */
17518 - pid = INLINE_SYSCALL(getpid, 0);
17519 -
17520 - if (ENABLE_SSP_SMASH_DUMPS_CORE) {
17521 - /* Remove any user-supplied handler for SIGABRT, before using it. */
17522 -#if 0
17523 - /*
17524 - * Note: Disabled because some programs catch & process their
17525 - * own crashes. We've already enabled this code path which
17526 - * means we want to let core dumps happen.
17527 - */
17528 - static struct sigaction default_abort_act;
17529 - default_abort_act.sa_handler = SIG_DFL;
17530 - default_abort_act.sa_sigaction = NULL;
17531 - __sigfillset(&default_abort_act.sa_mask);
17532 - default_abort_act.sa_flags = 0;
17533 - if (DO_SIGACTION(SIGABRT, &default_abort_act, NULL) == 0)
17534 -#endif
17535 - INLINE_SYSCALL(kill, 2, pid, SIGABRT);
17536 - }
17537 -
17538 - /* SIGKILL is only signal which cannot be caught */
17539 - INLINE_SYSCALL(kill, 2, pid, SIGKILL);
17540 -
17541 - /* In case the kill didn't work, exit anyway.
17542 - * The loop prevents gcc thinking this routine returns.
17543 - */
17544 - while (1)
17545 - INLINE_SYSCALL(exit, 1, 137);
17546 -}
17547 -
17548 -__attribute__ ((__noreturn__))
17549 -#ifdef GENTOO_SSP_HANDLER
17550 -void __stack_chk_fail(void)
17551 -#else
17552 -void __chk_fail(void)
17553 -#endif
17554 -{
17555 - __hardened_gentoo_fail();
17556 -}
17557
17558 diff --git a/sys-libs/glibc/files/2.20/glibc-2.20-gentoo-stack_chk_fail.c b/sys-libs/glibc/files/2.20/glibc-2.20-gentoo-stack_chk_fail.c
17559 deleted file mode 100644
17560 index 4a537bb..0000000
17561 --- a/sys-libs/glibc/files/2.20/glibc-2.20-gentoo-stack_chk_fail.c
17562 +++ /dev/null
17563 @@ -1,2 +0,0 @@
17564 -#define GENTOO_SSP_HANDLER
17565 -#include <debug/chk_fail.c>
17566
17567 diff --git a/sys-libs/glibc/files/2.20/glibc-2.20-hardened-inittls-nosysenter.patch b/sys-libs/glibc/files/2.20/glibc-2.20-hardened-inittls-nosysenter.patch
17568 deleted file mode 100644
17569 index 35eabe9..0000000
17570 --- a/sys-libs/glibc/files/2.20/glibc-2.20-hardened-inittls-nosysenter.patch
17571 +++ /dev/null
17572 @@ -1,306 +0,0 @@
17573 -When building glibc PIE (which is not something upstream support),
17574 -several modifications are necessary to the glibc build process.
17575 -
17576 -First, any syscalls in PIEs must be of the PIC variant, otherwise
17577 -textrels ensue. Then, any syscalls made before the initialisation
17578 -of the TLS will fail on i386, as the sysenter variant on i386 uses
17579 -the TLS, giving rise to a chicken-and-egg situation. This patch
17580 -defines a PIC syscall variant that doesn't use sysenter, even when the sysenter
17581 -version is normally used, and uses the non-sysenter version for the brk
17582 -syscall that is performed by the TLS initialisation. Further, the TLS
17583 -initialisation is moved in this case prior to the initialisation of
17584 -dl_osversion, as that requires further syscalls.
17585 -
17586 -csu/libc-start.c: Move initial TLS initialization to before the
17587 -initialisation of dl_osversion, when INTERNAL_SYSCALL_PRE_TLS is defined
17588 -
17589 -csu/libc-tls.c: Use the no-sysenter version of sbrk when
17590 -INTERNAL_SYSCALL_PRE_TLS is defined.
17591 -
17592 -misc/sbrk.c: Define a no-sysenter version of sbrk, using the no-sysenter
17593 -version of brk - if INTERNAL_SYSCALL_PRE_TLS is defined.
17594 -
17595 -misc/brk.c: Define a no-sysenter version of brk if
17596 -INTERNAL_SYSCALL_PRE_TLS is defined.
17597 -
17598 -sysdeps/unix/sysv/linux/i386/sysdep.h: Define INTERNAL_SYSCALL_PRE_TLS
17599 -Make INTERNAL_SYSCALL always use the PIC variant, even if not SHARED.
17600 -
17601 -Patch by Kevin F. Quinn <kevquinn@g.o>
17602 -Fixed for 2.10 by Magnus Granberg <zorry@×××.nu>
17603 -Fixed for 2.18 by Magnus Granberg <zorry@g.o>
17604 -Fixed for 2.20 by Francisco Blas Izquierdo Riera <klondike@g.o>
17605 -
17606 ---- a/csu/libc-start.c
17607 -+++ b/csu/libc-start.c
17608 -@@ -28,6 +28,7 @@
17609 - extern int __libc_multiple_libcs;
17610 -
17611 - #include <tls.h>
17612 -+#include <sysdep.h>
17613 - #ifndef SHARED
17614 - # include <dl-osinfo.h>
17615 - extern void __pthread_initialize_minimal (void);
17616 -@@ -170,6 +171,11 @@ LIBC_START_MAIN (int (*main) (int, char
17617 - }
17618 - }
17619 -
17620 -+# ifdef INTERNAL_SYSCALL_PRE_TLS
17621 -+ /* Do the initial TLS initialization before _dl_osversion,
17622 -+ since the latter uses the uname syscall. */
17623 -+ __pthread_initialize_minimal ();
17624 -+# endif
17625 - # ifdef DL_SYSDEP_OSCHECK
17626 - if (!__libc_multiple_libcs)
17627 - {
17628 -@@ -138,10 +144,12 @@
17629 - }
17630 - # endif
17631 -
17632 -+# ifndef INTERNAL_SYSCALL_PRE_TLS
17633 - /* Initialize the thread library at least a bit since the libgcc
17634 - functions are using thread functions if these are available and
17635 - we need to setup errno. */
17636 - __pthread_initialize_minimal ();
17637 -+# endif
17638 -
17639 - /* Set up the stack checker's canary. */
17640 - uintptr_t stack_chk_guard = _dl_setup_stack_chk_guard ();
17641 ---- a/csu/libc-tls.c
17642 -+++ b/csu/libc-tls.c
17643 -@@ -22,12 +22,17 @@
17644 - #include <unistd.h>
17645 - #include <stdio.h>
17646 - #include <sys/param.h>
17647 -+#include <sysdep.h>
17648 -
17649 -
17650 - #ifdef SHARED
17651 - #error makefile bug, this file is for static only
17652 - #endif
17653 -
17654 -+#ifdef INTERNAL_SYSCALL_PRE_TLS
17655 -+extern void *__sbrk_nosysenter (intptr_t __delta);
17656 -+#endif
17657 -+
17658 - dtv_t _dl_static_dtv[2 + TLS_SLOTINFO_SURPLUS];
17659 -
17660 -
17661 -@@ -139,20 +144,29 @@ __libc_setup_tls (size_t tcbsize, size_t
17662 -
17663 - The initialized value of _dl_tls_static_size is provided by dl-open.c
17664 - to request some surplus that permits dynamic loading of modules with
17665 -- IE-model TLS. */
17666 -+ IE-model TLS.
17667 -+
17668 -+ Where the normal sbrk would use a syscall that needs the TLS (i386)
17669 -+ use the special non-sysenter version instead. */
17670 -+#ifdef INTERNAL_SYSCALL_PRE_TLS
17671 -+# define __sbrk __sbrk_nosysenter
17672 -+#endif
17673 - #if TLS_TCB_AT_TP
17674 - tcb_offset = roundup (memsz + GL(dl_tls_static_size), tcbalign);
17675 - tlsblock = __sbrk (tcb_offset + tcbsize + max_align);
17676 - #elif TLS_DTV_AT_TP
17677 - tcb_offset = roundup (tcbsize, align ?: 1);
17678 - tlsblock = __sbrk (tcb_offset + memsz + max_align
17679 - + TLS_PRE_TCB_SIZE + GL(dl_tls_static_size));
17680 - tlsblock += TLS_PRE_TCB_SIZE;
17681 - #else
17682 - /* In case a model with a different layout for the TCB and DTV
17683 - is defined add another #elif here and in the following #ifs. */
17684 - # error "Either TLS_TCB_AT_TP or TLS_DTV_AT_TP must be defined"
17685 - #endif
17686 -+#ifdef INTERNAL_SYSCALL_PRE_TLS
17687 -+# undef __sbrk
17688 -+#endif
17689 -
17690 - /* Align the TLS block. */
17691 - tlsblock = (void *) (((uintptr_t) tlsblock + max_align - 1)
17692 ---- a/misc/sbrk.c
17693 -+++ b/misc/sbrk.c
17694 -@@ -18,6 +18,7 @@
17695 - #include <errno.h>
17696 - #include <stdint.h>
17697 - #include <unistd.h>
17698 -+#include <sysdep.h>
17699 -
17700 - /* Defined in brk.c. */
17701 - extern void *__curbrk;
17702 -@@ -29,6 +30,35 @@
17703 - /* Extend the process's data space by INCREMENT.
17704 - If INCREMENT is negative, shrink data space by - INCREMENT.
17705 - Return start of new space allocated, or -1 for errors. */
17706 -+#ifdef INTERNAL_SYSCALL_PRE_TLS
17707 -+/* This version is used by csu/libc-tls.c whem initialising the TLS
17708 -+ if the SYSENTER version requires the TLS (which it does on i386).
17709 -+ Obviously using the TLS before it is initialised is broken. */
17710 -+extern int __brk_nosysenter (void *addr);
17711 -+void *
17712 -+__sbrk_nosysenter (intptr_t increment)
17713 -+{
17714 -+ void *oldbrk;
17715 -+
17716 -+ /* If this is not part of the dynamic library or the library is used via
17717 -+ dynamic loading in a statically linked program update __curbrk from the
17718 -+ kernel's brk value. That way two separate instances of __brk and __sbrk
17719 -+ can share the heap, returning interleaved pieces of it. */
17720 -+ if (__curbrk == NULL || __libc_multiple_libcs)
17721 -+ if (__brk_nosysenter (0) < 0) /* Initialize the break. */
17722 -+ return (void *) -1;
17723 -+
17724 -+ if (increment == 0)
17725 -+ return __curbrk;
17726 -+
17727 -+ oldbrk = __curbrk;
17728 -+ if (__brk_nosysenter (oldbrk + increment) < 0)
17729 -+ return (void *) -1;
17730 -+
17731 -+ return oldbrk;
17732 -+}
17733 -+#endif
17734 -+
17735 - void *
17736 - __sbrk (intptr_t increment)
17737 - {
17738 ---- a/sysdeps/unix/sysv/linux/i386/brk.c
17739 -+++ b/sysdeps/unix/sysv/linux/i386/brk.c
17740 -@@ -31,6 +31,30 @@
17741 - linker. */
17742 - weak_alias (__curbrk, ___brk_addr)
17743 -
17744 -+#ifdef INTERNAL_SYSCALL_PRE_TLS
17745 -+/* This version is used by csu/libc-tls.c whem initialising the TLS
17746 -+ if the SYSENTER version requires the TLS (which it does on i386).
17747 -+ Obviously using the TLS before it is initialised is broken. */
17748 -+int
17749 -+__brk_nosysenter (void *addr)
17750 -+{
17751 -+ void *newbrk;
17752 -+
17753 -+ INTERNAL_SYSCALL_DECL (err);
17754 -+ newbrk = (void *) INTERNAL_SYSCALL_PRE_TLS (brk, err, 1, addr);
17755 -+
17756 -+ __curbrk = newbrk;
17757 -+
17758 -+ if (newbrk < addr)
17759 -+ {
17760 -+ __set_errno (ENOMEM);
17761 -+ return -1;
17762 -+ }
17763 -+
17764 -+ return 0;
17765 -+}
17766 -+#endif
17767 -+
17768 - int
17769 - __brk (void *addr)
17770 - {
17771 ---- a/sysdeps/unix/sysv/linux/i386/sysdep.h
17772 -+++ b/sysdeps/unix/sysv/linux/i386/sysdep.h
17773 -@@ -187,7 +187,7 @@
17774 - /* The original calling convention for system calls on Linux/i386 is
17775 - to use int $0x80. */
17776 - #ifdef I386_USE_SYSENTER
17777 --# ifdef SHARED
17778 -+# ifdef __PIC__
17779 - # define ENTER_KERNEL call *%gs:SYSINFO_OFFSET
17780 - # else
17781 - # define ENTER_KERNEL call *_dl_sysinfo
17782 -@@ -358,7 +358,7 @@
17783 - possible to use more than four parameters. */
17784 - #undef INTERNAL_SYSCALL
17785 - #ifdef I386_USE_SYSENTER
17786 --# ifdef SHARED
17787 -+# ifdef __PIC__
17788 - # define INTERNAL_SYSCALL(name, err, nr, args...) \
17789 - ({ \
17790 - register unsigned int resultvar; \
17791 -@@ -384,6 +384,18 @@
17792 - : "0" (name), "i" (offsetof (tcbhead_t, sysinfo)) \
17793 - ASMFMT_##nr(args) : "memory", "cc"); \
17794 - (int) resultvar; })
17795 -+# define INTERNAL_SYSCALL_PRE_TLS(name, err, nr, args...) \
17796 -+ ({ \
17797 -+ register unsigned int resultvar; \
17798 -+ EXTRAVAR_##nr \
17799 -+ asm volatile ( \
17800 -+ LOADARGS_NOSYSENTER_##nr \
17801 -+ "movl %1, %%eax\n\t" \
17802 -+ "int $0x80\n\t" \
17803 -+ RESTOREARGS_NOSYSENTER_##nr \
17804 -+ : "=a" (resultvar) \
17805 -+ : "i" (__NR_##name) ASMFMT_##nr(args) : "memory", "cc"); \
17806 -+ (int) resultvar; })
17807 - # else
17808 - # define INTERNAL_SYSCALL(name, err, nr, args...) \
17809 - ({ \
17810 -@@ -447,12 +459,20 @@
17811 -
17812 - #define LOADARGS_0
17813 - #ifdef __PIC__
17814 --# if defined I386_USE_SYSENTER && defined SHARED
17815 -+# if defined I386_USE_SYSENTER && defined __PIC__
17816 - # define LOADARGS_1 \
17817 - "bpushl .L__X'%k3, %k3\n\t"
17818 - # define LOADARGS_5 \
17819 - "movl %%ebx, %4\n\t" \
17820 - "movl %3, %%ebx\n\t"
17821 -+# define LOADARGS_NOSYSENTER_1 \
17822 -+ "bpushl .L__X'%k2, %k2\n\t"
17823 -+# define LOADARGS_NOSYSENTER_2 LOADARGS_NOSYSENTER_1
17824 -+# define LOADARGS_NOSYSENTER_3 LOADARGS_3
17825 -+# define LOADARGS_NOSYSENTER_4 LOADARGS_3
17826 -+# define LOADARGS_NOSYSENTER_5 \
17827 -+ "movl %%ebx, %3\n\t" \
17828 -+ "movl %2, %%ebx\n\t"
17829 - # else
17830 - # define LOADARGS_1 \
17831 - "bpushl .L__X'%k2, %k2\n\t"
17832 -@@ -474,11 +494,18 @@
17833 -
17834 - #define RESTOREARGS_0
17835 - #ifdef __PIC__
17836 --# if defined I386_USE_SYSENTER && defined SHARED
17837 -+# if defined I386_USE_SYSENTER && defined __PIC__
17838 - # define RESTOREARGS_1 \
17839 - "bpopl .L__X'%k3, %k3\n\t"
17840 - # define RESTOREARGS_5 \
17841 - "movl %4, %%ebx"
17842 -+# define RESTOREARGS_NOSYSENTER_1 \
17843 -+ "bpopl .L__X'%k2, %k2\n\t"
17844 -+# define RESTOREARGS_NOSYSENTER_2 RESTOREARGS_NOSYSENTER_1
17845 -+# define RESTOREARGS_NOSYSENTER_3 RESTOREARGS_3
17846 -+# define RESTOREARGS_NOSYSENTER_4 RESTOREARGS_3
17847 -+# define RESTOREARGS_NOSYSENTER_5 \
17848 -+ "movl %3, %%ebx"
17849 - # else
17850 - # define RESTOREARGS_1 \
17851 - "bpopl .L__X'%k2, %k2\n\t"
17852 ---- a/sysdeps/i386/nptl/tls.h
17853 -+++ b/sysdeps/i386/nptl/tls.h
17854 -@@ -189,6 +189,15 @@
17855 - desc->vals[3] = 0x51;
17856 - }
17857 -
17858 -+/* We have no sysenter until the tls is initialized which is a
17859 -+ problem for PIC. Thus we need to do the right call depending
17860 -+ on the situation. */
17861 -+#ifndef INTERNAL_SYSCALL_PRE_TLS
17862 -+# define TLS_INIT_SYSCALL INTERNAL_SYSCALL
17863 -+#else
17864 -+# define TLS_INIT_SYSCALL INTERNAL_SYSCALL_PRE_TLS
17865 -+#endif
17866 -+
17867 - /* Code to initially initialize the thread pointer. This might need
17868 - special attention since 'errno' is not yet available and if the
17869 - operation can cause a failure 'errno' must not be touched. */
17870 -@@ -209,7 +218,7 @@
17871 - \
17872 - /* Install the TLS. */ \
17873 - INTERNAL_SYSCALL_DECL (err); \
17874 -- _result = INTERNAL_SYSCALL (set_thread_area, err, 1, &_segdescr.desc); \
17875 -+ _result = TLS_INIT_SYSCALL (set_thread_area, err, 1, &_segdescr.desc); \
17876 - \
17877 - if (_result == 0) \
17878 - /* We know the index in the GDT, now load the segment register. \
17879
17880 diff --git a/sys-libs/glibc/files/2.20/glibc-2.20-vdso-disable.patch b/sys-libs/glibc/files/2.20/glibc-2.20-vdso-disable.patch
17881 deleted file mode 100644
17882 index 2b2de6b..0000000
17883 --- a/sys-libs/glibc/files/2.20/glibc-2.20-vdso-disable.patch
17884 +++ /dev/null
17885 @@ -1,20 +0,0 @@
17886 -disable vdso loading in ELF handler unconditionally for some buggy kernel
17887 -like that shipped with RHEL(likely CentOS and SL) 5.6
17888 -
17889 - https://bugzilla.redhat.com/show_bug.cgi?id=673616
17890 -
17891 -Benda Xu <heroxbd@g.o> (24 Nov, 2014)
17892 -
17893 -Index: work/glibc-2.20/sysdeps/unix/sysv/linux/dl-sysdep.h
17894 -===================================================================
17895 ---- work.orig/glibc-2.20/sysdeps/unix/sysv/linux/dl-sysdep.h
17896 -+++ work/glibc-2.20/sysdeps/unix/sysv/linux/dl-sysdep.h
17897 -@@ -23,7 +23,7 @@
17898 - machines, we should look at it for unwind information even if
17899 - we aren't making direct use of it. So enable this across the board. */
17900 -
17901 --#define NEED_DL_SYSINFO_DSO 1
17902 -+#define NEED_DL_SYSINFO_DSO 0
17903 -
17904 -
17905 - #ifndef __ASSEMBLER__
17906
17907 diff --git a/sys-libs/glibc/files/2.3.3/glibc-2.3.3-localedef-fix-trampoline.patch b/sys-libs/glibc/files/2.3.3/glibc-2.3.3-localedef-fix-trampoline.patch
17908 deleted file mode 100644
17909 index 7c4399f..0000000
17910 --- a/sys-libs/glibc/files/2.3.3/glibc-2.3.3-localedef-fix-trampoline.patch
17911 +++ /dev/null
17912 @@ -1,68 +0,0 @@
17913 -#! /bin/sh -e
17914 -
17915 -# DP: Description: Fix localedef segfault when run under exec-shield,
17916 -# PaX or similar. (#231438, #198099)
17917 -# DP: Dpatch Author: James Troup <james@××××××.org>
17918 -# DP: Patch Author: (probably) Jakub Jelinek <jakub@××××××.com>
17919 -# DP: Upstream status: Unknown
17920 -# DP: Status Details: Unknown
17921 -# DP: Date: 2004-03-16
17922 -
17923 -if [ $# -ne 2 ]; then
17924 - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
17925 - exit 1
17926 -fi
17927 -case "$1" in
17928 - -patch) patch -d "$2" -f --no-backup-if-mismatch -p1 < $0;;
17929 - -unpatch) patch -d "$2" -f --no-backup-if-mismatch -R -p1 < $0;;
17930 - *)
17931 - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
17932 - exit 1
17933 -esac
17934 -exit 0
17935 -
17936 ---- glibc-2.3.3-net/locale/programs/3level.h 16 Jun 2003 07:19:09 -0000 1.1.1.5
17937 -+++ glibc-2.3.3-redhat/locale/programs/3level.h 16 Jun 2003 09:32:40 -0000 1.4
17938 -@@ -204,6 +204,42 @@ CONCAT(TABLE,_iterate) (struct TABLE *t,
17939 - }
17940 - }
17941 - }
17942 -+
17943 -+/* GCC ATM seems to do a poor job with pointers to nested functions passed
17944 -+ to inlined functions. Help it a little bit with this hack. */
17945 -+#define wchead_table_iterate(tp, fn) \
17946 -+do \
17947 -+ { \
17948 -+ struct wchead_table *t = (tp); \
17949 -+ uint32_t index1; \
17950 -+ for (index1 = 0; index1 < t->level1_size; index1++) \
17951 -+ { \
17952 -+ uint32_t lookup1 = t->level1[index1]; \
17953 -+ if (lookup1 != ((uint32_t) ~0)) \
17954 -+ { \
17955 -+ uint32_t lookup1_shifted = lookup1 << t->q; \
17956 -+ uint32_t index2; \
17957 -+ for (index2 = 0; index2 < (1 << t->q); index2++) \
17958 -+ { \
17959 -+ uint32_t lookup2 = t->level2[index2 + lookup1_shifted]; \
17960 -+ if (lookup2 != ((uint32_t) ~0)) \
17961 -+ { \
17962 -+ uint32_t lookup2_shifted = lookup2 << t->p; \
17963 -+ uint32_t index3; \
17964 -+ for (index3 = 0; index3 < (1 << t->p); index3++) \
17965 -+ { \
17966 -+ struct element_t *lookup3 \
17967 -+ = t->level3[index3 + lookup2_shifted]; \
17968 -+ if (lookup3 != NULL) \
17969 -+ fn ((((index1 << t->q) + index2) << t->p) + index3, \
17970 -+ lookup3); \
17971 -+ } \
17972 -+ } \
17973 -+ } \
17974 -+ } \
17975 -+ } \
17976 -+ } while (0)
17977 -+
17978 - #endif
17979 -
17980 - #ifndef NO_FINALIZE
17981
17982 diff --git a/sys-libs/glibc/files/2.5/glibc-2.5-gentoo-stack_chk_fail.c b/sys-libs/glibc/files/2.5/glibc-2.5-gentoo-stack_chk_fail.c
17983 deleted file mode 100644
17984 index e304440..0000000
17985 --- a/sys-libs/glibc/files/2.5/glibc-2.5-gentoo-stack_chk_fail.c
17986 +++ /dev/null
17987 @@ -1,311 +0,0 @@
17988 -/* Copyright (C) 2005 Free Software Foundation, Inc.
17989 - This file is part of the GNU C Library.
17990 -
17991 - The GNU C Library is free software; you can redistribute it and/or
17992 - modify it under the terms of the GNU Lesser General Public
17993 - License as published by the Free Software Foundation; either
17994 - version 2.1 of the License, or (at your option) any later version.
17995 -
17996 - The GNU C Library is distributed in the hope that it will be useful,
17997 - but WITHOUT ANY WARRANTY; without even the implied warranty of
17998 - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17999 - Lesser General Public License for more details.
18000 -
18001 - You should have received a copy of the GNU Lesser General Public
18002 - License along with the GNU C Library; if not, write to the Free
18003 - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
18004 - 02111-1307 USA. */
18005 -
18006 -/* Copyright (C) 2006 Gentoo Foundation Inc.
18007 - * License terms as above.
18008 - *
18009 - * Hardened Gentoo SSP handler
18010 - *
18011 - * An SSP failure handler that does not use functions from the rest of
18012 - * glibc; it uses the INTERNAL_SYSCALL methods directly. This ensures
18013 - * no possibility of recursion into the handler.
18014 - *
18015 - * Direct all bug reports to http://bugs.gentoo.org/
18016 - *
18017 - * Re-written from the glibc-2.3 Hardened Gentoo SSP handler
18018 - * by Kevin F. Quinn - <kevquinn[@]gentoo.org>
18019 - *
18020 - * The following people contributed to the glibc-2.3 Hardened
18021 - * Gentoo SSP handler, from which this implementation draws much:
18022 - *
18023 - * Ned Ludd - <solar[@]gentoo.org>
18024 - * Alexander Gabert - <pappy[@]gentoo.org>
18025 - * The PaX Team - <pageexec[@]freemail.hu>
18026 - * Peter S. Mazinger - <ps.m[@]gmx.net>
18027 - * Yoann Vandoorselaere - <yoann[@]prelude-ids.org>
18028 - * Robert Connolly - <robert[@]linuxfromscratch.org>
18029 - * Cory Visi <cory[@]visi.name>
18030 - * Mike Frysinger <vapier[@]gentoo.org>
18031 - */
18032 -
18033 -#include <errno.h>
18034 -#include <stdlib.h>
18035 -#include <unistd.h>
18036 -#include <signal.h>
18037 -
18038 -#include <sys/types.h>
18039 -
18040 -#include <sysdep-cancel.h>
18041 -#include <sys/syscall.h>
18042 -#include <bp-checks.h>
18043 -
18044 -#include <kernel-features.h>
18045 -
18046 -#include <alloca.h>
18047 -/* from sysdeps */
18048 -#include <socketcall.h>
18049 -/* for the stuff in bits/socket.h */
18050 -#include <sys/socket.h>
18051 -#include <sys/un.h>
18052 -
18053 -
18054 -/* Sanity check on SYSCALL macro names - force compilation
18055 - * failure if the names used here do not exist
18056 - */
18057 -#if !defined __NR_socketcall && !defined __NR_socket
18058 -# error Cannot do syscall socket or socketcall
18059 -#endif
18060 -#if !defined __NR_socketcall && !defined __NR_connect
18061 -# error Cannot do syscall connect or socketcall
18062 -#endif
18063 -#ifndef __NR_write
18064 -# error Cannot do syscall write
18065 -#endif
18066 -#ifndef __NR_close
18067 -# error Cannot do syscall close
18068 -#endif
18069 -#ifndef __NR_getpid
18070 -# error Cannot do syscall getpid
18071 -#endif
18072 -#ifndef __NR_kill
18073 -# error Cannot do syscall kill
18074 -#endif
18075 -#ifndef __NR_exit
18076 -# error Cannot do syscall exit
18077 -#endif
18078 -#ifdef SSP_SMASH_DUMPS_CORE
18079 -# if !defined _KERNEL_NSIG && !defined _NSIG
18080 -# error No _NSIG or _KERNEL_NSIG for rt_sigaction
18081 -# endif
18082 -# if !defined __NR_sigation && !defined __NR_rt_sigaction
18083 -# error Cannot do syscall sigaction or rt_sigaction
18084 -# endif
18085 -#endif
18086 -
18087 -
18088 -
18089 -/* Define DO_SOCKET/DO_CONNECT macros to deal with socketcall vs socket/connect */
18090 -#ifdef __NR_socketcall
18091 -
18092 -# define DO_SOCKET(result,domain,type,protocol) \
18093 - {socketargs[0] = domain; \
18094 - socketargs[1] = type; \
18095 - socketargs[2] = protocol; \
18096 - socketargs[3] = 0; \
18097 - result = INLINE_SYSCALL(socketcall,2,SOCKOP_socket,socketargs);}
18098 -
18099 -# define DO_CONNECT(result,sockfd,serv_addr,addrlen) \
18100 - {socketargs[0] = sockfd; \
18101 - socketargs[1] = (unsigned long int)serv_addr; \
18102 - socketargs[2] = addrlen; \
18103 - socketargs[3] = 0; \
18104 - result = INLINE_SYSCALL(socketcall,2,SOCKOP_connect,socketargs);}
18105 -
18106 -#else
18107 -
18108 -# define DO_SOCKET(result,domain,type,protocol) \
18109 - {result = INLINE_SYSCALL(socket,3,domain,type,protocol);}
18110 -
18111 -# define DO_CONNECT(result,sockfd,serv_addr,addrlen) \
18112 - {result = INLINE_SYSCALL(connect,3,sockfd,serv_addr,addrlen);}
18113 -
18114 -#endif
18115 -/* __NR_socketcall */
18116 -
18117 -
18118 -#ifndef _PATH_LOG
18119 -# define _PATH_LOG "/dev/log"
18120 -#endif
18121 -
18122 -static const char path_log[]=_PATH_LOG;
18123 -
18124 -/* For building glibc with SSP switched on, define __progname to a
18125 - * constant if building for the run-time loader, to avoid pulling
18126 - * in more of libc.so into ld.so
18127 - */
18128 -#ifdef IS_IN_rtld
18129 -static char *__progname = "<rtld>";
18130 -#else
18131 -extern char *__progname;
18132 -#endif
18133 -
18134 -
18135 -/* Common handler code, used by stack_chk_fail and __stack_smash_handler
18136 - * Inlined to ensure no self-references to the handler within itself.
18137 - * Data static to avoid putting more than necessary on the stack,
18138 - * to aid core debugging.
18139 - */
18140 -static inline void
18141 -__attribute__ ((__noreturn__ , __always_inline__))
18142 -__hardened_gentoo_stack_chk_fail (char func[], int damaged)
18143 -{
18144 -#define MESSAGE_BUFSIZ 256
18145 - static pid_t pid;
18146 - static int plen, i;
18147 - static char message[MESSAGE_BUFSIZ];
18148 - static const char msg_ssa[]=": stack smashing attack";
18149 - static const char msg_inf[]=" in function ";
18150 - static const char msg_ssd[]="*** stack smashing detected ***: ";
18151 - static const char msg_terminated[]=" - terminated\n";
18152 - static const char msg_report[]="Report to http://bugs.gentoo.org/\n";
18153 - static const char msg_unknown[]="<unknown>";
18154 -#ifdef SSP_SMASH_DUMPS_CORE
18155 - static struct sigaction default_abort_act;
18156 -#endif
18157 - static int log_socket, connect_result;
18158 - static struct sockaddr_un sock;
18159 -#ifdef __NR_socketcall
18160 - static unsigned long int socketargs[4];
18161 -#endif
18162 -
18163 - /* Build socket address
18164 - */
18165 - sock.sun_family = AF_UNIX;
18166 - i=0;
18167 - while ((path_log[i] != '\0') && (i<(sizeof(sock.sun_path)-1)))
18168 - {
18169 - sock.sun_path[i]=path_log[i];
18170 - i++;
18171 - }
18172 - sock.sun_path[i]='\0';
18173 -
18174 - /* Try SOCK_DGRAM connection to syslog */
18175 - connect_result=-1;
18176 - DO_SOCKET(log_socket,AF_UNIX,SOCK_DGRAM,0);
18177 - if (log_socket != -1)
18178 - DO_CONNECT(connect_result,log_socket,(&sock),(sizeof(sock)));
18179 - if (connect_result == -1)
18180 - {
18181 - if (log_socket != -1)
18182 - INLINE_SYSCALL(close,1,log_socket);
18183 - /* Try SOCK_STREAM connection to syslog */
18184 - DO_SOCKET(log_socket,AF_UNIX,SOCK_STREAM,0);
18185 - if (log_socket != -1)
18186 - DO_CONNECT(connect_result,log_socket,(&sock),(sizeof(sock)));
18187 - }
18188 -
18189 - /* Build message. Messages are generated both in the old style and new style,
18190 - * so that log watchers that are configured for the old-style message continue
18191 - * to work.
18192 - */
18193 -#define strconcat(str) \
18194 - {i=0; while ((str[i] != '\0') && ((i+plen)<(MESSAGE_BUFSIZ-1))) \
18195 - {\
18196 - message[plen+i]=str[i];\
18197 - i++;\
18198 - }\
18199 - plen+=i;}
18200 -
18201 - /* R.Henderson post-gcc-4 style message */
18202 - plen=0;
18203 - strconcat(msg_ssd);
18204 - if (__progname != (char *)0)
18205 - strconcat(__progname)
18206 - else
18207 - strconcat(msg_unknown);
18208 - strconcat(msg_terminated);
18209 -
18210 - /* Write out error message to STDERR, to syslog if open */
18211 - INLINE_SYSCALL(write,3,STDERR_FILENO,message,plen);
18212 - if (connect_result != -1)
18213 - INLINE_SYSCALL(write,3,log_socket,message,plen);
18214 -
18215 - /* Dr. Etoh pre-gcc-4 style message */
18216 - plen=0;
18217 - if (__progname != (char *)0)
18218 - strconcat(__progname)
18219 - else
18220 - strconcat(msg_unknown);
18221 - strconcat(msg_ssa);
18222 - strconcat(msg_inf);
18223 - if (func!=NULL)
18224 - strconcat(func)
18225 - else
18226 - strconcat(msg_unknown);
18227 - strconcat(msg_terminated);
18228 - /* Write out error message to STDERR, to syslog if open */
18229 - INLINE_SYSCALL(write,3,STDERR_FILENO,message,plen);
18230 - if (connect_result != -1)
18231 - INLINE_SYSCALL(write,3,log_socket,message,plen);
18232 -
18233 - /* Direct reports to bugs.gentoo.org */
18234 - plen=0;
18235 - strconcat(msg_report);
18236 - message[plen++]='\0';
18237 -
18238 - /* Write out error message to STDERR, to syslog if open */
18239 - INLINE_SYSCALL(write,3,STDERR_FILENO,message,plen);
18240 - if (connect_result != -1)
18241 - INLINE_SYSCALL(write,3,log_socket,message,plen);
18242 -
18243 - if (log_socket != -1)
18244 - INLINE_SYSCALL(close,1,log_socket);
18245 -
18246 - /* Suicide */
18247 - pid=INLINE_SYSCALL(getpid,0);
18248 -#ifdef SSP_SMASH_DUMPS_CORE
18249 - /* Remove any user-supplied handler for SIGABRT, before using it */
18250 - default_abort_act.sa_handler = SIG_DFL;
18251 - default_abort_act.sa_sigaction = NULL;
18252 - __sigfillset(&default_abort_act.sa_mask);
18253 - default_abort_act.sa_flags = 0;
18254 - /* sigaction doesn't exist on amd64; however rt_sigaction seems to
18255 - * exist everywhere. rt_sigaction has an extra parameter - the
18256 - * size of sigset_t.
18257 - */
18258 -# ifdef __NR_sigation
18259 - if (INLINE_SYSCALL(sigaction,3,SIGABRT,&default_abort_act,NULL) == 0)
18260 -# else
18261 - /* Although rt_sigaction expects sizeof(sigset_t) - it expects the size
18262 - * of the _kernel_ sigset_t which is not the same as the user sigset_t.
18263 - * Most arches have this as _NSIG bits - mips has _KERNEL_NSIG bits for
18264 - * some reason.
18265 - */
18266 -# ifdef _KERNEL_NSIG
18267 - if (INLINE_SYSCALL(rt_sigaction,4,SIGABRT,&default_abort_act,NULL,_KERNEL_NSIG/8) == 0)
18268 -# else
18269 - if (INLINE_SYSCALL(rt_sigaction,4,SIGABRT,&default_abort_act,NULL,_NSIG/8) == 0)
18270 -# endif
18271 -# endif
18272 - INLINE_SYSCALL(kill,2,pid,SIGABRT);
18273 -#endif
18274 - /* Note; actions cannot be added to SIGKILL */
18275 - INLINE_SYSCALL(kill,2,pid,SIGKILL);
18276 -
18277 - /* In case the kill didn't work, exit anyway
18278 - * The loop prevents gcc thinking this routine returns
18279 - */
18280 - while (1) INLINE_SYSCALL(exit,0);
18281 -}
18282 -
18283 -void
18284 -__attribute__ ((__noreturn__))
18285 - __stack_chk_fail (void)
18286 -{
18287 - __hardened_gentoo_stack_chk_fail(NULL,0);
18288 -}
18289 -
18290 -#ifdef ENABLE_OLD_SSP_COMPAT
18291 -void
18292 -__attribute__ ((__noreturn__))
18293 -__stack_smash_handler(char func[], int damaged)
18294 -{
18295 - __hardened_gentoo_stack_chk_fail(func,damaged);
18296 -}
18297 -#endif
18298 -
18299
18300 diff --git a/sys-libs/glibc/files/2.5/glibc-2.5-hardened-configure-picdefault.patch b/sys-libs/glibc/files/2.5/glibc-2.5-hardened-configure-picdefault.patch
18301 deleted file mode 100644
18302 index 253a61b..0000000
18303 --- a/sys-libs/glibc/files/2.5/glibc-2.5-hardened-configure-picdefault.patch
18304 +++ /dev/null
18305 @@ -1,29 +0,0 @@
18306 -Prevent default-fPIE from confusing configure into thinking
18307 -PIC code is default. This causes glibc to build both PIC and
18308 -non-PIC code as normal, which on the hardened compiler generates
18309 -PIC and PIE.
18310 -
18311 -Patch by Kevin F. Quinn <kevquinn@g.o>
18312 -
18313 ---- configure.in
18314 -+++ configure.in
18315 -@@ -2145,7 +2145,7 @@
18316 - # error PIC is default.
18317 - #endif
18318 - EOF
18319 --if eval "${CC-cc} -S conftest.c 2>&AS_MESSAGE_LOG_FD 1>&AS_MESSAGE_LOG_FD"; then
18320 -+if eval "${CC-cc} -fno-PIE -S conftest.c 2>&AS_MESSAGE_LOG_FD 1>&AS_MESSAGE_LOG_FD"; then
18321 - pic_default=no
18322 - fi
18323 - rm -f conftest.*])
18324 ---- configure
18325 -+++ configure
18326 -@@ -7698,7 +7698,7 @@
18327 - # error PIC is default.
18328 - #endif
18329 - EOF
18330 --if eval "${CC-cc} -S conftest.c 2>&5 1>&5"; then
18331 -+if eval "${CC-cc} -fno-PIE -S conftest.c 2>&5 1>&5"; then
18332 - pic_default=no
18333 - fi
18334 - rm -f conftest.*
18335
18336 diff --git a/sys-libs/glibc/files/2.5/glibc-2.5-hardened-inittls-nosysenter.patch b/sys-libs/glibc/files/2.5/glibc-2.5-hardened-inittls-nosysenter.patch
18337 deleted file mode 100644
18338 index 420e6fd..0000000
18339 --- a/sys-libs/glibc/files/2.5/glibc-2.5-hardened-inittls-nosysenter.patch
18340 +++ /dev/null
18341 @@ -1,283 +0,0 @@
18342 -When building glibc PIE (which is not something upstream support),
18343 -several modifications are necessary to the glibc build process.
18344 -
18345 -First, any syscalls in PIEs must be of the PIC variant, otherwise
18346 -textrels ensue. Then, any syscalls made before the initialisation
18347 -of the TLS will fail on i386, as the sysenter variant on i386 uses
18348 -the TLS, giving rise to a chicken-and-egg situation. This patch
18349 -defines a PIC syscall variant that doesn't use sysenter, even when the sysenter
18350 -version is normally used, and uses the non-sysenter version for the brk
18351 -syscall that is performed by the TLS initialisation. Further, the TLS
18352 -initialisation is moved in this case prior to the initialisation of
18353 -dl_osversion, as that requires further syscalls.
18354 -
18355 -csu/libc-start.c: Move initial TLS initialization to before the
18356 -initialisation of dl_osversion, when INTERNAL_SYSCALL_NOSYSENTER is defined
18357 -
18358 -csu/libc-tls.c: Use the no-sysenter version of sbrk when
18359 -INTERNAL_SYSCALL_NOSYSENTER is defined.
18360 -
18361 -misc/sbrk.c: Define a no-sysenter version of sbrk, using the no-sysenter
18362 -version of brk - if INTERNAL_SYSCALL_NOSYSENTER is defined.
18363 -
18364 -misc/brk.c: Define a no-sysenter version of brk if
18365 -INTERNAL_SYSCALL_NOSYSENTER is defined.
18366 -
18367 -sysdeps/unix/sysv/linux/i386/sysdep.h: Define INTERNAL_SYSCALL_NOSYSENTER
18368 -Make INTERNAL_SYSCALL always use the PIC variant, even if not SHARED.
18369 -
18370 -Patch by Kevin F. Quinn <kevquinn@g.o>
18371 -
18372 ---- csu/libc-start.c.orig 2007-01-21 11:51:06.000000000 +0100
18373 -+++ csu/libc-start.c 2007-01-21 11:55:57.000000000 +0100
18374 -@@ -28,6 +28,7 @@
18375 - extern int __libc_multiple_libcs;
18376 -
18377 - #include <tls.h>
18378 -+#include <sysdep.h>
18379 - #ifndef SHARED
18380 - # include <dl-osinfo.h>
18381 - extern void __pthread_initialize_minimal (void)
18382 -@@ -133,6 +134,14 @@
18383 - # endif
18384 - _dl_aux_init (auxvec);
18385 - # endif
18386 -+# ifdef INTERNAL_SYSCALL_NOSYSENTER
18387 -+ /* Do the initial TLS initialization before _dl_osversion,
18388 -+ since the latter uses the uname syscall. */
18389 -+# if !(USE_TLS - 0) && !defined NONTLS_INIT_TP
18390 -+ if (__pthread_initialize_minimal)
18391 -+# endif
18392 -+ __pthread_initialize_minimal ();
18393 -+# endif
18394 - # ifdef DL_SYSDEP_OSCHECK
18395 - if (!__libc_multiple_libcs)
18396 - {
18397 -@@ -142,15 +151,17 @@
18398 - }
18399 - # endif
18400 -
18401 -+# ifndef INTERNAL_SYSCALL_NOSYSENTER
18402 - /* Initialize the thread library at least a bit since the libgcc
18403 - functions are using thread functions if these are available and
18404 - we need to setup errno. If there is no thread library and we
18405 - handle TLS the function is defined in the libc to initialized the
18406 - TLS handling. */
18407 --# if !(USE_TLS - 0) && !defined NONTLS_INIT_TP
18408 -+# if !(USE_TLS - 0) && !defined NONTLS_INIT_TP
18409 - if (__pthread_initialize_minimal)
18410 --# endif
18411 -+# endif
18412 - __pthread_initialize_minimal ();
18413 -+# endif
18414 - #endif
18415 -
18416 - # ifndef SHARED
18417 ---- csu/libc-tls.c.orig 2007-01-21 11:37:02.000000000 +0100
18418 -+++ csu/libc-tls.c 2007-01-21 12:09:33.000000000 +0100
18419 -@@ -23,6 +23,7 @@
18420 - #include <unistd.h>
18421 - #include <stdio.h>
18422 - #include <sys/param.h>
18423 -+#include <sysdep.h>
18424 -
18425 -
18426 - #ifdef SHARED
18427 -@@ -30,6 +31,9 @@
18428 - #endif
18429 -
18430 - #ifdef USE_TLS
18431 -+# ifdef INTERNAL_SYSCALL_NOSYSENTER
18432 -+extern void *__sbrk_nosysenter (intptr_t __delta);
18433 -+# endif
18434 - extern ElfW(Phdr) *_dl_phdr;
18435 - extern size_t _dl_phnum;
18436 -
18437 -@@ -142,14 +146,26 @@
18438 -
18439 - The initialized value of _dl_tls_static_size is provided by dl-open.c
18440 - to request some surplus that permits dynamic loading of modules with
18441 -- IE-model TLS. */
18442 -+ IE-model TLS.
18443 -+
18444 -+ Where the normal sbrk would use a syscall that needs the TLS (i386)
18445 -+ use the special non-sysenter version instead. */
18446 - # if TLS_TCB_AT_TP
18447 - tcb_offset = roundup (memsz + GL(dl_tls_static_size), tcbalign);
18448 -+# ifdef INTERNAL_SYSCALL_NOSYSENTER
18449 -+ tlsblock = __sbrk_nosysenter (tcb_offset + tcbsize + max_align);
18450 -+# else
18451 - tlsblock = __sbrk (tcb_offset + tcbsize + max_align);
18452 -+# endif
18453 - # elif TLS_DTV_AT_TP
18454 - tcb_offset = roundup (tcbsize, align ?: 1);
18455 -+# ifdef INTERNAL_SYSCALL_NOSYSENTER
18456 -+ tlsblock = __sbrk_nosysenter (tcb_offset + memsz + max_align
18457 -+ + TLS_PRE_TCB_SIZE + GL(dl_tls_static_size));
18458 -+# else
18459 - tlsblock = __sbrk (tcb_offset + memsz + max_align
18460 - + TLS_PRE_TCB_SIZE + GL(dl_tls_static_size));
18461 -+# endif
18462 - tlsblock += TLS_PRE_TCB_SIZE;
18463 - # else
18464 - /* In case a model with a different layout for the TCB and DTV
18465 ---- misc/sbrk.c.orig 2007-01-21 11:38:27.000000000 +0100
18466 -+++ misc/sbrk.c 2007-01-21 12:07:29.000000000 +0100
18467 -@@ -18,6 +18,7 @@
18468 -
18469 - #include <unistd.h>
18470 - #include <errno.h>
18471 -+#include <sysdep.h>
18472 -
18473 - /* Defined in brk.c. */
18474 - extern void *__curbrk;
18475 -@@ -29,6 +30,35 @@
18476 - /* Extend the process's data space by INCREMENT.
18477 - If INCREMENT is negative, shrink data space by - INCREMENT.
18478 - Return start of new space allocated, or -1 for errors. */
18479 -+#ifdef INTERNAL_SYSCALL_NOSYSENTER
18480 -+/* This version is used by csu/libc-tls.c whem initialising the TLS
18481 -+ if the SYSENTER version requires the TLS (which it does on i386).
18482 -+ Obviously using the TLS before it is initialised is broken. */
18483 -+extern int __brk_nosysenter (void *addr);
18484 -+void *
18485 -+__sbrk_nosysenter (intptr_t increment)
18486 -+{
18487 -+ void *oldbrk;
18488 -+
18489 -+ /* If this is not part of the dynamic library or the library is used
18490 -+ via dynamic loading in a statically linked program update
18491 -+ __curbrk from the kernel's brk value. That way two separate
18492 -+ instances of __brk and __sbrk can share the heap, returning
18493 -+ interleaved pieces of it. */
18494 -+ if (__curbrk == NULL || __libc_multiple_libcs)
18495 -+ if (__brk_nosysenter (0) < 0) /* Initialize the break. */
18496 -+ return (void *) -1;
18497 -+
18498 -+ if (increment == 0)
18499 -+ return __curbrk;
18500 -+
18501 -+ oldbrk = __curbrk;
18502 -+ if (__brk_nosysenter (oldbrk + increment) < 0)
18503 -+ return (void *) -1;
18504 -+
18505 -+ return oldbrk;
18506 -+}
18507 -+#endif
18508 - void *
18509 - __sbrk (intptr_t increment)
18510 - {
18511 ---- sysdeps/unix/sysv/linux/i386/brk.c.orig 2007-01-21 11:39:16.000000000 +0100
18512 -+++ sysdeps/unix/sysv/linux/i386/brk.c 2007-01-21 11:44:01.000000000 +0100
18513 -@@ -31,6 +31,30 @@
18514 - linker. */
18515 - weak_alias (__curbrk, ___brk_addr)
18516 -
18517 -+#ifdef INTERNAL_SYSCALL_NOSYSENTER
18518 -+/* This version is used by csu/libc-tls.c whem initialising the TLS
18519 -+ * if the SYSENTER version requires the TLS (which it does on i386).
18520 -+ * Obviously using the TLS before it is initialised is broken. */
18521 -+int
18522 -+__brk_nosysenter (void *addr)
18523 -+{
18524 -+ void *__unbounded newbrk;
18525 -+
18526 -+ INTERNAL_SYSCALL_DECL (err);
18527 -+ newbrk = (void *__unbounded) INTERNAL_SYSCALL_NOSYSENTER (brk, err, 1,
18528 -+ __ptrvalue (addr));
18529 -+
18530 -+ __curbrk = newbrk;
18531 -+
18532 -+ if (newbrk < addr)
18533 -+ {
18534 -+ __set_errno (ENOMEM);
18535 -+ return -1;
18536 -+ }
18537 -+
18538 -+ return 0;
18539 -+}
18540 -+#endif
18541 - int
18542 - __brk (void *addr)
18543 - {
18544 ---- sysdeps/unix/sysv/linux/i386/sysdep.h.orig 2007-01-21 13:08:00.000000000 +0100
18545 -+++ sysdeps/unix/sysv/linux/i386/sysdep.h 2007-01-21 13:19:10.000000000 +0100
18546 -@@ -187,7 +187,7 @@
18547 - /* The original calling convention for system calls on Linux/i386 is
18548 - to use int $0x80. */
18549 - #ifdef I386_USE_SYSENTER
18550 --# ifdef SHARED
18551 -+# if defined SHARED || defined __PIC__
18552 - # define ENTER_KERNEL call *%gs:SYSINFO_OFFSET
18553 - # else
18554 - # define ENTER_KERNEL call *_dl_sysinfo
18555 -@@ -358,7 +358,7 @@
18556 - possible to use more than four parameters. */
18557 - #undef INTERNAL_SYSCALL
18558 - #ifdef I386_USE_SYSENTER
18559 --# ifdef SHARED
18560 -+# if defined SHARED || defined __PIC__
18561 - # define INTERNAL_SYSCALL(name, err, nr, args...) \
18562 - ({ \
18563 - register unsigned int resultvar; \
18564 -@@ -384,6 +384,18 @@
18565 - : "0" (name), "i" (offsetof (tcbhead_t, sysinfo)) \
18566 - ASMFMT_##nr(args) : "memory", "cc"); \
18567 - (int) resultvar; })
18568 -+# define INTERNAL_SYSCALL_NOSYSENTER(name, err, nr, args...) \
18569 -+ ({ \
18570 -+ register unsigned int resultvar; \
18571 -+ EXTRAVAR_##nr \
18572 -+ asm volatile ( \
18573 -+ LOADARGS_NOSYSENTER_##nr \
18574 -+ "movl %1, %%eax\n\t" \
18575 -+ "int $0x80\n\t" \
18576 -+ RESTOREARGS_NOSYSENTER_##nr \
18577 -+ : "=a" (resultvar) \
18578 -+ : "i" (__NR_##name) ASMFMT_##nr(args) : "memory", "cc"); \
18579 -+ (int) resultvar; })
18580 - # else
18581 - # define INTERNAL_SYSCALL(name, err, nr, args...) \
18582 - ({ \
18583 -@@ -447,12 +459,20 @@
18584 -
18585 - #define LOADARGS_0
18586 - #ifdef __PIC__
18587 --# if defined I386_USE_SYSENTER && defined SHARED
18588 -+# if defined I386_USE_SYSENTER && ( defined SHARED || defined __PIC__ )
18589 - # define LOADARGS_1 \
18590 - "bpushl .L__X'%k3, %k3\n\t"
18591 - # define LOADARGS_5 \
18592 - "movl %%ebx, %4\n\t" \
18593 - "movl %3, %%ebx\n\t"
18594 -+# define LOADARGS_NOSYSENTER_1 \
18595 -+ "bpushl .L__X'%k2, %k2\n\t"
18596 -+# define LOADARGS_NOSYSENTER_2 LOADARGS_NOSYSENTER_1
18597 -+# define LOADARGS_NOSYSENTER_3 LOADARGS_3
18598 -+# define LOADARGS_NOSYSENTER_4 LOADARGS_3
18599 -+# define LOADARGS_NOSYSENTER_5 \
18600 -+ "movl %%ebx, %3\n\t" \
18601 -+ "movl %2, %%ebx\n\t"
18602 - # else
18603 - # define LOADARGS_1 \
18604 - "bpushl .L__X'%k2, %k2\n\t"
18605 -@@ -474,11 +495,18 @@
18606 -
18607 - #define RESTOREARGS_0
18608 - #ifdef __PIC__
18609 --# if defined I386_USE_SYSENTER && defined SHARED
18610 -+# if defined I386_USE_SYSENTER && ( defined SHARED || defined __PIC__ )
18611 - # define RESTOREARGS_1 \
18612 - "bpopl .L__X'%k3, %k3\n\t"
18613 - # define RESTOREARGS_5 \
18614 - "movl %4, %%ebx"
18615 -+# define RESTOREARGS_NOSYSENTER_1 \
18616 -+ "bpopl .L__X'%k2, %k2\n\t"
18617 -+# define RESTOREARGS_NOSYSENTER_2 RESTOREARGS_NOSYSENTER_1
18618 -+# define RESTOREARGS_NOSYSENTER_3 RESTOREARGS_3
18619 -+# define RESTOREARGS_NOSYSENTER_4 RESTOREARGS_3
18620 -+# define RESTOREARGS_NOSYSENTER_5 \
18621 -+ "movl %3, %%ebx"
18622 - # else
18623 - # define RESTOREARGS_1 \
18624 - "bpopl .L__X'%k2, %k2\n\t"
18625
18626 diff --git a/sys-libs/glibc/files/2.5/glibc-2.5-hardened-pie.patch b/sys-libs/glibc/files/2.5/glibc-2.5-hardened-pie.patch
18627 deleted file mode 100644
18628 index 46f3de4..0000000
18629 --- a/sys-libs/glibc/files/2.5/glibc-2.5-hardened-pie.patch
18630 +++ /dev/null
18631 @@ -1,39 +0,0 @@
18632 -Change link commands for glibc executables to build PIEs
18633 -
18634 -Patch by Kevin F. Quinn <kevquinn@g.o>
18635 -
18636 ---- Makeconfig
18637 -+++ Makeconfig
18638 -@@ -415,10 +415,10 @@
18639 -
18640 - # Command for linking programs with the C library.
18641 - ifndef +link
18642 --+link = $(CC) -nostdlib -nostartfiles -o $@ \
18643 -++link = $(CC) -nostdlib -nostartfiles -fPIE -pie -o $@ \
18644 - $(sysdep-LDFLAGS) $(config-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \
18645 - $(combreloc-LDFLAGS) $(relro-LDFLAGS) $(hashstyle-LDFLAGS) \
18646 -- $(addprefix $(csu-objpfx),$(start-installed-name)) \
18647 -+ $(addprefix $(csu-objpfx),S$(start-installed-name)) \
18648 - $(+preinit) $(+prector) \
18649 - $(filter-out $(addprefix $(csu-objpfx),start.o \
18650 - $(start-installed-name))\
18651 -@@ -429,7 +429,7 @@
18652 - ifndef +link-static
18653 - +link-static = $(CC) -nostdlib -nostartfiles -static -o $@ \
18654 - $(sysdep-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \
18655 -- $(addprefix $(csu-objpfx),$(static-start-installed-name)) \
18656 -+ $(addprefix $(csu-objpfx),S$(static-start-installed-name)) \
18657 - $(+preinit) $(+prector) \
18658 - $(filter-out $(addprefix $(csu-objpfx),start.o \
18659 - $(start-installed-name))\
18660 -@@ -528,8 +528,8 @@
18661 - ifeq ($(elf),yes)
18662 - +preinit = $(addprefix $(csu-objpfx),crti.o)
18663 - +postinit = $(addprefix $(csu-objpfx),crtn.o)
18664 --+prector = `$(CC) --print-file-name=crtbegin.o`
18665 --+postctor = `$(CC) --print-file-name=crtend.o`
18666 -++prector = `$(CC) --print-file-name=crtbeginS.o`
18667 -++postctor = `$(CC) --print-file-name=crtendS.o`
18668 - +interp = $(addprefix $(elf-objpfx),interp.os)
18669 - endif
18670 - csu-objpfx = $(common-objpfx)csu/
18671
18672 diff --git a/sys-libs/glibc/files/2.6/glibc-2.6-gentoo-stack_chk_fail.c b/sys-libs/glibc/files/2.6/glibc-2.6-gentoo-stack_chk_fail.c
18673 deleted file mode 100644
18674 index 217bf1a..0000000
18675 --- a/sys-libs/glibc/files/2.6/glibc-2.6-gentoo-stack_chk_fail.c
18676 +++ /dev/null
18677 @@ -1,321 +0,0 @@
18678 -/* Copyright (C) 2005 Free Software Foundation, Inc.
18679 - This file is part of the GNU C Library.
18680 -
18681 - The GNU C Library is free software; you can redistribute it and/or
18682 - modify it under the terms of the GNU Lesser General Public
18683 - License as published by the Free Software Foundation; either
18684 - version 2.1 of the License, or (at your option) any later version.
18685 -
18686 - The GNU C Library is distributed in the hope that it will be useful,
18687 - but WITHOUT ANY WARRANTY; without even the implied warranty of
18688 - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18689 - Lesser General Public License for more details.
18690 -
18691 - You should have received a copy of the GNU Lesser General Public
18692 - License along with the GNU C Library; if not, write to the Free
18693 - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
18694 - 02111-1307 USA. */
18695 -
18696 -/* Copyright (C) 2006-2007 Gentoo Foundation Inc.
18697 - * License terms as above.
18698 - *
18699 - * Hardened Gentoo SSP handler
18700 - *
18701 - * An SSP failure handler that does not use functions from the rest of
18702 - * glibc; it uses the INTERNAL_SYSCALL methods directly. This ensures
18703 - * no possibility of recursion into the handler.
18704 - *
18705 - * Direct all bug reports to http://bugs.gentoo.org/
18706 - *
18707 - * Re-written from the glibc-2.3 Hardened Gentoo SSP handler
18708 - * by Kevin F. Quinn - <kevquinn[@]gentoo.org>
18709 - *
18710 - * The following people contributed to the glibc-2.3 Hardened
18711 - * Gentoo SSP handler, from which this implementation draws much:
18712 - *
18713 - * Ned Ludd - <solar[@]gentoo.org>
18714 - * Alexander Gabert - <pappy[@]gentoo.org>
18715 - * The PaX Team - <pageexec[@]freemail.hu>
18716 - * Peter S. Mazinger - <ps.m[@]gmx.net>
18717 - * Yoann Vandoorselaere - <yoann[@]prelude-ids.org>
18718 - * Robert Connolly - <robert[@]linuxfromscratch.org>
18719 - * Cory Visi <cory[@]visi.name>
18720 - * Mike Frysinger <vapier[@]gentoo.org>
18721 - */
18722 -
18723 -#include <errno.h>
18724 -#include <stdlib.h>
18725 -#include <unistd.h>
18726 -#include <signal.h>
18727 -
18728 -#include <sys/types.h>
18729 -
18730 -#include <sysdep-cancel.h>
18731 -#include <sys/syscall.h>
18732 -#include <bp-checks.h>
18733 -
18734 -#include <kernel-features.h>
18735 -
18736 -#include <alloca.h>
18737 -/* from sysdeps */
18738 -#include <socketcall.h>
18739 -/* for the stuff in bits/socket.h */
18740 -#include <sys/socket.h>
18741 -#include <sys/un.h>
18742 -
18743 -
18744 -/* Sanity check on SYSCALL macro names - force compilation
18745 - * failure if the names used here do not exist
18746 - */
18747 -#if !defined __NR_socketcall && !defined __NR_socket
18748 -# error Cannot do syscall socket or socketcall
18749 -#endif
18750 -#if !defined __NR_socketcall && !defined __NR_connect
18751 -# error Cannot do syscall connect or socketcall
18752 -#endif
18753 -#ifndef __NR_write
18754 -# error Cannot do syscall write
18755 -#endif
18756 -#ifndef __NR_close
18757 -# error Cannot do syscall close
18758 -#endif
18759 -#ifndef __NR_getpid
18760 -# error Cannot do syscall getpid
18761 -#endif
18762 -#ifndef __NR_kill
18763 -# error Cannot do syscall kill
18764 -#endif
18765 -#ifndef __NR_exit
18766 -# error Cannot do syscall exit
18767 -#endif
18768 -#ifdef SSP_SMASH_DUMPS_CORE
18769 -# define ENABLE_SSP_SMASH_DUMPS_CORE 1
18770 -# if !defined _KERNEL_NSIG && !defined _NSIG
18771 -# error No _NSIG or _KERNEL_NSIG for rt_sigaction
18772 -# endif
18773 -# if !defined __NR_sigaction && !defined __NR_rt_sigaction
18774 -# error Cannot do syscall sigaction or rt_sigaction
18775 -# endif
18776 -/* Although rt_sigaction expects sizeof(sigset_t) - it expects the size
18777 - * of the _kernel_ sigset_t which is not the same as the user sigset_t.
18778 - * Most arches have this as _NSIG bits - mips has _KERNEL_NSIG bits for
18779 - * some reason.
18780 - */
18781 -# ifdef _KERNEL_NSIG
18782 -# define _SSP_NSIG _KERNEL_NSIG
18783 -# else
18784 -# define _SSP_NSIG _NSIG
18785 -# endif
18786 -#else
18787 -# define _SSP_NSIG 0
18788 -# define ENABLE_SSP_SMASH_DUMPS_CORE 0
18789 -#endif
18790 -
18791 -/* Define DO_SIGACTION - default to newer rt signal interface but
18792 - * fallback to old as needed.
18793 - */
18794 -#ifdef __NR_rt_sigaction
18795 -# define DO_SIGACTION(signum, act, oldact) \
18796 - INLINE_SYSCALL(rt_sigaction, 4, signum, act, oldact, _SSP_NSIG/8)
18797 -#else
18798 -# define DO_SIGACTION(signum, act, oldact) \
18799 - INLINE_SYSCALL(sigaction, 3, signum, act, oldact)
18800 -#endif
18801 -
18802 -/* Define DO_SOCKET/DO_CONNECT functions to deal with socketcall vs socket/connect */
18803 -#if defined(__NR_socket) && defined(__NR_connect)
18804 -# define USE_OLD_SOCKETCALL 0
18805 -#else
18806 -# define USE_OLD_SOCKETCALL 1
18807 -#endif
18808 -/* stub out the __NR_'s so we can let gcc optimize away dead code */
18809 -#ifndef __NR_socketcall
18810 -# define __NR_socketcall 0
18811 -#endif
18812 -#ifndef __NR_socket
18813 -# define __NR_socket 0
18814 -#endif
18815 -#ifndef __NR_connect
18816 -# define __NR_connect 0
18817 -#endif
18818 -#define DO_SOCKET(result, domain, type, protocol) \
18819 - do { \
18820 - if (USE_OLD_SOCKETCALL) { \
18821 - socketargs[0] = domain; \
18822 - socketargs[1] = type; \
18823 - socketargs[2] = protocol; \
18824 - socketargs[3] = 0; \
18825 - result = INLINE_SYSCALL(socketcall, 2, SOCKOP_socket, socketargs); \
18826 - } else \
18827 - result = INLINE_SYSCALL(socket, 3, domain, type, protocol); \
18828 - } while (0)
18829 -#define DO_CONNECT(result, sockfd, serv_addr, addrlen) \
18830 - do { \
18831 - if (USE_OLD_SOCKETCALL) { \
18832 - socketargs[0] = sockfd; \
18833 - socketargs[1] = (unsigned long int)serv_addr; \
18834 - socketargs[2] = addrlen; \
18835 - socketargs[3] = 0; \
18836 - result = INLINE_SYSCALL(socketcall, 2, SOCKOP_connect, socketargs); \
18837 - } else \
18838 - result = INLINE_SYSCALL(connect, 3, sockfd, serv_addr, addrlen); \
18839 - } while (0)
18840 -
18841 -#ifndef _PATH_LOG
18842 -# define _PATH_LOG "/dev/log"
18843 -#endif
18844 -
18845 -static const char path_log[] = _PATH_LOG;
18846 -
18847 -/* For building glibc with SSP switched on, define __progname to a
18848 - * constant if building for the run-time loader, to avoid pulling
18849 - * in more of libc.so into ld.so
18850 - */
18851 -#ifdef IS_IN_rtld
18852 -static char *__progname = "<rtld>";
18853 -#else
18854 -extern char *__progname;
18855 -#endif
18856 -
18857 -
18858 -/* Common handler code, used by stack_chk_fail and __stack_smash_handler
18859 - * Inlined to ensure no self-references to the handler within itself.
18860 - * Data static to avoid putting more than necessary on the stack,
18861 - * to aid core debugging.
18862 - */
18863 -__attribute__ ((__noreturn__ , __always_inline__))
18864 -static inline void
18865 -__hardened_gentoo_stack_chk_fail(char func[], int damaged)
18866 -{
18867 -#define MESSAGE_BUFSIZ 256
18868 - static pid_t pid;
18869 - static int plen, i;
18870 - static char message[MESSAGE_BUFSIZ];
18871 - static const char msg_ssa[] = ": stack smashing attack";
18872 - static const char msg_inf[] = " in function ";
18873 - static const char msg_ssd[] = "*** stack smashing detected ***: ";
18874 - static const char msg_terminated[] = " - terminated\n";
18875 - static const char msg_report[] = "Report to http://bugs.gentoo.org/\n";
18876 - static const char msg_unknown[] = "<unknown>";
18877 - static int log_socket, connect_result;
18878 - static struct sockaddr_un sock;
18879 - static unsigned long int socketargs[4];
18880 -
18881 - /* Build socket address
18882 - */
18883 - sock.sun_family = AF_UNIX;
18884 - i = 0;
18885 - while ((path_log[i] != '\0') && (i<(sizeof(sock.sun_path)-1))) {
18886 - sock.sun_path[i] = path_log[i];
18887 - i++;
18888 - }
18889 - sock.sun_path[i] = '\0';
18890 -
18891 - /* Try SOCK_DGRAM connection to syslog */
18892 - connect_result = -1;
18893 - DO_SOCKET(log_socket, AF_UNIX, SOCK_DGRAM, 0);
18894 - if (log_socket != -1)
18895 - DO_CONNECT(connect_result, log_socket, &sock, sizeof(sock));
18896 - if (connect_result == -1) {
18897 - if (log_socket != -1)
18898 - INLINE_SYSCALL(close, 1, log_socket);
18899 - /* Try SOCK_STREAM connection to syslog */
18900 - DO_SOCKET(log_socket, AF_UNIX, SOCK_STREAM, 0);
18901 - if (log_socket != -1)
18902 - DO_CONNECT(connect_result, log_socket, &sock, sizeof(sock));
18903 - }
18904 -
18905 - /* Build message. Messages are generated both in the old style and new style,
18906 - * so that log watchers that are configured for the old-style message continue
18907 - * to work.
18908 - */
18909 -#define strconcat(str) \
18910 - {i=0; while ((str[i] != '\0') && ((i+plen)<(MESSAGE_BUFSIZ-1))) \
18911 - {\
18912 - message[plen+i]=str[i];\
18913 - i++;\
18914 - }\
18915 - plen+=i;}
18916 -
18917 - /* R.Henderson post-gcc-4 style message */
18918 - plen = 0;
18919 - strconcat(msg_ssd);
18920 - if (__progname != (char *)0)
18921 - strconcat(__progname)
18922 - else
18923 - strconcat(msg_unknown);
18924 - strconcat(msg_terminated);
18925 -
18926 - /* Write out error message to STDERR, to syslog if open */
18927 - INLINE_SYSCALL(write, 3, STDERR_FILENO, message, plen);
18928 - if (connect_result != -1)
18929 - INLINE_SYSCALL(write, 3, log_socket, message, plen);
18930 -
18931 - /* Dr. Etoh pre-gcc-4 style message */
18932 - plen = 0;
18933 - if (__progname != (char *)0)
18934 - strconcat(__progname)
18935 - else
18936 - strconcat(msg_unknown);
18937 - strconcat(msg_ssa);
18938 - strconcat(msg_inf);
18939 - if (func != NULL)
18940 - strconcat(func)
18941 - else
18942 - strconcat(msg_unknown);
18943 - strconcat(msg_terminated);
18944 - /* Write out error message to STDERR, to syslog if open */
18945 - INLINE_SYSCALL(write, 3, STDERR_FILENO, message, plen);
18946 - if (connect_result != -1)
18947 - INLINE_SYSCALL(write, 3, log_socket, message, plen);
18948 -
18949 - /* Direct reports to bugs.gentoo.org */
18950 - plen=0;
18951 - strconcat(msg_report);
18952 - message[plen++]='\0';
18953 -
18954 - /* Write out error message to STDERR, to syslog if open */
18955 - INLINE_SYSCALL(write, 3, STDERR_FILENO, message, plen);
18956 - if (connect_result != -1)
18957 - INLINE_SYSCALL(write, 3, log_socket, message, plen);
18958 -
18959 - if (log_socket != -1)
18960 - INLINE_SYSCALL(close, 1, log_socket);
18961 -
18962 - /* Suicide */
18963 - pid = INLINE_SYSCALL(getpid, 0);
18964 -
18965 - if (ENABLE_SSP_SMASH_DUMPS_CORE) {
18966 - static struct sigaction default_abort_act;
18967 - /* Remove any user-supplied handler for SIGABRT, before using it */
18968 - default_abort_act.sa_handler = SIG_DFL;
18969 - default_abort_act.sa_sigaction = NULL;
18970 - __sigfillset(&default_abort_act.sa_mask);
18971 - default_abort_act.sa_flags = 0;
18972 - if (DO_SIGACTION(SIGABRT, &default_abort_act, NULL) == 0)
18973 - INLINE_SYSCALL(kill, 2, pid, SIGABRT);
18974 - }
18975 -
18976 - /* Note; actions cannot be added to SIGKILL */
18977 - INLINE_SYSCALL(kill, 2, pid, SIGKILL);
18978 -
18979 - /* In case the kill didn't work, exit anyway
18980 - * The loop prevents gcc thinking this routine returns
18981 - */
18982 - while (1)
18983 - INLINE_SYSCALL(exit, 0);
18984 -}
18985 -
18986 -__attribute__ ((__noreturn__))
18987 -void __stack_chk_fail(void)
18988 -{
18989 - __hardened_gentoo_stack_chk_fail(NULL, 0);
18990 -}
18991 -
18992 -#ifdef ENABLE_OLD_SSP_COMPAT
18993 -__attribute__ ((__noreturn__))
18994 -void __stack_smash_handler(char func[], int damaged)
18995 -{
18996 - __hardened_gentoo_stack_chk_fail(func, damaged);
18997 -}
18998 -#endif
18999
19000 diff --git a/sys-libs/glibc/files/2.6/glibc-2.6-hardened-inittls-nosysenter.patch b/sys-libs/glibc/files/2.6/glibc-2.6-hardened-inittls-nosysenter.patch
19001 deleted file mode 100644
19002 index be8ca19..0000000
19003 --- a/sys-libs/glibc/files/2.6/glibc-2.6-hardened-inittls-nosysenter.patch
19004 +++ /dev/null
19005 @@ -1,273 +0,0 @@
19006 -When building glibc PIE (which is not something upstream support),
19007 -several modifications are necessary to the glibc build process.
19008 -
19009 -First, any syscalls in PIEs must be of the PIC variant, otherwise
19010 -textrels ensue. Then, any syscalls made before the initialisation
19011 -of the TLS will fail on i386, as the sysenter variant on i386 uses
19012 -the TLS, giving rise to a chicken-and-egg situation. This patch
19013 -defines a PIC syscall variant that doesn't use sysenter, even when the sysenter
19014 -version is normally used, and uses the non-sysenter version for the brk
19015 -syscall that is performed by the TLS initialisation. Further, the TLS
19016 -initialisation is moved in this case prior to the initialisation of
19017 -dl_osversion, as that requires further syscalls.
19018 -
19019 -csu/libc-start.c: Move initial TLS initialization to before the
19020 -initialisation of dl_osversion, when INTERNAL_SYSCALL_NOSYSENTER is defined
19021 -
19022 -csu/libc-tls.c: Use the no-sysenter version of sbrk when
19023 -INTERNAL_SYSCALL_NOSYSENTER is defined.
19024 -
19025 -misc/sbrk.c: Define a no-sysenter version of sbrk, using the no-sysenter
19026 -version of brk - if INTERNAL_SYSCALL_NOSYSENTER is defined.
19027 -
19028 -misc/brk.c: Define a no-sysenter version of brk if
19029 -INTERNAL_SYSCALL_NOSYSENTER is defined.
19030 -
19031 -sysdeps/unix/sysv/linux/i386/sysdep.h: Define INTERNAL_SYSCALL_NOSYSENTER
19032 -Make INTERNAL_SYSCALL always use the PIC variant, even if not SHARED.
19033 -
19034 -Patch by Kevin F. Quinn <kevquinn@g.o>
19035 -
19036 ---- csu/libc-start.c
19037 -+++ csu/libc-start.c
19038 -@@ -28,6 +28,7 @@
19039 - extern int __libc_multiple_libcs;
19040 -
19041 - #include <tls.h>
19042 -+#include <sysdep.h>
19043 - #ifndef SHARED
19044 - # include <dl-osinfo.h>
19045 - extern void __pthread_initialize_minimal (void);
19046 -@@ -129,6 +130,11 @@
19047 - # endif
19048 - _dl_aux_init (auxvec);
19049 - # endif
19050 -+# ifdef INTERNAL_SYSCALL_NOSYSENTER
19051 -+ /* Do the initial TLS initialization before _dl_osversion,
19052 -+ since the latter uses the uname syscall. */
19053 -+ __pthread_initialize_minimal ();
19054 -+# endif
19055 - # ifdef DL_SYSDEP_OSCHECK
19056 - if (!__libc_multiple_libcs)
19057 - {
19058 -@@ -138,10 +144,12 @@
19059 - }
19060 - # endif
19061 -
19062 -+# ifndef INTERNAL_SYSCALL_NOSYSENTER
19063 - /* Initialize the thread library at least a bit since the libgcc
19064 - functions are using thread functions if these are available and
19065 - we need to setup errno. */
19066 - __pthread_initialize_minimal ();
19067 -+# endif
19068 - #endif
19069 -
19070 - # ifndef SHARED
19071 ---- csu/libc-tls.c
19072 -+++ csu/libc-tls.c
19073 -@@ -23,6 +23,7 @@
19074 - #include <unistd.h>
19075 - #include <stdio.h>
19076 - #include <sys/param.h>
19077 -+#include <sysdep.h>
19078 -
19079 -
19080 - #ifdef SHARED
19081 -@@ -29,6 +30,9 @@
19082 - #error makefile bug, this file is for static only
19083 - #endif
19084 -
19085 -+#ifdef INTERNAL_SYSCALL_NOSYSENTER
19086 -+extern void *__sbrk_nosysenter (intptr_t __delta);
19087 -+#endif
19088 - extern ElfW(Phdr) *_dl_phdr;
19089 - extern size_t _dl_phnum;
19090 -
19091 -@@ -141,14 +145,26 @@
19092 -
19093 - The initialized value of _dl_tls_static_size is provided by dl-open.c
19094 - to request some surplus that permits dynamic loading of modules with
19095 -- IE-model TLS. */
19096 -+ IE-model TLS.
19097 -+
19098 -+ Where the normal sbrk would use a syscall that needs the TLS (i386)
19099 -+ use the special non-sysenter version instead. */
19100 - #if TLS_TCB_AT_TP
19101 - tcb_offset = roundup (memsz + GL(dl_tls_static_size), tcbalign);
19102 -+# ifdef INTERNAL_SYSCALL_NOSYSENTER
19103 -+ tlsblock = __sbrk_nosysenter (tcb_offset + tcbsize + max_align);
19104 -+# else
19105 - tlsblock = __sbrk (tcb_offset + tcbsize + max_align);
19106 -+# endif
19107 - #elif TLS_DTV_AT_TP
19108 - tcb_offset = roundup (tcbsize, align ?: 1);
19109 -+# ifdef INTERNAL_SYSCALL_NOSYSENTER
19110 -+ tlsblock = __sbrk_nosysenter (tcb_offset + memsz + max_align
19111 -+ + TLS_PRE_TCB_SIZE + GL(dl_tls_static_size));
19112 -+# else
19113 - tlsblock = __sbrk (tcb_offset + memsz + max_align
19114 - + TLS_PRE_TCB_SIZE + GL(dl_tls_static_size));
19115 -+# endif
19116 - tlsblock += TLS_PRE_TCB_SIZE;
19117 - #else
19118 - /* In case a model with a different layout for the TCB and DTV
19119 ---- misc/sbrk.c
19120 -+++ misc/sbrk.c
19121 -@@ -18,6 +18,7 @@
19122 -
19123 - #include <unistd.h>
19124 - #include <errno.h>
19125 -+#include <sysdep.h>
19126 -
19127 - /* Defined in brk.c. */
19128 - extern void *__curbrk;
19129 -@@ -29,6 +30,35 @@
19130 - /* Extend the process's data space by INCREMENT.
19131 - If INCREMENT is negative, shrink data space by - INCREMENT.
19132 - Return start of new space allocated, or -1 for errors. */
19133 -+#ifdef INTERNAL_SYSCALL_NOSYSENTER
19134 -+/* This version is used by csu/libc-tls.c whem initialising the TLS
19135 -+ if the SYSENTER version requires the TLS (which it does on i386).
19136 -+ Obviously using the TLS before it is initialised is broken. */
19137 -+extern int __brk_nosysenter (void *addr);
19138 -+void *
19139 -+__sbrk_nosysenter (intptr_t increment)
19140 -+{
19141 -+ void *oldbrk;
19142 -+
19143 -+ /* If this is not part of the dynamic library or the library is used
19144 -+ via dynamic loading in a statically linked program update
19145 -+ __curbrk from the kernel's brk value. That way two separate
19146 -+ instances of __brk and __sbrk can share the heap, returning
19147 -+ interleaved pieces of it. */
19148 -+ if (__curbrk == NULL || __libc_multiple_libcs)
19149 -+ if (__brk_nosysenter (0) < 0) /* Initialize the break. */
19150 -+ return (void *) -1;
19151 -+
19152 -+ if (increment == 0)
19153 -+ return __curbrk;
19154 -+
19155 -+ oldbrk = __curbrk;
19156 -+ if (__brk_nosysenter (oldbrk + increment) < 0)
19157 -+ return (void *) -1;
19158 -+
19159 -+ return oldbrk;
19160 -+}
19161 -+#endif
19162 - void *
19163 - __sbrk (intptr_t increment)
19164 - {
19165 ---- sysdeps/unix/sysv/linux/i386/brk.c
19166 -+++ sysdeps/unix/sysv/linux/i386/brk.c
19167 -@@ -31,6 +31,30 @@
19168 - linker. */
19169 - weak_alias (__curbrk, ___brk_addr)
19170 -
19171 -+#ifdef INTERNAL_SYSCALL_NOSYSENTER
19172 -+/* This version is used by csu/libc-tls.c whem initialising the TLS
19173 -+ * if the SYSENTER version requires the TLS (which it does on i386).
19174 -+ * Obviously using the TLS before it is initialised is broken. */
19175 -+int
19176 -+__brk_nosysenter (void *addr)
19177 -+{
19178 -+ void *__unbounded newbrk;
19179 -+
19180 -+ INTERNAL_SYSCALL_DECL (err);
19181 -+ newbrk = (void *__unbounded) INTERNAL_SYSCALL_NOSYSENTER (brk, err, 1,
19182 -+ __ptrvalue (addr));
19183 -+
19184 -+ __curbrk = newbrk;
19185 -+
19186 -+ if (newbrk < addr)
19187 -+ {
19188 -+ __set_errno (ENOMEM);
19189 -+ return -1;
19190 -+ }
19191 -+
19192 -+ return 0;
19193 -+}
19194 -+#endif
19195 - int
19196 - __brk (void *addr)
19197 - {
19198 ---- sysdeps/unix/sysv/linux/i386/sysdep.h
19199 -+++ sysdeps/unix/sysv/linux/i386/sysdep.h
19200 -@@ -187,7 +187,7 @@
19201 - /* The original calling convention for system calls on Linux/i386 is
19202 - to use int $0x80. */
19203 - #ifdef I386_USE_SYSENTER
19204 --# ifdef SHARED
19205 -+# if defined SHARED || defined __PIC__
19206 - # define ENTER_KERNEL call *%gs:SYSINFO_OFFSET
19207 - # else
19208 - # define ENTER_KERNEL call *_dl_sysinfo
19209 -@@ -358,7 +358,7 @@
19210 - possible to use more than four parameters. */
19211 - #undef INTERNAL_SYSCALL
19212 - #ifdef I386_USE_SYSENTER
19213 --# ifdef SHARED
19214 -+# if defined SHARED || defined __PIC__
19215 - # define INTERNAL_SYSCALL(name, err, nr, args...) \
19216 - ({ \
19217 - register unsigned int resultvar; \
19218 -@@ -384,6 +384,18 @@
19219 - : "0" (name), "i" (offsetof (tcbhead_t, sysinfo)) \
19220 - ASMFMT_##nr(args) : "memory", "cc"); \
19221 - (int) resultvar; })
19222 -+# define INTERNAL_SYSCALL_NOSYSENTER(name, err, nr, args...) \
19223 -+ ({ \
19224 -+ register unsigned int resultvar; \
19225 -+ EXTRAVAR_##nr \
19226 -+ asm volatile ( \
19227 -+ LOADARGS_NOSYSENTER_##nr \
19228 -+ "movl %1, %%eax\n\t" \
19229 -+ "int $0x80\n\t" \
19230 -+ RESTOREARGS_NOSYSENTER_##nr \
19231 -+ : "=a" (resultvar) \
19232 -+ : "i" (__NR_##name) ASMFMT_##nr(args) : "memory", "cc"); \
19233 -+ (int) resultvar; })
19234 - # else
19235 - # define INTERNAL_SYSCALL(name, err, nr, args...) \
19236 - ({ \
19237 -@@ -447,12 +459,20 @@
19238 -
19239 - #define LOADARGS_0
19240 - #ifdef __PIC__
19241 --# if defined I386_USE_SYSENTER && defined SHARED
19242 -+# if defined I386_USE_SYSENTER && ( defined SHARED || defined __PIC__ )
19243 - # define LOADARGS_1 \
19244 - "bpushl .L__X'%k3, %k3\n\t"
19245 - # define LOADARGS_5 \
19246 - "movl %%ebx, %4\n\t" \
19247 - "movl %3, %%ebx\n\t"
19248 -+# define LOADARGS_NOSYSENTER_1 \
19249 -+ "bpushl .L__X'%k2, %k2\n\t"
19250 -+# define LOADARGS_NOSYSENTER_2 LOADARGS_NOSYSENTER_1
19251 -+# define LOADARGS_NOSYSENTER_3 LOADARGS_3
19252 -+# define LOADARGS_NOSYSENTER_4 LOADARGS_3
19253 -+# define LOADARGS_NOSYSENTER_5 \
19254 -+ "movl %%ebx, %3\n\t" \
19255 -+ "movl %2, %%ebx\n\t"
19256 - # else
19257 - # define LOADARGS_1 \
19258 - "bpushl .L__X'%k2, %k2\n\t"
19259 -@@ -474,11 +495,18 @@
19260 -
19261 - #define RESTOREARGS_0
19262 - #ifdef __PIC__
19263 --# if defined I386_USE_SYSENTER && defined SHARED
19264 -+# if defined I386_USE_SYSENTER && ( defined SHARED || defined __PIC__ )
19265 - # define RESTOREARGS_1 \
19266 - "bpopl .L__X'%k3, %k3\n\t"
19267 - # define RESTOREARGS_5 \
19268 - "movl %4, %%ebx"
19269 -+# define RESTOREARGS_NOSYSENTER_1 \
19270 -+ "bpopl .L__X'%k2, %k2\n\t"
19271 -+# define RESTOREARGS_NOSYSENTER_2 RESTOREARGS_NOSYSENTER_1
19272 -+# define RESTOREARGS_NOSYSENTER_3 RESTOREARGS_3
19273 -+# define RESTOREARGS_NOSYSENTER_4 RESTOREARGS_3
19274 -+# define RESTOREARGS_NOSYSENTER_5 \
19275 -+ "movl %3, %%ebx"
19276 - # else
19277 - # define RESTOREARGS_1 \
19278 - "bpopl .L__X'%k2, %k2\n\t"
19279
19280 diff --git a/sys-libs/glibc/files/2.7/glibc-2.7-hardened-inittls-nosysenter.patch b/sys-libs/glibc/files/2.7/glibc-2.7-hardened-inittls-nosysenter.patch
19281 deleted file mode 100644
19282 index ecf57a9..0000000
19283 --- a/sys-libs/glibc/files/2.7/glibc-2.7-hardened-inittls-nosysenter.patch
19284 +++ /dev/null
19285 @@ -1,273 +0,0 @@
19286 -When building glibc PIE (which is not something upstream support),
19287 -several modifications are necessary to the glibc build process.
19288 -
19289 -First, any syscalls in PIEs must be of the PIC variant, otherwise
19290 -textrels ensue. Then, any syscalls made before the initialisation
19291 -of the TLS will fail on i386, as the sysenter variant on i386 uses
19292 -the TLS, giving rise to a chicken-and-egg situation. This patch
19293 -defines a PIC syscall variant that doesn't use sysenter, even when the sysenter
19294 -version is normally used, and uses the non-sysenter version for the brk
19295 -syscall that is performed by the TLS initialisation. Further, the TLS
19296 -initialisation is moved in this case prior to the initialisation of
19297 -dl_osversion, as that requires further syscalls.
19298 -
19299 -csu/libc-start.c: Move initial TLS initialization to before the
19300 -initialisation of dl_osversion, when INTERNAL_SYSCALL_NOSYSENTER is defined
19301 -
19302 -csu/libc-tls.c: Use the no-sysenter version of sbrk when
19303 -INTERNAL_SYSCALL_NOSYSENTER is defined.
19304 -
19305 -misc/sbrk.c: Define a no-sysenter version of sbrk, using the no-sysenter
19306 -version of brk - if INTERNAL_SYSCALL_NOSYSENTER is defined.
19307 -
19308 -misc/brk.c: Define a no-sysenter version of brk if
19309 -INTERNAL_SYSCALL_NOSYSENTER is defined.
19310 -
19311 -sysdeps/unix/sysv/linux/i386/sysdep.h: Define INTERNAL_SYSCALL_NOSYSENTER
19312 -Make INTERNAL_SYSCALL always use the PIC variant, even if not SHARED.
19313 -
19314 -Patch by Kevin F. Quinn <kevquinn@g.o>
19315 -
19316 ---- csu/libc-start.c
19317 -+++ csu/libc-start.c
19318 -@@ -28,6 +28,7 @@
19319 - extern int __libc_multiple_libcs;
19320 -
19321 - #include <tls.h>
19322 -+#include <sysdep.h>
19323 - #ifndef SHARED
19324 - # include <dl-osinfo.h>
19325 - extern void __pthread_initialize_minimal (void);
19326 -@@ -129,6 +130,11 @@
19327 - # endif
19328 - _dl_aux_init (auxvec);
19329 - # endif
19330 -+# ifdef INTERNAL_SYSCALL_NOSYSENTER
19331 -+ /* Do the initial TLS initialization before _dl_osversion,
19332 -+ since the latter uses the uname syscall. */
19333 -+ __pthread_initialize_minimal ();
19334 -+# endif
19335 - # ifdef DL_SYSDEP_OSCHECK
19336 - if (!__libc_multiple_libcs)
19337 - {
19338 -@@ -138,10 +144,12 @@
19339 - }
19340 - # endif
19341 -
19342 -+# ifndef INTERNAL_SYSCALL_NOSYSENTER
19343 - /* Initialize the thread library at least a bit since the libgcc
19344 - functions are using thread functions if these are available and
19345 - we need to setup errno. */
19346 - __pthread_initialize_minimal ();
19347 -+# endif
19348 -
19349 - /* Set up the stack checker's canary. */
19350 - uintptr_t stack_chk_guard = _dl_setup_stack_chk_guard ();
19351 ---- csu/libc-tls.c
19352 -+++ csu/libc-tls.c
19353 -@@ -23,6 +23,7 @@
19354 - #include <unistd.h>
19355 - #include <stdio.h>
19356 - #include <sys/param.h>
19357 -+#include <sysdep.h>
19358 -
19359 -
19360 - #ifdef SHARED
19361 -@@ -29,6 +30,9 @@
19362 - #error makefile bug, this file is for static only
19363 - #endif
19364 -
19365 -+#ifdef INTERNAL_SYSCALL_NOSYSENTER
19366 -+extern void *__sbrk_nosysenter (intptr_t __delta);
19367 -+#endif
19368 - extern ElfW(Phdr) *_dl_phdr;
19369 - extern size_t _dl_phnum;
19370 -
19371 -@@ -141,14 +145,26 @@
19372 -
19373 - The initialized value of _dl_tls_static_size is provided by dl-open.c
19374 - to request some surplus that permits dynamic loading of modules with
19375 -- IE-model TLS. */
19376 -+ IE-model TLS.
19377 -+
19378 -+ Where the normal sbrk would use a syscall that needs the TLS (i386)
19379 -+ use the special non-sysenter version instead. */
19380 - #if TLS_TCB_AT_TP
19381 - tcb_offset = roundup (memsz + GL(dl_tls_static_size), tcbalign);
19382 -+# ifdef INTERNAL_SYSCALL_NOSYSENTER
19383 -+ tlsblock = __sbrk_nosysenter (tcb_offset + tcbsize + max_align);
19384 -+# else
19385 - tlsblock = __sbrk (tcb_offset + tcbsize + max_align);
19386 -+# endif
19387 - #elif TLS_DTV_AT_TP
19388 - tcb_offset = roundup (tcbsize, align ?: 1);
19389 -+# ifdef INTERNAL_SYSCALL_NOSYSENTER
19390 -+ tlsblock = __sbrk_nosysenter (tcb_offset + memsz + max_align
19391 -+ + TLS_PRE_TCB_SIZE + GL(dl_tls_static_size));
19392 -+# else
19393 - tlsblock = __sbrk (tcb_offset + memsz + max_align
19394 - + TLS_PRE_TCB_SIZE + GL(dl_tls_static_size));
19395 -+# endif
19396 - tlsblock += TLS_PRE_TCB_SIZE;
19397 - #else
19398 - /* In case a model with a different layout for the TCB and DTV
19399 ---- misc/sbrk.c
19400 -+++ misc/sbrk.c
19401 -@@ -18,6 +18,7 @@
19402 -
19403 - #include <unistd.h>
19404 - #include <errno.h>
19405 -+#include <sysdep.h>
19406 -
19407 - /* Defined in brk.c. */
19408 - extern void *__curbrk;
19409 -@@ -29,6 +30,35 @@
19410 - /* Extend the process's data space by INCREMENT.
19411 - If INCREMENT is negative, shrink data space by - INCREMENT.
19412 - Return start of new space allocated, or -1 for errors. */
19413 -+#ifdef INTERNAL_SYSCALL_NOSYSENTER
19414 -+/* This version is used by csu/libc-tls.c whem initialising the TLS
19415 -+ if the SYSENTER version requires the TLS (which it does on i386).
19416 -+ Obviously using the TLS before it is initialised is broken. */
19417 -+extern int __brk_nosysenter (void *addr);
19418 -+void *
19419 -+__sbrk_nosysenter (intptr_t increment)
19420 -+{
19421 -+ void *oldbrk;
19422 -+
19423 -+ /* If this is not part of the dynamic library or the library is used
19424 -+ via dynamic loading in a statically linked program update
19425 -+ __curbrk from the kernel's brk value. That way two separate
19426 -+ instances of __brk and __sbrk can share the heap, returning
19427 -+ interleaved pieces of it. */
19428 -+ if (__curbrk == NULL || __libc_multiple_libcs)
19429 -+ if (__brk_nosysenter (0) < 0) /* Initialize the break. */
19430 -+ return (void *) -1;
19431 -+
19432 -+ if (increment == 0)
19433 -+ return __curbrk;
19434 -+
19435 -+ oldbrk = __curbrk;
19436 -+ if (__brk_nosysenter (oldbrk + increment) < 0)
19437 -+ return (void *) -1;
19438 -+
19439 -+ return oldbrk;
19440 -+}
19441 -+#endif
19442 - void *
19443 - __sbrk (intptr_t increment)
19444 - {
19445 ---- sysdeps/unix/sysv/linux/i386/brk.c
19446 -+++ sysdeps/unix/sysv/linux/i386/brk.c
19447 -@@ -31,6 +31,30 @@
19448 - linker. */
19449 - weak_alias (__curbrk, ___brk_addr)
19450 -
19451 -+#ifdef INTERNAL_SYSCALL_NOSYSENTER
19452 -+/* This version is used by csu/libc-tls.c whem initialising the TLS
19453 -+ * if the SYSENTER version requires the TLS (which it does on i386).
19454 -+ * Obviously using the TLS before it is initialised is broken. */
19455 -+int
19456 -+__brk_nosysenter (void *addr)
19457 -+{
19458 -+ void *__unbounded newbrk;
19459 -+
19460 -+ INTERNAL_SYSCALL_DECL (err);
19461 -+ newbrk = (void *__unbounded) INTERNAL_SYSCALL_NOSYSENTER (brk, err, 1,
19462 -+ __ptrvalue (addr));
19463 -+
19464 -+ __curbrk = newbrk;
19465 -+
19466 -+ if (newbrk < addr)
19467 -+ {
19468 -+ __set_errno (ENOMEM);
19469 -+ return -1;
19470 -+ }
19471 -+
19472 -+ return 0;
19473 -+}
19474 -+#endif
19475 - int
19476 - __brk (void *addr)
19477 - {
19478 ---- sysdeps/unix/sysv/linux/i386/sysdep.h
19479 -+++ sysdeps/unix/sysv/linux/i386/sysdep.h
19480 -@@ -187,7 +187,7 @@
19481 - /* The original calling convention for system calls on Linux/i386 is
19482 - to use int $0x80. */
19483 - #ifdef I386_USE_SYSENTER
19484 --# ifdef SHARED
19485 -+# if defined SHARED || defined __PIC__
19486 - # define ENTER_KERNEL call *%gs:SYSINFO_OFFSET
19487 - # else
19488 - # define ENTER_KERNEL call *_dl_sysinfo
19489 -@@ -358,7 +358,7 @@
19490 - possible to use more than four parameters. */
19491 - #undef INTERNAL_SYSCALL
19492 - #ifdef I386_USE_SYSENTER
19493 --# ifdef SHARED
19494 -+# if defined SHARED || defined __PIC__
19495 - # define INTERNAL_SYSCALL(name, err, nr, args...) \
19496 - ({ \
19497 - register unsigned int resultvar; \
19498 -@@ -384,6 +384,18 @@
19499 - : "0" (name), "i" (offsetof (tcbhead_t, sysinfo)) \
19500 - ASMFMT_##nr(args) : "memory", "cc"); \
19501 - (int) resultvar; })
19502 -+# define INTERNAL_SYSCALL_NOSYSENTER(name, err, nr, args...) \
19503 -+ ({ \
19504 -+ register unsigned int resultvar; \
19505 -+ EXTRAVAR_##nr \
19506 -+ asm volatile ( \
19507 -+ LOADARGS_NOSYSENTER_##nr \
19508 -+ "movl %1, %%eax\n\t" \
19509 -+ "int $0x80\n\t" \
19510 -+ RESTOREARGS_NOSYSENTER_##nr \
19511 -+ : "=a" (resultvar) \
19512 -+ : "i" (__NR_##name) ASMFMT_##nr(args) : "memory", "cc"); \
19513 -+ (int) resultvar; })
19514 - # else
19515 - # define INTERNAL_SYSCALL(name, err, nr, args...) \
19516 - ({ \
19517 -@@ -447,12 +459,20 @@
19518 -
19519 - #define LOADARGS_0
19520 - #ifdef __PIC__
19521 --# if defined I386_USE_SYSENTER && defined SHARED
19522 -+# if defined I386_USE_SYSENTER && ( defined SHARED || defined __PIC__ )
19523 - # define LOADARGS_1 \
19524 - "bpushl .L__X'%k3, %k3\n\t"
19525 - # define LOADARGS_5 \
19526 - "movl %%ebx, %4\n\t" \
19527 - "movl %3, %%ebx\n\t"
19528 -+# define LOADARGS_NOSYSENTER_1 \
19529 -+ "bpushl .L__X'%k2, %k2\n\t"
19530 -+# define LOADARGS_NOSYSENTER_2 LOADARGS_NOSYSENTER_1
19531 -+# define LOADARGS_NOSYSENTER_3 LOADARGS_3
19532 -+# define LOADARGS_NOSYSENTER_4 LOADARGS_3
19533 -+# define LOADARGS_NOSYSENTER_5 \
19534 -+ "movl %%ebx, %3\n\t" \
19535 -+ "movl %2, %%ebx\n\t"
19536 - # else
19537 - # define LOADARGS_1 \
19538 - "bpushl .L__X'%k2, %k2\n\t"
19539 -@@ -474,11 +495,18 @@
19540 -
19541 - #define RESTOREARGS_0
19542 - #ifdef __PIC__
19543 --# if defined I386_USE_SYSENTER && defined SHARED
19544 -+# if defined I386_USE_SYSENTER && ( defined SHARED || defined __PIC__ )
19545 - # define RESTOREARGS_1 \
19546 - "bpopl .L__X'%k3, %k3\n\t"
19547 - # define RESTOREARGS_5 \
19548 - "movl %4, %%ebx"
19549 -+# define RESTOREARGS_NOSYSENTER_1 \
19550 -+ "bpopl .L__X'%k2, %k2\n\t"
19551 -+# define RESTOREARGS_NOSYSENTER_2 RESTOREARGS_NOSYSENTER_1
19552 -+# define RESTOREARGS_NOSYSENTER_3 RESTOREARGS_3
19553 -+# define RESTOREARGS_NOSYSENTER_4 RESTOREARGS_3
19554 -+# define RESTOREARGS_NOSYSENTER_5 \
19555 -+ "movl %3, %%ebx"
19556 - # else
19557 - # define RESTOREARGS_1 \
19558 - "bpopl .L__X'%k2, %k2\n\t"
19559
19560 diff --git a/sys-libs/glibc/files/eblits/common.eblit b/sys-libs/glibc/files/eblits/common.eblit
19561 deleted file mode 100644
19562 index e56f10e..0000000
19563 --- a/sys-libs/glibc/files/eblits/common.eblit
19564 +++ /dev/null
19565 @@ -1,380 +0,0 @@
19566 -# Copyright 1999-2015 Gentoo Foundation
19567 -# Distributed under the terms of the GNU General Public License v2
19568 -# $Id$
19569 -
19570 -alt_prefix() {
19571 - is_crosscompile && echo /usr/${CTARGET}
19572 -}
19573 -
19574 -if [[ ${EAPI:-0} == [012] ]] ; then
19575 - : ${ED:=${D}}
19576 - : ${EROOT:=${ROOT}}
19577 -fi
19578 -# This indirection is for binpkgs. #523332
19579 -_nonfatal() { nonfatal "$@" ; }
19580 -if [[ ${EAPI:-0} == [0123] ]] ; then
19581 - nonfatal() { "$@" ; }
19582 - _nonfatal() { "$@" ; }
19583 -fi
19584 -
19585 -# We need to be able to set alternative headers for
19586 -# compiling for non-native platform
19587 -# Will also become useful for testing kernel-headers without screwing up
19588 -# the whole system.
19589 -# note: intentionally undocumented.
19590 -alt_headers() {
19591 - echo ${ALT_HEADERS:=$(alt_prefix)/usr/include}
19592 -}
19593 -alt_build_headers() {
19594 - if [[ -z ${ALT_BUILD_HEADERS} ]] ; then
19595 - ALT_BUILD_HEADERS="${EPREFIX}$(alt_headers)"
19596 - if tc-is-cross-compiler ; then
19597 - ALT_BUILD_HEADERS=${SYSROOT}$(alt_headers)
19598 - if [[ ! -e ${ALT_BUILD_HEADERS}/linux/version.h ]] ; then
19599 - local header_path=$(echo '#include <linux/version.h>' | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 | grep -o '[^"]*linux/version.h')
19600 - ALT_BUILD_HEADERS=${header_path%/linux/version.h}
19601 - fi
19602 - fi
19603 - fi
19604 - echo "${ALT_BUILD_HEADERS}"
19605 -}
19606 -
19607 -alt_libdir() {
19608 - echo $(alt_prefix)/$(get_libdir)
19609 -}
19610 -alt_usrlibdir() {
19611 - echo $(alt_prefix)/usr/$(get_libdir)
19612 -}
19613 -
19614 -builddir() {
19615 - echo "${WORKDIR}/build-${ABI}-${CTARGET}-$1"
19616 -}
19617 -
19618 -setup_target_flags() {
19619 - # This largely mucks with compiler flags. None of which should matter
19620 - # when building up just the headers.
19621 - just_headers && return 0
19622 -
19623 - case $(tc-arch) in
19624 - x86)
19625 - # -march needed for #185404 #199334
19626 - # TODO: When creating the first glibc cross-compile, this test will
19627 - # always fail as it does a full link which in turn requires glibc.
19628 - # Probably also applies when changing multilib profile settings (e.g.
19629 - # enabling x86 when the profile was amd64-only previously).
19630 - # We could change main to _start and pass -nostdlib here so that we
19631 - # only test the gcc code compilation. Or we could do a compile and
19632 - # then look for the symbol via scanelf.
19633 - if ! glibc_compile_test "" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n' 2>/dev/null ; then
19634 - local t=${CTARGET_OPT:-${CTARGET}}
19635 - t=${t%%-*}
19636 - filter-flags '-march=*'
19637 - export CFLAGS="-march=${t} ${CFLAGS}"
19638 - einfo "Auto adding -march=${t} to CFLAGS #185404"
19639 - fi
19640 - ;;
19641 - amd64)
19642 - # -march needed for #185404 #199334
19643 - # Note: This test only matters when the x86 ABI is enabled, so we could
19644 - # optimize a bit and elide it.
19645 - # TODO: See cross-compile issues listed above for x86.
19646 - if ! glibc_compile_test "${CFLAGS_x86}" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n' 2>/dev/null ; then
19647 - local t=${CTARGET_OPT:-${CTARGET}}
19648 - t=${t%%-*}
19649 - # Normally the target is x86_64-xxx, so turn that into the -march that
19650 - # gcc actually accepts. #528708
19651 - [[ ${t} == "x86_64" ]] && t="x86-64"
19652 - filter-flags '-march=*'
19653 - # ugly, ugly, ugly. ugly.
19654 - CFLAGS_x86=$(CFLAGS=${CFLAGS_x86} filter-flags '-march=*'; echo "${CFLAGS}")
19655 - export CFLAGS_x86="${CFLAGS_x86} -march=${t}"
19656 - einfo "Auto adding -march=${t} to CFLAGS_x86 #185404"
19657 - fi
19658 - ;;
19659 - mips)
19660 - # The mips abi cannot support the GNU style hashes. #233233
19661 - filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both
19662 - ;;
19663 - ppc)
19664 - append-flags "-freorder-blocks"
19665 - ;;
19666 - sparc)
19667 - # Both sparc and sparc64 can use -fcall-used-g6. -g7 is bad, though.
19668 - filter-flags "-fcall-used-g7"
19669 - append-flags "-fcall-used-g6"
19670 -
19671 - # If the CHOST is the basic one (e.g. not sparcv9-xxx already),
19672 - # try to pick a better one so glibc can use cpu-specific .S files.
19673 - # We key off the CFLAGS to get a good value. Also need to handle
19674 - # version skew.
19675 - # We can't force users to set their CHOST to their exact machine
19676 - # as many of these are not recognized by config.sub/gcc and such :(.
19677 - # Note: If the mcpu values don't scale, we might try probing CPP defines.
19678 - # Note: Should we factor in -Wa,-AvXXX flags too ? Or -mvis/etc... ?
19679 -
19680 - local cpu
19681 - case ${CTARGET} in
19682 - sparc64-*)
19683 - case $(get-flag mcpu) in
19684 - niagara[234])
19685 - if version_is_at_least 2.8 ; then
19686 - cpu="sparc64v2"
19687 - elif version_is_at_least 2.4 ; then
19688 - cpu="sparc64v"
19689 - elif version_is_at_least 2.2.3 ; then
19690 - cpu="sparc64b"
19691 - fi
19692 - ;;
19693 - niagara)
19694 - if version_is_at_least 2.4 ; then
19695 - cpu="sparc64v"
19696 - elif version_is_at_least 2.2.3 ; then
19697 - cpu="sparc64b"
19698 - fi
19699 - ;;
19700 - ultrasparc3)
19701 - cpu="sparc64b"
19702 - ;;
19703 - *)
19704 - # We need to force at least v9a because the base build doesn't
19705 - # work with just v9.
19706 - # https://sourceware.org/bugzilla/show_bug.cgi?id=19477
19707 - [[ -z ${cpu} ]] && append-flags "-Wa,-xarch=v9a"
19708 - ;;
19709 - esac
19710 - ;;
19711 - sparc-*)
19712 - case $(get-flag mcpu) in
19713 - niagara[234])
19714 - if version_is_at_least 2.8 ; then
19715 - cpu="sparcv9v2"
19716 - elif version_is_at_least 2.4 ; then
19717 - cpu="sparcv9v"
19718 - elif version_is_at_least 2.2.3 ; then
19719 - cpu="sparcv9b"
19720 - else
19721 - cpu="sparcv9"
19722 - fi
19723 - ;;
19724 - niagara)
19725 - if version_is_at_least 2.4 ; then
19726 - cpu="sparcv9v"
19727 - elif version_is_at_least 2.2.3 ; then
19728 - cpu="sparcv9b"
19729 - else
19730 - cpu="sparcv9"
19731 - fi
19732 - ;;
19733 - ultrasparc3)
19734 - cpu="sparcv9b"
19735 - ;;
19736 - v9|ultrasparc)
19737 - cpu="sparcv9"
19738 - ;;
19739 - v8|supersparc|hypersparc|leon|leon3)
19740 - cpu="sparcv8"
19741 - ;;
19742 - esac
19743 - ;;
19744 - esac
19745 - [[ -n ${cpu} ]] && CTARGET_OPT="${cpu}-${CTARGET#*-}"
19746 - ;;
19747 - esac
19748 -}
19749 -
19750 -setup_flags() {
19751 - # Make sure host make.conf doesn't pollute us
19752 - if is_crosscompile || tc-is-cross-compiler ; then
19753 - CHOST=${CTARGET} strip-unsupported-flags
19754 - fi
19755 -
19756 - # Store our CFLAGS because it's changed depending on which CTARGET
19757 - # we are building when pulling glibc on a multilib profile
19758 - CFLAGS_BASE=${CFLAGS_BASE-${CFLAGS}}
19759 - CFLAGS=${CFLAGS_BASE}
19760 - CXXFLAGS_BASE=${CXXFLAGS_BASE-${CXXFLAGS}}
19761 - CXXFLAGS=${CXXFLAGS_BASE}
19762 - ASFLAGS_BASE=${ASFLAGS_BASE-${ASFLAGS}}
19763 - ASFLAGS=${ASFLAGS_BASE}
19764 -
19765 - # Over-zealous CFLAGS can often cause problems. What may work for one
19766 - # person may not work for another. To avoid a large influx of bugs
19767 - # relating to failed builds, we strip most CFLAGS out to ensure as few
19768 - # problems as possible.
19769 - strip-flags
19770 - strip-unsupported-flags
19771 - filter-flags -m32 -m64 -mabi=*
19772 -
19773 - # Bug 492892.
19774 - filter-flags -frecord-gcc-switches
19775 -
19776 - unset CBUILD_OPT CTARGET_OPT
19777 - if use multilib ; then
19778 - CTARGET_OPT=$(get_abi_CTARGET)
19779 - [[ -z ${CTARGET_OPT} ]] && CTARGET_OPT=$(get_abi_CHOST)
19780 - fi
19781 -
19782 - setup_target_flags
19783 -
19784 - if [[ -n ${CTARGET_OPT} && ${CBUILD} == ${CHOST} ]] && ! is_crosscompile; then
19785 - CBUILD_OPT=${CTARGET_OPT}
19786 - fi
19787 -
19788 - # Lock glibc at -O2 -- linuxthreads needs it and we want to be
19789 - # conservative here. -fno-strict-aliasing is to work around #155906
19790 - filter-flags -O?
19791 - append-flags -O2 -fno-strict-aliasing
19792 -
19793 - # Can't build glibc itself with fortify code. Newer versions add
19794 - # this flag for us, so no need to do it manually.
19795 - version_is_at_least 2.16 ${PV} || append-cppflags -U_FORTIFY_SOURCE
19796 -
19797 - # building glibc with SSP is fraught with difficulty, especially
19798 - # due to __stack_chk_fail_local which would mean significant changes
19799 - # to the glibc build process. See bug #94325 #293721
19800 - # Note we have to handle both user-given CFLAGS and gcc defaults via
19801 - # spec rules here. We can't simply add -fno-stack-protector as it gets
19802 - # added before user flags, and we can't just filter-flags because
19803 - # _filter_hardened doesn't support globs.
19804 - filter-flags -fstack-protector*
19805 - gcc-specs-ssp && append-flags $(test-flags -fno-stack-protector)
19806 -
19807 - if use hardened && gcc-specs-pie ; then
19808 - # Force PIC macro definition for all compilations since they're all
19809 - # either -fPIC or -fPIE with the default-PIE compiler.
19810 - append-cppflags -DPIC
19811 - else
19812 - # Don't build -fPIE without the default-PIE compiler and the
19813 - # hardened-pie patch
19814 - filter-flags -fPIE
19815 - fi
19816 -}
19817 -
19818 -want_nptl() {
19819 - [[ -z ${LT_VER} ]] && return 0
19820 - want_tls || return 1
19821 - use nptl || return 1
19822 -
19823 - # Older versions of glibc had incomplete arch support for nptl.
19824 - # But if you're building those now, you can handle USE=nptl yourself.
19825 - return 0
19826 -}
19827 -
19828 -want_linuxthreads() {
19829 - [[ -z ${LT_VER} ]] && return 1
19830 - use linuxthreads
19831 -}
19832 -
19833 -want_tls() {
19834 - # Archs that can use TLS (Thread Local Storage)
19835 - case $(tc-arch) in
19836 - x86)
19837 - # requires i486 or better #106556
19838 - [[ ${CTARGET} == i[4567]86* ]] && return 0
19839 - return 1
19840 - ;;
19841 - esac
19842 -
19843 - return 0
19844 -}
19845 -
19846 -want__thread() {
19847 - want_tls || return 1
19848 -
19849 - # For some reason --with-tls --with__thread is causing segfaults on sparc32.
19850 - [[ ${PROFILE_ARCH} == "sparc" ]] && return 1
19851 -
19852 - [[ -n ${WANT__THREAD} ]] && return ${WANT__THREAD}
19853 -
19854 - # only test gcc -- cant test linking yet
19855 - tc-has-tls -c ${CTARGET}
19856 - WANT__THREAD=$?
19857 -
19858 - return ${WANT__THREAD}
19859 -}
19860 -
19861 -use_multiarch() {
19862 - # Make sure binutils is new enough to support indirect functions #336792
19863 - # This funky sed supports gold and bfd linkers.
19864 - local bver nver
19865 - bver=$($(tc-getLD ${CTARGET}) -v | sed -n -r '1{s:[^0-9]*::;s:^([0-9.]*).*:\1:;p}')
19866 - case $(tc-arch ${CTARGET}) in
19867 - amd64|x86) nver="2.20" ;;
19868 - arm) nver="2.22" ;;
19869 - hppa) nver="2.23" ;;
19870 - ppc|ppc64) nver="2.20" ;;
19871 - # ifunc was added in 2.23, but glibc also needs machinemode which is in 2.24.
19872 - s390) nver="2.24" ;;
19873 - sparc) nver="2.21" ;;
19874 - *) return 1 ;;
19875 - esac
19876 - version_is_at_least ${nver} ${bver}
19877 -}
19878 -
19879 -# Setup toolchain variables that had historically
19880 -# been defined in the profiles for these archs.
19881 -setup_env() {
19882 - # silly users
19883 - unset LD_RUN_PATH
19884 - unset LD_ASSUME_KERNEL
19885 -
19886 - multilib_env ${CTARGET_OPT:-${CTARGET}}
19887 - if is_crosscompile || tc-is-cross-compiler ; then
19888 - if ! use multilib ; then
19889 - MULTILIB_ABIS=${DEFAULT_ABI}
19890 - else
19891 - MULTILIB_ABIS=${MULTILIB_ABIS:-${DEFAULT_ABI}}
19892 - fi
19893 -
19894 - # If the user has CFLAGS_<CTARGET> in their make.conf, use that,
19895 - # and fall back on CFLAGS.
19896 - local VAR=CFLAGS_${CTARGET//[-.]/_}
19897 - CFLAGS=${!VAR-${CFLAGS}}
19898 - fi
19899 -
19900 - setup_flags
19901 -
19902 - export ABI=${ABI:-${DEFAULT_ABI:-default}}
19903 -
19904 - local VAR=CFLAGS_${ABI}
19905 - # We need to export CFLAGS with abi information in them because glibc's
19906 - # configure script checks CFLAGS for some targets (like mips). Keep
19907 - # around the original clean value to avoid appending multiple ABIs on
19908 - # top of each other.
19909 - : ${__GLIBC_CC:=$(tc-getCC ${CTARGET_OPT:-${CTARGET}})}
19910 - export __GLIBC_CC CC="${__GLIBC_CC} ${!VAR}"
19911 -}
19912 -
19913 -foreach_abi() {
19914 - setup_env
19915 -
19916 - local ret=0
19917 - local abilist=""
19918 - if use multilib ; then
19919 - abilist=$(get_install_abis)
19920 - else
19921 - abilist=${DEFAULT_ABI}
19922 - fi
19923 - evar_push ABI
19924 - export ABI
19925 - for ABI in ${abilist:-default} ; do
19926 - setup_env
19927 - einfo "Running $1 for ABI ${ABI}"
19928 - $1
19929 - : $(( ret |= $? ))
19930 - done
19931 - evar_pop
19932 - return ${ret}
19933 -}
19934 -
19935 -just_headers() {
19936 - is_crosscompile && use crosscompile_opts_headers-only
19937 -}
19938 -
19939 -glibc_banner() {
19940 - local b="Gentoo ${PVR}"
19941 - [[ -n ${SNAP_VER} ]] && b+=" snapshot ${SNAP_VER}"
19942 - [[ -n ${BRANCH_UPDATE} ]] && b+=" branch ${BRANCH_UPDATE}"
19943 - [[ -n ${PATCH_VER} ]] && ! use vanilla && b+=" p${PATCH_VER}"
19944 - echo "${b}"
19945 -}
19946
19947 diff --git a/sys-libs/glibc/files/eblits/pkg_postinst.eblit b/sys-libs/glibc/files/eblits/pkg_postinst.eblit
19948 deleted file mode 100644
19949 index 8178fa1..0000000
19950 --- a/sys-libs/glibc/files/eblits/pkg_postinst.eblit
19951 +++ /dev/null
19952 @@ -1,27 +0,0 @@
19953 -# Copyright 1999-2012 Gentoo Foundation
19954 -# Distributed under the terms of the GNU General Public License v2
19955 -# $Id$
19956 -
19957 -eblit-glibc-pkg_postinst() {
19958 - # nothing to do if just installing headers
19959 - just_headers && return
19960 -
19961 - if ! tc-is-cross-compiler && [[ -x ${EROOT}/usr/sbin/iconvconfig ]] ; then
19962 - # Generate fastloading iconv module configuration file.
19963 - "${EROOT}"/usr/sbin/iconvconfig --prefix="${ROOT}"
19964 - fi
19965 -
19966 - if ! is_crosscompile && [[ ${ROOT} == "/" ]] ; then
19967 - # Reload init ... if in a chroot or a diff init package, ignore
19968 - # errors from this step #253697
19969 - /sbin/telinit U 2>/dev/null
19970 -
19971 - # if the host locales.gen contains no entries, we'll install everything
19972 - local locale_list="${EROOT}etc/locale.gen"
19973 - if [[ -z $(locale-gen --list --config "${locale_list}") ]] ; then
19974 - ewarn "Generating all locales; edit /etc/locale.gen to save time/space"
19975 - locale_list="${EROOT}usr/share/i18n/SUPPORTED"
19976 - fi
19977 - locale-gen -j $(makeopts_jobs) --config "${locale_list}"
19978 - fi
19979 -}
19980
19981 diff --git a/sys-libs/glibc/files/eblits/pkg_preinst.eblit b/sys-libs/glibc/files/eblits/pkg_preinst.eblit
19982 deleted file mode 100644
19983 index f40f402..0000000
19984 --- a/sys-libs/glibc/files/eblits/pkg_preinst.eblit
19985 +++ /dev/null
19986 @@ -1,63 +0,0 @@
19987 -# Copyright 1999-2015 Gentoo Foundation
19988 -# Distributed under the terms of the GNU General Public License v2
19989 -# $Id$
19990 -
19991 -# Simple test to make sure our new glibc isnt completely broken.
19992 -# Make sure we don't test with statically built binaries since
19993 -# they will fail. Also, skip if this glibc is a cross compiler.
19994 -#
19995 -# If coreutils is built with USE=multicall, some of these files
19996 -# will just be wrapper scripts, not actual ELFs we can test.
19997 -glibc_sanity_check() {
19998 - cd / #228809
19999 -
20000 - # We enter ${ED} so to avoid trouble if the path contains
20001 - # special characters; for instance if the path contains the
20002 - # colon character (:), then the linker will try to split it
20003 - # and look for the libraries in an unexpected place. This can
20004 - # lead to unsafe code execution if the generated prefix is
20005 - # within a world-writable directory.
20006 - # (e.g. /var/tmp/portage:${HOSTNAME})
20007 - pushd "${ED}"/$(get_libdir) >/dev/null
20008 -
20009 - local x striptest
20010 - for x in cal date env free ls true uname uptime ; do
20011 - x=$(type -p ${x})
20012 - [[ -z ${x} || ${x} != ${EPREFIX}/* ]] && continue
20013 - striptest=$(LC_ALL="C" file -L ${x} 2>/dev/null) || continue
20014 - case ${striptest} in
20015 - *"statically linked"*) continue;;
20016 - *"ASCII text"*) continue;;
20017 - esac
20018 - # We need to clear the locale settings as the upgrade might want
20019 - # incompatible locale data. This test is not for verifying that.
20020 - LC_ALL=C \
20021 - ./ld-*.so --library-path . ${x} > /dev/null \
20022 - || die "simple run test (${x}) failed"
20023 - done
20024 -
20025 - popd >/dev/null
20026 -}
20027 -
20028 -eblit-glibc-pkg_preinst() {
20029 - # nothing to do if just installing headers
20030 - just_headers && return
20031 -
20032 - # prepare /etc/ld.so.conf.d/ for files
20033 - mkdir -p "${EROOT}"/etc/ld.so.conf.d
20034 -
20035 - # Default /etc/hosts.conf:multi to on for systems with small dbs.
20036 - if [[ $(wc -l < "${EROOT}"/etc/hosts) -lt 1000 ]] ; then
20037 - sed -i '/^multi off/s:off:on:' "${ED}"/etc/host.conf
20038 - elog "Defaulting /etc/host.conf:multi to on"
20039 - fi
20040 -
20041 - [[ ${ROOT} != "/" ]] && return 0
20042 - [[ -d ${ED}/$(get_libdir) ]] || return 0
20043 - [[ -z ${BOOTSTRAP_RAP} ]] && glibc_sanity_check
20044 -
20045 - # For newer EAPIs, this was run in pkg_pretend.
20046 - if [[ ${EAPI:-0} == [0123] ]] ; then
20047 - check_devpts
20048 - fi
20049 -}
20050
20051 diff --git a/sys-libs/glibc/files/eblits/pkg_pretend.eblit b/sys-libs/glibc/files/eblits/pkg_pretend.eblit
20052 deleted file mode 100644
20053 index c900ccc..0000000
20054 --- a/sys-libs/glibc/files/eblits/pkg_pretend.eblit
20055 +++ /dev/null
20056 @@ -1,157 +0,0 @@
20057 -# Copyright 1999-2015 Gentoo Foundation
20058 -# Distributed under the terms of the GNU General Public License v2
20059 -# $Id$
20060 -
20061 -glibc_compile_test() {
20062 - local ret save_cflags=${CFLAGS}
20063 - CFLAGS+=" $1"
20064 - shift
20065 -
20066 - pushd "${T}" >/dev/null
20067 -
20068 - rm -f glibc-test*
20069 - printf '%b' "$*" > glibc-test.c
20070 -
20071 - _nonfatal emake -s glibc-test
20072 - ret=$?
20073 -
20074 - popd >/dev/null
20075 -
20076 - CFLAGS=${save_cflags}
20077 - return ${ret}
20078 -}
20079 -
20080 -glibc_run_test() {
20081 - local ret
20082 -
20083 - if [[ ${EMERGE_FROM} == "binary" ]] ; then
20084 - # ignore build failures when installing a binary package #324685
20085 - glibc_compile_test "" "$@" 2>/dev/null || return 0
20086 - else
20087 - if ! glibc_compile_test "" "$@" ; then
20088 - ewarn "Simple build failed ... assuming this is desired #324685"
20089 - return 0
20090 - fi
20091 - fi
20092 -
20093 - pushd "${T}" >/dev/null
20094 -
20095 - ./glibc-test
20096 - ret=$?
20097 - rm -f glibc-test*
20098 -
20099 - popd >/dev/null
20100 -
20101 - return ${ret}
20102 -}
20103 -
20104 -check_devpts() {
20105 - # Make sure devpts is mounted correctly for use w/out setuid pt_chown.
20106 -
20107 - # If merely building the binary package, then there's nothing to verify.
20108 - [[ ${MERGE_TYPE} == "buildonly" ]] && return
20109 -
20110 - # Only sanity check when installing the native glibc.
20111 - [[ ${ROOT} != "/" ]] && return
20112 -
20113 - # Older versions always installed setuid, so no need to check.
20114 - in_iuse suid || return
20115 -
20116 - # If they're opting in to the old suid code, then no need to check.
20117 - use suid && return
20118 -
20119 - if awk '$3 == "devpts" && $4 ~ /[, ]gid=5[, ]/ { exit 1 }' /proc/mounts ; then
20120 - eerror "In order to use glibc with USE=-suid, you must make sure that"
20121 - eerror "you have devpts mounted at /dev/pts with the gid=5 option."
20122 - eerror "Openrc should do this for you, so you should check /etc/fstab"
20123 - eerror "and make sure you do not have any invalid settings there."
20124 - # Do not die on older kernels as devpts did not export these settings #489520.
20125 - if version_is_at_least 2.6.25 $(uname -r) ; then
20126 - die "mount & fix your /dev/pts settings"
20127 - fi
20128 - fi
20129 -}
20130 -
20131 -eblit-glibc-pkg_pretend() {
20132 - # For older EAPIs, this is run in pkg_preinst.
20133 - if [[ ${EAPI:-0} != [0123] ]] ; then
20134 - check_devpts
20135 - fi
20136 -
20137 - # prevent native builds from downgrading ... maybe update to allow people
20138 - # to change between diff -r versions ? (2.3.6-r4 -> 2.3.6-r2)
20139 - if [[ ${MERGE_TYPE} != "buildonly" ]] && \
20140 - [[ ${ROOT} == "/" ]] && \
20141 - [[ ${CBUILD} == ${CHOST} ]] && \
20142 - [[ ${CHOST} == ${CTARGET} ]] ; then
20143 - if has_version '>'${CATEGORY}/${PF} ; then
20144 - eerror "Sanity check to keep you from breaking your system:"
20145 - eerror " Downgrading glibc is not supported and a sure way to destruction"
20146 - die "aborting to save your system"
20147 - fi
20148 -
20149 - if ! glibc_run_test '#include <pwd.h>\nint main(){return getpwuid(0)==0;}\n'
20150 - then
20151 - eerror "Your patched vendor kernel is broken. You need to get an"
20152 - eerror "update from whoever is providing the kernel to you."
20153 - eerror "http://sourceware.org/bugzilla/show_bug.cgi?id=5227"
20154 - eerror "http://bugs.gentoo.org/262698"
20155 - die "keeping your system alive, say thank you"
20156 - fi
20157 -
20158 - if ! glibc_run_test '#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return syscall(1000)!=-1;}\n'
20159 - then
20160 - eerror "Your old kernel is broken. You need to update it to"
20161 - eerror "a newer version as syscall(<bignum>) will break."
20162 - eerror "http://bugs.gentoo.org/279260"
20163 - die "keeping your system alive, say thank you"
20164 - fi
20165 - fi
20166 -
20167 - # users have had a chance to phase themselves, time to give em the boot
20168 - if [[ -e ${EROOT}/etc/locale.gen ]] && [[ -e ${EROOT}/etc/locales.build ]] ; then
20169 - eerror "You still haven't deleted ${EROOT}/etc/locales.build."
20170 - eerror "Do so now after making sure ${EROOT}/etc/locale.gen is kosher."
20171 - die "lazy upgrader detected"
20172 - fi
20173 -
20174 - if [[ ${CTARGET} == i386-* ]] ; then
20175 - eerror "i386 CHOSTs are no longer supported."
20176 - eerror "Chances are you don't actually want/need i386."
20177 - eerror "Please read http://www.gentoo.org/doc/en/change-chost.xml"
20178 - die "please fix your CHOST"
20179 - fi
20180 -
20181 - if [[ -e /proc/xen ]] && [[ $(tc-arch) == "x86" ]] && ! is-flag -mno-tls-direct-seg-refs ; then
20182 - ewarn "You are using Xen but don't have -mno-tls-direct-seg-refs in your CFLAGS."
20183 - ewarn "This will result in a 50% performance penalty when running with a 32bit"
20184 - ewarn "hypervisor, which is probably not what you want."
20185 - fi
20186 -
20187 - use hardened && ! gcc-specs-pie && \
20188 - ewarn "PIE hardening not applied, as your compiler doesn't default to PIE"
20189 -
20190 - # Make sure host system is up to date #394453
20191 - if has_version '<sys-libs/glibc-2.13' && \
20192 - [[ -n $(scanelf -qys__guard -F'#s%F' "${EROOT}"/lib*/l*-*.so) ]]
20193 - then
20194 - ebegin "Scanning system for __guard to see if you need to rebuild first ..."
20195 - local files=$(
20196 - scanelf -qys__guard -F'#s%F' \
20197 - "${EROOT}"/*bin/ \
20198 - "${EROOT}"/lib* \
20199 - "${EROOT}"/usr/*bin/ \
20200 - "${EROOT}"/usr/lib* | \
20201 - egrep -v \
20202 - -e "^${EROOT}/lib.*/(libc|ld)-2.*.so$" \
20203 - -e "^${EROOT}/sbin/(ldconfig|sln)$"
20204 - )
20205 - [[ -z ${files} ]]
20206 - if ! eend $? ; then
20207 - eerror "Your system still has old SSP __guard symbols. You need to"
20208 - eerror "rebuild all the packages that provide these files first:"
20209 - eerror "${files}"
20210 - die "old __guard detected"
20211 - fi
20212 - fi
20213 -}
20214
20215 diff --git a/sys-libs/glibc/files/eblits/pkg_setup.eblit b/sys-libs/glibc/files/eblits/pkg_setup.eblit
20216 deleted file mode 100644
20217 index 2aff258..0000000
20218 --- a/sys-libs/glibc/files/eblits/pkg_setup.eblit
20219 +++ /dev/null
20220 @@ -1,9 +0,0 @@
20221 -# Copyright 1999-2015 Gentoo Foundation
20222 -# Distributed under the terms of the GNU General Public License v2
20223 -# $Id$
20224 -
20225 -[[ ${EAPI:-0} == [0123] ]] && source "${FILESDIR}/eblits/pkg_pretend.eblit"
20226 -
20227 -eblit-glibc-pkg_setup() {
20228 - [[ ${EAPI:-0} == [0123] ]] && eblit-glibc-pkg_pretend
20229 -}
20230
20231 diff --git a/sys-libs/glibc/files/eblits/src_compile.eblit b/sys-libs/glibc/files/eblits/src_compile.eblit
20232 deleted file mode 100644
20233 index 7a38b3e..0000000
20234 --- a/sys-libs/glibc/files/eblits/src_compile.eblit
20235 +++ /dev/null
20236 @@ -1,24 +0,0 @@
20237 -# Copyright 1999-2014 Gentoo Foundation
20238 -# Distributed under the terms of the GNU General Public License v2
20239 -# $Id$
20240 -
20241 -[[ ${EAPI:-0} == [01] ]] && source "${FILESDIR}/eblits/src_configure.eblit"
20242 -
20243 -toolchain-glibc_src_compile() {
20244 - local t
20245 - for t in linuxthreads nptl ; do
20246 - if want_${t} ; then
20247 - [[ ${EAPI:-0} == [01] ]] && glibc_do_configure ${t}
20248 - emake -C "$(builddir ${t})" || die "make ${t} for ${ABI} failed"
20249 - fi
20250 - done
20251 -}
20252 -
20253 -eblit-glibc-src_compile() {
20254 - if just_headers ; then
20255 - [[ ${EAPI:-0} == [01] ]] && toolchain-glibc_headers_configure
20256 - return
20257 - fi
20258 -
20259 - foreach_abi toolchain-glibc_src_compile
20260 -}
20261
20262 diff --git a/sys-libs/glibc/files/eblits/src_configure.eblit b/sys-libs/glibc/files/eblits/src_configure.eblit
20263 deleted file mode 100644
20264 index 5f2fec0..0000000
20265 --- a/sys-libs/glibc/files/eblits/src_configure.eblit
20266 +++ /dev/null
20267 @@ -1,263 +0,0 @@
20268 -# Copyright 1999-2015 Gentoo Foundation
20269 -# Distributed under the terms of the GNU General Public License v2
20270 -# $Id$
20271 -
20272 -dump_toolchain_settings() {
20273 - echo
20274 -
20275 - einfo "$*"
20276 -
20277 - local v
20278 - for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC LD {AS,C,CPP,CXX,LD}FLAGS ; do
20279 - einfo " $(printf '%15s' ${v}:) ${!v}"
20280 - done
20281 -
20282 - # The glibc configure script doesn't properly use LDFLAGS all the time.
20283 - export CC="$(tc-getCC ${CTARGET}) ${LDFLAGS}"
20284 - einfo " $(printf '%15s' 'Manual CC:') ${CC}"
20285 - echo
20286 -}
20287 -
20288 -glibc_do_configure() {
20289 - # Glibc does not work with gold (for various reasons) #269274.
20290 - tc-ld-disable-gold
20291 -
20292 - dump_toolchain_settings "Configuring glibc for $1"
20293 -
20294 - local myconf=()
20295 -
20296 - # set addons
20297 - pushd "${S}" > /dev/null
20298 - local addons=$(echo */configure | sed \
20299 - -e 's:/configure::g' \
20300 - -e 's:\(linuxthreads\|nptl\|rtkaio\|glibc-compat\)\( \|$\)::g' \
20301 - -e 's: \+$::' \
20302 - -e 's! !,!g' \
20303 - -e 's!^!,!' \
20304 - -e '/^,\*$/d')
20305 - [[ -d ports ]] && addons+=",ports"
20306 - popd > /dev/null
20307 -
20308 - myconf+=( $(use_enable hardened stackguard-randomization) )
20309 - if has_version '<sys-libs/glibc-2.13' ; then
20310 - myconf+=( --enable-old-ssp-compat )
20311 - fi
20312 -
20313 - [[ $(tc-is-softfloat) == "yes" ]] && myconf+=( --without-fp )
20314 -
20315 - if [[ $1 == "linuxthreads" ]] ; then
20316 - if want_tls ; then
20317 - myconf+=( --with-tls )
20318 -
20319 - if ! want__thread || use glibc-compat20 || [[ ${LT_KER_VER} == 2.[02].* ]] ; then
20320 - myconf+=( --without-__thread )
20321 - else
20322 - myconf+=( --with-__thread )
20323 - fi
20324 - else
20325 - myconf+=( --without-tls --without-__thread )
20326 - fi
20327 -
20328 - myconf+=( --disable-sanity-checks )
20329 - addons="linuxthreads${addons}"
20330 - myconf+=( --enable-kernel=${LT_KER_VER} )
20331 - elif [[ $1 == "nptl" ]] ; then
20332 - # Newer versions require nptl, so there is no addon for it.
20333 - version_is_at_least 2.20 || addons="nptl${addons}"
20334 - myconf+=( --enable-kernel=${NPTL_KERN_VER} )
20335 - else
20336 - die "invalid pthread option"
20337 - fi
20338 - myconf+=( --enable-add-ons="${addons#,}" )
20339 -
20340 - # Since SELinux support is only required for nscd, only enable it if:
20341 - # 1. USE selinux
20342 - # 2. only for the primary ABI on multilib systems
20343 - # 3. Not a crosscompile
20344 - if ! is_crosscompile && use selinux ; then
20345 - if use multilib ; then
20346 - if is_final_abi ; then
20347 - myconf+=( --with-selinux )
20348 - else
20349 - myconf+=( --without-selinux )
20350 - fi
20351 - else
20352 - myconf+=( --with-selinux )
20353 - fi
20354 - else
20355 - myconf+=( --without-selinux )
20356 - fi
20357 -
20358 - # Force a few tests where we always know the answer but
20359 - # configure is incapable of finding it.
20360 - if is_crosscompile ; then
20361 - export \
20362 - libc_cv_c_cleanup=yes \
20363 - libc_cv_forced_unwind=yes
20364 - fi
20365 -
20366 - myconf+=(
20367 - --without-cvs
20368 - --disable-werror
20369 - --enable-bind-now
20370 - --build=${CBUILD_OPT:-${CBUILD}}
20371 - --host=${CTARGET_OPT:-${CTARGET}}
20372 - $(use_enable profile)
20373 - $(use_with gd)
20374 - --with-headers=$(alt_build_headers)
20375 - --libexecdir="${EPREFIX}/usr/$(get_libdir)/misc/glibc"
20376 - --with-bugurl=http://bugs.gentoo.org/
20377 - --with-pkgversion="$(glibc_banner)"
20378 - $(use_multiarch || echo --disable-multi-arch)
20379 - $(in_iuse rpc && use_enable rpc obsolete-rpc || echo --enable-obsolete-rpc)
20380 - $(in_iuse systemtap && use_enable systemtap)
20381 - $(in_iuse nscd && use_enable nscd)
20382 - ${EXTRA_ECONF}
20383 - )
20384 -
20385 - # We rely on sys-libs/timezone-data for timezone tools normally.
20386 - if version_is_at_least 2.23 ; then
20387 - myconf+=( $(use_enable vanilla timezone-tools) )
20388 - fi
20389 -
20390 - # These libs don't have configure flags.
20391 - ac_cv_lib_audit_audit_log_user_avc_message=$(in_iuse audit && usex audit || echo no)
20392 - ac_cv_lib_cap_cap_init=$(in_iuse caps && usex caps || echo no)
20393 -
20394 - # There is no configure option for this and we need to export it
20395 - # since the glibc build will re-run configure on itself
20396 - export libc_cv_slibdir="${EPREFIX}/$(get_libdir)"
20397 - export libc_cv_rootsbindir="${EPREFIX}/sbin"
20398 -
20399 - # We take care of patching our binutils to use both hash styles,
20400 - # and many people like to force gnu hash style only, so disable
20401 - # this overriding check. #347761
20402 - export libc_cv_hashstyle=no
20403 -
20404 - # Overtime, generating info pages can be painful. So disable this for
20405 - # versions older than the latest stable to avoid the issue (this ver
20406 - # should be updated from time to time). #464394 #465816
20407 - if ! version_is_at_least 2.17 ; then
20408 - export ac_cv_prog_MAKEINFO=:
20409 - fi
20410 -
20411 - local builddir=$(builddir "$1")
20412 - mkdir -p "${builddir}"
20413 - cd "${builddir}"
20414 - ECONF_SOURCE="${S}" econf "${myconf[@]}"
20415 -
20416 - # ia64 static cross-compilers are a pita in so much that they
20417 - # can't produce static ELFs (as the libgcc.a is broken). so
20418 - # disable building of the programs for those targets if it
20419 - # doesn't work.
20420 - # XXX: We could turn this into a compiler test, but ia64 is
20421 - # the only one that matters, so this should be fine for now.
20422 - if is_crosscompile && [[ ${CTARGET} == ia64* ]] ; then
20423 - sed -i '1i+link-static = touch $@' config.make
20424 - fi
20425 -
20426 - # If we're trying to migrate between ABI sets, we need
20427 - # to lie and use a local copy of gcc. Like if the system
20428 - # is built with MULTILIB_ABIS="amd64 x86" but we want to
20429 - # add x32 to it, gcc/glibc don't yet support x32.
20430 - if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib ; then
20431 - echo 'main(){}' > "${T}"/test.c
20432 - if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/test.c -Wl,-emain -lgcc 2>/dev/null ; then
20433 - sed -i -e '/^CC = /s:$: -B$(objdir)/../'"gcc-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die
20434 - mkdir -p sunrpc
20435 - cp $(which rpcgen) sunrpc/cross-rpcgen || die
20436 - touch -t 202001010101 sunrpc/cross-rpcgen || die
20437 - fi
20438 - fi
20439 -}
20440 -
20441 -toolchain-glibc_headers_configure() {
20442 - export ABI=default
20443 -
20444 - local builddir=$(builddir "headers")
20445 - mkdir -p "${builddir}"
20446 - cd "${builddir}"
20447 -
20448 - # if we don't have a compiler yet, we cant really test it now ...
20449 - # hopefully they don't affect header geneation, so let's hope for
20450 - # the best here ...
20451 - local v vars=(
20452 - ac_cv_header_cpuid_h=yes
20453 - libc_cv_{386,390,alpha,arm,hppa,ia64,mips,{powerpc,sparc}{,32,64},sh,x86_64}_tls=yes
20454 - libc_cv_asm_cfi_directives=yes
20455 - libc_cv_broken_visibility_attribute=no
20456 - libc_cv_c_cleanup=yes
20457 - libc_cv_forced_unwind=yes
20458 - libc_cv_gcc___thread=yes
20459 - libc_cv_mlong_double_128=yes
20460 - libc_cv_mlong_double_128ibm=yes
20461 - libc_cv_ppc_machine=yes
20462 - libc_cv_ppc_rel16=yes
20463 - libc_cv_predef_{fortify_source,stack_protector}=no
20464 - libc_cv_visibility_attribute=yes
20465 - libc_cv_z_combreloc=yes
20466 - libc_cv_z_execstack=yes
20467 - libc_cv_z_initfirst=yes
20468 - libc_cv_z_nodelete=yes
20469 - libc_cv_z_nodlopen=yes
20470 - libc_cv_z_relro=yes
20471 - libc_mips_abi=${ABI}
20472 - libc_mips_float=$([[ $(tc-is-softfloat) == "yes" ]] && echo soft || echo hard)
20473 - # These libs don't have configure flags.
20474 - ac_cv_lib_audit_audit_log_user_avc_message=no
20475 - ac_cv_lib_cap_cap_init=no
20476 - )
20477 - einfo "Forcing cached settings:"
20478 - for v in "${vars[@]}" ; do
20479 - einfo " ${v}"
20480 - export ${v}
20481 - done
20482 -
20483 - # Blow away some random CC settings that screw things up. #550192
20484 - if [[ -d ${S}/sysdeps/mips ]]; then
20485 - pushd "${S}"/sysdeps/mips >/dev/null
20486 - sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=32:' mips32/Makefile mips64/n32/Makefile || die
20487 - sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=64:' mips64/n64/Makefile || die
20488 - popd >/dev/null
20489 - fi
20490 -
20491 - local myconf=()
20492 - myconf+=(
20493 - --disable-sanity-checks
20494 - --enable-hacker-mode
20495 - --without-cvs
20496 - --disable-werror
20497 - --enable-bind-now
20498 - --build=${CBUILD_OPT:-${CBUILD}}
20499 - --host=${CTARGET_OPT:-${CTARGET}}
20500 - --with-headers=$(alt_build_headers)
20501 - ${EXTRA_ECONF}
20502 - )
20503 -
20504 - local addons
20505 - [[ -d ${S}/ports ]] && addons+=",ports"
20506 - # Newer versions require nptl, so there is no addon for it.
20507 - version_is_at_least 2.20 || addons+=",nptl"
20508 - myconf+=( --enable-add-ons="${addons#,}" )
20509 -
20510 - # Nothing is compiled here which would affect the headers for the target.
20511 - # So forcing CC/CFLAGS is sane.
20512 - CC="$(tc-getBUILD_CC)" \
20513 - CFLAGS="-O1 -pipe" \
20514 - CPPFLAGS="-U_FORTIFY_SOURCE" \
20515 - LDFLAGS="" \
20516 - ECONF_SOURCE="${S}" econf "${myconf[@]}"
20517 -}
20518 -
20519 -toolchain-glibc_src_configure() {
20520 - if just_headers ; then
20521 - toolchain-glibc_headers_configure
20522 - else
20523 - want_linuxthreads && glibc_do_configure linuxthreads
20524 - want_nptl && glibc_do_configure nptl
20525 - fi
20526 -}
20527 -
20528 -eblit-glibc-src_configure() {
20529 - foreach_abi toolchain-glibc_src_configure
20530 -}
20531
20532 diff --git a/sys-libs/glibc/files/eblits/src_install.eblit b/sys-libs/glibc/files/eblits/src_install.eblit
20533 deleted file mode 100644
20534 index a23173e..0000000
20535 --- a/sys-libs/glibc/files/eblits/src_install.eblit
20536 +++ /dev/null
20537 @@ -1,244 +0,0 @@
20538 -# Copyright 1999-2014 Gentoo Foundation
20539 -# Distributed under the terms of the GNU General Public License v2
20540 -# $Id$
20541 -
20542 -toolchain-glibc_src_install() {
20543 - local builddir=$(builddir $(want_linuxthreads && echo linuxthreads || echo nptl))
20544 - cd "${builddir}"
20545 -
20546 - emake install_root="${D}$(alt_prefix)" install || die
20547 -
20548 - if want_linuxthreads && want_nptl ; then
20549 - einfo "Installing NPTL to $(alt_libdir)/tls/..."
20550 - cd "$(builddir nptl)"
20551 - dodir $(alt_libdir)/tls $(alt_usrlibdir)/nptl
20552 -
20553 - local l src_lib
20554 - for l in libc libm librt libpthread libthread_db ; do
20555 - # take care of shared lib first ...
20556 - l=${l}.so
20557 - if [[ -e ${l} ]] ; then
20558 - src_lib=${l}
20559 - else
20560 - src_lib=$(eval echo */${l})
20561 - fi
20562 - cp -a ${src_lib} "${ED}"$(alt_libdir)/tls/${l} || die "copying nptl ${l}"
20563 - fperms a+rx $(alt_libdir)/tls/${l}
20564 - dosym ${l} $(alt_libdir)/tls/$(scanelf -qSF'%S#F' ${src_lib})
20565 -
20566 - # then grab the linker script or the symlink ...
20567 - if [[ -L ${ED}$(alt_usrlibdir)/${l} ]] ; then
20568 - dosym $(alt_libdir)/tls/${l} $(alt_usrlibdir)/nptl/${l}
20569 - else
20570 - sed \
20571 - -e "s:/${l}:/tls/${l}:g" \
20572 - -e "s:/${l/%.so/_nonshared.a}:/nptl/${l/%.so/_nonshared.a}:g" \
20573 - "${ED}"$(alt_usrlibdir)/${l} > "${ED}"$(alt_usrlibdir)/nptl/${l}
20574 - fi
20575 -
20576 - # then grab the static lib ...
20577 - src_lib=${src_lib/%.so/.a}
20578 - [[ ! -e ${src_lib} ]] && src_lib=${src_lib/%.a/_pic.a}
20579 - cp -a ${src_lib} "${ED}"$(alt_usrlibdir)/nptl/ || die "copying nptl ${src_lib}"
20580 - src_lib=${src_lib/%.a/_nonshared.a}
20581 - if [[ -e ${src_lib} ]] ; then
20582 - cp -a ${src_lib} "${ED}"$(alt_usrlibdir)/nptl/ || die "copying nptl ${src_lib}"
20583 - fi
20584 - done
20585 -
20586 - # use the nptl linker instead of the linuxthreads one as the linuxthreads
20587 - # one may lack TLS support and that can be really bad for business
20588 - cp -a elf/ld.so "${ED}"$(alt_libdir)/$(scanelf -qSF'%S#F' elf/ld.so) || die "copying nptl interp"
20589 - fi
20590 -
20591 - # We'll take care of the cache ourselves
20592 - rm -f "${ED}"/etc/ld.so.cache
20593 -
20594 - # Everything past this point just needs to be done once ...
20595 - is_final_abi || return 0
20596 -
20597 - # Make sure the non-native interp can be found on multilib systems even
20598 - # if the main library set isn't installed into the right place. Maybe
20599 - # we should query the active gcc for info instead of hardcoding it ?
20600 - local i ldso_abi ldso_name
20601 - local ldso_abi_list=(
20602 - # x86
20603 - amd64 /lib64/ld-linux-x86-64.so.2
20604 - x32 /libx32/ld-linux-x32.so.2
20605 - x86 /lib/ld-linux.so.2
20606 - # mips
20607 - o32 /lib/ld.so.1
20608 - n32 /lib32/ld.so.1
20609 - n64 /lib64/ld.so.1
20610 - # powerpc
20611 - ppc /lib/ld.so.1
20612 - ppc64 /lib64/ld64.so.1
20613 - # s390
20614 - s390 /lib/ld.so.1
20615 - s390x /lib/ld64.so.1
20616 - # sparc
20617 - sparc32 /lib/ld-linux.so.2
20618 - sparc64 /lib64/ld-linux.so.2
20619 - )
20620 - case $(tc-endian) in
20621 - little)
20622 - ldso_abi_list+=(
20623 - # arm
20624 - arm64 /lib/ld-linux-aarch64.so.1
20625 - )
20626 - ;;
20627 - big)
20628 - ldso_abi_list+=(
20629 - # arm
20630 - arm64 /lib/ld-linux-aarch64_be.so.1
20631 - )
20632 - ;;
20633 - esac
20634 - if [[ ${SYMLINK_LIB} == "yes" ]] && [[ ! -e ${ED}/$(alt_prefix)/lib ]] ; then
20635 - dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) $(alt_prefix)/lib
20636 - fi
20637 - for (( i = 0; i < ${#ldso_abi_list[@]}; i += 2 )) ; do
20638 - ldso_abi=${ldso_abi_list[i]}
20639 - has ${ldso_abi} $(get_install_abis) || continue
20640 -
20641 - ldso_name="$(alt_prefix)${ldso_abi_list[i+1]}"
20642 - if [[ ! -L ${ED}/${ldso_name} && ! -e ${ED}/${ldso_name} ]] ; then
20643 - dosym ../$(get_abi_LIBDIR ${ldso_abi})/${ldso_name##*/} ${ldso_name}
20644 - fi
20645 - done
20646 -
20647 - # With devpts under Linux mounted properly, we do not need the pt_chown
20648 - # binary to be setuid. This is because the default owners/perms will be
20649 - # exactly what we want.
20650 - if in_iuse suid && ! use suid ; then
20651 - find "${ED}" -name pt_chown -exec chmod -s {} +
20652 - fi
20653 -
20654 - #################################################################
20655 - # EVERYTHING AFTER THIS POINT IS FOR NATIVE GLIBC INSTALLS ONLY #
20656 - # Make sure we install some symlink hacks so that when we build
20657 - # a 2nd stage cross-compiler, gcc finds the target system
20658 - # headers correctly. See gcc/doc/gccinstall.info
20659 - if is_crosscompile ; then
20660 - # We need to make sure that /lib and /usr/lib always exists.
20661 - # gcc likes to use relative paths to get to its multilibs like
20662 - # /usr/lib/../lib64/. So while we don't install any files into
20663 - # /usr/lib/, we do need it to exist.
20664 - cd "${ED}"$(alt_libdir)/..
20665 - [[ -e lib ]] || mkdir lib
20666 - cd "${ED}"$(alt_usrlibdir)/..
20667 - [[ -e lib ]] || mkdir lib
20668 -
20669 - dosym usr/include $(alt_prefix)/sys-include
20670 - return 0
20671 - fi
20672 -
20673 - # Files for Debian-style locale updating
20674 - dodir /usr/share/i18n
20675 - sed \
20676 - -e "/^#/d" \
20677 - -e "/SUPPORTED-LOCALES=/d" \
20678 - -e "s: \\\\::g" -e "s:/: :g" \
20679 - "${S}"/localedata/SUPPORTED > "${ED}"/usr/share/i18n/SUPPORTED \
20680 - || die "generating /usr/share/i18n/SUPPORTED failed"
20681 - cd "${WORKDIR}"/extra/locale
20682 - dosbin locale-gen || die
20683 - doman *.[0-8]
20684 - insinto /etc
20685 - doins locale.gen || die
20686 -
20687 - # Make sure all the ABI's can find the locales and so we only
20688 - # have to generate one set
20689 - local a
20690 - keepdir /usr/$(get_libdir)/locale
20691 - for a in $(get_install_abis) ; do
20692 - if [[ ! -e ${ED}/usr/$(get_abi_LIBDIR ${a})/locale ]] ; then
20693 - dosym /usr/$(get_libdir)/locale /usr/$(get_abi_LIBDIR ${a})/locale
20694 - fi
20695 - done
20696 -
20697 - cd "${S}"
20698 -
20699 - # Install misc network config files
20700 - insinto /etc
20701 - doins nscd/nscd.conf posix/gai.conf nss/nsswitch.conf || die
20702 - doins "${WORKDIR}"/extra/etc/*.conf || die
20703 -
20704 - if ! in_iuse nscd || use nscd ; then
20705 - doinitd "${WORKDIR}"/extra/etc/nscd || die
20706 -
20707 - local nscd_args=(
20708 - -e "s:@PIDFILE@:$(strings "${ED}"/usr/sbin/nscd | grep nscd.pid):"
20709 - )
20710 - version_is_at_least 2.16 || nscd_args+=( -e 's: --foreground : :' )
20711 - sed -i "${nscd_args[@]}" "${ED}"/etc/init.d/nscd
20712 -
20713 - # Newer versions of glibc include the nscd.service themselves.
20714 - # TODO: Drop the $FILESDIR copy once 2.19 goes stable.
20715 - if version_is_at_least 2.19 ; then
20716 - systemd_dounit nscd/nscd.service || die
20717 - systemd_newtmpfilesd nscd/nscd.tmpfiles nscd.conf || die
20718 - else
20719 - systemd_dounit "${FILESDIR}"/nscd.service || die
20720 - systemd_newtmpfilesd "${FILESDIR}"/nscd.tmpfilesd nscd.conf || die
20721 - fi
20722 - else
20723 - # Do this since extra/etc/*.conf above might have nscd.conf.
20724 - rm -f "${ED}"/etc/nscd.conf
20725 - fi
20726 -
20727 - echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00glibc
20728 - doenvd "${T}"/00glibc || die
20729 -
20730 - for d in BUGS ChangeLog* CONFORMANCE FAQ NEWS NOTES PROJECTS README* ; do
20731 - [[ -s ${d} ]] && dodoc ${d}
20732 - done
20733 -
20734 - # Prevent overwriting of the /etc/localtime symlink. We'll handle the
20735 - # creation of the "factory" symlink in pkg_postinst().
20736 - rm -f "${ED}"/etc/localtime
20737 -}
20738 -
20739 -toolchain-glibc_headers_install() {
20740 - local builddir=$(builddir "headers")
20741 - cd "${builddir}"
20742 - emake install_root="${D}$(alt_prefix)" install-headers || die
20743 - if ! version_is_at_least 2.16 ; then
20744 - insinto $(alt_headers)/bits
20745 - doins bits/stdio_lim.h || die
20746 - fi
20747 - insinto $(alt_headers)/gnu
20748 - doins "${S}"/include/gnu/stubs.h || die "doins include gnu"
20749 - # Make sure we install the sys-include symlink so that when
20750 - # we build a 2nd stage cross-compiler, gcc finds the target
20751 - # system headers correctly. See gcc/doc/gccinstall.info
20752 - dosym usr/include $(alt_prefix)/sys-include
20753 -}
20754 -
20755 -src_strip() {
20756 - # gdb is lame and requires some debugging information to remain in
20757 - # libpthread, so we need to strip it by hand. libthread_db makes no
20758 - # sense stripped as it is only used when debugging.
20759 - local pthread=$(has splitdebug ${FEATURES} && echo "libthread_db" || echo "lib{pthread,thread_db}")
20760 - env \
20761 - -uRESTRICT \
20762 - CHOST=${CTARGET} \
20763 - STRIP_MASK="/*/{,tls/}${pthread}*" \
20764 - prepallstrip
20765 - # if user has stripping enabled and does not have split debug turned on,
20766 - # then leave the debugging sections in libpthread.
20767 - if ! has nostrip ${FEATURES} && ! has splitdebug ${FEATURES} ; then
20768 - ${STRIP:-${CTARGET}-strip} --strip-debug "${ED}"/*/libpthread-*.so
20769 - fi
20770 -}
20771 -
20772 -eblit-glibc-src_install() {
20773 - if just_headers ; then
20774 - export ABI=default
20775 - toolchain-glibc_headers_install
20776 - return
20777 - fi
20778 -
20779 - foreach_abi toolchain-glibc_src_install
20780 - src_strip
20781 -}
20782
20783 diff --git a/sys-libs/glibc/files/eblits/src_prepare.eblit b/sys-libs/glibc/files/eblits/src_prepare.eblit
20784 deleted file mode 100644
20785 index 162cf53..0000000
20786 --- a/sys-libs/glibc/files/eblits/src_prepare.eblit
20787 +++ /dev/null
20788 @@ -1,63 +0,0 @@
20789 -# Copyright 1999-2014 Gentoo Foundation
20790 -# Distributed under the terms of the GNU General Public License v2
20791 -# $Id$
20792 -
20793 -eblit-glibc-src_prepare() {
20794 - # XXX: We should do the branchupdate, before extracting the manpages and
20795 - # infopages else it does not help much (mtimes change if there is a change
20796 - # to them with branchupdate)
20797 - if [[ -n ${BRANCH_UPDATE} ]] ; then
20798 - epatch "${DISTDIR}"/glibc-${RELEASE_VER}-branch-update-${BRANCH_UPDATE}.patch.bz2
20799 -
20800 - # Snapshot date patch
20801 - einfo "Patching version to display snapshot date ..."
20802 - sed -i -e "s:\(#define RELEASE\).*:\1 \"${BRANCH_UPDATE}\":" version.h
20803 - fi
20804 -
20805 - # tag, glibc is it
20806 - if ! version_is_at_least 2.17 ; then
20807 - [[ -e csu/Banner ]] && die "need new banner location"
20808 - glibc_banner > csu/Banner
20809 - fi
20810 - if [[ -n ${PATCH_VER} ]] && ! use vanilla ; then
20811 - EPATCH_MULTI_MSG="Applying Gentoo Glibc Patchset ${RELEASE_VER}-${PATCH_VER} ..." \
20812 - EPATCH_EXCLUDE=${GLIBC_PATCH_EXCLUDE} \
20813 - EPATCH_SUFFIX="patch" \
20814 - ARCH=$(tc-arch) \
20815 - epatch "${WORKDIR}"/patches
20816 - fi
20817 -
20818 - if just_headers ; then
20819 - if [[ -e ports/sysdeps/mips/preconfigure ]] ; then
20820 - # mips peeps like to screw with us. if building headers,
20821 - # we don't have a real compiler, so we can't let them
20822 - # insert -mabi on us.
20823 - sed -i '/CPPFLAGS=.*-mabi/s|.*|:|' ports/sysdeps/mips/preconfigure || die
20824 - find ports/sysdeps/mips/ -name Makefile -exec sed -i '/^CC.*-mabi=/s:-mabi=.*:-D_MIPS_SZPTR=32:' {} +
20825 - fi
20826 - fi
20827 -
20828 - epatch_user
20829 -
20830 - gnuconfig_update
20831 -
20832 - # Glibc is stupid sometimes, and doesn't realize that with a
20833 - # static C-Only gcc, -lgcc_eh doesn't exist.
20834 - # http://sourceware.org/ml/libc-alpha/2003-09/msg00100.html
20835 - # http://sourceware.org/ml/libc-alpha/2005-02/msg00042.html
20836 - # But! Finally fixed in recent versions:
20837 - # http://sourceware.org/ml/libc-alpha/2012-05/msg01865.html
20838 - if ! version_is_at_least 2.16 ; then
20839 - echo 'int main(){}' > "${T}"/gcc_eh_test.c
20840 - if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/gcc_eh_test.c -lgcc_eh 2>/dev/null ; then
20841 - sed -i -e 's:-lgcc_eh::' Makeconfig || die "sed gcc_eh"
20842 - fi
20843 - fi
20844 -
20845 - cd "${WORKDIR}"
20846 - find . -type f '(' -size 0 -o -name "*.orig" ')' -delete
20847 - find . -name configure -exec touch {} +
20848 -
20849 - # Fix permissions on some of the scripts.
20850 - chmod u+x "${S}"/scripts/*.sh
20851 -}
20852
20853 diff --git a/sys-libs/glibc/files/eblits/src_test.eblit b/sys-libs/glibc/files/eblits/src_test.eblit
20854 deleted file mode 100644
20855 index fc5b950..0000000
20856 --- a/sys-libs/glibc/files/eblits/src_test.eblit
20857 +++ /dev/null
20858 @@ -1,30 +0,0 @@
20859 -# Copyright 1999-2014 Gentoo Foundation
20860 -# Distributed under the terms of the GNU General Public License v2
20861 -# $Id$
20862 -
20863 -glibc_src_test() {
20864 - cd "$(builddir $1)"
20865 - nonfatal emake -j1 check && return 0
20866 - einfo "make check failed - re-running with --keep-going to get the rest of the results"
20867 - nonfatal emake -j1 -k check
20868 - ewarn "make check failed for ${ABI}-${CTARGET}-$1"
20869 - return 1
20870 -}
20871 -
20872 -toolchain-glibc_src_test() {
20873 - local ret=0 t
20874 - for t in linuxthreads nptl ; do
20875 - if want_${t} ; then
20876 - glibc_src_test ${t}
20877 - : $(( ret |= $? ))
20878 - fi
20879 - done
20880 - return ${ret}
20881 -}
20882 -
20883 -eblit-glibc-src_test() {
20884 - # Give tests more time to complete.
20885 - export TIMEOUTFACTOR=5
20886 -
20887 - foreach_abi toolchain-glibc_src_test || die "tests failed"
20888 -}
20889
20890 diff --git a/sys-libs/glibc/files/eblits/src_unpack.eblit b/sys-libs/glibc/files/eblits/src_unpack.eblit
20891 deleted file mode 100644
20892 index 8d4c740..0000000
20893 --- a/sys-libs/glibc/files/eblits/src_unpack.eblit
20894 +++ /dev/null
20895 @@ -1,121 +0,0 @@
20896 -# Copyright 1999-2014 Gentoo Foundation
20897 -# Distributed under the terms of the GNU General Public License v2
20898 -# $Id$
20899 -
20900 -[[ ${EAPI:-0} == [01] ]] && source "${FILESDIR}/eblits/src_prepare.eblit"
20901 -
20902 -int_to_KV() {
20903 - local version=$1 major minor micro
20904 - major=$((version / 65536))
20905 - minor=$(((version % 65536) / 256))
20906 - micro=$((version % 256))
20907 - echo ${major}.${minor}.${micro}
20908 -}
20909 -
20910 -eend_KV() {
20911 - [[ $(KV_to_int $1) -ge $(KV_to_int $2) ]]
20912 - eend $?
20913 -}
20914 -
20915 -get_kheader_version() {
20916 - printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \
20917 - $(tc-getCPP ${CTARGET}) -I "${EPREFIX}/$(alt_build_headers)" - | \
20918 - tail -n 1
20919 -}
20920 -
20921 -check_nptl_support() {
20922 - # don't care about the compiler here as we arent using it
20923 - just_headers && return
20924 -
20925 - local run_kv build_kv want_kv
20926 - run_kv=$(int_to_KV $(get_KV))
20927 - build_kv=$(int_to_KV $(get_kheader_version))
20928 - want_kv=${NPTL_KERN_VER}
20929 -
20930 - ebegin "Checking gcc for __thread support"
20931 - if ! eend $(want__thread ; echo $?) ; then
20932 - echo
20933 - eerror "Could not find a gcc that supports the __thread directive!"
20934 - eerror "Please update your binutils/gcc and try again."
20935 - die "No __thread support in gcc!"
20936 - fi
20937 -
20938 - if ! is_crosscompile && ! tc-is-cross-compiler ; then
20939 - # Building fails on an non-supporting kernel
20940 - ebegin "Checking kernel version (${run_kv} >= ${want_kv})"
20941 - if ! eend_KV ${run_kv} ${want_kv} ; then
20942 - echo
20943 - eerror "You need a kernel of at least ${want_kv} for NPTL support!"
20944 - die "Kernel version too low!"
20945 - fi
20946 - fi
20947 -
20948 - ebegin "Checking linux-headers version (${build_kv} >= ${want_kv})"
20949 - if ! eend_KV ${build_kv} ${want_kv} ; then
20950 - echo
20951 - eerror "You need linux-headers of at least ${want_kv} for NPTL support!"
20952 - die "linux-headers version too low!"
20953 - fi
20954 -}
20955 -
20956 -unpack_pkg() {
20957 - local a=${PN}
20958 - [[ -n ${SNAP_VER} ]] && a="${a}-${RELEASE_VER}"
20959 - [[ -n $1 ]] && a="${a}-$1"
20960 - if [[ -n ${SNAP_VER} ]] ; then
20961 - a="${a}-${SNAP_VER}"
20962 - else
20963 - if [[ -n $2 ]] ; then
20964 - a="${a}-$2"
20965 - else
20966 - a="${a}-${RELEASE_VER}"
20967 - fi
20968 - fi
20969 - if has ${a}.tar.xz ${A} ; then
20970 - unpacker ${a}.tar.xz
20971 - else
20972 - unpack ${a}.tar.bz2
20973 - fi
20974 - [[ -n $1 ]] && { mv ${a} $1 || die ; }
20975 -}
20976 -
20977 -toolchain-glibc_src_unpack() {
20978 - # Check NPTL support _before_ we unpack things to save some time
20979 - want_nptl && check_nptl_support
20980 -
20981 - if [[ -n ${EGIT_REPO_URIS} ]] ; then
20982 - local i d
20983 - for ((i=0; i<${#EGIT_REPO_URIS[@]}; ++i)) ; do
20984 - EGIT_REPO_URI=${EGIT_REPO_URIS[$i]}
20985 - EGIT_SOURCEDIR=${EGIT_SOURCEDIRS[$i]}
20986 - git-2_src_unpack
20987 - done
20988 - else
20989 - unpack_pkg
20990 - fi
20991 -
20992 - cd "${S}"
20993 - touch locale/C-translit.h #185476 #218003
20994 - [[ -n ${LT_VER} ]] && unpack_pkg linuxthreads ${LT_VER}
20995 - [[ -n ${PORTS_VER} ]] && unpack_pkg ports ${PORTS_VER}
20996 - [[ -n ${LIBIDN_VER} ]] && unpack_pkg libidn
20997 -
20998 - if [[ -n ${PATCH_VER} ]] ; then
20999 - cd "${WORKDIR}"
21000 - unpack glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.bz2
21001 - # pull out all the addons
21002 - local d
21003 - for d in extra/*/configure ; do
21004 - d=${d%/configure}
21005 - [[ -d ${S}/${d} ]] && die "${d} already exists in \${S}"
21006 - mv "${d}" "${S}" || die "moving ${d} failed"
21007 - done
21008 - fi
21009 -}
21010 -
21011 -eblit-glibc-src_unpack() {
21012 - setup_env
21013 -
21014 - toolchain-glibc_src_unpack
21015 - [[ ${EAPI:-0} == [01] ]] && cd "${S}" && eblit-glibc-src_prepare
21016 -}
21017
21018 diff --git a/sys-libs/glibc/files/nscd b/sys-libs/glibc/files/nscd
21019 deleted file mode 100644
21020 index b102de0..0000000
21021 --- a/sys-libs/glibc/files/nscd
21022 +++ /dev/null
21023 @@ -1,64 +0,0 @@
21024 -#!/sbin/runscript
21025 -# Copyright 1999-2005 Gentoo Foundation
21026 -# Distributed under the terms of the GNU General Public License v2
21027 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/files/nscd,v 1.7 2007/02/23 12:09:39 uberlord Exp $
21028 -
21029 -depend() {
21030 - use dns ldap net slapd
21031 -}
21032 -
21033 -checkconfig() {
21034 - if [ ! -d /var/run/nscd ] ; then
21035 - mkdir -p /var/run/nscd
21036 - chmod 755 /var/run/nscd
21037 - fi
21038 - if [ -z "${NSCD_PERMS_OK}" ] && [ "$(stat -c %a /var/run/nscd)" != "755" ] ; then
21039 - echo ""
21040 - ewarn "nscd run dir is not world readable, you should reset the perms:"
21041 - ewarn "chmod 755 /var/run/nscd"
21042 - ewarn "chmod a+rw /var/run/nscd/socket"
21043 - echo ""
21044 - ewarn "To disable this warning, set 'NSCD_PERMS_OK' in /etc/conf.d/nscd"
21045 - echo ""
21046 - fi
21047 -}
21048 -
21049 -start() {
21050 - checkconfig
21051 -
21052 - ebegin "Starting Name Service Cache Daemon"
21053 - local secure=`while read curline ; do
21054 - table=${curline%:*}
21055 - entries=${curline##$table:}
21056 - table=${table%%[^a-z]*}
21057 - case $table in
21058 - passwd*|group*|hosts)
21059 - for entry in $entries ; do
21060 - case $entry in
21061 - nisplus*)
21062 - /usr/sbin/nscd_nischeck $table || \
21063 - /echo "-S $table,yes"
21064 - ;;
21065 - esac
21066 - done
21067 - ;;
21068 - esac
21069 - done < /etc/nsswitch.conf`
21070 - local pidfile="$(strings /usr/sbin/nscd | grep nscd.pid)"
21071 - mkdir -p "$(dirname ${pidfile})"
21072 - save_options pidfile "${pidfile}"
21073 - start-stop-daemon --start --quiet \
21074 - --exec /usr/sbin/nscd --pidfile "${pidfile}" \
21075 - -- $secure
21076 - eend $?
21077 -}
21078 -
21079 -stop() {
21080 - local pidfile="$(get_options pidfile)"
21081 - [ -n "${pidfile}" ] && pidfile="--pidfile ${pidfile}"
21082 - ebegin "Shutting down Name Service Cache Daemon"
21083 - start-stop-daemon --stop --quiet --exec /usr/sbin/nscd ${pidfile}
21084 - eend $?
21085 -}
21086 -
21087 -# vim:ts=4
21088
21089 diff --git a/sys-libs/glibc/files/nscd.service b/sys-libs/glibc/files/nscd.service
21090 deleted file mode 100644
21091 index 25a3b1d..0000000
21092 --- a/sys-libs/glibc/files/nscd.service
21093 +++ /dev/null
21094 @@ -1,15 +0,0 @@
21095 -[Unit]
21096 -Description=Name Service Cache Daemon
21097 -After=network.target
21098 -
21099 -[Service]
21100 -ExecStart=/usr/sbin/nscd -F
21101 -ExecStop=/usr/sbin/nscd --shutdown
21102 -ExecReload=/usr/sbin/nscd -i passwd
21103 -ExecReload=/usr/sbin/nscd -i group
21104 -ExecReload=/usr/sbin/nscd -i hosts
21105 -ExecReload=/usr/sbin/nscd -i services
21106 -Restart=always
21107 -
21108 -[Install]
21109 -WantedBy=multi-user.target
21110
21111 diff --git a/sys-libs/glibc/files/nscd.tmpfilesd b/sys-libs/glibc/files/nscd.tmpfilesd
21112 deleted file mode 100644
21113 index 52edbba..0000000
21114 --- a/sys-libs/glibc/files/nscd.tmpfilesd
21115 +++ /dev/null
21116 @@ -1,4 +0,0 @@
21117 -# Configuration to create /run/nscd directory
21118 -# Used as part of systemd's tmpfiles
21119 -
21120 -d /run/nscd 0755 root root
21121
21122 diff --git a/sys-libs/glibc/files/nsswitch.conf b/sys-libs/glibc/files/nsswitch.conf
21123 deleted file mode 100644
21124 index eb16961..0000000
21125 --- a/sys-libs/glibc/files/nsswitch.conf
21126 +++ /dev/null
21127 @@ -1,24 +0,0 @@
21128 -# /etc/nsswitch.conf:
21129 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/files/nsswitch.conf,v 1.1 2005/05/17 00:52:41 vapier Exp $
21130 -
21131 -passwd: compat
21132 -shadow: compat
21133 -group: compat
21134 -
21135 -# passwd: db files nis
21136 -# shadow: db files nis
21137 -# group: db files nis
21138 -
21139 -hosts: files dns
21140 -networks: files dns
21141 -
21142 -services: db files
21143 -protocols: db files
21144 -rpc: db files
21145 -ethers: db files
21146 -netmasks: files
21147 -netgroup: files
21148 -bootparams: files
21149 -
21150 -automount: files
21151 -aliases: files
21152
21153 diff --git a/sys-libs/glibc/glibc-2.15-r1.ebuild b/sys-libs/glibc/glibc-2.15-r1.ebuild
21154 deleted file mode 100644
21155 index 757f34d..0000000
21156 --- a/sys-libs/glibc/glibc-2.15-r1.ebuild
21157 +++ /dev/null
21158 @@ -1,233 +0,0 @@
21159 -# Copyright 1999-2013 Gentoo Foundation
21160 -# Distributed under the terms of the GNU General Public License v2
21161 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.15-r1.ebuild,v 1.17 2013/04/05 00:25:16 vapier Exp $
21162 -
21163 -inherit eutils versionator toolchain-funcs flag-o-matic gnuconfig multilib unpacker multiprocessing
21164 -
21165 -DESCRIPTION="GNU libc6 (also called glibc2) C library"
21166 -HOMEPAGE="http://www.gnu.org/software/libc/libc.html"
21167 -
21168 -LICENSE="LGPL-2.1+ BSD HPND inner-net"
21169 -KEYWORDS="~amd64 -hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
21170 -RESTRICT="strip" # strip ourself #46186
21171 -EMULTILIB_PKG="true"
21172 -
21173 -# Configuration variables
21174 -RELEASE_VER=""
21175 -BRANCH_UPDATE=""
21176 -SNAP_VER=""
21177 -case ${PV} in
21178 -9999*)
21179 - EGIT_REPO_URIS=( "git://sourceware.org/git/glibc.git" "git://sourceware.org/git/glibc-ports.git" )
21180 - EGIT_SOURCEDIRS=( "${S}" "${S}/ports" )
21181 - inherit git-2
21182 - ;;
21183 -*_p*)
21184 - RELEASE_VER=${PV%_p*}
21185 - SNAP_VER=${PV#*_p}
21186 - ;;
21187 -*)
21188 - RELEASE_VER=${PV}
21189 - ;;
21190 -esac
21191 -LIBIDN_VER="" # it's integrated into the main tarball now
21192 -PATCH_VER="13" # Gentoo patchset
21193 -PORTS_VER=${RELEASE_VER} # version of glibc ports addon
21194 -LT_VER="" # version of linuxthreads addon
21195 -NPTL_KERN_VER=${NPTL_KERN_VER:-"2.6.9"} # min kernel version nptl requires
21196 -#LT_KERN_VER=${LT_KERN_VER:-"2.4.1"} # min kernel version linuxthreads requires
21197 -
21198 -IUSE="debug gd hardened multilib selinux profile vanilla crosscompile_opts_headers-only ${LT_VER:+glibc-compat20 nptl linuxthreads}"
21199 -[[ -n ${RELEASE_VER} ]] && S=${WORKDIR}/glibc-${RELEASE_VER}${SNAP_VER:+-${SNAP_VER}}
21200 -
21201 -# Here's how the cross-compile logic breaks down ...
21202 -# CTARGET - machine that will target the binaries
21203 -# CHOST - machine that will host the binaries
21204 -# CBUILD - machine that will build the binaries
21205 -# If CTARGET != CHOST, it means you want a libc for cross-compiling.
21206 -# If CHOST != CBUILD, it means you want to cross-compile the libc.
21207 -# CBUILD = CHOST = CTARGET - native build/install
21208 -# CBUILD != (CHOST = CTARGET) - cross-compile a native build
21209 -# (CBUILD = CHOST) != CTARGET - libc for cross-compiler
21210 -# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler
21211 -# For install paths:
21212 -# CHOST = CTARGET - install into /
21213 -# CHOST != CTARGET - install into /usr/CTARGET/
21214 -
21215 -export CBUILD=${CBUILD:-${CHOST}}
21216 -export CTARGET=${CTARGET:-${CHOST}}
21217 -if [[ ${CTARGET} == ${CHOST} ]] ; then
21218 - if [[ ${CATEGORY} == cross-* ]] ; then
21219 - export CTARGET=${CATEGORY#cross-}
21220 - fi
21221 -fi
21222 -
21223 -[[ ${CTARGET} == hppa* ]] && NPTL_KERN_VER=${NPTL_KERN_VER/2.6.9/2.6.20}
21224 -
21225 -is_crosscompile() {
21226 - [[ ${CHOST} != ${CTARGET} ]]
21227 -}
21228 -
21229 -# Why SLOT 2.2 you ask yourself while sippin your tea ?
21230 -# Everyone knows 2.2 > 0, duh.
21231 -SLOT="2.2"
21232 -
21233 -# General: We need a new-enough binutils for as-needed
21234 -# arch: we need to make sure our binutils/gcc supports TLS
21235 -DEPEND=">=sys-devel/gcc-3.4.4
21236 - arm? ( >=sys-devel/binutils-2.16.90 >=sys-devel/gcc-4.1.0 )
21237 - x86? ( >=sys-devel/gcc-4.3 )
21238 - amd64? ( >=sys-devel/binutils-2.19 >=sys-devel/gcc-4.3 )
21239 - ppc? ( >=sys-devel/gcc-4.1.0 )
21240 - ppc64? ( >=sys-devel/gcc-4.1.0 )
21241 - >=sys-devel/binutils-2.15.94
21242 - ${LT_VER:+nptl? (} >=sys-kernel/linux-headers-${NPTL_KERN_VER} ${LT_VER:+)}
21243 - >=app-misc/pax-utils-0.1.10
21244 - virtual/os-headers
21245 - !<sys-apps/sandbox-1.2.18.1-r2
21246 - !<sys-apps/portage-2.1.2
21247 - !<sys-devel/patch-2.6
21248 - selinux? ( sys-libs/libselinux )"
21249 -RDEPEND="!sys-kernel/ps3-sources
21250 - selinux? ( sys-libs/libselinux )
21251 - !sys-libs/nss-db"
21252 -
21253 -if [[ ${CATEGORY} == cross-* ]] ; then
21254 - DEPEND="${DEPEND} !crosscompile_opts_headers-only? ( ${CATEGORY}/gcc )"
21255 - [[ ${CATEGORY} == *-linux* ]] && DEPEND="${DEPEND} ${CATEGORY}/linux-headers"
21256 -else
21257 - DEPEND="${DEPEND} !vanilla? ( >=sys-libs/timezone-data-2007c )"
21258 - RDEPEND="${RDEPEND}
21259 - vanilla? ( !sys-libs/timezone-data )
21260 - !vanilla? ( sys-libs/timezone-data )"
21261 -fi
21262 -
21263 -SRC_URI=$(
21264 - upstream_uris() {
21265 - echo mirror://gnu/glibc/$1 ftp://sourceware.org/pub/glibc/{releases,snapshots}/$1 mirror://gentoo/$1
21266 - }
21267 - gentoo_uris() {
21268 - local devspace="HTTP~vapier/dist/URI HTTP~azarah/glibc/URI"
21269 - devspace=${devspace//HTTP/http://dev.gentoo.org/}
21270 - echo mirror://gentoo/$1 ${devspace//URI/$1}
21271 - }
21272 -
21273 - TARNAME=${PN}
21274 - if [[ -n ${SNAP_VER} ]] ; then
21275 - TARNAME="${PN}-${RELEASE_VER}"
21276 - [[ -n ${PORTS_VER} ]] && PORTS_VER=${SNAP_VER}
21277 - upstream_uris ${TARNAME}-${SNAP_VER}.tar.bz2
21278 - elif [[ -z ${EGIT_REPO_URIS} ]] ; then
21279 - upstream_uris ${TARNAME}-${RELEASE_VER}.tar.xz
21280 - fi
21281 - [[ -n ${LIBIDN_VER} ]] && upstream_uris glibc-libidn-${LIBIDN_VER}.tar.bz2
21282 - [[ -n ${PORTS_VER} ]] && upstream_uris ${TARNAME}-ports-${PORTS_VER}.tar.xz
21283 - [[ -n ${LT_VER} ]] && upstream_uris ${TARNAME}-linuxthreads-${LT_VER}.tar.bz2
21284 - [[ -n ${BRANCH_UPDATE} ]] && gentoo_uris glibc-${RELEASE_VER}-branch-update-${BRANCH_UPDATE}.patch.bz2
21285 - [[ -n ${PATCH_VER} ]] && gentoo_uris glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.bz2
21286 -)
21287 -
21288 -# eblit-include [--skip] <function> [version]
21289 -eblit-include() {
21290 - local skipable=false
21291 - [[ $1 == "--skip" ]] && skipable=true && shift
21292 - [[ $1 == pkg_* ]] && skipable=true
21293 -
21294 - local e v func=$1 ver=$2
21295 - [[ -z ${func} ]] && die "Usage: eblit-include <function> [version]"
21296 - for v in ${ver:+-}${ver} -${PVR} -${PV} "" ; do
21297 - e="${FILESDIR}/eblits/${func}${v}.eblit"
21298 - if [[ -e ${e} ]] ; then
21299 - source "${e}"
21300 - return 0
21301 - fi
21302 - done
21303 - ${skipable} && return 0
21304 - die "Could not locate requested eblit '${func}' in ${FILESDIR}/eblits/"
21305 -}
21306 -
21307 -# eblit-run-maybe <function>
21308 -# run the specified function if it is defined
21309 -eblit-run-maybe() {
21310 - [[ $(type -t "$@") == "function" ]] && "$@"
21311 -}
21312 -
21313 -# eblit-run <function> [version]
21314 -# aka: src_unpack() { eblit-run src_unpack ; }
21315 -eblit-run() {
21316 - eblit-include --skip common "${*:2}"
21317 - eblit-include "$@"
21318 - eblit-run-maybe eblit-$1-pre
21319 - eblit-${PN}-$1
21320 - eblit-run-maybe eblit-$1-post
21321 -}
21322 -
21323 -src_unpack() { eblit-run src_unpack ; }
21324 -src_compile() { eblit-run src_compile ; }
21325 -src_test() { eblit-run src_test ; }
21326 -src_install() { eblit-run src_install ; }
21327 -
21328 -# FILESDIR might not be available during binpkg install
21329 -for x in setup {pre,post}inst ; do
21330 - e="${FILESDIR}/eblits/pkg_${x}.eblit"
21331 - if [[ -e ${e} ]] ; then
21332 - . "${e}"
21333 - eval "pkg_${x}() { eblit-run pkg_${x} ; }"
21334 - fi
21335 -done
21336 -
21337 -eblit-src_unpack-pre() {
21338 - GLIBC_PATCH_EXCLUDE+=" 1200_all_glibc-${PV}-x32.patch"
21339 -}
21340 -
21341 -eblit-src_unpack-post() {
21342 - if use hardened ; then
21343 - cd "${S}"
21344 - einfo "Patching to get working PIE binaries on PIE (hardened) platforms"
21345 - gcc-specs-pie && epatch "${FILESDIR}"/2.12/glibc-2.12-hardened-pie.patch
21346 - epatch "${FILESDIR}"/2.10/glibc-2.10-hardened-configure-picdefault.patch
21347 - epatch "${FILESDIR}"/2.10/glibc-2.10-hardened-inittls-nosysenter.patch
21348 -
21349 - einfo "Installing Hardened Gentoo SSP and FORTIFY_SOURCE handler"
21350 - cp -f "${FILESDIR}"/2.6/glibc-2.6-gentoo-stack_chk_fail.c \
21351 - debug/stack_chk_fail.c || die
21352 - cp -f "${FILESDIR}"/2.10/glibc-2.10-gentoo-chk_fail.c \
21353 - debug/chk_fail.c || die
21354 -
21355 - if use debug ; then
21356 - # When using Hardened Gentoo stack handler, have smashes dump core for
21357 - # analysis - debug only, as core could be an information leak
21358 - # (paranoia).
21359 - sed -i \
21360 - -e '/^CFLAGS-backtrace.c/ iCFLAGS-stack_chk_fail.c = -DSSP_SMASH_DUMPS_CORE' \
21361 - debug/Makefile \
21362 - || die "Failed to modify debug/Makefile for debug stack handler"
21363 - sed -i \
21364 - -e '/^CFLAGS-backtrace.c/ iCFLAGS-chk_fail.c = -DSSP_SMASH_DUMPS_CORE' \
21365 - debug/Makefile \
21366 - || die "Failed to modify debug/Makefile for debug fortify handler"
21367 - fi
21368 -
21369 - # Build nscd with ssp-all
21370 - sed -i \
21371 - -e 's:-fstack-protector$:-fstack-protector-all:' \
21372 - nscd/Makefile \
21373 - || die "Failed to ensure nscd builds with ssp-all"
21374 - fi
21375 -}
21376 -
21377 -eblit-pkg_preinst-post() {
21378 - if [[ ${CTARGET} == arm* ]] ; then
21379 - # Backwards compat support for renaming hardfp ldsos #417287
21380 - local oldso='/lib/ld-linux.so.3'
21381 - local nldso='/lib/ld-linux-armhf.so.3'
21382 - if [[ -e ${D}${nldso} ]] ; then
21383 - if scanelf -qRyi "${ROOT}$(alt_prefix)"/*bin/ | grep -s "^${oldso}" ; then
21384 - ewarn "Symlinking old ldso (${oldso}) to new ldso (${nldso})."
21385 - ewarn "Please rebuild all packages using this old ldso as compat"
21386 - ewarn "support will be dropped in the future."
21387 - ln -s "${nldso##*/}" "${D}$(alt_prefix)${oldso}"
21388 - fi
21389 - fi
21390 - fi
21391 -}
21392
21393 diff --git a/sys-libs/glibc/glibc-2.15-r2.ebuild b/sys-libs/glibc/glibc-2.15-r2.ebuild
21394 deleted file mode 100644
21395 index 2d106b9..0000000
21396 --- a/sys-libs/glibc/glibc-2.15-r2.ebuild
21397 +++ /dev/null
21398 @@ -1,225 +0,0 @@
21399 -# Copyright 1999-2013 Gentoo Foundation
21400 -# Distributed under the terms of the GNU General Public License v2
21401 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.15-r2.ebuild,v 1.30 2013/04/05 00:25:16 vapier Exp $
21402 -
21403 -inherit eutils versionator toolchain-funcs flag-o-matic gnuconfig multilib unpacker multiprocessing
21404 -
21405 -DESCRIPTION="GNU libc6 (also called glibc2) C library"
21406 -HOMEPAGE="http://www.gnu.org/software/libc/libc.html"
21407 -
21408 -LICENSE="LGPL-2.1+ BSD HPND inner-net"
21409 -KEYWORDS="alpha amd64 arm -hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86"
21410 -RESTRICT="strip" # strip ourself #46186
21411 -EMULTILIB_PKG="true"
21412 -
21413 -# Configuration variables
21414 -RELEASE_VER=""
21415 -BRANCH_UPDATE=""
21416 -SNAP_VER=""
21417 -case ${PV} in
21418 -9999*)
21419 - EGIT_REPO_URIS=( "git://sourceware.org/git/glibc.git" "git://sourceware.org/git/glibc-ports.git" )
21420 - EGIT_SOURCEDIRS=( "${S}" "${S}/ports" )
21421 - inherit git-2
21422 - ;;
21423 -*_p*)
21424 - RELEASE_VER=${PV%_p*}
21425 - SNAP_VER=${PV#*_p}
21426 - ;;
21427 -*)
21428 - RELEASE_VER=${PV}
21429 - ;;
21430 -esac
21431 -LIBIDN_VER="" # it's integrated into the main tarball now
21432 -PATCH_VER="21" # Gentoo patchset
21433 -PORTS_VER=${RELEASE_VER} # version of glibc ports addon
21434 -NPTL_KERN_VER=${NPTL_KERN_VER:-"2.6.9"} # min kernel version nptl requires
21435 -
21436 -IUSE="debug gd hardened multilib selinux profile vanilla crosscompile_opts_headers-only"
21437 -[[ -n ${RELEASE_VER} ]] && S=${WORKDIR}/glibc-${RELEASE_VER}${SNAP_VER:+-${SNAP_VER}}
21438 -
21439 -# Here's how the cross-compile logic breaks down ...
21440 -# CTARGET - machine that will target the binaries
21441 -# CHOST - machine that will host the binaries
21442 -# CBUILD - machine that will build the binaries
21443 -# If CTARGET != CHOST, it means you want a libc for cross-compiling.
21444 -# If CHOST != CBUILD, it means you want to cross-compile the libc.
21445 -# CBUILD = CHOST = CTARGET - native build/install
21446 -# CBUILD != (CHOST = CTARGET) - cross-compile a native build
21447 -# (CBUILD = CHOST) != CTARGET - libc for cross-compiler
21448 -# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler
21449 -# For install paths:
21450 -# CHOST = CTARGET - install into /
21451 -# CHOST != CTARGET - install into /usr/CTARGET/
21452 -
21453 -export CBUILD=${CBUILD:-${CHOST}}
21454 -export CTARGET=${CTARGET:-${CHOST}}
21455 -if [[ ${CTARGET} == ${CHOST} ]] ; then
21456 - if [[ ${CATEGORY} == cross-* ]] ; then
21457 - export CTARGET=${CATEGORY#cross-}
21458 - fi
21459 -fi
21460 -
21461 -[[ ${CTARGET} == hppa* ]] && NPTL_KERN_VER=${NPTL_KERN_VER/2.6.9/2.6.20}
21462 -
21463 -is_crosscompile() {
21464 - [[ ${CHOST} != ${CTARGET} ]]
21465 -}
21466 -
21467 -# Why SLOT 2.2 you ask yourself while sippin your tea ?
21468 -# Everyone knows 2.2 > 0, duh.
21469 -SLOT="2.2"
21470 -
21471 -# General: We need a new-enough binutils for as-needed
21472 -# arch: we need to make sure our binutils/gcc supports TLS
21473 -DEPEND=">=sys-devel/gcc-3.4.4
21474 - arm? ( >=sys-devel/binutils-2.16.90 >=sys-devel/gcc-4.1.0 )
21475 - x86? ( >=sys-devel/gcc-4.3 )
21476 - amd64? ( >=sys-devel/binutils-2.19 >=sys-devel/gcc-4.3 )
21477 - ppc? ( >=sys-devel/gcc-4.1.0 )
21478 - ppc64? ( >=sys-devel/gcc-4.1.0 )
21479 - >=sys-devel/binutils-2.15.94
21480 - >=app-misc/pax-utils-0.1.10
21481 - virtual/os-headers
21482 - !<sys-apps/sandbox-1.2.18.1-r2
21483 - !<sys-apps/portage-2.1.2
21484 - !<sys-devel/patch-2.6
21485 - selinux? ( sys-libs/libselinux )"
21486 -RDEPEND="!sys-kernel/ps3-sources
21487 - selinux? ( sys-libs/libselinux )
21488 - !sys-libs/nss-db"
21489 -
21490 -if [[ ${CATEGORY} == cross-* ]] ; then
21491 - DEPEND="${DEPEND} !crosscompile_opts_headers-only? ( ${CATEGORY}/gcc )"
21492 - [[ ${CATEGORY} == *-linux* ]] && DEPEND="${DEPEND} ${CATEGORY}/linux-headers"
21493 -else
21494 - DEPEND="${DEPEND} !vanilla? ( >=sys-libs/timezone-data-2007c )"
21495 - RDEPEND="${RDEPEND}
21496 - vanilla? ( !sys-libs/timezone-data )
21497 - !vanilla? ( sys-libs/timezone-data )"
21498 -fi
21499 -
21500 -SRC_URI=$(
21501 - upstream_uris() {
21502 - echo mirror://gnu/glibc/$1 ftp://sourceware.org/pub/glibc/{releases,snapshots}/$1 mirror://gentoo/$1
21503 - }
21504 - gentoo_uris() {
21505 - local devspace="HTTP~vapier/dist/URI HTTP~azarah/glibc/URI"
21506 - devspace=${devspace//HTTP/http://dev.gentoo.org/}
21507 - echo mirror://gentoo/$1 ${devspace//URI/$1}
21508 - }
21509 -
21510 - TARNAME=${PN}
21511 - if [[ -n ${SNAP_VER} ]] ; then
21512 - TARNAME="${PN}-${RELEASE_VER}"
21513 - [[ -n ${PORTS_VER} ]] && PORTS_VER=${SNAP_VER}
21514 - upstream_uris ${TARNAME}-${SNAP_VER}.tar.bz2
21515 - elif [[ -z ${EGIT_REPO_URIS} ]] ; then
21516 - upstream_uris ${TARNAME}-${RELEASE_VER}.tar.xz
21517 - fi
21518 - [[ -n ${LIBIDN_VER} ]] && upstream_uris glibc-libidn-${LIBIDN_VER}.tar.bz2
21519 - [[ -n ${PORTS_VER} ]] && upstream_uris ${TARNAME}-ports-${PORTS_VER}.tar.xz
21520 - [[ -n ${BRANCH_UPDATE} ]] && gentoo_uris glibc-${RELEASE_VER}-branch-update-${BRANCH_UPDATE}.patch.bz2
21521 - [[ -n ${PATCH_VER} ]] && gentoo_uris glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.bz2
21522 -)
21523 -
21524 -# eblit-include [--skip] <function> [version]
21525 -eblit-include() {
21526 - local skipable=false
21527 - [[ $1 == "--skip" ]] && skipable=true && shift
21528 - [[ $1 == pkg_* ]] && skipable=true
21529 -
21530 - local e v func=$1 ver=$2
21531 - [[ -z ${func} ]] && die "Usage: eblit-include <function> [version]"
21532 - for v in ${ver:+-}${ver} -${PVR} -${PV} "" ; do
21533 - e="${FILESDIR}/eblits/${func}${v}.eblit"
21534 - if [[ -e ${e} ]] ; then
21535 - source "${e}"
21536 - return 0
21537 - fi
21538 - done
21539 - ${skipable} && return 0
21540 - die "Could not locate requested eblit '${func}' in ${FILESDIR}/eblits/"
21541 -}
21542 -
21543 -# eblit-run-maybe <function>
21544 -# run the specified function if it is defined
21545 -eblit-run-maybe() {
21546 - [[ $(type -t "$@") == "function" ]] && "$@"
21547 -}
21548 -
21549 -# eblit-run <function> [version]
21550 -# aka: src_unpack() { eblit-run src_unpack ; }
21551 -eblit-run() {
21552 - eblit-include --skip common "${*:2}"
21553 - eblit-include "$@"
21554 - eblit-run-maybe eblit-$1-pre
21555 - eblit-${PN}-$1
21556 - eblit-run-maybe eblit-$1-post
21557 -}
21558 -
21559 -src_unpack() { eblit-run src_unpack ; }
21560 -src_compile() { eblit-run src_compile ; }
21561 -src_test() { eblit-run src_test ; }
21562 -src_install() { eblit-run src_install ; }
21563 -
21564 -# FILESDIR might not be available during binpkg install
21565 -for x in setup {pre,post}inst ; do
21566 - e="${FILESDIR}/eblits/pkg_${x}.eblit"
21567 - if [[ -e ${e} ]] ; then
21568 - . "${e}"
21569 - eval "pkg_${x}() { eblit-run pkg_${x} ; }"
21570 - fi
21571 -done
21572 -
21573 -eblit-src_unpack-post() {
21574 - if use hardened ; then
21575 - cd "${S}"
21576 - einfo "Patching to get working PIE binaries on PIE (hardened) platforms"
21577 - gcc-specs-pie && epatch "${FILESDIR}"/2.12/glibc-2.12-hardened-pie.patch
21578 - epatch "${FILESDIR}"/2.10/glibc-2.10-hardened-configure-picdefault.patch
21579 - epatch "${FILESDIR}"/2.10/glibc-2.10-hardened-inittls-nosysenter.patch
21580 -
21581 - einfo "Installing Hardened Gentoo SSP and FORTIFY_SOURCE handler"
21582 - cp -f "${FILESDIR}"/2.6/glibc-2.6-gentoo-stack_chk_fail.c \
21583 - debug/stack_chk_fail.c || die
21584 - cp -f "${FILESDIR}"/2.10/glibc-2.10-gentoo-chk_fail.c \
21585 - debug/chk_fail.c || die
21586 -
21587 - if use debug ; then
21588 - # When using Hardened Gentoo stack handler, have smashes dump core for
21589 - # analysis - debug only, as core could be an information leak
21590 - # (paranoia).
21591 - sed -i \
21592 - -e '/^CFLAGS-backtrace.c/ iCFLAGS-stack_chk_fail.c = -DSSP_SMASH_DUMPS_CORE' \
21593 - debug/Makefile \
21594 - || die "Failed to modify debug/Makefile for debug stack handler"
21595 - sed -i \
21596 - -e '/^CFLAGS-backtrace.c/ iCFLAGS-chk_fail.c = -DSSP_SMASH_DUMPS_CORE' \
21597 - debug/Makefile \
21598 - || die "Failed to modify debug/Makefile for debug fortify handler"
21599 - fi
21600 -
21601 - # Build nscd with ssp-all
21602 - sed -i \
21603 - -e 's:-fstack-protector$:-fstack-protector-all:' \
21604 - nscd/Makefile \
21605 - || die "Failed to ensure nscd builds with ssp-all"
21606 - fi
21607 -}
21608 -
21609 -eblit-pkg_preinst-post() {
21610 - if [[ ${CTARGET} == arm* ]] ; then
21611 - # Backwards compat support for renaming hardfp ldsos #417287
21612 - local oldso='/lib/ld-linux.so.3'
21613 - local nldso='/lib/ld-linux-armhf.so.3'
21614 - if [[ -e ${D}${nldso} ]] ; then
21615 - if scanelf -qRyi "${ROOT}$(alt_prefix)"/*bin/ | grep -s "^${oldso}" ; then
21616 - ewarn "Symlinking old ldso (${oldso}) to new ldso (${nldso})."
21617 - ewarn "Please rebuild all packages using this old ldso as compat"
21618 - ewarn "support will be dropped in the future."
21619 - ln -s "${nldso##*/}" "${D}$(alt_prefix)${oldso}"
21620 - fi
21621 - fi
21622 - fi
21623 -}
21624
21625 diff --git a/sys-libs/glibc/glibc-2.15-r3.ebuild b/sys-libs/glibc/glibc-2.15-r3.ebuild
21626 deleted file mode 100644
21627 index fb2b257..0000000
21628 --- a/sys-libs/glibc/glibc-2.15-r3.ebuild
21629 +++ /dev/null
21630 @@ -1,227 +0,0 @@
21631 -# Copyright 1999-2013 Gentoo Foundation
21632 -# Distributed under the terms of the GNU General Public License v2
21633 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.15-r3.ebuild,v 1.14 2013/05/09 04:41:16 vapier Exp $
21634 -
21635 -inherit eutils versionator toolchain-funcs flag-o-matic gnuconfig multilib unpacker multiprocessing
21636 -
21637 -DESCRIPTION="GNU libc6 (also called glibc2) C library"
21638 -HOMEPAGE="http://www.gnu.org/software/libc/libc.html"
21639 -
21640 -LICENSE="LGPL-2.1+ BSD HPND inner-net"
21641 -KEYWORDS="alpha amd64 arm -hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
21642 -RESTRICT="strip" # strip ourself #46186
21643 -EMULTILIB_PKG="true"
21644 -
21645 -# Configuration variables
21646 -RELEASE_VER=""
21647 -BRANCH_UPDATE=""
21648 -SNAP_VER=""
21649 -case ${PV} in
21650 -9999*)
21651 - EGIT_REPO_URIS=( "git://sourceware.org/git/glibc.git" "git://sourceware.org/git/glibc-ports.git" )
21652 - EGIT_SOURCEDIRS=( "${S}" "${S}/ports" )
21653 - inherit git-2
21654 - ;;
21655 -*_p*)
21656 - RELEASE_VER=${PV%_p*}
21657 - SNAP_VER=${PV#*_p}
21658 - ;;
21659 -*)
21660 - RELEASE_VER=${PV}
21661 - ;;
21662 -esac
21663 -LIBIDN_VER="" # it's integrated into the main tarball now
21664 -PATCH_VER="23" # Gentoo patchset
21665 -PORTS_VER=${RELEASE_VER} # version of glibc ports addon
21666 -NPTL_KERN_VER=${NPTL_KERN_VER:-"2.6.9"} # min kernel version nptl requires
21667 -
21668 -IUSE="debug gd hardened multilib selinux profile vanilla crosscompile_opts_headers-only"
21669 -[[ -n ${RELEASE_VER} ]] && S=${WORKDIR}/glibc-${RELEASE_VER}${SNAP_VER:+-${SNAP_VER}}
21670 -
21671 -# Here's how the cross-compile logic breaks down ...
21672 -# CTARGET - machine that will target the binaries
21673 -# CHOST - machine that will host the binaries
21674 -# CBUILD - machine that will build the binaries
21675 -# If CTARGET != CHOST, it means you want a libc for cross-compiling.
21676 -# If CHOST != CBUILD, it means you want to cross-compile the libc.
21677 -# CBUILD = CHOST = CTARGET - native build/install
21678 -# CBUILD != (CHOST = CTARGET) - cross-compile a native build
21679 -# (CBUILD = CHOST) != CTARGET - libc for cross-compiler
21680 -# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler
21681 -# For install paths:
21682 -# CHOST = CTARGET - install into /
21683 -# CHOST != CTARGET - install into /usr/CTARGET/
21684 -
21685 -export CBUILD=${CBUILD:-${CHOST}}
21686 -export CTARGET=${CTARGET:-${CHOST}}
21687 -if [[ ${CTARGET} == ${CHOST} ]] ; then
21688 - if [[ ${CATEGORY} == cross-* ]] ; then
21689 - export CTARGET=${CATEGORY#cross-}
21690 - fi
21691 -fi
21692 -
21693 -[[ ${CTARGET} == hppa* ]] && NPTL_KERN_VER=${NPTL_KERN_VER/2.6.9/2.6.20}
21694 -
21695 -is_crosscompile() {
21696 - [[ ${CHOST} != ${CTARGET} ]]
21697 -}
21698 -
21699 -# Why SLOT 2.2 you ask yourself while sippin your tea ?
21700 -# Everyone knows 2.2 > 0, duh.
21701 -SLOT="2.2"
21702 -
21703 -# General: We need a new-enough binutils for as-needed
21704 -# arch: we need to make sure our binutils/gcc supports TLS
21705 -DEPEND=">=sys-devel/gcc-3.4.4
21706 - arm? ( >=sys-devel/binutils-2.16.90 >=sys-devel/gcc-4.1.0 )
21707 - x86? ( >=sys-devel/gcc-4.3 )
21708 - amd64? ( >=sys-devel/binutils-2.19 >=sys-devel/gcc-4.3 )
21709 - ppc? ( >=sys-devel/gcc-4.1.0 )
21710 - ppc64? ( >=sys-devel/gcc-4.1.0 )
21711 - >=sys-devel/binutils-2.15.94
21712 - >=app-misc/pax-utils-0.1.10
21713 - virtual/os-headers
21714 - !<sys-apps/sandbox-1.2.18.1-r2
21715 - !<sys-apps/portage-2.1.2
21716 - !<sys-devel/patch-2.6
21717 - selinux? ( sys-libs/libselinux )"
21718 -RDEPEND="!sys-kernel/ps3-sources
21719 - selinux? ( sys-libs/libselinux )
21720 - !sys-libs/nss-db"
21721 -
21722 -if [[ ${CATEGORY} == cross-* ]] ; then
21723 - DEPEND="${DEPEND} !crosscompile_opts_headers-only? ( ${CATEGORY}/gcc )"
21724 - [[ ${CATEGORY} == *-linux* ]] && DEPEND="${DEPEND} ${CATEGORY}/linux-headers"
21725 -else
21726 - DEPEND="${DEPEND} !vanilla? ( >=sys-libs/timezone-data-2007c )"
21727 - RDEPEND="${RDEPEND}
21728 - vanilla? ( !sys-libs/timezone-data )
21729 - !vanilla? ( sys-libs/timezone-data )"
21730 -fi
21731 -
21732 -SRC_URI=$(
21733 - upstream_uris() {
21734 - echo mirror://gnu/glibc/$1 ftp://sourceware.org/pub/glibc/{releases,snapshots}/$1 mirror://gentoo/$1
21735 - }
21736 - gentoo_uris() {
21737 - local devspace="HTTP~vapier/dist/URI HTTP~azarah/glibc/URI"
21738 - devspace=${devspace//HTTP/http://dev.gentoo.org/}
21739 - echo mirror://gentoo/$1 ${devspace//URI/$1}
21740 - }
21741 -
21742 - TARNAME=${PN}
21743 - if [[ -n ${SNAP_VER} ]] ; then
21744 - TARNAME="${PN}-${RELEASE_VER}"
21745 - [[ -n ${PORTS_VER} ]] && PORTS_VER=${SNAP_VER}
21746 - upstream_uris ${TARNAME}-${SNAP_VER}.tar.bz2
21747 - elif [[ -z ${EGIT_REPO_URIS} ]] ; then
21748 - upstream_uris ${TARNAME}-${RELEASE_VER}.tar.xz
21749 - fi
21750 - [[ -n ${LIBIDN_VER} ]] && upstream_uris glibc-libidn-${LIBIDN_VER}.tar.bz2
21751 - [[ -n ${PORTS_VER} ]] && upstream_uris ${TARNAME}-ports-${PORTS_VER}.tar.xz
21752 - [[ -n ${BRANCH_UPDATE} ]] && gentoo_uris glibc-${RELEASE_VER}-branch-update-${BRANCH_UPDATE}.patch.bz2
21753 - [[ -n ${PATCH_VER} ]] && gentoo_uris glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.bz2
21754 -)
21755 -
21756 -# eblit-include [--skip] <function> [version]
21757 -eblit-include() {
21758 - local skipable=false
21759 - [[ $1 == "--skip" ]] && skipable=true && shift
21760 - [[ $1 == pkg_* ]] && skipable=true
21761 -
21762 - local e v func=$1 ver=$2
21763 - [[ -z ${func} ]] && die "Usage: eblit-include <function> [version]"
21764 - for v in ${ver:+-}${ver} -${PVR} -${PV} "" ; do
21765 - e="${FILESDIR}/eblits/${func}${v}.eblit"
21766 - if [[ -e ${e} ]] ; then
21767 - source "${e}"
21768 - return 0
21769 - fi
21770 - done
21771 - ${skipable} && return 0
21772 - die "Could not locate requested eblit '${func}' in ${FILESDIR}/eblits/"
21773 -}
21774 -
21775 -# eblit-run-maybe <function>
21776 -# run the specified function if it is defined
21777 -eblit-run-maybe() {
21778 - [[ $(type -t "$@") == "function" ]] && "$@"
21779 -}
21780 -
21781 -# eblit-run <function> [version]
21782 -# aka: src_unpack() { eblit-run src_unpack ; }
21783 -eblit-run() {
21784 - eblit-include --skip common "${*:2}"
21785 - eblit-include "$@"
21786 - eblit-run-maybe eblit-$1-pre
21787 - eblit-${PN}-$1
21788 - eblit-run-maybe eblit-$1-post
21789 -}
21790 -
21791 -src_unpack() { eblit-run src_unpack ; }
21792 -src_compile() { eblit-run src_compile ; }
21793 -src_test() { eblit-run src_test ; }
21794 -src_install() { eblit-run src_install ; }
21795 -
21796 -# FILESDIR might not be available during binpkg install
21797 -for x in setup {pre,post}inst ; do
21798 - e="${FILESDIR}/eblits/pkg_${x}.eblit"
21799 - if [[ -e ${e} ]] ; then
21800 - . "${e}"
21801 - eval "pkg_${x}() { eblit-run pkg_${x} ; }"
21802 - fi
21803 -done
21804 -
21805 -eblit-src_unpack-post() {
21806 - epatch "${FILESDIR}"/2.15/glibc-2.15-localstatedir-backport.patch
21807 -
21808 - if use hardened ; then
21809 - cd "${S}"
21810 - einfo "Patching to get working PIE binaries on PIE (hardened) platforms"
21811 - gcc-specs-pie && epatch "${FILESDIR}"/2.12/glibc-2.12-hardened-pie.patch
21812 - epatch "${FILESDIR}"/2.10/glibc-2.10-hardened-configure-picdefault.patch
21813 - epatch "${FILESDIR}"/2.10/glibc-2.10-hardened-inittls-nosysenter.patch
21814 -
21815 - einfo "Installing Hardened Gentoo SSP and FORTIFY_SOURCE handler"
21816 - cp -f "${FILESDIR}"/2.6/glibc-2.6-gentoo-stack_chk_fail.c \
21817 - debug/stack_chk_fail.c || die
21818 - cp -f "${FILESDIR}"/2.10/glibc-2.10-gentoo-chk_fail.c \
21819 - debug/chk_fail.c || die
21820 -
21821 - if use debug ; then
21822 - # When using Hardened Gentoo stack handler, have smashes dump core for
21823 - # analysis - debug only, as core could be an information leak
21824 - # (paranoia).
21825 - sed -i \
21826 - -e '/^CFLAGS-backtrace.c/ iCFLAGS-stack_chk_fail.c = -DSSP_SMASH_DUMPS_CORE' \
21827 - debug/Makefile \
21828 - || die "Failed to modify debug/Makefile for debug stack handler"
21829 - sed -i \
21830 - -e '/^CFLAGS-backtrace.c/ iCFLAGS-chk_fail.c = -DSSP_SMASH_DUMPS_CORE' \
21831 - debug/Makefile \
21832 - || die "Failed to modify debug/Makefile for debug fortify handler"
21833 - fi
21834 -
21835 - # Build nscd with ssp-all
21836 - sed -i \
21837 - -e 's:-fstack-protector$:-fstack-protector-all:' \
21838 - nscd/Makefile \
21839 - || die "Failed to ensure nscd builds with ssp-all"
21840 - fi
21841 -}
21842 -
21843 -eblit-pkg_preinst-post() {
21844 - if [[ ${CTARGET} == arm* ]] ; then
21845 - # Backwards compat support for renaming hardfp ldsos #417287
21846 - local oldso='/lib/ld-linux.so.3'
21847 - local nldso='/lib/ld-linux-armhf.so.3'
21848 - if [[ -e ${D}${nldso} ]] ; then
21849 - if scanelf -qRyi "${ROOT}$(alt_prefix)"/*bin/ | grep -s "^${oldso}" ; then
21850 - ewarn "Symlinking old ldso (${oldso}) to new ldso (${nldso})."
21851 - ewarn "Please rebuild all packages using this old ldso as compat"
21852 - ewarn "support will be dropped in the future."
21853 - ln -s "${nldso##*/}" "${D}$(alt_prefix)${oldso}"
21854 - fi
21855 - fi
21856 - fi
21857 -}
21858
21859 diff --git a/sys-libs/glibc/glibc-2.17.ebuild b/sys-libs/glibc/glibc-2.17.ebuild
21860 deleted file mode 100644
21861 index 40b2f6c..0000000
21862 --- a/sys-libs/glibc/glibc-2.17.ebuild
21863 +++ /dev/null
21864 @@ -1,228 +0,0 @@
21865 -# Copyright 1999-2013 Gentoo Foundation
21866 -# Distributed under the terms of the GNU General Public License v2
21867 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.17.ebuild,v 1.16 2013/06/27 12:19:41 jer Exp $
21868 -
21869 -inherit eutils versionator toolchain-funcs flag-o-matic gnuconfig multilib systemd unpacker multiprocessing prefix
21870 -
21871 -DESCRIPTION="GNU libc6 (also called glibc2) C library"
21872 -HOMEPAGE="http://www.gnu.org/software/libc/libc.html"
21873 -
21874 -LICENSE="LGPL-2.1+ BSD HPND ISC inner-net rc PCRE"
21875 -KEYWORDS="~alpha ~amd64 ~arm hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
21876 -RESTRICT="strip" # strip ourself #46186
21877 -EMULTILIB_PKG="true"
21878 -
21879 -# Configuration variables
21880 -RELEASE_VER=""
21881 -case ${PV} in
21882 -9999*)
21883 - EGIT_REPO_URIS="git://sourceware.org/git/glibc.git"
21884 - EGIT_SOURCEDIRS="${S}"
21885 - inherit git-2
21886 - ;;
21887 -*)
21888 - RELEASE_VER=${PV}
21889 - ;;
21890 -esac
21891 -PATCH_VER="7" # Gentoo patchset
21892 -NPTL_KERN_VER=${NPTL_KERN_VER:-"2.6.16"} # min kernel version nptl requires
21893 -
21894 -IUSE="debug gd hardened multilib nscd selinux systemtap profile suid vanilla crosscompile_opts_headers-only"
21895 -
21896 -# Here's how the cross-compile logic breaks down ...
21897 -# CTARGET - machine that will target the binaries
21898 -# CHOST - machine that will host the binaries
21899 -# CBUILD - machine that will build the binaries
21900 -# If CTARGET != CHOST, it means you want a libc for cross-compiling.
21901 -# If CHOST != CBUILD, it means you want to cross-compile the libc.
21902 -# CBUILD = CHOST = CTARGET - native build/install
21903 -# CBUILD != (CHOST = CTARGET) - cross-compile a native build
21904 -# (CBUILD = CHOST) != CTARGET - libc for cross-compiler
21905 -# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler
21906 -# For install paths:
21907 -# CHOST = CTARGET - install into /
21908 -# CHOST != CTARGET - install into /usr/CTARGET/
21909 -
21910 -export CBUILD=${CBUILD:-${CHOST}}
21911 -export CTARGET=${CTARGET:-${CHOST}}
21912 -if [[ ${CTARGET} == ${CHOST} ]] ; then
21913 - if [[ ${CATEGORY} == cross-* ]] ; then
21914 - export CTARGET=${CATEGORY#cross-}
21915 - fi
21916 -fi
21917 -
21918 -[[ ${CTARGET} == hppa* ]] && NPTL_KERN_VER=${NPTL_KERN_VER/2.6.16/2.6.20}
21919 -
21920 -is_crosscompile() {
21921 - [[ ${CHOST} != ${CTARGET} ]]
21922 -}
21923 -
21924 -# Why SLOT 2.2 you ask yourself while sippin your tea ?
21925 -# Everyone knows 2.2 > 0, duh.
21926 -SLOT="2.2"
21927 -
21928 -# General: We need a new-enough binutils/gcc to match upstream baseline.
21929 -# arch: we need to make sure our binutils/gcc supports TLS.
21930 -DEPEND=">=app-misc/pax-utils-0.1.10
21931 - !<sys-apps/sandbox-1.6
21932 - !<sys-apps/portage-2.1.2
21933 - selinux? ( sys-libs/libselinux )"
21934 -RDEPEND="!sys-kernel/ps3-sources
21935 - selinux? ( sys-libs/libselinux )
21936 - !sys-libs/nss-db"
21937 -
21938 -if [[ ${CATEGORY} == cross-* ]] ; then
21939 - DEPEND+=" !crosscompile_opts_headers-only? (
21940 - >=${CATEGORY}/binutils-2.20
21941 - >=${CATEGORY}/gcc-4.3
21942 - )"
21943 - [[ ${CATEGORY} == *-linux* ]] && DEPEND+=" ${CATEGORY}/linux-headers"
21944 -else
21945 - DEPEND+="
21946 - >=sys-devel/binutils-2.20
21947 - >=sys-devel/gcc-4.3
21948 - virtual/os-headers
21949 - !vanilla? ( >=sys-libs/timezone-data-2012c )"
21950 - RDEPEND+="
21951 - vanilla? ( !sys-libs/timezone-data )
21952 - !vanilla? ( sys-libs/timezone-data )"
21953 -fi
21954 -
21955 -SRC_URI=$(
21956 - upstream_uris() {
21957 - echo mirror://gnu/glibc/$1 ftp://sourceware.org/pub/glibc/{releases,snapshots}/$1 mirror://gentoo/$1
21958 - }
21959 - gentoo_uris() {
21960 - local devspace="HTTP~vapier/dist/URI HTTP~azarah/glibc/URI"
21961 - devspace=${devspace//HTTP/http://dev.gentoo.org/}
21962 - echo mirror://gentoo/$1 ${devspace//URI/$1}
21963 - }
21964 -
21965 - [[ -z ${EGIT_REPO_URIS} ]] && upstream_uris ${P}.tar.xz
21966 - [[ -n ${PATCH_VER} ]] && gentoo_uris ${P}-patches-${PATCH_VER}.tar.bz2
21967 -)
21968 -
21969 -# eblit-include [--skip] <function> [version]
21970 -eblit-include() {
21971 - local skipable=false
21972 - [[ $1 == "--skip" ]] && skipable=true && shift
21973 - [[ $1 == pkg_* ]] && skipable=true
21974 -
21975 - local e v func=$1 ver=$2
21976 - [[ -z ${func} ]] && die "Usage: eblit-include <function> [version]"
21977 - for v in ${ver:+-}${ver} -${PVR} -${PV} "" ; do
21978 - e="${FILESDIR}/eblits/${func}${v}.eblit"
21979 - if [[ -e ${e} ]] ; then
21980 - source "${e}"
21981 - return 0
21982 - fi
21983 - done
21984 - ${skipable} && return 0
21985 - die "Could not locate requested eblit '${func}' in ${FILESDIR}/eblits/"
21986 -}
21987 -
21988 -# eblit-run-maybe <function>
21989 -# run the specified function if it is defined
21990 -eblit-run-maybe() {
21991 - [[ $(type -t "$@") == "function" ]] && "$@"
21992 -}
21993 -
21994 -# eblit-run <function> [version]
21995 -# aka: src_unpack() { eblit-run src_unpack ; }
21996 -eblit-run() {
21997 - eblit-include --skip common "${*:2}"
21998 - eblit-include "$@"
21999 - eblit-run-maybe eblit-$1-pre
22000 - eblit-${PN}-$1
22001 - eblit-run-maybe eblit-$1-post
22002 -}
22003 -
22004 -src_unpack() { eblit-run src_unpack ; }
22005 -src_compile() { eblit-run src_compile ; }
22006 -src_test() { eblit-run src_test ; }
22007 -src_install() { eblit-run src_install ; }
22008 -
22009 -# FILESDIR might not be available during binpkg install
22010 -for x in setup {pre,post}inst ; do
22011 - e="${FILESDIR}/eblits/pkg_${x}.eblit"
22012 - if [[ -e ${e} ]] ; then
22013 - . "${e}"
22014 - eval "pkg_${x}() { eblit-run pkg_${x} ; }"
22015 - fi
22016 -done
22017 -
22018 -eblit-src_unpack-pre() {
22019 - GLIBC_PATCH_EXCLUDE+=" 6600_mips_librt-mips.patch" #456912
22020 -}
22021 -
22022 -eblit-src_unpack-post() {
22023 - if use hardened ; then
22024 - cd "${S}"
22025 - einfo "Patching to get working PIE binaries on PIE (hardened) platforms"
22026 - gcc-specs-pie && epatch "${FILESDIR}"/2.17/glibc-2.17-hardened-pie.patch
22027 - epatch "${FILESDIR}"/2.10/glibc-2.10-hardened-configure-picdefault.patch
22028 - epatch "${FILESDIR}"/2.10/glibc-2.10-hardened-inittls-nosysenter.patch
22029 -
22030 - einfo "Installing Hardened Gentoo SSP and FORTIFY_SOURCE handler"
22031 - cp -f "${FILESDIR}"/2.6/glibc-2.6-gentoo-stack_chk_fail.c \
22032 - debug/stack_chk_fail.c || die
22033 - cp -f "${FILESDIR}"/2.10/glibc-2.10-gentoo-chk_fail.c \
22034 - debug/chk_fail.c || die
22035 -
22036 - if use debug ; then
22037 - # When using Hardened Gentoo stack handler, have smashes dump core for
22038 - # analysis - debug only, as core could be an information leak
22039 - # (paranoia).
22040 - sed -i \
22041 - -e '/^CFLAGS-backtrace.c/ iCFLAGS-stack_chk_fail.c = -DSSP_SMASH_DUMPS_CORE' \
22042 - debug/Makefile \
22043 - || die "Failed to modify debug/Makefile for debug stack handler"
22044 - sed -i \
22045 - -e '/^CFLAGS-backtrace.c/ iCFLAGS-chk_fail.c = -DSSP_SMASH_DUMPS_CORE' \
22046 - debug/Makefile \
22047 - || die "Failed to modify debug/Makefile for debug fortify handler"
22048 - fi
22049 -
22050 - # Build nscd with ssp-all
22051 - sed -i \
22052 - -e 's:-fstack-protector$:-fstack-protector-all:' \
22053 - nscd/Makefile \
22054 - || die "Failed to ensure nscd builds with ssp-all"
22055 - fi
22056 -
22057 - # RHEL(likely CentOS and SL) 5.6 have kernels with vdso bug,
22058 - # https://bugzilla.redhat.com/show_bug.cgi?id=673616
22059 - # we disable vdso loading in ELF handler, as suggest by Mike Frysinger
22060 - # http://article.gmane.org/gmane.comp.lib.glibc.user/1904
22061 - # Benda Xu <heroxbd@g.o> (3 Jul, 2013)
22062 - elog "Your kernel is known to have vdso bug, disabling this feature"
22063 - epatch "${FILESDIR}"/2.17/vdso-disable.patch
22064 -
22065 - epatch "${FILESDIR}"/2.17/locale-gen_prefix.patch
22066 - eprefixify "${WORKDIR}"/extra/locale/locale-gen
22067 -
22068 - cd "${S}"
22069 - epatch "${FILESDIR}"/2.17/glibc-2.17-runtime-prefix.patch
22070 - eprefixify glibc-compat/nss_{compat/compat-{grp,{,s}pwd},files/files-netgrp}.c \
22071 - nis/nss_compat/compat-{grp,initgroups,{,s}pwd}.c \
22072 - nss/{db-Makefile,{bug-erange,nss_files/files-init{,groups}}.c} \
22073 - resolv/{netdb,resolv}.h sysdeps/{{generic,unix/sysv/linux}/paths.h,posix/system.c} \
22074 - libio/iopopen.c
22075 - epatch "${FILESDIR}"/${PV}/${P}-shadow-prefix.patch
22076 -}
22077 -
22078 -eblit-pkg_preinst-post() {
22079 - if [[ ${CTARGET} == arm* ]] ; then
22080 - # Backwards compat support for renaming hardfp ldsos #417287
22081 - local oldso='/lib/ld-linux.so.3'
22082 - local nldso='/lib/ld-linux-armhf.so.3'
22083 - if [[ -e ${D}${nldso} ]] ; then
22084 - if scanelf -qRyi "${ROOT}$(alt_prefix)"/*bin/ | grep -s "^${oldso}" ; then
22085 - ewarn "Symlinking old ldso (${oldso}) to new ldso (${nldso})."
22086 - ewarn "Please rebuild all packages using this old ldso as compat"
22087 - ewarn "support will be dropped in the future."
22088 - ln -s "${nldso##*/}" "${D}$(alt_prefix)${oldso}"
22089 - fi
22090 - fi
22091 - fi
22092 -}
22093
22094 diff --git a/sys-libs/glibc/glibc-2.19-r1.ebuild b/sys-libs/glibc/glibc-2.19-r1.ebuild
22095 deleted file mode 100644
22096 index 8758b70..0000000
22097 --- a/sys-libs/glibc/glibc-2.19-r1.ebuild
22098 +++ /dev/null
22099 @@ -1,227 +0,0 @@
22100 -# Copyright 1999-2014 Gentoo Foundation
22101 -# Distributed under the terms of the GNU General Public License v2
22102 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.19-r1.ebuild,v 1.11 2014/10/26 08:05:50 vapier Exp $
22103 -
22104 -inherit eutils versionator toolchain-funcs flag-o-matic gnuconfig multilib systemd unpacker multiprocessing prefix
22105 -
22106 -DESCRIPTION="GNU libc6 (also called glibc2) C library"
22107 -HOMEPAGE="http://www.gnu.org/software/libc/libc.html"
22108 -
22109 -LICENSE="LGPL-2.1+ BSD HPND ISC inner-net rc PCRE"
22110 -KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
22111 -RESTRICT="strip" # strip ourself #46186
22112 -EMULTILIB_PKG="true"
22113 -
22114 -# Configuration variables
22115 -RELEASE_VER=""
22116 -case ${PV} in
22117 -9999*)
22118 - EGIT_REPO_URIS="git://sourceware.org/git/glibc.git"
22119 - EGIT_SOURCEDIRS="${S}"
22120 - inherit git-2
22121 - ;;
22122 -*)
22123 - RELEASE_VER=${PV}
22124 - ;;
22125 -esac
22126 -GCC_BOOTSTRAP_VER="4.7.3-r1"
22127 -PATCH_VER="3" # Gentoo patchset
22128 -NPTL_KERN_VER=${NPTL_KERN_VER:-"2.6.16"} # min kernel version nptl requires
22129 -
22130 -IUSE="debug gd hardened multilib nscd selinux systemtap profile suid vanilla crosscompile_opts_headers-only rap"
22131 -
22132 -# Here's how the cross-compile logic breaks down ...
22133 -# CTARGET - machine that will target the binaries
22134 -# CHOST - machine that will host the binaries
22135 -# CBUILD - machine that will build the binaries
22136 -# If CTARGET != CHOST, it means you want a libc for cross-compiling.
22137 -# If CHOST != CBUILD, it means you want to cross-compile the libc.
22138 -# CBUILD = CHOST = CTARGET - native build/install
22139 -# CBUILD != (CHOST = CTARGET) - cross-compile a native build
22140 -# (CBUILD = CHOST) != CTARGET - libc for cross-compiler
22141 -# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler
22142 -# For install paths:
22143 -# CHOST = CTARGET - install into /
22144 -# CHOST != CTARGET - install into /usr/CTARGET/
22145 -
22146 -export CBUILD=${CBUILD:-${CHOST}}
22147 -export CTARGET=${CTARGET:-${CHOST}}
22148 -if [[ ${CTARGET} == ${CHOST} ]] ; then
22149 - if [[ ${CATEGORY} == cross-* ]] ; then
22150 - export CTARGET=${CATEGORY#cross-}
22151 - fi
22152 -fi
22153 -
22154 -[[ ${CTARGET} == hppa* ]] && NPTL_KERN_VER=${NPTL_KERN_VER/2.6.16/2.6.20}
22155 -
22156 -is_crosscompile() {
22157 - [[ ${CHOST} != ${CTARGET} ]]
22158 -}
22159 -
22160 -# Why SLOT 2.2 you ask yourself while sippin your tea ?
22161 -# Everyone knows 2.2 > 0, duh.
22162 -SLOT="2.2"
22163 -
22164 -# General: We need a new-enough binutils/gcc to match upstream baseline.
22165 -# arch: we need to make sure our binutils/gcc supports TLS.
22166 -DEPEND=">=app-misc/pax-utils-0.1.10
22167 - !<sys-apps/sandbox-1.6
22168 - !<sys-apps/portage-2.1.2
22169 - selinux? ( sys-libs/libselinux )"
22170 -RDEPEND="!sys-kernel/ps3-sources
22171 - selinux? ( sys-libs/libselinux )
22172 - !sys-libs/nss-db"
22173 -
22174 -if [[ ${CATEGORY} == cross-* ]] ; then
22175 - DEPEND+=" !crosscompile_opts_headers-only? (
22176 - >=${CATEGORY}/binutils-2.20
22177 - >=${CATEGORY}/gcc-4.3
22178 - )"
22179 - [[ ${CATEGORY} == *-linux* ]] && DEPEND+=" ${CATEGORY}/linux-headers"
22180 -else
22181 - DEPEND+="
22182 - >=sys-devel/binutils-2.20
22183 - >=sys-devel/gcc-4.3
22184 - virtual/os-headers
22185 - !vanilla? ( >=sys-libs/timezone-data-2012c )"
22186 - RDEPEND+="
22187 - vanilla? ( !sys-libs/timezone-data )
22188 - !vanilla? ( sys-libs/timezone-data )"
22189 -fi
22190 -
22191 -upstream_uris() {
22192 - echo mirror://gnu/glibc/$1 ftp://sourceware.org/pub/glibc/{releases,snapshots}/$1 mirror://gentoo/$1
22193 -}
22194 -gentoo_uris() {
22195 - local devspace="HTTP~vapier/dist/URI HTTP~azarah/glibc/URI"
22196 - devspace=${devspace//HTTP/http://dev.gentoo.org/}
22197 - echo mirror://gentoo/$1 ${devspace//URI/$1}
22198 -}
22199 -SRC_URI=$(
22200 - [[ -z ${EGIT_REPO_URIS} ]] && upstream_uris ${P}.tar.xz
22201 - [[ -n ${PATCH_VER} ]] && gentoo_uris ${P}-patches-${PATCH_VER}.tar.bz2
22202 -)
22203 -SRC_URI+=" ${GCC_BOOTSTRAP_VER:+multilib? ( $(gentoo_uris gcc-${GCC_BOOTSTRAP_VER}-multilib-bootstrap.tar.bz2) )}"
22204 -
22205 -# eblit-include [--skip] <function> [version]
22206 -eblit-include() {
22207 - local skipable=false
22208 - [[ $1 == "--skip" ]] && skipable=true && shift
22209 - [[ $1 == pkg_* ]] && skipable=true
22210 -
22211 - local e v func=$1 ver=$2
22212 - [[ -z ${func} ]] && die "Usage: eblit-include <function> [version]"
22213 - for v in ${ver:+-}${ver} -${PVR} -${PV} "" ; do
22214 - e="${FILESDIR}/eblits/${func}${v}.eblit"
22215 - if [[ -e ${e} ]] ; then
22216 - source "${e}"
22217 - return 0
22218 - fi
22219 - done
22220 - ${skipable} && return 0
22221 - die "Could not locate requested eblit '${func}' in ${FILESDIR}/eblits/"
22222 -}
22223 -
22224 -# eblit-run-maybe <function>
22225 -# run the specified function if it is defined
22226 -eblit-run-maybe() {
22227 - [[ $(type -t "$@") == "function" ]] && "$@"
22228 -}
22229 -
22230 -# eblit-run <function> [version]
22231 -# aka: src_unpack() { eblit-run src_unpack ; }
22232 -eblit-run() {
22233 - eblit-include --skip common "${*:2}"
22234 - eblit-include "$@"
22235 - eblit-run-maybe eblit-$1-pre
22236 - eblit-${PN}-$1
22237 - eblit-run-maybe eblit-$1-post
22238 -}
22239 -
22240 -src_unpack() { eblit-run src_unpack ; }
22241 -src_compile() { eblit-run src_compile ; }
22242 -src_test() { eblit-run src_test ; }
22243 -src_install() { eblit-run src_install ; }
22244 -
22245 -# FILESDIR might not be available during binpkg install
22246 -for x in setup {pre,post}inst ; do
22247 - e="${FILESDIR}/eblits/pkg_${x}.eblit"
22248 - if [[ -e ${e} ]] ; then
22249 - . "${e}"
22250 - eval "pkg_${x}() { eblit-run pkg_${x} ; }"
22251 - fi
22252 -done
22253 -
22254 -eblit-src_unpack-pre() {
22255 - [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib && unpack gcc-${GCC_BOOTSTRAP_VER}-multilib-bootstrap.tar.bz2
22256 -}
22257 -
22258 -eblit-src_unpack-post() {
22259 - eprefixify extra/locale/locale-gen
22260 -
22261 - cd "${S}"
22262 -
22263 - if use hardened ; then
22264 - einfo "Patching to get working PIE binaries on PIE (hardened) platforms"
22265 - gcc-specs-pie && epatch "${FILESDIR}"/2.17/glibc-2.17-hardened-pie.patch
22266 - epatch "${FILESDIR}"/2.19/glibc-2.19-hardened-configure-picdefault.patch
22267 - epatch "${FILESDIR}"/2.18/glibc-2.18-hardened-inittls-nosysenter.patch
22268 -
22269 - einfo "Installing Hardened Gentoo SSP and FORTIFY_SOURCE handler"
22270 - cp -f "${FILESDIR}"/2.18/glibc-2.18-gentoo-stack_chk_fail.c \
22271 - debug/stack_chk_fail.c || die
22272 - cp -f "${FILESDIR}"/2.18/glibc-2.18-gentoo-chk_fail.c \
22273 - debug/chk_fail.c || die
22274 -
22275 - if use debug ; then
22276 - # When using Hardened Gentoo stack handler, have smashes dump core for
22277 - # analysis - debug only, as core could be an information leak
22278 - # (paranoia).
22279 - sed -i \
22280 - -e '/^CFLAGS-backtrace.c/ iCFLAGS-stack_chk_fail.c = -DSSP_SMASH_DUMPS_CORE' \
22281 - debug/Makefile \
22282 - || die "Failed to modify debug/Makefile for debug stack handler"
22283 - sed -i \
22284 - -e '/^CFLAGS-backtrace.c/ iCFLAGS-chk_fail.c = -DSSP_SMASH_DUMPS_CORE' \
22285 - debug/Makefile \
22286 - || die "Failed to modify debug/Makefile for debug fortify handler"
22287 - fi
22288 -
22289 - # Build nscd with ssp-all
22290 - sed -i \
22291 - -e 's:-fstack-protector$:-fstack-protector-all:' \
22292 - nscd/Makefile \
22293 - || die "Failed to ensure nscd builds with ssp-all"
22294 - fi
22295 -
22296 - if use rap; then
22297 - if type -p lsb_release > lsb-loc; then
22298 - local lsb_id=$(lsb_release -i)
22299 - local lsb_rel=$(lsb_release -r)
22300 - fi
22301 -
22302 - if [[ ${lsb_id} == *CentOS ]] || [[ ${lsb_id} == *RedHat* ]]; then
22303 - if [[ ${lsb_rel} == *5.6 ]]; then
22304 - elog "Your kernel is known to have vdso bug, disabling this feature"
22305 - elog "https://bugzilla.redhat.com/show_bug.cgi?id=678613"
22306 - epatch "${FILESDIR}"/${PV}/${P}-vdso-disable.patch
22307 - fi
22308 - fi
22309 - fi
22310 -}
22311 -
22312 -eblit-pkg_preinst-post() {
22313 - if [[ ${CTARGET} == arm* ]] ; then
22314 - # Backwards compat support for renaming hardfp ldsos #417287
22315 - local oldso='/lib/ld-linux.so.3'
22316 - local nldso='/lib/ld-linux-armhf.so.3'
22317 - if [[ -e ${D}${nldso} ]] ; then
22318 - if scanelf -qRyi "${ROOT}$(alt_prefix)"/*bin/ | grep -s "^${oldso}" ; then
22319 - ewarn "Symlinking old ldso (${oldso}) to new ldso (${nldso})."
22320 - ewarn "Please rebuild all packages using this old ldso as compat"
22321 - ewarn "support will be dropped in the future."
22322 - ln -s "${nldso##*/}" "${D}$(alt_prefix)${oldso}"
22323 - fi
22324 - fi
22325 - fi
22326 -}
22327
22328 diff --git a/sys-libs/glibc/metadata.xml b/sys-libs/glibc/metadata.xml
22329 deleted file mode 100644
22330 index f1f3fd9..0000000
22331 --- a/sys-libs/glibc/metadata.xml
22332 +++ /dev/null
22333 @@ -1,11 +0,0 @@
22334 -<?xml version="1.0" encoding="UTF-8"?>
22335 -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
22336 -<pkgmetadata>
22337 -<herd>toolchain</herd>
22338 -<use>
22339 - <flag name='gd'>build memusage and memusagestat tools</flag>
22340 - <flag name='nscd'>Build, and enable support for, the Name Service Cache Daemon</flag>
22341 - <flag name='suid'>Make internal pt_chown helper setuid -- not needed if using Linux and have /dev/pts mounted with gid=5</flag>
22342 - <flag name='systemtap'>enable systemtap static probe points</flag>
22343 -</use>
22344 -</pkgmetadata>