Gentoo Archives: gentoo-commits

From: "Mike Frysinger (vapier)" <vapier@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in dev-lang/python: python-2.6.8-r1.ebuild python-2.7.3-r3.ebuild python-3.2.3-r2.ebuild python-3.1.5-r1.ebuild python-3.3.0-r1.ebuild ChangeLog
Date: Tue, 26 Mar 2013 21:29:45
Message-Id: 20130326212932.54F022171D@flycatcher.gentoo.org
1 vapier 13/03/26 21:29:32
2
3 Modified: python-2.6.8-r1.ebuild python-2.7.3-r3.ebuild
4 python-3.2.3-r2.ebuild python-3.1.5-r1.ebuild
5 python-3.3.0-r1.ebuild ChangeLog
6 Log:
7 When cross-compiling, run the configures in parallel for a nice speed up #462264 by SpanKY.
8
9 (Portage version: 2.2.0_alpha169/cvs/Linux x86_64, signed Manifest commit with key FB7C4156)
10
11 Revision Changes Path
12 1.14 dev-lang/python/python-2.6.8-r1.ebuild
13
14 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/python/python-2.6.8-r1.ebuild?rev=1.14&view=markup
15 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/python/python-2.6.8-r1.ebuild?rev=1.14&content-type=text/plain
16 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/python/python-2.6.8-r1.ebuild?r1=1.13&r2=1.14
17
18 Index: python-2.6.8-r1.ebuild
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/dev-lang/python/python-2.6.8-r1.ebuild,v
21 retrieving revision 1.13
22 retrieving revision 1.14
23 diff -u -r1.13 -r1.14
24 --- python-2.6.8-r1.ebuild 23 Mar 2013 13:28:36 -0000 1.13
25 +++ python-2.6.8-r1.ebuild 26 Mar 2013 21:29:32 -0000 1.14
26 @@ -1,12 +1,12 @@
27 # Copyright 1999-2013 Gentoo Foundation
28 # Distributed under the terms of the GNU General Public License v2
29 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-2.6.8-r1.ebuild,v 1.13 2013/03/23 13:28:36 ago Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-2.6.8-r1.ebuild,v 1.14 2013/03/26 21:29:32 vapier Exp $
31
32 EAPI="2"
33 WANT_AUTOMAKE="none"
34 WANT_LIBTOOL="none"
35
36 -inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs
37 +inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs multiprocessing
38
39 MY_P="Python-${PV}"
40 PATCHSET_REVISION="0"
41 @@ -151,17 +151,21 @@
42 use hardened && replace-flags -O3 -O2
43 fi
44
45 + # Run the configure scripts in parallel.
46 + multijob_init
47 +
48 + mkdir -p "${WORKDIR}"/{${CBUILD},${CHOST}}
49 +
50 if tc-is-cross-compiler; then
51 - OPT="-O1" CFLAGS="" LDFLAGS="" CC="" \
52 - ./configure --{build,host}=${CBUILD} || die "cross-configure failed"
53 - emake python Parser/pgen || die "cross-make failed"
54 - mv python hostpython
55 - mv Parser/pgen Parser/hostpgen
56 - make distclean
57 - sed -i \
58 - -e "/^HOSTPYTHON/s:=.*:=./hostpython:" \
59 - -e "/^HOSTPGEN/s:=.*:=./Parser/hostpgen:" \
60 - Makefile.pre.in || die "sed failed"
61 + (
62 + multijob_child_init
63 + cd "${WORKDIR}"/${CBUILD} >/dev/null
64 + OPT="-O1" CFLAGS="" CPPFLAGS="" LDFLAGS="" CC="" \
65 + "${S}"/configure \
66 + --{build,host}=${CBUILD} \
67 + || die "cross-configure failed"
68 + ) &
69 + multijob_post_fork
70 fi
71
72 # Export CXX so it ends up in /usr/lib/python2.X/config/Makefile.
73 @@ -175,7 +179,9 @@
74 # Please query BSD team before removing this!
75 append-ldflags "-L."
76
77 - OPT="" econf \
78 + cd "${WORKDIR}"/${CHOST}
79 + ECONF_SOURCE=${S} OPT="" \
80 + econf \
81 --with-fpectl \
82 --enable-shared \
83 $(use_enable ipv6) \
84 @@ -185,9 +191,41 @@
85 --mandir='${prefix}/share/man' \
86 --with-libc="" \
87 --with-system-ffi
88 +
89 + if tc-is-cross-compiler; then
90 + # Modify the Makefile.pre so we don't regen for the host/ one.
91 + # We need to link the host python programs into $PWD and run
92 + # them from here because the distutils sysconfig module will
93 + # parse Makefile/etc... from argv[0], and we need it to pick
94 + # up the target settings, not the host ones.
95 + sed -i \
96 + -e '1iHOSTPYTHONPATH = ./hostpythonpath:' \
97 + -e '/^HOSTPYTHON/s:=.*:= ./hostpython:' \
98 + -e '/^HOSTPGEN/s:=.*:= ./Parser/hostpgen:' \
99 + Makefile{.pre,} || die "sed failed"
100 + fi
101 +
102 + multijob_finish
103 }
104
105 src_compile() {
106 + if tc-is-cross-compiler; then
107 + cd "${WORKDIR}"/${CBUILD}
108 + # Disable as many modules as possible -- but we need a few to install.
109 + PYTHON_DISABLE_MODULES=$(
110 + sed -n "/Extension('/{s:^.*Extension('::;s:'.*::;p}" "${S}"/setup.py | \
111 + egrep -v '(unicodedata|time|cStringIO|_struct|binascii)'
112 + ) \
113 + PTHON_DISABLE_SSL="1" \
114 + SYSROOT= \
115 + emake || die "cross-make failed"
116 + # See comment in src_configure about these.
117 + ln python ../${CHOST}/hostpython || die
118 + ln Parser/pgen ../${CHOST}/Parser/hostpgen || die
119 + ln -s ../${CBUILD}/build/lib.*/ ../${CHOST}/hostpythonpath || die
120 + fi
121 +
122 + cd "${WORKDIR}"/${CHOST}
123 default
124
125 # Work around bug 329499. See also bug 413751.
126 @@ -201,11 +239,13 @@
127 return
128 fi
129
130 + cd "${WORKDIR}"/${CHOST}
131 +
132 # Skip failing tests.
133 local skipped_tests="distutils tcl"
134
135 for test in ${skipped_tests}; do
136 - mv Lib/test/test_${test}.py "${T}"
137 + mv "${S}"/Lib/test/test_${test}.py "${T}"
138 done
139
140 # Rerun failed tests in verbose mode (regrtest -w).
141 @@ -213,7 +253,7 @@
142 local result="$?"
143
144 for test in ${skipped_tests}; do
145 - mv "${T}/test_${test}.py" Lib/test
146 + mv "${T}/test_${test}.py" "${S}"/Lib/test
147 done
148
149 elog "The following tests have been skipped:"
150 @@ -237,6 +277,7 @@
151
152 local libdir=${ED}/usr/$(get_libdir)/python${SLOT}
153
154 + cd "${WORKDIR}"/${CHOST}
155 emake DESTDIR="${D}" altinstall maninstall || die "emake altinstall maninstall failed"
156
157 # Backwards compat with Gentoo divergence.
158 @@ -261,11 +302,11 @@
159 use threads || rm -fr "${libdir}/multiprocessing"
160 use wininst || rm -f "${libdir})/distutils/command/"wininst-*.exe
161
162 - dodoc Misc/{ACKS,HISTORY,NEWS} || die "dodoc failed"
163 + dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS} || die "dodoc failed"
164
165 if use examples; then
166 insinto /usr/share/doc/${PF}/examples
167 - doins -r Tools || die "doins failed"
168 + doins -r "${S}"/Tools || die "doins failed"
169 fi
170
171 newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT} || die "newconfd failed"
172
173
174
175 1.16 dev-lang/python/python-2.7.3-r3.ebuild
176
177 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/python/python-2.7.3-r3.ebuild?rev=1.16&view=markup
178 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/python/python-2.7.3-r3.ebuild?rev=1.16&content-type=text/plain
179 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/python/python-2.7.3-r3.ebuild?r1=1.15&r2=1.16
180
181 Index: python-2.7.3-r3.ebuild
182 ===================================================================
183 RCS file: /var/cvsroot/gentoo-x86/dev-lang/python/python-2.7.3-r3.ebuild,v
184 retrieving revision 1.15
185 retrieving revision 1.16
186 diff -u -r1.15 -r1.16
187 --- python-2.7.3-r3.ebuild 23 Mar 2013 13:28:36 -0000 1.15
188 +++ python-2.7.3-r3.ebuild 26 Mar 2013 21:29:32 -0000 1.16
189 @@ -1,12 +1,12 @@
190 # Copyright 1999-2013 Gentoo Foundation
191 # Distributed under the terms of the GNU General Public License v2
192 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-2.7.3-r3.ebuild,v 1.15 2013/03/23 13:28:36 ago Exp $
193 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-2.7.3-r3.ebuild,v 1.16 2013/03/26 21:29:32 vapier Exp $
194
195 EAPI="2"
196 WANT_AUTOMAKE="none"
197 WANT_LIBTOOL="none"
198
199 -inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs
200 +inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs multiprocessing
201
202 MY_P="Python-${PV}"
203 PATCHSET_REVISION="1"
204 @@ -154,17 +154,21 @@
205 use hardened && replace-flags -O3 -O2
206 fi
207
208 + # Run the configure scripts in parallel.
209 + multijob_init
210 +
211 + mkdir -p "${WORKDIR}"/{${CBUILD},${CHOST}}
212 +
213 if tc-is-cross-compiler; then
214 - OPT="-O1" CFLAGS="" LDFLAGS="" CC="" \
215 - ./configure --{build,host}=${CBUILD} || die "cross-configure failed"
216 - emake python Parser/pgen || die "cross-make failed"
217 - mv python hostpython
218 - mv Parser/pgen Parser/hostpgen
219 - make distclean
220 - sed -i \
221 - -e "/^HOSTPYTHON/s:=.*:=./hostpython:" \
222 - -e "/^HOSTPGEN/s:=.*:=./Parser/hostpgen:" \
223 - Makefile.pre.in || die "sed failed"
224 + (
225 + multijob_child_init
226 + cd "${WORKDIR}"/${CBUILD} >/dev/null
227 + OPT="-O1" CFLAGS="" CPPFLAGS="" LDFLAGS="" CC="" \
228 + "${S}"/configure \
229 + --{build,host}=${CBUILD} \
230 + || die "cross-configure failed"
231 + ) &
232 + multijob_post_fork
233
234 # The configure script assumes it's buggy when cross-compiling.
235 export ac_cv_buggy_getaddrinfo=no
236 @@ -190,7 +194,9 @@
237 dbmliborder+="${dbmliborder:+:}bdb"
238 fi
239
240 - OPT="" econf \
241 + cd "${WORKDIR}"/${CHOST}
242 + ECONF_SOURCE=${S} OPT="" \
243 + econf \
244 --with-fpectl \
245 --enable-shared \
246 $(use_enable ipv6) \
247 @@ -203,9 +209,41 @@
248 --enable-loadable-sqlite-extensions \
249 --with-system-expat \
250 --with-system-ffi
251 +
252 + if tc-is-cross-compiler; then
253 + # Modify the Makefile.pre so we don't regen for the host/ one.
254 + # We need to link the host python programs into $PWD and run
255 + # them from here because the distutils sysconfig module will
256 + # parse Makefile/etc... from argv[0], and we need it to pick
257 + # up the target settings, not the host ones.
258 + sed -i \
259 + -e '1iHOSTPYTHONPATH = ./hostpythonpath:' \
260 + -e '/^HOSTPYTHON/s:=.*:= ./hostpython:' \
261 + -e '/^HOSTPGEN/s:=.*:= ./Parser/hostpgen:' \
262 + Makefile{.pre,} || die "sed failed"
263 + fi
264 +
265 + multijob_finish
266 }
267
268 src_compile() {
269 + if tc-is-cross-compiler; then
270 + cd "${WORKDIR}"/${CBUILD}
271 + # Disable as many modules as possible -- but we need a few to install.
272 + PYTHON_DISABLE_MODULES=$(
273 + sed -n "/Extension('/{s:^.*Extension('::;s:'.*::;p}" "${S}"/setup.py | \
274 + egrep -v '(unicodedata|time|cStringIO|_struct|binascii)'
275 + ) \
276 + PTHON_DISABLE_SSL="1" \
277 + SYSROOT= \
278 + emake || die "cross-make failed"
279 + # See comment in src_configure about these.
280 + ln python ../${CHOST}/hostpython || die
281 + ln Parser/pgen ../${CHOST}/Parser/hostpgen || die
282 + ln -s ../${CBUILD}/build/lib.*/ ../${CHOST}/hostpythonpath || die
283 + fi
284 +
285 + cd "${WORKDIR}"/${CHOST}
286 default
287
288 # Work around bug 329499. See also bug 413751.
289 @@ -219,11 +257,13 @@
290 return
291 fi
292
293 + cd "${WORKDIR}"/${CHOST}
294 +
295 # Skip failing tests.
296 local skipped_tests="distutils gdb"
297
298 for test in ${skipped_tests}; do
299 - mv Lib/test/test_${test}.py "${T}"
300 + mv "${S}"/Lib/test/test_${test}.py "${T}"
301 done
302
303 # Rerun failed tests in verbose mode (regrtest -w).
304 @@ -231,7 +271,7 @@
305 local result="$?"
306
307 for test in ${skipped_tests}; do
308 - mv "${T}/test_${test}.py" Lib/test
309 + mv "${T}/test_${test}.py" "${S}"/Lib/test
310 done
311
312 elog "The following tests have been skipped:"
313 @@ -255,6 +295,7 @@
314
315 local libdir=${ED}/usr/$(get_libdir)/python${SLOT}
316
317 + cd "${WORKDIR}"/${CHOST}
318 emake DESTDIR="${D}" altinstall maninstall || die "emake altinstall maninstall failed"
319
320 sed -e "s/\(LDFLAGS=\).*/\1/" -i "${libdir}/config/Makefile" || die "sed failed"
321 @@ -280,16 +321,16 @@
322 use threads || rm -fr "${libdir}/multiprocessing"
323 use wininst || rm -f "${libdir})/distutils/command/"wininst-*.exe
324
325 - dodoc Misc/{ACKS,HISTORY,NEWS} || die "dodoc failed"
326 + dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS} || die "dodoc failed"
327
328 if use examples; then
329 insinto /usr/share/doc/${PF}/examples
330 - doins -r Tools || die "doins failed"
331 + doins -r "${S}"/Tools || die "doins failed"
332 fi
333 insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
334 local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
335 emake --no-print-directory -s -f - 2>/dev/null)
336 - newins Tools/gdb/libpython.py "${libname}"-gdb.py
337 + newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
338
339 newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT} || die "newconfd failed"
340 newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT} || die "newinitd failed"
341
342
343
344 1.17 dev-lang/python/python-3.2.3-r2.ebuild
345
346 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/python/python-3.2.3-r2.ebuild?rev=1.17&view=markup
347 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/python/python-3.2.3-r2.ebuild?rev=1.17&content-type=text/plain
348 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/python/python-3.2.3-r2.ebuild?r1=1.16&r2=1.17
349
350 Index: python-3.2.3-r2.ebuild
351 ===================================================================
352 RCS file: /var/cvsroot/gentoo-x86/dev-lang/python/python-3.2.3-r2.ebuild,v
353 retrieving revision 1.16
354 retrieving revision 1.17
355 diff -u -r1.16 -r1.17
356 --- python-3.2.3-r2.ebuild 23 Mar 2013 13:28:36 -0000 1.16
357 +++ python-3.2.3-r2.ebuild 26 Mar 2013 21:29:32 -0000 1.17
358 @@ -1,12 +1,12 @@
359 # Copyright 1999-2013 Gentoo Foundation
360 # Distributed under the terms of the GNU General Public License v2
361 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-3.2.3-r2.ebuild,v 1.16 2013/03/23 13:28:36 ago Exp $
362 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-3.2.3-r2.ebuild,v 1.17 2013/03/26 21:29:32 vapier Exp $
363
364 EAPI="3"
365 WANT_AUTOMAKE="none"
366 WANT_LIBTOOL="none"
367
368 -inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs
369 +inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs multiprocessing
370
371 MY_P="Python-${PV}"
372 PATCHSET_REVISION="0"
373 @@ -137,17 +137,21 @@
374 use hardened && replace-flags -O3 -O2
375 fi
376
377 + # Run the configure scripts in parallel.
378 + multijob_init
379 +
380 + mkdir -p "${WORKDIR}"/{${CBUILD},${CHOST}}
381 +
382 if tc-is-cross-compiler; then
383 - OPT="-O1" CFLAGS="" LDFLAGS="" CC="" \
384 - ./configure --{build,host}=${CBUILD} || die "cross-configure failed"
385 - emake python Parser/pgen || die "cross-make failed"
386 - mv python hostpython
387 - mv Parser/pgen Parser/hostpgen
388 - make distclean
389 - sed -i \
390 - -e "/^HOSTPYTHON/s:=.*:=./hostpython:" \
391 - -e "/^HOSTPGEN/s:=.*:=./Parser/hostpgen:" \
392 - Makefile.pre.in || die "sed failed"
393 + (
394 + multijob_child_init
395 + cd "${WORKDIR}"/${CBUILD} >/dev/null
396 + OPT="-O1" CFLAGS="" CPPFLAGS="" LDFLAGS="" CC="" \
397 + "${S}"/configure \
398 + --{build,host}=${CBUILD} \
399 + || die "cross-configure failed"
400 + ) &
401 + multijob_post_fork
402
403 # The configure script assumes it's buggy when cross-compiling.
404 export ac_cv_buggy_getaddrinfo=no
405 @@ -170,7 +174,9 @@
406 dbmliborder+="${dbmliborder:+:}gdbm"
407 fi
408
409 - OPT="" econf \
410 + cd "${WORKDIR}"/${CHOST}
411 + ECONF_SOURCE=${S} OPT="" \
412 + econf \
413 --with-fpectl \
414 --enable-shared \
415 $(use_enable ipv6) \
416 @@ -184,9 +190,41 @@
417 --enable-loadable-sqlite-extensions \
418 --with-system-expat \
419 --with-system-ffi
420 +
421 + if tc-is-cross-compiler; then
422 + # Modify the Makefile.pre so we don't regen for the host/ one.
423 + # We need to link the host python programs into $PWD and run
424 + # them from here because the distutils sysconfig module will
425 + # parse Makefile/etc... from argv[0], and we need it to pick
426 + # up the target settings, not the host ones.
427 + sed -i \
428 + -e '1iHOSTPYTHONPATH = ./hostpythonpath:' \
429 + -e '/^HOSTPYTHON/s:=.*:= ./hostpython:' \
430 + -e '/^HOSTPGEN/s:=.*:= ./Parser/hostpgen:' \
431 + Makefile{.pre,} || die "sed failed"
432 + fi
433 +
434 + multijob_finish
435 }
436
437 src_compile() {
438 + if tc-is-cross-compiler; then
439 + cd "${WORKDIR}"/${CBUILD}
440 + # Disable as many modules as possible -- but we need a few to install.
441 + PYTHON_DISABLE_MODULES=$(
442 + sed -n "/Extension('/{s:^.*Extension('::;s:'.*::;p}" "${S}"/setup.py | \
443 + egrep -v '(unicodedata|time|cStringIO|_struct|binascii)'
444 + ) \
445 + PTHON_DISABLE_SSL="1" \
446 + SYSROOT= \
447 + emake || die "cross-make failed"
448 + # See comment in src_configure about these.
449 + ln python ../${CHOST}/hostpython || die
450 + ln Parser/pgen ../${CHOST}/Parser/hostpgen || die
451 + ln -s ../${CBUILD}/build/lib.*/ ../${CHOST}/hostpythonpath || die
452 + fi
453 +
454 + cd "${WORKDIR}"/${CHOST}
455 emake CPPFLAGS="" CFLAGS="" LDFLAGS="" || die "emake failed"
456
457 # Work around bug 329499. See also bug 413751.
458 @@ -200,11 +238,13 @@
459 return
460 fi
461
462 + cd "${WORKDIR}"/${CHOST}
463 +
464 # Skip failing tests.
465 local skipped_tests="gdb"
466
467 for test in ${skipped_tests}; do
468 - mv Lib/test/test_${test}.py "${T}"
469 + mv "${S}"/Lib/test/test_${test}.py "${T}"
470 done
471
472 # Rerun failed tests in verbose mode (regrtest -w).
473 @@ -212,7 +252,7 @@
474 local result="$?"
475
476 for test in ${skipped_tests}; do
477 - mv "${T}/test_${test}.py" Lib/test
478 + mv "${T}/test_${test}.py" "${S}"/Lib/test
479 done
480
481 elog "The following tests have been skipped:"
482 @@ -232,6 +272,7 @@
483 src_install() {
484 local libdir=${ED}/usr/$(get_libdir)/python${SLOT}
485
486 + cd "${WORKDIR}"/${CHOST}
487 emake DESTDIR="${D}" altinstall || die "emake altinstall failed"
488
489 sed \
490 @@ -256,17 +297,17 @@
491 use threads || rm -fr "${libdir}/multiprocessing"
492 use wininst || rm -f "${libdir}/distutils/command/"wininst-*.exe
493
494 - dodoc Misc/{ACKS,HISTORY,NEWS} || die "dodoc failed"
495 + dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS} || die "dodoc failed"
496
497 if use examples; then
498 insinto /usr/share/doc/${PF}/examples
499 - find Tools -name __pycache__ -print0 | xargs -0 rm -fr
500 - doins -r Tools || die "doins failed"
501 + find "${S}"/Tools -name __pycache__ -print0 | xargs -0 rm -fr
502 + doins -r "${S}"/Tools || die "doins failed"
503 fi
504 insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
505 local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
506 emake --no-print-directory -s -f - 2>/dev/null)
507 - newins Tools/gdb/libpython.py "${libname}"-gdb.py
508 + newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
509
510 newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT} || die "newconfd failed"
511 newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT} || die "newinitd failed"
512
513
514
515 1.14 dev-lang/python/python-3.1.5-r1.ebuild
516
517 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/python/python-3.1.5-r1.ebuild?rev=1.14&view=markup
518 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/python/python-3.1.5-r1.ebuild?rev=1.14&content-type=text/plain
519 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/python/python-3.1.5-r1.ebuild?r1=1.13&r2=1.14
520
521 Index: python-3.1.5-r1.ebuild
522 ===================================================================
523 RCS file: /var/cvsroot/gentoo-x86/dev-lang/python/python-3.1.5-r1.ebuild,v
524 retrieving revision 1.13
525 retrieving revision 1.14
526 diff -u -r1.13 -r1.14
527 --- python-3.1.5-r1.ebuild 23 Mar 2013 13:28:36 -0000 1.13
528 +++ python-3.1.5-r1.ebuild 26 Mar 2013 21:29:32 -0000 1.14
529 @@ -1,12 +1,12 @@
530 # Copyright 1999-2013 Gentoo Foundation
531 # Distributed under the terms of the GNU General Public License v2
532 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-3.1.5-r1.ebuild,v 1.13 2013/03/23 13:28:36 ago Exp $
533 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-3.1.5-r1.ebuild,v 1.14 2013/03/26 21:29:32 vapier Exp $
534
535 EAPI="3"
536 WANT_AUTOMAKE="none"
537 WANT_LIBTOOL="none"
538
539 -inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs
540 +inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs multiprocessing
541
542 MY_P="Python-${PV}"
543 PATCHSET_REVISION="0"
544 @@ -123,17 +123,21 @@
545 use hardened && replace-flags -O3 -O2
546 fi
547
548 + # Run the configure scripts in parallel.
549 + multijob_init
550 +
551 + mkdir -p "${WORKDIR}"/{${CBUILD},${CHOST}}
552 +
553 if tc-is-cross-compiler; then
554 - OPT="-O1" CFLAGS="" LDFLAGS="" CC="" \
555 - ./configure --{build,host}=${CBUILD} || die "cross-configure failed"
556 - emake python Parser/pgen || die "cross-make failed"
557 - mv python hostpython
558 - mv Parser/pgen Parser/hostpgen
559 - make distclean
560 - sed -i \
561 - -e "/^HOSTPYTHON/s:=.*:=./hostpython:" \
562 - -e "/^HOSTPGEN/s:=.*:=./Parser/hostpgen:" \
563 - Makefile.pre.in || die "sed failed"
564 + (
565 + multijob_child_init
566 + cd "${WORKDIR}"/${CBUILD} >/dev/null
567 + OPT="-O1" CFLAGS="" CPPFLAGS="" LDFLAGS="" CC="" \
568 + "${S}"/configure \
569 + --{build,host}=${CBUILD} \
570 + || die "cross-configure failed"
571 + ) &
572 + multijob_post_fork
573 fi
574
575 # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
576 @@ -152,7 +156,9 @@
577 dbmliborder+="${dbmliborder:+:}gdbm"
578 fi
579
580 - OPT="" econf \
581 + cd "${WORKDIR}"/${CHOST}
582 + ECONF_SOURCE=${S} OPT="" \
583 + econf \
584 --with-fpectl \
585 --enable-shared \
586 $(use_enable ipv6) \
587 @@ -164,9 +170,41 @@
588 --with-dbmliborder="${dbmliborder}" \
589 --with-libc="" \
590 --with-system-ffi
591 +
592 + if tc-is-cross-compiler; then
593 + # Modify the Makefile.pre so we don't regen for the host/ one.
594 + # We need to link the host python programs into $PWD and run
595 + # them from here because the distutils sysconfig module will
596 + # parse Makefile/etc... from argv[0], and we need it to pick
597 + # up the target settings, not the host ones.
598 + sed -i \
599 + -e '1iHOSTPYTHONPATH = ./hostpythonpath:' \
600 + -e '/^HOSTPYTHON/s:=.*:= ./hostpython:' \
601 + -e '/^HOSTPGEN/s:=.*:= ./Parser/hostpgen:' \
602 + Makefile{.pre,} || die "sed failed"
603 + fi
604 +
605 + multijob_finish
606 }
607
608 src_compile() {
609 + if tc-is-cross-compiler; then
610 + cd "${WORKDIR}"/${CBUILD}
611 + # Disable as many modules as possible -- but we need a few to install.
612 + PYTHON_DISABLE_MODULES=$(
613 + sed -n "/Extension('/{s:^.*Extension('::;s:'.*::;p}" "${S}"/setup.py | \
614 + egrep -v '(unicodedata|time|cStringIO|_struct|binascii)'
615 + ) \
616 + PTHON_DISABLE_SSL="1" \
617 + SYSROOT= \
618 + emake || die "cross-make failed"
619 + # See comment in src_configure about these.
620 + ln python ../${CHOST}/hostpython || die
621 + ln Parser/pgen ../${CHOST}/Parser/hostpgen || die
622 + ln -s ../${CBUILD}/build/lib.*/ ../${CHOST}/hostpythonpath || die
623 + fi
624 +
625 + cd "${WORKDIR}"/${CHOST}
626 default
627
628 # Work around bug 329499. See also bug 413751.
629 @@ -185,11 +223,13 @@
630 return
631 fi
632
633 + cd "${WORKDIR}"/${CHOST}
634 +
635 # Skip failing tests.
636 local skipped_tests="distutils"
637
638 for test in ${skipped_tests}; do
639 - mv Lib/test/test_${test}.py "${T}"
640 + mv "${S}"/Lib/test/test_${test}.py "${T}"
641 done
642
643 # Rerun failed tests in verbose mode (regrtest -w).
644 @@ -197,7 +237,7 @@
645 local result="$?"
646
647 for test in ${skipped_tests}; do
648 - mv "${T}/test_${test}.py" Lib/test
649 + mv "${T}/test_${test}.py" "${S}"/Lib/test
650 done
651
652 elog "The following tests have been skipped:"
653 @@ -217,6 +257,7 @@
654 src_install() {
655 local libdir=${ED}/usr/$(get_libdir)/python${SLOT}
656
657 + cd "${WORKDIR}"/${CHOST}
658 emake DESTDIR="${D}" altinstall || die "emake altinstall failed"
659
660 # Backwards compat with Gentoo divergence.
661 @@ -239,11 +280,11 @@
662 use threads || rm -fr "${libdir}/multiprocessing"
663 use wininst || rm -f "${libdir}/distutils/command/"wininst-*.exe
664
665 - dodoc Misc/{ACKS,HISTORY,NEWS} || die "dodoc failed"
666 + dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS} || die "dodoc failed"
667
668 if use examples; then
669 insinto /usr/share/doc/${PF}/examples
670 - doins -r Tools || die "doins failed"
671 + doins -r "${S}"/Tools || die "doins failed"
672 fi
673
674 newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT} || die "newconfd failed"
675
676
677
678 1.11 dev-lang/python/python-3.3.0-r1.ebuild
679
680 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/python/python-3.3.0-r1.ebuild?rev=1.11&view=markup
681 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/python/python-3.3.0-r1.ebuild?rev=1.11&content-type=text/plain
682 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/python/python-3.3.0-r1.ebuild?r1=1.10&r2=1.11
683
684 Index: python-3.3.0-r1.ebuild
685 ===================================================================
686 RCS file: /var/cvsroot/gentoo-x86/dev-lang/python/python-3.3.0-r1.ebuild,v
687 retrieving revision 1.10
688 retrieving revision 1.11
689 diff -u -r1.10 -r1.11
690 --- python-3.3.0-r1.ebuild 24 Mar 2013 01:41:31 -0000 1.10
691 +++ python-3.3.0-r1.ebuild 26 Mar 2013 21:29:32 -0000 1.11
692 @@ -1,12 +1,12 @@
693 # Copyright 1999-2013 Gentoo Foundation
694 # Distributed under the terms of the GNU General Public License v2
695 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-3.3.0-r1.ebuild,v 1.10 2013/03/24 01:41:31 floppym Exp $
696 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/python-3.3.0-r1.ebuild,v 1.11 2013/03/26 21:29:32 vapier Exp $
697
698 EAPI="3"
699 WANT_AUTOMAKE="none"
700 WANT_LIBTOOL="none"
701
702 -inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs
703 +inherit autotools eutils flag-o-matic multilib pax-utils python-utils-r1 toolchain-funcs multiprocessing
704
705 MY_P="Python-${PV}"
706 PATCHSET_REVISION="1"
707 @@ -129,17 +129,21 @@
708 use hardened && replace-flags -O3 -O2
709 fi
710
711 + # Run the configure scripts in parallel.
712 + multijob_init
713 +
714 + mkdir -p "${WORKDIR}"/{${CBUILD},${CHOST}}
715 +
716 if tc-is-cross-compiler; then
717 - OPT="-O1" CFLAGS="" LDFLAGS="" CC="" \
718 - ./configure --{build,host}=${CBUILD} || die "cross-configure failed"
719 - emake python Parser/pgen || die "cross-make failed"
720 - mv python hostpython
721 - mv Parser/pgen Parser/hostpgen
722 - make distclean
723 - sed -i \
724 - -e "/^HOSTPYTHON/s:=.*:=./hostpython:" \
725 - -e "/^HOSTPGEN/s:=.*:=./Parser/hostpgen:" \
726 - Makefile.pre.in || die "sed failed"
727 + (
728 + multijob_child_init
729 + cd "${WORKDIR}"/${CBUILD} >/dev/null
730 + OPT="-O1" CFLAGS="" CPPFLAGS="" LDFLAGS="" CC="" \
731 + "${S}"/configure \
732 + --{build,host}=${CBUILD} \
733 + || die "cross-configure failed"
734 + ) &
735 + multijob_post_fork
736
737 # The configure script assumes it's buggy when cross-compiling.
738 export ac_cv_buggy_getaddrinfo=no
739 @@ -162,7 +166,9 @@
740 dbmliborder+="${dbmliborder:+:}gdbm"
741 fi
742
743 - OPT="" econf \
744 + cd "${WORKDIR}"/${CHOST}
745 + ECONF_SOURCE=${S} OPT="" \
746 + econf \
747 --with-fpectl \
748 --enable-shared \
749 $(use_enable ipv6) \
750 @@ -175,9 +181,41 @@
751 --enable-loadable-sqlite-extensions \
752 --with-system-expat \
753 --with-system-ffi
754 +
755 + if tc-is-cross-compiler; then
756 + # Modify the Makefile.pre so we don't regen for the host/ one.
757 + # We need to link the host python programs into $PWD and run
758 + # them from here because the distutils sysconfig module will
759 + # parse Makefile/etc... from argv[0], and we need it to pick
760 + # up the target settings, not the host ones.
761 + sed -i \
762 + -e '1iHOSTPYTHONPATH = ./hostpythonpath:' \
763 + -e '/^HOSTPYTHON/s:=.*:= ./hostpython:' \
764 + -e '/^HOSTPGEN/s:=.*:= ./Parser/hostpgen:' \
765 + Makefile{.pre,} || die "sed failed"
766 + fi
767 +
768 + multijob_finish
769 }
770
771 src_compile() {
772 + if tc-is-cross-compiler; then
773 + cd "${WORKDIR}"/${CBUILD}
774 + # Disable as many modules as possible -- but we need a few to install.
775 + PYTHON_DISABLE_MODULES=$(
776 + sed -n "/Extension('/{s:^.*Extension('::;s:'.*::;p}" "${S}"/setup.py | \
777 + egrep -v '(unicodedata|time|cStringIO|_struct|binascii)'
778 + ) \
779 + PTHON_DISABLE_SSL="1" \
780 + SYSROOT= \
781 + emake || die "cross-make failed"
782 + # See comment in src_configure about these.
783 + ln python ../${CHOST}/hostpython || die
784 + ln Parser/pgen ../${CHOST}/Parser/hostpgen || die
785 + ln -s ../${CBUILD}/build/lib.*/ ../${CHOST}/hostpythonpath || die
786 + fi
787 +
788 + cd "${WORKDIR}"/${CHOST}
789 emake CPPFLAGS="" CFLAGS="" LDFLAGS="" || die "emake failed"
790
791 # Work around bug 329499. See also bug 413751.
792 @@ -191,11 +229,13 @@
793 return
794 fi
795
796 + cd "${WORKDIR}"/${CHOST}
797 +
798 # Skip failing tests.
799 local skipped_tests="gdb"
800
801 for test in ${skipped_tests}; do
802 - mv Lib/test/test_${test}.py "${T}"
803 + mv "${S}"/Lib/test/test_${test}.py "${T}"
804 done
805
806 # Rerun failed tests in verbose mode (regrtest -w).
807 @@ -203,7 +243,7 @@
808 local result="$?"
809
810 for test in ${skipped_tests}; do
811 - mv "${T}/test_${test}.py" Lib/test
812 + mv "${T}/test_${test}.py" "${S}"/Lib/test
813 done
814
815 elog "The following tests have been skipped:"
816 @@ -223,6 +263,7 @@
817 src_install() {
818 local libdir=${ED}/usr/$(get_libdir)/python${SLOT}
819
820 + cd "${WORKDIR}"/${CHOST}
821 emake DESTDIR="${D}" altinstall || die "emake altinstall failed"
822
823 sed \
824 @@ -247,17 +288,17 @@
825 use threads || rm -fr "${libdir}/multiprocessing"
826 use wininst || rm -f "${libdir}/distutils/command/"wininst-*.exe
827
828 - dodoc Misc/{ACKS,HISTORY,NEWS} || die "dodoc failed"
829 + dodoc "${S}"/Misc/{ACKS,HISTORY,NEWS} || die "dodoc failed"
830
831 if use examples; then
832 insinto /usr/share/doc/${PF}/examples
833 - find Tools -name __pycache__ -print0 | xargs -0 rm -fr
834 - doins -r Tools || die "doins failed"
835 + find "${S}"/Tools -name __pycache__ -print0 | xargs -0 rm -fr
836 + doins -r "${S}"/Tools || die "doins failed"
837 fi
838 insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
839 local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
840 emake --no-print-directory -s -f - 2>/dev/null)
841 - newins Tools/gdb/libpython.py "${libname}"-gdb.py
842 + newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
843
844 newconfd "${FILESDIR}/pydoc.conf" pydoc-${SLOT} || die "newconfd failed"
845 newinitd "${FILESDIR}/pydoc.init" pydoc-${SLOT} || die "newinitd failed"
846
847
848
849 1.640 dev-lang/python/ChangeLog
850
851 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/python/ChangeLog?rev=1.640&view=markup
852 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/python/ChangeLog?rev=1.640&content-type=text/plain
853 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/python/ChangeLog?r1=1.639&r2=1.640
854
855 Index: ChangeLog
856 ===================================================================
857 RCS file: /var/cvsroot/gentoo-x86/dev-lang/python/ChangeLog,v
858 retrieving revision 1.639
859 retrieving revision 1.640
860 diff -u -r1.639 -r1.640
861 --- ChangeLog 24 Mar 2013 01:41:31 -0000 1.639
862 +++ ChangeLog 26 Mar 2013 21:29:32 -0000 1.640
863 @@ -1,6 +1,12 @@
864 # ChangeLog for dev-lang/python
865 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
866 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/ChangeLog,v 1.639 2013/03/24 01:41:31 floppym Exp $
867 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/python/ChangeLog,v 1.640 2013/03/26 21:29:32 vapier Exp $
868 +
869 + 26 Mar 2013; Mike Frysinger <vapier@g.o> python-2.6.8-r1.ebuild,
870 + python-2.7.3-r3.ebuild, python-3.1.5-r1.ebuild, python-3.2.3-r2.ebuild,
871 + python-3.3.0-r1.ebuild:
872 + When cross-compiling, run the configures in parallel for a nice speed up
873 + #462264 by SpanKY.
874
875 24 Mar 2013; Mike Gilbert <floppym@g.o> python-3.3.0-r1.ebuild,
876 python-3.3.0.ebuild: