Gentoo Archives: gentoo-commits

From: "Michał Górny" <mgorny@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] dev/mgorny:master commit in: dev-python/pypy-bin/, mail-client/claws-mail-gkr/, dev-python/pypy-bin/files/, ...
Date: Sun, 30 Mar 2014 13:19:49
Message-Id: 1396185174.f5610b298a1e8e51cfb74c5adaefdda14be90bfa.mgorny@gentoo
1 commit: f5610b298a1e8e51cfb74c5adaefdda14be90bfa
2 Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
3 AuthorDate: Sun Mar 30 13:12:54 2014 +0000
4 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
5 CommitDate: Sun Mar 30 13:12:54 2014 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=dev/mgorny.git;a=commit;h=f5610b29
7
8 dev-cpp/pimplxx, dev-python/pypy-bin, mail-client/claws-mail-gkr: Drop old.
9
10 ---
11 dev-cpp/pimplxx/metadata.xml | 15 -
12 dev-cpp/pimplxx/pimplxx-9999.ebuild | 50 ---
13 dev-python/pypy-bin/Manifest | 16 -
14 ...ils-fix_handling_of_executables_and_flags.patch | 391 ---------------------
15 ....UnixCCompiler.runtime_library_dir_option.patch | 11 -
16 ...-get_python_lib_standard_lib-04ea518e5b71.patch | 24 --
17 .../files/1.9-getargs-freelist-c26dc70ee340.patch | 212 -----------
18 .../files/1.9-more-ignored-ops-146ddf82a279.patch | 25 --
19 .../files/1.9-more-ignored-ops-a9a8faa76bca.patch | 32 --
20 .../files/1.9-no-bytecode-4151f9c406b6.patch | 27 --
21 dev-python/pypy-bin/files/1.9-no-static-hack.patch | 30 --
22 ...buffer-release-double-decref-4ec2a5b49386.patch | 29 --
23 .../pypy-bin/files/1.9-scripts-location.patch | 11 -
24 .../pypy-bin/files/1.9-signal-a33052b17f4e.patch | 65 ----
25 .../files/1.9-ssl-errors-25d3418150d2.patch | 34 --
26 .../files/1.9-ssl-threads-1-34b3b5aac082.patch | 143 --------
27 .../files/1.9-ssl-threads-2-25cd11066d95.patch | 22 --
28 ...ils-fix_handling_of_executables_and_flags.patch | 323 -----------------
29 dev-python/pypy-bin/metadata.xml | 13 -
30 dev-python/pypy-bin/pypy-bin-1.9.ebuild | 155 --------
31 dev-python/pypy-bin/pypy-bin-2.0.2.ebuild | 148 --------
32 .../claws-mail-gkr/claws-mail-gkr-9999.ebuild | 31 --
33 mail-client/claws-mail-gkr/metadata.xml | 15 -
34 23 files changed, 1822 deletions(-)
35
36 diff --git a/dev-cpp/pimplxx/metadata.xml b/dev-cpp/pimplxx/metadata.xml
37 deleted file mode 100644
38 index ab8e4b5..0000000
39 --- a/dev-cpp/pimplxx/metadata.xml
40 +++ /dev/null
41 @@ -1,15 +0,0 @@
42 -<?xml version="1.0" encoding="UTF-8"?>
43 -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
44 -<pkgmetadata>
45 - <maintainer>
46 - <email>mgorny@g.o</email>
47 - <name>Michał Górny</name>
48 - </maintainer>
49 - <upstream>
50 - <maintainer status="active">
51 - <email>mgorny@g.o</email>
52 - <name>Michał Górny</name>
53 - </maintainer>
54 - <bugs-to>https://bitbucket.org/mgorny/pimplxx/issues/</bugs-to>
55 - </upstream>
56 -</pkgmetadata>
57
58 diff --git a/dev-cpp/pimplxx/pimplxx-9999.ebuild b/dev-cpp/pimplxx/pimplxx-9999.ebuild
59 deleted file mode 100644
60 index 1732156..0000000
61 --- a/dev-cpp/pimplxx/pimplxx-9999.ebuild
62 +++ /dev/null
63 @@ -1,50 +0,0 @@
64 -# Copyright 1999-2012 Gentoo Foundation
65 -# Distributed under the terms of the GNU General Public License v2
66 -# $Header: $
67 -
68 -EAPI=4
69 -
70 -#if LIVE
71 -AUTOTOOLS_AUTORECONF=yes
72 -EGIT_REPO_URI="http://bitbucket.org/mgorny/${PN}.git"
73 -
74 -inherit git-2
75 -#endif
76 -
77 -inherit autotools-utils
78 -
79 -DESCRIPTION="PImpl idiom-oriented C++ utility library"
80 -HOMEPAGE="https://bitbucket.org/mgorny/pimplxx/"
81 -SRC_URI="mirror://bitbucket/mgorny/${PN}/downloads/${P}.tar.bz2"
82 -
83 -LICENSE="BSD"
84 -SLOT="0"
85 -KEYWORDS="~amd64 ~x86"
86 -IUSE="doc static-libs"
87 -
88 -DEPEND="
89 - doc? (
90 - app-doc/doxygen
91 - media-gfx/graphviz[svg]
92 - )"
93 -
94 -#if LIVE
95 -KEYWORDS=
96 -SRC_URI=
97 -#endif
98 -
99 -src_compile() {
100 - autotools-utils_src_compile
101 -
102 - if use doc; then
103 - autotools-utils_src_compile doc
104 - fi
105 -}
106 -
107 -src_install() {
108 - autotools-utils_src_install
109 -
110 - if use doc; then
111 - dohtml -r "${AUTOTOOLS_BUILD_DIR}"/doc/html/.
112 - fi
113 -}
114
115 diff --git a/dev-python/pypy-bin/Manifest b/dev-python/pypy-bin/Manifest
116 deleted file mode 100644
117 index 48ca61c..0000000
118 --- a/dev-python/pypy-bin/Manifest
119 +++ /dev/null
120 @@ -1,16 +0,0 @@
121 -DIST pypy-1.9.tar.bz2 13466551 SHA256 9fd599acade49ef98017bbce4f179f19cf2680489ff15235d3bad5b20bde0d68 SHA512 1e02f1f1ac493be35272212f2be62db17a01a95c56ffbd8c00a043587e38131e779928fef1383c61575ecb48bf4dc407b62726d30d5b5728221a612fe67ec8c3 WHIRLPOOL 5b601f31f695623c2e5f6d48ae902e07c5cdccafe415ae89878e5cf71408b31fc44fb1c173a93e66d81188503651000de219533e69071495b87d80a8d217274f
122 -DIST pypy-2.0.2-src.tar.bz2 14819848 SHA256 1991c90d6b98e2408b3790d4b57b71ec1c69346328b8321505ce8f6ab4544c3c SHA512 5b8b56194dff468dd249dea0014fadafb791eb69858ffae0b9c7638f087df277a84ddadc7d5b0fdb48a12ca8e6b70eb95cb5b7a5f56fe8fe3396820b814ecfd7 WHIRLPOOL bb1f71e0b2d3e145edcb1baa17b0a13c09f5229cf1b0532edbb3d0d5c87ef39543c0ef6b9dc7ce2778c4a3336d4a1580fce9cf960f82b72ddfed02e06d10d8af
123 -DIST pypy-bin-1.9-amd64+bzip2+jit+ncurses+shadowstack.tar.xz 9839084 SHA256 ec267c4a14739fcd86ee02c67693835b1baf46f3558ca7d8312168b90f07223f SHA512 2b90a9ea4940cbdc6d7fcc0559911c1f6c4fe76cbb716e4c68d93f80952913eb332b428e9d59f68ed1bc060ee82a3c04f71964e8ee96a17962302ffc9456929e WHIRLPOOL 78380dd825a3177bf645e663b230e07729b59c27041e3dbe1f3e337cc41888f05b2fa986746ea5f423a5d268bdca2e1abbc199ba34cf21719538dd05a780b3df
124 -DIST pypy-bin-1.9-amd64+bzip2+jit+ncurses.tar.xz 11523396 SHA256 c4bf8a532ca222566185d8667c317975513d2bd670219f92569f93f12c0495f2 SHA512 806a9d492ad2e8d8f2d8d26a6bb61022860585fc4a01abefcd34c32b653578ffa209220ba1ea9a355e4caedf01fb639125ece0f3c0c1e8f5e5830b901193818f WHIRLPOOL cb291165b3fcc48f639f76adeac19b9ff904fa7008c0ad49f731ea0c3cd531de97962a5f8e911746dd8139ffc0e388616f542a499f9b857ebf5b831de4cd1ca6
125 -DIST pypy-bin-1.9-amd64+bzip2+ncurses.tar.xz 6655300 SHA256 f41798b5ccb15a989fa48ea87c26b2119b558deba257d77e4b1b7db00692e5be SHA512 85d05e76eb551bddc37635b0c6db1272f64af77389e3670d001540cd44db9f13b425f68e2fc9cb78108838cf2465ae7793b20963581f068000be956652eb4dfd WHIRLPOOL 0cbd0f7c606f491cf7d9d012a217f8af8f6e12b744c44d3f9c1c3955b9988f99a1c8e42ad74c7eca281aa40bc2b0aff27b5c9befcf9c038bb34ef80043713788
126 -DIST pypy-bin-1.9-x86+bzip2+jit+ncurses+shadowstack+sse2.tar.xz 8768436 SHA256 8a1ec5e609a1404d147720bea5ce66e3971c380fd66d754281334333fea695c5 SHA512 f360ed405b570545abd813d7b1dd037da41d6fa0a382998528ab282959e5c933bf91d4b0a536b264de97368c41df2ce3edc5e7626d5c9d4971b3f927a235d4b4 WHIRLPOOL 2e02059eae784f12eab7abe6f31bdaaf643f9dfa06cca3d86e35867eadbdf34f5a63f9cb6d416c72a38ca83998d3d3c2fee70b629c9328b5042b506e63b265c5
127 -DIST pypy-bin-1.9-x86+bzip2+jit+ncurses+sse2.tar.xz 11135960 SHA256 31c8e3ba0e90ee88e968d63f893edd2e7c75d0e646106a256d0bf092cbffdc4f SHA512 38a9c44cae77303ad7da064011e9f927dcdd95b54e5fd5c7828b4275f8aa7101686fd393ce1620ebf26e1c44cc8c503cb6a2b2821f105e151997cf6e9c38638b WHIRLPOOL 3afcd044851a19d3970d070b44314e375e47ed325c0170fe1387b4b3bdb7f366217282981aff001f8bfbed3be14f81d5a7a5ec64db48f259f753f7a9fc2420cb
128 -DIST pypy-bin-1.9-x86+bzip2+ncurses+sse2.tar.xz 5697252 SHA256 7ef4069cfdc315ec1d7168860d4275ce27dc833882c745c1b7387ea5af2b4f96 SHA512 20cad1c014d35a48835164ac4c46472efd1e13b2c00110fc32bba196c176e668a4dd688d3adba82e1853acbf63684d54a4d8d109add3084fd8ec30a8123e6a79 WHIRLPOOL 6625aade9a3a494605792a42920e80e4e6370911d04a9ccc386c90ecaab171f88f8ba02144765d49dfea0097af19f0719525d3cfdd212e6a2ca60c658c6229fa
129 -DIST pypy-bin-1.9-x86+bzip2+ncurses.tar.xz 5709220 SHA256 e9a9e1a19afd972d16c72e87518d269ae52b6ac80733c0a5afc58b95b18f0496 SHA512 bc651f4077e9c8481b0d8b618e9d274a0742d8be3d4ab7a26310c5c0101d5e28c7738182d3e47814f396ef36094b70cbb0f5e055e8ef130fe3d8e287dccba555 WHIRLPOOL 30c76a264725d8626ce6ff1d0dab6b10f52eff0970735b0fa43351c872bf9e33e84a7d420b127708fd523b444cfc6a9e2f88d3539bd41806d84482a92ca10b63
130 -DIST pypy-bin-2.0.2-amd64+bzip2+jit+ncurses+shadowstack.tar.xz 9652340 SHA256 100c1119fe08c47d1a15ca6c98b91c510f41c670d87526fb392e3b292d791ac3 SHA512 ac8d91e740fc8a49860ec47717b160a59ac68807aabd8ddc3a578682d6d75d3ddd47bc5e8b7db6e2be0af5f9414596831372225ab657194ba72d22c2360f98c0 WHIRLPOOL 5dc07128fc8db9df062053803a2792eb6f3795cf2cdef5d011a594c73a158bb4061fcd862c39eb074805f0b4e46d0846708f3fd0fdf3464b02cbe8efa406bb1f
131 -DIST pypy-bin-2.0.2-amd64+bzip2+jit+ncurses.tar.xz 10469416 SHA256 4f8a64d8cc679b8ba6751fc47307df679bca2658848d009c8c724682c76fbf0a SHA512 1d1bedc80d12982074a09516674bee71e57bac9b2b9dac1d9834295edb3b8fb79c0e93de708eef0dbf232dd198a4a728b09a9f86ab5dabad8a293072446b2a2b WHIRLPOOL 08753da5e1e6361bd21b03813cb4482164cc2933d8bf2a2d7443379b1be1b6ac0b87fde571af8519e7fa9e14893bb570799ad6dae02ba42a936dc4d964b0e821
132 -DIST pypy-bin-2.0.2-amd64+bzip2+ncurses.tar.xz 6527192 SHA256 ff2ac88da94978388b20d54b0a2add839facc5e605c54cc7bfd96faa088ec266 SHA512 58b9e6acc9038b4aeccadf0f1dd257b320cca8e536edd2835c0d9b95f27268b3b71e3af59daa4033580f2fc43f590205e1ed6de2fe475c60cf00c1a781ad1f86 WHIRLPOOL b5410e2b7a0816dffb64b32169be82193820c345d5b4000dc3fd8f827ce82a783fe62605efc0be7794d38dbdeb59d68cf0ac46c62f24f4a8025a2506739db4d1
133 -DIST pypy-bin-2.0.2-x86+bzip2+jit+ncurses+shadowstack+sse2.tar.xz 7754056 SHA256 b10da2cede4c04299730ac3e001b269b81c42584b8b09bff78098fe94218a78c SHA512 b512b67a4de9bdacb1f4e13888fefd4ed2ca4bb9ca3ffecafa825e6ddc36bb62cd4eff34e23c8f9a4baf9f601544cdb59d5249a240932109d98dba532e2915d1 WHIRLPOOL 187cbe9e2778243ff7c82ca4fa25705ff78be216dc66547a4f4f4b78eba4854ce11b843170b76cb17ea34d85647dfbdb664b4394c3641ffe364e2f91eb21e9aa
134 -DIST pypy-bin-2.0.2-x86+bzip2+jit+ncurses+sse2.tar.xz 9000040 SHA256 cc27253d53cca461e4d4aa8ca3943cae783d4d6389b99d3b7f9f88055d3cf6bf SHA512 90fa4762933a3cbed297a5eb8f1e95fbc70ba02286fc66beb012f27dde1cd06c8eeff0fa2d4a32586d84acbda2608530880d3cc14ea099e3debd239d3c154780 WHIRLPOOL e5a241d3b15aff2bda92f578c2aed7ccc9fbb68f45baaad75eb7229a30dcaabefd6d81cb883f4de7122459a91c521a8c1e6f332500a3f73fa546a42a2e60cfde
135 -DIST pypy-bin-2.0.2-x86+bzip2+ncurses+sse2.tar.xz 5132392 SHA256 8d434ca55cf969016e0c739b4671b97981f9af36b3937c4f4c1acba4d54df8fc SHA512 cb7ba91f1bb6b67f540e5b573bcc27ae92741407e44e204fb401a6ac38653ecdd2a3084b53216f3ed209279a3d01725d2b7d174e6f7d1038da80d448d40b00f1 WHIRLPOOL d171742333d7209ce2dcd50b0ab8bd2e6382c8bb9f0d7a5d69d2268217afdd155abf5c41a96f9bad18c2606b2f554b7a8ef2f1e943ae41412270582b476cd345
136 -DIST pypy-bin-2.0.2-x86+bzip2+ncurses.tar.xz 5137536 SHA256 c34e60673346b59022560608f633962dee47d79b96e4015677e86f507ad61248 SHA512 0d737a7d5018d6a4d70d3c0921ed4d8882bce4e6f9ff2b9742ab1763cc760a4ed22fcf683e4e7a1693f35897fa4d20500e6d5a31803e34b15175f4081a2ec6d8 WHIRLPOOL 04de2b1aa32f1a098d38b2b0512822c24385bed9db94f0cad03611a45e189812654f2f33ea6dad1a71a77bab878a8109ddf9c8873dc127a49352adac2a8ff7df
137
138 diff --git a/dev-python/pypy-bin/files/1.9-distutils-fix_handling_of_executables_and_flags.patch b/dev-python/pypy-bin/files/1.9-distutils-fix_handling_of_executables_and_flags.patch
139 deleted file mode 100644
140 index 4a35ea8..0000000
141 --- a/dev-python/pypy-bin/files/1.9-distutils-fix_handling_of_executables_and_flags.patch
142 +++ /dev/null
143 @@ -1,391 +0,0 @@
144 ---- lib-python/2.7/distutils/ccompiler.py
145 -+++ lib-python/2.7/distutils/ccompiler.py
146 -@@ -27,10 +27,16 @@
147 - varies across Unices and is stored in Python's Makefile.
148 - """
149 - if compiler.compiler_type == "unix":
150 -- (cc, cxx, opt, cflags, ccshared, ldshared, so_ext, ar, ar_flags) = \
151 -- _sysconfig.get_config_vars('CC', 'CXX', 'OPT', 'CFLAGS',
152 -- 'CCSHARED', 'LDSHARED', 'SO', 'AR',
153 -- 'ARFLAGS')
154 -+ cc = ' '.join(compiler.compiler)
155 -+ cxx = ' '.join(compiler.compiler_cxx)
156 -+ ldshared = ' '.join(compiler.linker_so)
157 -+ ldcxxshared = ' '.join(compiler.linker_so_cxx)
158 -+ ar = compiler.archiver[0]
159 -+
160 -+ cflags = ''
161 -+ cxxflags = ''
162 -+ ccshared = '-fPIC'
163 -+ ar_flags = compiler.archiver[1]
164 -
165 - if 'CC' in os.environ:
166 - cc = os.environ['CC']
167 -@@ -38,19 +44,27 @@
168 - cxx = os.environ['CXX']
169 - if 'LDSHARED' in os.environ:
170 - ldshared = os.environ['LDSHARED']
171 -+ if 'LDCXXSHARED' in os.environ:
172 -+ ldcxxshared = os.environ['LDCXXSHARED']
173 - if 'CPP' in os.environ:
174 - cpp = os.environ['CPP']
175 - else:
176 - cpp = cc + " -E" # not always
177 - if 'LDFLAGS' in os.environ:
178 - ldshared = ldshared + ' ' + os.environ['LDFLAGS']
179 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['LDFLAGS']
180 - if 'CFLAGS' in os.environ:
181 -- cflags = opt + ' ' + os.environ['CFLAGS']
182 -+ cflags = os.environ['CFLAGS']
183 - ldshared = ldshared + ' ' + os.environ['CFLAGS']
184 -+ if 'CXXFLAGS' in os.environ:
185 -+ cxxflags = os.environ['CXXFLAGS']
186 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['CXXFLAGS']
187 - if 'CPPFLAGS' in os.environ:
188 - cpp = cpp + ' ' + os.environ['CPPFLAGS']
189 - cflags = cflags + ' ' + os.environ['CPPFLAGS']
190 -+ cxxflags = cxxflags + ' ' + os.environ['CPPFLAGS']
191 - ldshared = ldshared + ' ' + os.environ['CPPFLAGS']
192 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['CPPFLAGS']
193 - if 'AR' in os.environ:
194 - ar = os.environ['AR']
195 - if 'ARFLAGS' in os.environ:
196 -@@ -59,17 +73,19 @@
197 - archiver = ar + ' ' + ar_flags
198 -
199 - cc_cmd = cc + ' ' + cflags
200 -+ cxx_cmd = cxx + ' ' + cxxflags
201 - compiler.set_executables(
202 - preprocessor=cpp,
203 - compiler=cc_cmd,
204 - compiler_so=cc_cmd + ' ' + ccshared,
205 -- compiler_cxx=cxx,
206 -+ compiler_cxx=cxx_cmd,
207 -+ compiler_so_cxx=cxx_cmd + ' ' + ccshared,
208 - linker_so=ldshared,
209 - linker_exe=cc,
210 -+ linker_so_cxx=ldcxxshared,
211 -+ linker_exe_cxx=cxx,
212 - archiver=archiver)
213 -
214 -- compiler.shared_lib_extension = so_ext
215 --
216 - class CCompiler:
217 - """Abstract base class to define the interface that must be implemented
218 - by real compiler classes. Also has some utility methods used by
219 ---- lib-python/2.7/distutils/cygwinccompiler.py
220 -+++ lib-python/2.7/distutils/cygwinccompiler.py
221 -@@ -135,9 +135,13 @@
222 - self.set_executables(compiler='gcc -mcygwin -O -Wall',
223 - compiler_so='gcc -mcygwin -mdll -O -Wall',
224 - compiler_cxx='g++ -mcygwin -O -Wall',
225 -+ compiler_so_cxx='g++ -mcygwin -mdll -O -Wall',
226 - linker_exe='gcc -mcygwin',
227 - linker_so=('%s -mcygwin %s' %
228 -- (self.linker_dll, shared_option)))
229 -+ (self.linker_dll, shared_option)),
230 -+ linker_exe_cxx='g++ -mcygwin',
231 -+ linker_so_cxx=('%s -mcygwin %s' %
232 -+ (self.linker_dll, shared_option)))
233 -
234 - # cygwin and mingw32 need different sets of libraries
235 - if self.gcc_version == "2.91.57":
236 -@@ -163,8 +167,12 @@
237 - raise CompileError, msg
238 - else: # for other files use the C-compiler
239 - try:
240 -- self.spawn(self.compiler_so + cc_args + [src, '-o', obj] +
241 -- extra_postargs)
242 -+ if self.detect_language(src) == 'c++':
243 -+ self.spawn(self.compiler_so_cxx + cc_args + [src, '-o', obj] +
244 -+ extra_postargs)
245 -+ else:
246 -+ self.spawn(self.compiler_so + cc_args + [src, '-o', obj] +
247 -+ extra_postargs)
248 - except DistutilsExecError, msg:
249 - raise CompileError, msg
250 -
251 -@@ -325,10 +333,15 @@
252 - self.set_executables(compiler='gcc -mno-cygwin -O -Wall',
253 - compiler_so='gcc -mno-cygwin -mdll -O -Wall',
254 - compiler_cxx='g++ -mno-cygwin -O -Wall',
255 -+ compiler_so_cxx='g++ -mno-cygwin -mdll -O -Wall',
256 - linker_exe='gcc -mno-cygwin',
257 - linker_so='%s -mno-cygwin %s %s'
258 - % (self.linker_dll, shared_option,
259 -- entry_point))
260 -+ entry_point),
261 -+ linker_exe_cxx='g++ -mno-cygwin',
262 -+ linker_so_cxx='%s -mno-cygwin %s %s'
263 -+ % (self.linker_dll, shared_option,
264 -+ entry_point))
265 - # Maybe we should also append -mthreads, but then the finished
266 - # dlls need another dll (mingwm10.dll see Mingw32 docs)
267 - # (-mthreads: Support thread-safe exception handling on `Mingw32')
268 ---- lib-python/2.7/distutils/emxccompiler.py
269 -+++ lib-python/2.7/distutils/emxccompiler.py
270 -@@ -65,8 +65,12 @@
271 - # XXX optimization, warnings etc. should be customizable.
272 - self.set_executables(compiler='gcc -Zomf -Zmt -O3 -fomit-frame-pointer -mprobe -Wall',
273 - compiler_so='gcc -Zomf -Zmt -O3 -fomit-frame-pointer -mprobe -Wall',
274 -+ compiler_cxx='g++ -Zomf -Zmt -O3 -fomit-frame-pointer -mprobe -Wall',
275 -+ compiler_so_cxx='g++ -Zomf -Zmt -O3 -fomit-frame-pointer -mprobe -Wall',
276 - linker_exe='gcc -Zomf -Zmt -Zcrtdll',
277 -- linker_so='gcc -Zomf -Zmt -Zcrtdll -Zdll')
278 -+ linker_so='gcc -Zomf -Zmt -Zcrtdll -Zdll',
279 -+ linker_exe_cxx='g++ -Zomf -Zmt -Zcrtdll',
280 -+ linker_so_cxx='g++ -Zomf -Zmt -Zcrtdll -Zdll')
281 -
282 - # want the gcc library statically linked (so that we don't have
283 - # to distribute a version dependent on the compiler we have)
284 -@@ -83,8 +87,12 @@
285 - raise CompileError, msg
286 - else: # for other files use the C-compiler
287 - try:
288 -- self.spawn(self.compiler_so + cc_args + [src, '-o', obj] +
289 -- extra_postargs)
290 -+ if self.detect_language(src) == 'c++':
291 -+ self.spawn(self.compiler_so_cxx + cc_args + [src, '-o', obj] +
292 -+ extra_postargs)
293 -+ else:
294 -+ self.spawn(self.compiler_so + cc_args + [src, '-o', obj] +
295 -+ extra_postargs)
296 - except DistutilsExecError, msg:
297 - raise CompileError, msg
298 -
299 ---- lib-python/2.7/distutils/sysconfig_cpython.py
300 -+++ lib-python/2.7/distutils/sysconfig_cpython.py
301 -@@ -149,9 +149,12 @@
302 - varies across Unices and is stored in Python's Makefile.
303 - """
304 - if compiler.compiler_type == "unix":
305 -- (cc, cxx, opt, cflags, ccshared, ldshared, so_ext) = \
306 -- get_config_vars('CC', 'CXX', 'OPT', 'CFLAGS',
307 -- 'CCSHARED', 'LDSHARED', 'SO')
308 -+ (cc, cxx, ccshared, ldshared, ldcxxshared, so_ext) = \
309 -+ get_config_vars('CC', 'CXX', 'CCSHARED', 'LDSHARED',
310 -+ 'LDCXXSHARED', 'SO')
311 -+
312 -+ cflags = ''
313 -+ cxxflags = ''
314 -
315 - if 'CC' in os.environ:
316 - cc = os.environ['CC']
317 -@@ -159,28 +162,40 @@
318 - cxx = os.environ['CXX']
319 - if 'LDSHARED' in os.environ:
320 - ldshared = os.environ['LDSHARED']
321 -+ if 'LDCXXSHARED' in os.environ:
322 -+ ldcxxshared = os.environ['LDCXXSHARED']
323 - if 'CPP' in os.environ:
324 - cpp = os.environ['CPP']
325 - else:
326 - cpp = cc + " -E" # not always
327 - if 'LDFLAGS' in os.environ:
328 - ldshared = ldshared + ' ' + os.environ['LDFLAGS']
329 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['LDFLAGS']
330 - if 'CFLAGS' in os.environ:
331 -- cflags = opt + ' ' + os.environ['CFLAGS']
332 -+ cflags = os.environ['CFLAGS']
333 - ldshared = ldshared + ' ' + os.environ['CFLAGS']
334 -+ if 'CXXFLAGS' in os.environ:
335 -+ cxxflags = os.environ['CXXFLAGS']
336 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['CXXFLAGS']
337 - if 'CPPFLAGS' in os.environ:
338 - cpp = cpp + ' ' + os.environ['CPPFLAGS']
339 - cflags = cflags + ' ' + os.environ['CPPFLAGS']
340 -+ cxxflags = cxxflags + ' ' + os.environ['CPPFLAGS']
341 - ldshared = ldshared + ' ' + os.environ['CPPFLAGS']
342 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['CPPFLAGS']
343 -
344 - cc_cmd = cc + ' ' + cflags
345 -+ cxx_cmd = cxx + ' ' + cxxflags
346 - compiler.set_executables(
347 - preprocessor=cpp,
348 - compiler=cc_cmd,
349 - compiler_so=cc_cmd + ' ' + ccshared,
350 -- compiler_cxx=cxx,
351 -+ compiler_cxx=cxx_cmd,
352 -+ compiler_so_cxx=cxx_cmd + ' ' + ccshared,
353 - linker_so=ldshared,
354 -- linker_exe=cc)
355 -+ linker_exe=cc,
356 -+ linker_so_cxx=ldcxxshared,
357 -+ linker_exe_cxx=cxx)
358 -
359 - compiler.shared_lib_extension = so_ext
360 -
361 -@@ -506,7 +521,7 @@
362 - for key in ('LDFLAGS', 'BASECFLAGS', 'LDSHARED',
363 - # a number of derived variables. These need to be
364 - # patched up as well.
365 -- 'CFLAGS', 'PY_CFLAGS', 'BLDSHARED'):
366 -+ 'CFLAGS', 'CXXFLAGS', 'PY_CFLAGS', 'BLDSHARED'):
367 - flags = _config_vars[key]
368 - flags = re.sub('-arch\s+\w+\s', ' ', flags)
369 - flags = re.sub('-isysroot [^ \t]*', ' ', flags)
370 -@@ -525,7 +540,7 @@
371 - for key in ('LDFLAGS', 'BASECFLAGS', 'LDSHARED',
372 - # a number of derived variables. These need to be
373 - # patched up as well.
374 -- 'CFLAGS', 'PY_CFLAGS', 'BLDSHARED'):
375 -+ 'CFLAGS', 'CXXFLAGS', 'PY_CFLAGS', 'BLDSHARED'):
376 -
377 - flags = _config_vars[key]
378 - flags = re.sub('-arch\s+\w+\s', ' ', flags)
379 -@@ -549,7 +564,7 @@
380 - for key in ('LDFLAGS', 'BASECFLAGS', 'LDSHARED',
381 - # a number of derived variables. These need to be
382 - # patched up as well.
383 -- 'CFLAGS', 'PY_CFLAGS', 'BLDSHARED'):
384 -+ 'CFLAGS', 'CXXFLAGS', 'PY_CFLAGS', 'BLDSHARED'):
385 -
386 - flags = _config_vars[key]
387 - flags = re.sub('-isysroot\s+\S+(\s|$)', ' ', flags)
388 ---- lib-python/2.7/distutils/sysconfig_pypy.py
389 -+++ lib-python/2.7/distutils/sysconfig_pypy.py
390 -@@ -114,13 +114,56 @@
391 - optional C speedup components.
392 - """
393 - if compiler.compiler_type == "unix":
394 -- compiler.compiler_so.extend(['-fPIC', '-Wimplicit'])
395 -+ cc = ' '.join(compiler.compiler)
396 -+ cxx = ' '.join(compiler.compiler_cxx)
397 -+ ldshared = ' '.join(compiler.linker_so)
398 -+ ldcxxshared = ' '.join(compiler.linker_so_cxx)
399 -+
400 -+ cflags = ''
401 -+ cxxflags = ''
402 -+ ccshared = '-fPIC'
403 -+
404 -+ if 'CC' in os.environ:
405 -+ cc = os.environ['CC']
406 -+ if 'CXX' in os.environ:
407 -+ cxx = os.environ['CXX']
408 -+ if 'LDSHARED' in os.environ:
409 -+ ldshared = os.environ['LDSHARED']
410 -+ if 'LDCXXSHARED' in os.environ:
411 -+ ldcxxshared = os.environ['LDCXXSHARED']
412 -+ if 'CPP' in os.environ:
413 -+ cpp = os.environ['CPP']
414 -+ else:
415 -+ cpp = cc + " -E" # not always
416 -+ if 'LDFLAGS' in os.environ:
417 -+ ldshared = ldshared + ' ' + os.environ['LDFLAGS']
418 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['LDFLAGS']
419 -+ if 'CFLAGS' in os.environ:
420 -+ cflags = os.environ['CFLAGS']
421 -+ ldshared = ldshared + ' ' + os.environ['CFLAGS']
422 -+ if 'CXXFLAGS' in os.environ:
423 -+ cxxflags = os.environ['CXXFLAGS']
424 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['CXXFLAGS']
425 -+ if 'CPPFLAGS' in os.environ:
426 -+ cpp = cpp + ' ' + os.environ['CPPFLAGS']
427 -+ cflags = cflags + ' ' + os.environ['CPPFLAGS']
428 -+ cxxflags = cxxflags + ' ' + os.environ['CPPFLAGS']
429 -+ ldshared = ldshared + ' ' + os.environ['CPPFLAGS']
430 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['CPPFLAGS']
431 -+
432 -+ cc_cmd = cc + ' ' + cflags
433 -+ cxx_cmd = cxx + ' ' + cxxflags
434 -+ compiler.set_executables(
435 -+ preprocessor=cpp,
436 -+ compiler=cc_cmd,
437 -+ compiler_so=cc_cmd + ' ' + ccshared,
438 -+ compiler_cxx=cxx_cmd,
439 -+ compiler_so_cxx=cxx_cmd + ' ' + ccshared,
440 -+ linker_so=ldshared,
441 -+ linker_exe=cc,
442 -+ linker_so_cxx=ldcxxshared,
443 -+ linker_exe_cxx=cxx)
444 - compiler.shared_lib_extension = get_config_var('SO')
445 -- if "CFLAGS" in os.environ:
446 -- cflags = os.environ["CFLAGS"]
447 -- compiler.compiler.append(cflags)
448 -- compiler.compiler_so.append(cflags)
449 -- compiler.linker_so.append(cflags)
450 -
451 -
452 - from sysconfig_cpython import (
453 ---- lib-python/2.7/distutils/unixccompiler.py
454 -+++ lib-python/2.7/distutils/unixccompiler.py
455 -@@ -114,14 +114,17 @@
456 - # are pretty generic; they will probably have to be set by an outsider
457 - # (eg. using information discovered by the sysconfig about building
458 - # Python extensions).
459 -- executables = {'preprocessor' : None,
460 -- 'compiler' : ["cc"],
461 -- 'compiler_so' : ["cc"],
462 -- 'compiler_cxx' : ["cc"],
463 -- 'linker_so' : ["cc", "-shared"],
464 -- 'linker_exe' : ["cc"],
465 -- 'archiver' : ["ar", "-cr"],
466 -- 'ranlib' : None,
467 -+ executables = {'preprocessor' : None,
468 -+ 'compiler' : ["cc"],
469 -+ 'compiler_so' : ["cc"],
470 -+ 'compiler_cxx' : ["c++"],
471 -+ 'compiler_so_cxx' : ["c++"],
472 -+ 'linker_so' : ["cc", "-shared"],
473 -+ 'linker_exe' : ["cc"],
474 -+ 'linker_so_cxx' : ["c++", "-shared"],
475 -+ 'linker_exe_cxx' : ["c++"],
476 -+ 'archiver' : ["ar", "-cr"],
477 -+ 'ranlib' : None,
478 - }
479 -
480 - if sys.platform[:6] == "darwin":
481 -@@ -186,11 +189,18 @@
482 -
483 - def _compile(self, obj, src, ext, cc_args, extra_postargs, pp_opts):
484 - compiler_so = self.compiler_so
485 -+ compiler_so_cxx = self.compiler_so_cxx
486 - if sys.platform == 'darwin':
487 - compiler_so = _darwin_compiler_fixup(compiler_so, cc_args + extra_postargs)
488 -+ compiler_so_cxx = _darwin_compiler_fixup(compiler_so_cxx, cc_args +
489 -+ extra_postargs)
490 - try:
491 -- self.spawn(compiler_so + cc_args + [src, '-o', obj] +
492 -- extra_postargs)
493 -+ if self.detect_language(src) == 'c++':
494 -+ self.spawn(compiler_so_cxx + cc_args + [src, '-o', obj] +
495 -+ extra_postargs)
496 -+ else:
497 -+ self.spawn(compiler_so + cc_args + [src, '-o', obj] +
498 -+ extra_postargs)
499 - except DistutilsExecError, msg:
500 - raise CompileError, msg
501 -
502 -@@ -247,23 +257,16 @@
503 - ld_args.extend(extra_postargs)
504 - self.mkpath(os.path.dirname(output_filename))
505 - try:
506 -- if target_desc == CCompiler.EXECUTABLE:
507 -- linker = self.linker_exe[:]
508 -+ if target_lang == "c++":
509 -+ if target_desc == CCompiler.EXECUTABLE:
510 -+ linker = self.linker_exe_cxx[:]
511 -+ else:
512 -+ linker = self.linker_so_cxx[:]
513 - else:
514 -- linker = self.linker_so[:]
515 -- if target_lang == "c++" and self.compiler_cxx:
516 -- # skip over environment variable settings if /usr/bin/env
517 -- # is used to set up the linker's environment.
518 -- # This is needed on OSX. Note: this assumes that the
519 -- # normal and C++ compiler have the same environment
520 -- # settings.
521 -- i = 0
522 -- if os.path.basename(linker[0]) == "env":
523 -- i = 1
524 -- while '=' in linker[i]:
525 -- i = i + 1
526 --
527 -- linker[i] = self.compiler_cxx[i]
528 -+ if target_desc == CCompiler.EXECUTABLE:
529 -+ linker = self.linker_exe[:]
530 -+ else:
531 -+ linker = self.linker_so[:]
532 -
533 - if sys.platform == 'darwin':
534 - linker = _darwin_compiler_fixup(linker, ld_args)
535
536 diff --git a/dev-python/pypy-bin/files/1.9-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch b/dev-python/pypy-bin/files/1.9-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch
537 deleted file mode 100644
538 index b3d5235..0000000
539 --- a/dev-python/pypy-bin/files/1.9-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch
540 +++ /dev/null
541 @@ -1,11 +0,0 @@
542 ---- lib-python/2.7/distutils/unixccompiler.py
543 -+++ lib-python/2.7/distutils/unixccompiler.py
544 -@@ -297,7 +297,7 @@
545 - # this time, there's no way to determine this information from
546 - # the configuration data stored in the Python installation, so
547 - # we use this hack.
548 -- compiler = os.path.basename(sysconfig.get_config_var("CC"))
549 -+ compiler = os.path.basename(self.compiler[0])
550 - if sys.platform[:6] == "darwin":
551 - # MacOSX's linker doesn't understand the -R flag at all
552 - return "-L" + dir
553
554 diff --git a/dev-python/pypy-bin/files/1.9-get_python_lib_standard_lib-04ea518e5b71.patch b/dev-python/pypy-bin/files/1.9-get_python_lib_standard_lib-04ea518e5b71.patch
555 deleted file mode 100644
556 index e6c98a5..0000000
557 --- a/dev-python/pypy-bin/files/1.9-get_python_lib_standard_lib-04ea518e5b71.patch
558 +++ /dev/null
559 @@ -1,24 +0,0 @@
560 -changeset: 55566:04ea518e5b71
561 -parent: 55554:fa1ecb3a52df
562 -user: Armin Rigo <arigo@×××××.org>
563 -date: Mon Jun 11 10:28:26 2012 +0200
564 -summary: issue1164: get_python_lib(standard_lib=1) should probably just
565 -
566 -diff -r fa1ecb3a52df -r 04ea518e5b71 lib-python/2.7/distutils/sysconfig_pypy.py
567 ---- a/lib-python/2.7/distutils/sysconfig_pypy.py Sun Jun 10 23:49:16 2012 +0300
568 -+++ b/lib-python/2.7/distutils/sysconfig_pypy.py Mon Jun 11 10:28:26 2012 +0200
569 -@@ -39,11 +39,10 @@
570 - If 'prefix' is supplied, use it instead of sys.prefix or
571 - sys.exec_prefix -- i.e., ignore 'plat_specific'.
572 - """
573 -- if standard_lib:
574 -- raise DistutilsPlatformError(
575 -- "calls to get_python_lib(standard_lib=1) cannot succeed")
576 - if prefix is None:
577 - prefix = PREFIX
578 -+ if standard_lib:
579 -+ return os.path.join(prefix, "lib-python", get_python_version())
580 - return os.path.join(prefix, 'site-packages')
581 -
582 -
583 -
584
585 diff --git a/dev-python/pypy-bin/files/1.9-getargs-freelist-c26dc70ee340.patch b/dev-python/pypy-bin/files/1.9-getargs-freelist-c26dc70ee340.patch
586 deleted file mode 100644
587 index 70619dc..0000000
588 --- a/dev-python/pypy-bin/files/1.9-getargs-freelist-c26dc70ee340.patch
589 +++ /dev/null
590 @@ -1,212 +0,0 @@
591 -# HG changeset patch
592 -# User Armin Rigo <arigo@×××××.org>
593 -# Date 1339595299 -7200
594 -# Node ID c26dc70ee34018efeec8b789d40ec78478304bc0
595 -# Parent c7dff5469611f03946466caed17c567c4ea5d8d0
596 -Fix for the issue of abuse of PyCapsules, relying on immediate
597 -destruction, as CPython does. This problem was first described in
598 -https://bazaar.launchpad.net/~exarkun/pyopenssl/trunk/revision/166.
599 -The fix is rather obvious and consist in a *negative* total amount
600 -of lines :-/
601 -
602 -diff -r c7dff5469611f03946466caed17c567c4ea5d8d0 -r c26dc70ee34018efeec8b789d40ec78478304bc0 pypy/module/cpyext/src/getargs.c
603 ---- a/pypy/module/cpyext/src/getargs.c Wed Jun 13 13:19:05 2012 +0200
604 -+++ b/pypy/module/cpyext/src/getargs.c Wed Jun 13 15:48:19 2012 +0200
605 -@@ -24,14 +24,15 @@
606 -
607 -
608 - /* Forward */
609 -+typedef struct freelist_s freelist_t;
610 - static int vgetargs1(PyObject *, const char *, va_list *, int);
611 - static void seterror(int, const char *, int *, const char *, const char *);
612 - static char *convertitem(PyObject *, const char **, va_list *, int, int *,
613 -- char *, size_t, PyObject **);
614 -+ char *, size_t, freelist_t **);
615 - static char *converttuple(PyObject *, const char **, va_list *, int,
616 -- int *, char *, size_t, int, PyObject **);
617 -+ int *, char *, size_t, int, freelist_t **);
618 - static char *convertsimple(PyObject *, const char **, va_list *, int, char *,
619 -- size_t, PyObject **);
620 -+ size_t, freelist_t **);
621 - static Py_ssize_t convertbuffer(PyObject *, void **p, char **);
622 - static int getbuffer(PyObject *, Py_buffer *, char**);
623 -
624 -@@ -128,72 +129,45 @@
625 -
626 - /* Handle cleanup of allocated memory in case of exception */
627 -
628 --#define GETARGS_CAPSULE_NAME_CLEANUP_PTR "getargs.cleanup_ptr"
629 --#define GETARGS_CAPSULE_NAME_CLEANUP_BUFFER "getargs.cleanup_buffer"
630 -+typedef void (*cleanup_fn)(void *);
631 -
632 --static void
633 --cleanup_ptr(PyObject *self)
634 --{
635 -- void *ptr = PyCapsule_GetPointer(self, GETARGS_CAPSULE_NAME_CLEANUP_PTR);
636 -- if (ptr) {
637 -- PyMem_FREE(ptr);
638 -- }
639 --}
640 -+struct freelist_s {
641 -+ void *ptr;
642 -+ cleanup_fn destr;
643 -+ struct freelist_s *next;
644 -+};
645 -
646 --static void
647 --cleanup_buffer(PyObject *self)
648 --{
649 -- Py_buffer *ptr = (Py_buffer *)PyCapsule_GetPointer(self, GETARGS_CAPSULE_NAME_CLEANUP_BUFFER);
650 -- if (ptr) {
651 -- PyBuffer_Release(ptr);
652 -- }
653 --}
654 -+#define cleanup_ptr ((cleanup_fn)PyMem_FREE)
655 -+#define cleanup_buffer ((cleanup_fn)PyBuffer_Release)
656 -
657 - static int
658 --addcleanup(void *ptr, PyObject **freelist, PyCapsule_Destructor destr)
659 -+addcleanup(void *ptr, freelist_t **freelist, cleanup_fn destr)
660 - {
661 -- PyObject *cobj;
662 -- const char *name;
663 --
664 -- if (!*freelist) {
665 -- *freelist = PyList_New(0);
666 -- if (!*freelist) {
667 -- destr(ptr);
668 -- return -1;
669 -- }
670 -- }
671 --
672 -- if (destr == cleanup_ptr) {
673 -- name = GETARGS_CAPSULE_NAME_CLEANUP_PTR;
674 -- } else if (destr == cleanup_buffer) {
675 -- name = GETARGS_CAPSULE_NAME_CLEANUP_BUFFER;
676 -- } else {
677 -- return -1;
678 -- }
679 -- cobj = PyCapsule_New(ptr, name, destr);
680 -- if (!cobj) {
681 -+ freelist_t *node = PyMem_MALLOC(sizeof(freelist_t));
682 -+ if (!node) {
683 - destr(ptr);
684 - return -1;
685 - }
686 -- if (PyList_Append(*freelist, cobj)) {
687 -- Py_DECREF(cobj);
688 -- return -1;
689 -- }
690 -- Py_DECREF(cobj);
691 -+ node->ptr = ptr;
692 -+ node->destr = destr;
693 -+ node->next = *freelist;
694 -+ *freelist = node;
695 - return 0;
696 - }
697 -
698 - static int
699 --cleanreturn(int retval, PyObject *freelist)
700 -+cleanreturn(int retval, freelist_t *freelist)
701 - {
702 -- if (freelist && retval != 0) {
703 -- /* We were successful, reset the destructors so that they
704 -- don't get called. */
705 -- Py_ssize_t len = PyList_GET_SIZE(freelist), i;
706 -- for (i = 0; i < len; i++)
707 -- PyCapsule_SetDestructor(PyList_GET_ITEM(freelist, i), NULL);
708 -+ freelist_t *next;
709 -+ while (freelist != NULL) {
710 -+ if (retval == 0) {
711 -+ /* Leaving with an error */
712 -+ freelist->destr(freelist->ptr);
713 -+ }
714 -+ next = freelist->next;
715 -+ PyMem_FREE(freelist);
716 -+ freelist = next;
717 - }
718 -- Py_XDECREF(freelist);
719 - return retval;
720 - }
721 -
722 -@@ -212,7 +186,7 @@
723 - const char *formatsave = format;
724 - Py_ssize_t i, len;
725 - char *msg;
726 -- PyObject *freelist = NULL;
727 -+ freelist_t *freelist = NULL;
728 - int compat = flags & FLAG_COMPAT;
729 -
730 - assert(compat || (args != (PyObject*)NULL));
731 -@@ -412,7 +386,7 @@
732 - static char *
733 - converttuple(PyObject *arg, const char **p_format, va_list *p_va, int flags,
734 - int *levels, char *msgbuf, size_t bufsize, int toplevel,
735 -- PyObject **freelist)
736 -+ freelist_t **freelist)
737 - {
738 - int level = 0;
739 - int n = 0;
740 -@@ -488,7 +462,7 @@
741 -
742 - static char *
743 - convertitem(PyObject *arg, const char **p_format, va_list *p_va, int flags,
744 -- int *levels, char *msgbuf, size_t bufsize, PyObject **freelist)
745 -+ int *levels, char *msgbuf, size_t bufsize, freelist_t **freelist)
746 - {
747 - char *msg;
748 - const char *format = *p_format;
749 -@@ -569,7 +543,7 @@
750 -
751 - static char *
752 - convertsimple(PyObject *arg, const char **p_format, va_list *p_va, int flags,
753 -- char *msgbuf, size_t bufsize, PyObject **freelist)
754 -+ char *msgbuf, size_t bufsize, freelist_t **freelist)
755 - {
756 - /* For # codes */
757 - #define FETCH_SIZE int *q=NULL;Py_ssize_t *q2=NULL;\
758 -@@ -1534,7 +1508,8 @@
759 - const char *fname, *msg, *custom_msg, *keyword;
760 - int min = INT_MAX;
761 - int i, len, nargs, nkeywords;
762 -- PyObject *freelist = NULL, *current_arg;
763 -+ freelist_t *freelist = NULL;
764 -+ PyObject *current_arg;
765 -
766 - assert(args != NULL && PyTuple_Check(args));
767 - assert(keywords == NULL || PyDict_Check(keywords));
768 -diff -r c7dff5469611f03946466caed17c567c4ea5d8d0 -r c26dc70ee34018efeec8b789d40ec78478304bc0 pypy/module/cpyext/test/test_getargs.py
769 ---- a/pypy/module/cpyext/test/test_getargs.py Wed Jun 13 13:19:05 2012 +0200
770 -+++ b/pypy/module/cpyext/test/test_getargs.py Wed Jun 13 15:48:19 2012 +0200
771 -@@ -144,6 +144,31 @@
772 - assert 'foo\0bar\0baz' == pybuffer(buffer('foo\0bar\0baz'))
773 -
774 -
775 -+ def test_pyarg_parse_string_fails(self):
776 -+ """
777 -+ Test the failing case of PyArg_ParseTuple(): it must not keep
778 -+ a reference on the PyObject passed in.
779 -+ """
780 -+ pybuffer = self.import_parser(
781 -+ '''
782 -+ Py_buffer buf1, buf2, buf3;
783 -+ PyObject *result;
784 -+ if (!PyArg_ParseTuple(args, "s*s*s*", &buf1, &buf2, &buf3)) {
785 -+ return NULL;
786 -+ }
787 -+ Py_FatalError("should not get there");
788 -+ return NULL;
789 -+ ''')
790 -+ freed = []
791 -+ class freestring(str):
792 -+ def __del__(self):
793 -+ freed.append('x')
794 -+ raises(TypeError, pybuffer,
795 -+ freestring("string"), freestring("other string"), 42)
796 -+ import gc; gc.collect()
797 -+ assert freed == ['x', 'x']
798 -+
799 -+
800 - def test_pyarg_parse_charbuf_and_length(self):
801 - """
802 - The `t#` format specifier can be used to parse a read-only 8-bit
803
804 diff --git a/dev-python/pypy-bin/files/1.9-more-ignored-ops-146ddf82a279.patch b/dev-python/pypy-bin/files/1.9-more-ignored-ops-146ddf82a279.patch
805 deleted file mode 100644
806 index 146399d..0000000
807 --- a/dev-python/pypy-bin/files/1.9-more-ignored-ops-146ddf82a279.patch
808 +++ /dev/null
809 @@ -1,25 +0,0 @@
810 -changeset: 55567:146ddf82a279
811 -user: Armin Rigo <arigo@×××××.org>
812 -date: Mon Jun 11 10:33:19 2012 +0200
813 -summary: More ignored ops
814 -
815 -diff -r 04ea518e5b71 -r 146ddf82a279 pypy/translator/c/gcc/trackgcroot.py
816 ---- a/pypy/translator/c/gcc/trackgcroot.py Mon Jun 11 10:28:26 2012 +0200
817 -+++ b/pypy/translator/c/gcc/trackgcroot.py Mon Jun 11 10:33:19 2012 +0200
818 -@@ -476,13 +476,13 @@
819 - # floating-point operations cannot produce GC pointers
820 - 'f',
821 - 'cvt', 'ucomi', 'comi', 'subs', 'subp' , 'adds', 'addp', 'xorp',
822 -- 'movap', 'movd', 'movlp', 'sqrtsd', 'movhpd',
823 -+ 'movap', 'movd', 'movlp', 'sqrt', 'rsqrt', 'movhpd',
824 - 'mins', 'minp', 'maxs', 'maxp', 'unpck', 'pxor', 'por', # sse2
825 - 'shufps', 'shufpd',
826 - # arithmetic operations should not produce GC pointers
827 - 'inc', 'dec', 'not', 'neg', 'or', 'and', 'sbb', 'adc',
828 - 'shl', 'shr', 'sal', 'sar', 'rol', 'ror', 'mul', 'imul', 'div', 'idiv',
829 -- 'bswap', 'bt', 'rdtsc',
830 -+ 'bswap', 'bt', 'rdtsc', 'rounds',
831 - 'pabs', 'pack', 'padd', 'palign', 'pand', 'pavg', 'pcmp', 'pextr',
832 - 'phadd', 'phsub', 'pinsr', 'pmadd', 'pmax', 'pmin', 'pmovmsk',
833 - 'pmul', 'por', 'psadb', 'pshuf', 'psign', 'psll', 'psra', 'psrl',
834 -
835
836 diff --git a/dev-python/pypy-bin/files/1.9-more-ignored-ops-a9a8faa76bca.patch b/dev-python/pypy-bin/files/1.9-more-ignored-ops-a9a8faa76bca.patch
837 deleted file mode 100644
838 index 51a53ca..0000000
839 --- a/dev-python/pypy-bin/files/1.9-more-ignored-ops-a9a8faa76bca.patch
840 +++ /dev/null
841 @@ -1,32 +0,0 @@
842 -changeset: 55523:a9a8faa76bca
843 -parent: 55518:f0daafccddc5
844 -user: Armin Rigo <arigo@×××××.org>
845 -date: Fri Jun 08 19:55:01 2012 +0200
846 -summary: Add more instructions to ignore by copying from Intel docs.
847 -
848 -diff -r f0daafccddc5 -r a9a8faa76bca pypy/translator/c/gcc/trackgcroot.py
849 ---- a/pypy/translator/c/gcc/trackgcroot.py Fri Jun 08 18:30:54 2012 +0200
850 -+++ b/pypy/translator/c/gcc/trackgcroot.py Fri Jun 08 19:55:01 2012 +0200
851 -@@ -483,8 +483,10 @@
852 - 'inc', 'dec', 'not', 'neg', 'or', 'and', 'sbb', 'adc',
853 - 'shl', 'shr', 'sal', 'sar', 'rol', 'ror', 'mul', 'imul', 'div', 'idiv',
854 - 'bswap', 'bt', 'rdtsc',
855 -- 'punpck', 'pshufd', 'pcmp', 'pand', 'psllw', 'pslld', 'psllq',
856 -- 'paddq', 'pinsr', 'pmul', 'psrl',
857 -+ 'pabs', 'pack', 'padd', 'palign', 'pand', 'pavg', 'pcmp', 'pextr',
858 -+ 'phadd', 'phsub', 'pinsr', 'pmadd', 'pmax', 'pmin', 'pmovmsk',
859 -+ 'pmul', 'por', 'psadb', 'pshuf', 'psign', 'psll', 'psra', 'psrl',
860 -+ 'psub', 'punpck', 'pxor',
861 - # all vectors don't produce pointers
862 - 'v',
863 - # sign-extending moves should not produce GC pointers
864 -@@ -492,7 +494,7 @@
865 - # zero-extending moves should not produce GC pointers
866 - 'movz',
867 - # locked operations should not move GC pointers, at least so far
868 -- 'lock',
869 -+ 'lock', 'pause',
870 - ])
871 -
872 - # a partial list is hopefully good enough for now; it's all to support
873 -
874
875 diff --git a/dev-python/pypy-bin/files/1.9-no-bytecode-4151f9c406b6.patch b/dev-python/pypy-bin/files/1.9-no-bytecode-4151f9c406b6.patch
876 deleted file mode 100644
877 index 5fab3a5..0000000
878 --- a/dev-python/pypy-bin/files/1.9-no-bytecode-4151f9c406b6.patch
879 +++ /dev/null
880 @@ -1,27 +0,0 @@
881 -# HG changeset patch
882 -# User Armin Rigo <arigo@×××××.org>
883 -# Date 1339165065 -7200
884 -# Node ID 4151f9c406b62f6c4a1fdd669389eb46eb90f9cb
885 -# Parent 68f8d7152a45fa7856a2a013799874614fcd9c33
886 -issue1043 3rd issue fixed
887 -
888 -diff -r 68f8d7152a45fa7856a2a013799874614fcd9c33 -r 4151f9c406b62f6c4a1fdd669389eb46eb90f9cb pypy/translator/goal/app_main.py
889 ---- a/pypy/translator/goal/app_main.py Fri Jun 08 16:06:33 2012 +0200
890 -+++ b/pypy/translator/goal/app_main.py Fri Jun 08 16:17:45 2012 +0200
891 -@@ -457,13 +457,13 @@
892 -
893 - if PYTHON26 and not options["ignore_environment"]:
894 - if os.getenv('PYTHONNOUSERSITE'):
895 -- options["no_user_site"] = True
896 -+ options["no_user_site"] = 1
897 - if os.getenv('PYTHONDONTWRITEBYTECODE'):
898 -- options["dont_write_bytecode"] = True
899 -+ options["dont_write_bytecode"] = 1
900 -
901 - if (options["interactive"] or
902 - (not options["ignore_environment"] and os.getenv('PYTHONINSPECT'))):
903 -- options["inspect"] = True
904 -+ options["inspect"] = 1
905 -
906 - if PYTHON26 and we_are_translated():
907 - flags = [options[flag] for flag in sys_flags]
908
909 diff --git a/dev-python/pypy-bin/files/1.9-no-static-hack.patch b/dev-python/pypy-bin/files/1.9-no-static-hack.patch
910 deleted file mode 100644
911 index fe75ac2..0000000
912 --- a/dev-python/pypy-bin/files/1.9-no-static-hack.patch
913 +++ /dev/null
914 @@ -1,30 +0,0 @@
915 -Remove logic that links to libssl and libcrypto statically if
916 -possible. Just always link dynamically: Gentoo is expected to have
917 -sane dynamic libraries for us to use, and our users are not expected
918 -to copy their pypy binary to a system with an incompatible
919 -libssl/libcrypto and expect it to work.
920 -
921 -Patch contributed by XU Benda <heroxbd@g.o>.
922 -
923 ---- pypy/rlib/ropenssl.py 2012-06-07 21:24:48.000000000 +0900
924 -+++ pypy/rlib/ropenssl.py.new 2012-06-10 17:28:29.000000000 +0900
925 -@@ -19,18 +19,8 @@ if sys.platform == 'win32' and platform.
926 - # so that openssl/ssl.h can repair this nonsense.
927 - 'wincrypt.h']
928 - else:
929 -- libraries = ['z']
930 -+ libraries = ['z', 'ssl', 'crypto']
931 - includes = []
932 -- if (sys.platform.startswith('linux') and
933 -- os.path.exists('/usr/lib/libssl.a') and
934 -- os.path.exists('/usr/lib/libcrypto.a')):
935 -- # use static linking to avoid the infinite
936 -- # amount of troubles due to symbol versions
937 -- # and 0.9.8/1.0.0
938 -- link_files += ['/usr/lib/libssl.a', '/usr/lib/libcrypto.a']
939 -- testonly_libraries += ['ssl', 'crypto']
940 -- else:
941 -- libraries += ['ssl', 'crypto']
942 -
943 - includes += [
944 - 'openssl/ssl.h',
945
946 diff --git a/dev-python/pypy-bin/files/1.9-pybuffer-release-double-decref-4ec2a5b49386.patch b/dev-python/pypy-bin/files/1.9-pybuffer-release-double-decref-4ec2a5b49386.patch
947 deleted file mode 100644
948 index 58c301e..0000000
949 --- a/dev-python/pypy-bin/files/1.9-pybuffer-release-double-decref-4ec2a5b49386.patch
950 +++ /dev/null
951 @@ -1,29 +0,0 @@
952 -changeset: 55598:4ec2a5b49386
953 -tag: tip
954 -user: Armin Rigo <arigo@×××××.org>
955 -date: Mon Jun 11 19:54:04 2012 +0200
956 -summary: Test and fix (thanks marienz)
957 -
958 -diff -r cdb2d1b3d0da -r 4ec2a5b49386 pypy/module/cpyext/object.py
959 ---- a/pypy/module/cpyext/object.py Mon Jun 11 19:41:35 2012 +0200
960 -+++ b/pypy/module/cpyext/object.py Mon Jun 11 19:54:04 2012 +0200
961 -@@ -489,3 +489,4 @@
962 - provides a subset of CPython's behavior.
963 - """
964 - Py_DecRef(space, view.c_obj)
965 -+ view.c_obj = lltype.nullptr(PyObject.TO)
966 -diff -r cdb2d1b3d0da -r 4ec2a5b49386 pypy/module/cpyext/test/test_object.py
967 ---- a/pypy/module/cpyext/test/test_object.py Mon Jun 11 19:41:35 2012 +0200
968 -+++ b/pypy/module/cpyext/test/test_object.py Mon Jun 11 19:54:04 2012 +0200
969 -@@ -363,6 +363,10 @@
970 - * Py_buffer and the string should be released as well.
971 - */
972 - PyBuffer_Release(&buf);
973 -+ assert(!buf.obj);
974 -+ PyBuffer_Release(&buf); /* call again, should not have any more effect */
975 -+ PyBuffer_Release(&buf);
976 -+ PyBuffer_Release(&buf);
977 -
978 - Py_RETURN_NONE;
979 - """)])
980 -
981
982 diff --git a/dev-python/pypy-bin/files/1.9-scripts-location.patch b/dev-python/pypy-bin/files/1.9-scripts-location.patch
983 deleted file mode 100644
984 index 5f0190d..0000000
985 --- a/dev-python/pypy-bin/files/1.9-scripts-location.patch
986 +++ /dev/null
987 @@ -1,11 +0,0 @@
988 ---- pypy-pypy-release-1.7/lib-python/2.7/distutils/command/install.py
989 -+++ pypy-pypy-release-1.7/lib-python/2.7/distutils/command/install.py
990 -@@ -87,7 +87,7 @@
991 - 'purelib': '$base/site-packages',
992 - 'platlib': '$base/site-packages',
993 - 'headers': '$base/include',
994 -- 'scripts': '$base/bin',
995 -+ 'scripts': '/usr/bin',
996 - 'data' : '$base',
997 - },
998 - }
999
1000 diff --git a/dev-python/pypy-bin/files/1.9-signal-a33052b17f4e.patch b/dev-python/pypy-bin/files/1.9-signal-a33052b17f4e.patch
1001 deleted file mode 100644
1002 index 6087122..0000000
1003 --- a/dev-python/pypy-bin/files/1.9-signal-a33052b17f4e.patch
1004 +++ /dev/null
1005 @@ -1,65 +0,0 @@
1006 -changeset: 55595:a33052b17f4e
1007 -parent: 55589:4f58f2db96c0
1008 -user: Armin Rigo <arigo@×××××.org>
1009 -date: Mon Jun 11 18:06:35 2012 +0200
1010 -summary: issue1167: changed the test (according to py.test -A on Linux), and fix
1011 -
1012 -diff -r 4f58f2db96c0 -r a33052b17f4e pypy/module/signal/interp_signal.py
1013 ---- a/pypy/module/signal/interp_signal.py Mon Jun 11 17:05:01 2012 +0200
1014 -+++ b/pypy/module/signal/interp_signal.py Mon Jun 11 18:06:35 2012 +0200
1015 -@@ -227,7 +227,7 @@
1016 - None -- if an unknown handler is in effect (XXX UNIMPLEMENTED)
1017 - anything else -- the callable Python object used as a handler
1018 - """
1019 -- check_signum(space, signum)
1020 -+ check_signum_in_range(space, signum)
1021 - action = space.check_signal_action
1022 - if signum in action.handlers_w:
1023 - return action.handlers_w[signum]
1024 -@@ -253,12 +253,18 @@
1025 - c_pause()
1026 - return space.w_None
1027 -
1028 --def check_signum(space, signum):
1029 -+def check_signum_exists(space, signum):
1030 - if signum in signal_values:
1031 - return
1032 - raise OperationError(space.w_ValueError,
1033 - space.wrap("invalid signal value"))
1034 -
1035 -+def check_signum_in_range(space, signum):
1036 -+ if 1 <= signum < NSIG:
1037 -+ return
1038 -+ raise OperationError(space.w_ValueError,
1039 -+ space.wrap("signal number out of range"))
1040 -+
1041 -
1042 - @jit.dont_look_inside
1043 - @unwrap_spec(signum=int)
1044 -@@ -319,7 +325,7 @@
1045 -
1046 - @unwrap_spec(signum=int, flag=int)
1047 - def siginterrupt(space, signum, flag):
1048 -- check_signum(space, signum)
1049 -+ check_signum_exists(space, signum)
1050 - if rffi.cast(lltype.Signed, c_siginterrupt(signum, flag)) < 0:
1051 - errno = rposix.get_errno()
1052 - raise OperationError(space.w_RuntimeError, space.wrap(errno))
1053 -diff -r 4f58f2db96c0 -r a33052b17f4e pypy/module/signal/test/test_signal.py
1054 ---- a/pypy/module/signal/test/test_signal.py Mon Jun 11 17:05:01 2012 +0200
1055 -+++ b/pypy/module/signal/test/test_signal.py Mon Jun 11 18:06:35 2012 +0200
1056 -@@ -154,7 +154,12 @@
1057 -
1058 - raises(ValueError, getsignal, 4444)
1059 - raises(ValueError, signal, 4444, lambda *args: None)
1060 -- raises(ValueError, signal, 42, lambda *args: None)
1061 -+ import sys
1062 -+ if sys.platform == 'win32':
1063 -+ raises(ValueError, signal, 42, lambda *args: None)
1064 -+ else:
1065 -+ signal(42, lambda *args: None)
1066 -+ signal(42, SIG_DFL)
1067 -
1068 - def test_alarm(self):
1069 - try:
1070 -
1071
1072 diff --git a/dev-python/pypy-bin/files/1.9-ssl-errors-25d3418150d2.patch b/dev-python/pypy-bin/files/1.9-ssl-errors-25d3418150d2.patch
1073 deleted file mode 100644
1074 index 78affe9..0000000
1075 --- a/dev-python/pypy-bin/files/1.9-ssl-errors-25d3418150d2.patch
1076 +++ /dev/null
1077 @@ -1,34 +0,0 @@
1078 -# HG changeset patch
1079 -# User Amaury Forgeot d'Arc <amauryfa@×××××.com>
1080 -# Date 1339449304 -7200
1081 -# Node ID 25d3418150d2e2820913043432f568e31bf3a19a
1082 -# Parent 33c305197a3d05217be023fa39a692ad89802317
1083 -issue1169: _ssl errors outside any SSL context should use ERR_peek_last_error()
1084 -
1085 -diff -r 33c305197a3d05217be023fa39a692ad89802317 -r 25d3418150d2e2820913043432f568e31bf3a19a pypy/module/_ssl/interp_ssl.py
1086 ---- a/pypy/module/_ssl/interp_ssl.py Mon Jun 11 23:01:31 2012 +0200
1087 -+++ b/pypy/module/_ssl/interp_ssl.py Mon Jun 11 23:15:04 2012 +0200
1088 -@@ -789,7 +789,11 @@
1089 - def _ssl_seterror(space, ss, ret):
1090 - assert ret <= 0
1091 -
1092 -- if ss and ss.ssl:
1093 -+ if ss is None:
1094 -+ errval = libssl_ERR_peek_last_error()
1095 -+ errstr = rffi.charp2str(libssl_ERR_error_string(errval, None))
1096 -+ return ssl_error(space, errstr, errval)
1097 -+ elif ss.ssl:
1098 - err = libssl_SSL_get_error(ss.ssl, ret)
1099 - else:
1100 - err = SSL_ERROR_SSL
1101 -diff -r 33c305197a3d05217be023fa39a692ad89802317 -r 25d3418150d2e2820913043432f568e31bf3a19a pypy/rlib/ropenssl.py
1102 ---- a/pypy/rlib/ropenssl.py Mon Jun 11 23:01:31 2012 +0200
1103 -+++ b/pypy/rlib/ropenssl.py Mon Jun 11 23:15:04 2012 +0200
1104 -@@ -259,6 +259,7 @@
1105 - ssl_external('SSL_CIPHER_get_bits', [SSL_CIPHER, rffi.INTP], rffi.INT)
1106 -
1107 - ssl_external('ERR_get_error', [], rffi.INT)
1108 -+ssl_external('ERR_peek_last_error', [], rffi.INT)
1109 - ssl_external('ERR_error_string', [rffi.ULONG, rffi.CCHARP], rffi.CCHARP)
1110 -
1111 - ssl_external('SSL_free', [SSL], lltype.Void)
1112
1113 diff --git a/dev-python/pypy-bin/files/1.9-ssl-threads-1-34b3b5aac082.patch b/dev-python/pypy-bin/files/1.9-ssl-threads-1-34b3b5aac082.patch
1114 deleted file mode 100644
1115 index ac5d7ad..0000000
1116 --- a/dev-python/pypy-bin/files/1.9-ssl-threads-1-34b3b5aac082.patch
1117 +++ /dev/null
1118 @@ -1,143 +0,0 @@
1119 -changeset: 55575:34b3b5aac082
1120 -parent: 55569:fa8262a5746a
1121 -user: Armin Rigo <arigo@×××××.org>
1122 -date: Mon Jun 11 14:38:35 2012 +0200
1123 -summary: Move the callback logic to C code instead of using RPython code
1124 -
1125 -diff -r fa8262a5746a -r 34b3b5aac082 pypy/module/_ssl/__init__.py
1126 ---- a/pypy/module/_ssl/__init__.py Mon Jun 11 11:04:53 2012 +0200
1127 -+++ b/pypy/module/_ssl/__init__.py Mon Jun 11 14:38:35 2012 +0200
1128 -@@ -31,5 +31,6 @@
1129 - def startup(self, space):
1130 - from pypy.rlib.ropenssl import init_ssl
1131 - init_ssl()
1132 -- from pypy.module._ssl.interp_ssl import setup_ssl_threads
1133 -- setup_ssl_threads()
1134 -+ if space.config.objspace.usemodules.thread:
1135 -+ from pypy.module._ssl.thread_lock import setup_ssl_threads
1136 -+ setup_ssl_threads()
1137 -diff -r fa8262a5746a -r 34b3b5aac082 pypy/module/_ssl/interp_ssl.py
1138 ---- a/pypy/module/_ssl/interp_ssl.py Mon Jun 11 11:04:53 2012 +0200
1139 -+++ b/pypy/module/_ssl/interp_ssl.py Mon Jun 11 14:38:35 2012 +0200
1140 -@@ -880,38 +880,3 @@
1141 - libssl_X509_free(x)
1142 - finally:
1143 - libssl_BIO_free(cert)
1144 --
1145 --# this function is needed to perform locking on shared data
1146 --# structures. (Note that OpenSSL uses a number of global data
1147 --# structures that will be implicitly shared whenever multiple threads
1148 --# use OpenSSL.) Multi-threaded applications will crash at random if
1149 --# it is not set.
1150 --#
1151 --# locking_function() must be able to handle up to CRYPTO_num_locks()
1152 --# different mutex locks. It sets the n-th lock if mode & CRYPTO_LOCK, and
1153 --# releases it otherwise.
1154 --#
1155 --# filename and line are the file number of the function setting the
1156 --# lock. They can be useful for debugging.
1157 --_ssl_locks = []
1158 --
1159 --def _ssl_thread_locking_function(mode, n, filename, line):
1160 -- n = intmask(n)
1161 -- if n < 0 or n >= len(_ssl_locks):
1162 -- return
1163 --
1164 -- if intmask(mode) & CRYPTO_LOCK:
1165 -- _ssl_locks[n].acquire(True)
1166 -- else:
1167 -- _ssl_locks[n].release()
1168 --
1169 --def _ssl_thread_id_function():
1170 -- from pypy.module.thread import ll_thread
1171 -- return rffi.cast(rffi.LONG, ll_thread.get_ident())
1172 --
1173 --def setup_ssl_threads():
1174 -- from pypy.module.thread import ll_thread
1175 -- for i in range(libssl_CRYPTO_num_locks()):
1176 -- _ssl_locks.append(ll_thread.allocate_lock())
1177 -- libssl_CRYPTO_set_locking_callback(_ssl_thread_locking_function)
1178 -- libssl_CRYPTO_set_id_callback(_ssl_thread_id_function)
1179 -diff -r fa8262a5746a -r 34b3b5aac082 pypy/module/_ssl/thread_lock.py
1180 ---- /dev/null Thu Jan 01 00:00:00 1970 +0000
1181 -+++ b/pypy/module/_ssl/thread_lock.py Mon Jun 11 14:38:35 2012 +0200
1182 -@@ -0,0 +1,78 @@
1183 -+from pypy.rlib.ropenssl import *
1184 -+from pypy.rpython.lltypesystem import lltype, rffi
1185 -+from pypy.translator.tool.cbuild import ExternalCompilationInfo
1186 -+
1187 -+# CRYPTO_set_locking_callback:
1188 -+#
1189 -+# this function is needed to perform locking on shared data
1190 -+# structures. (Note that OpenSSL uses a number of global data
1191 -+# structures that will be implicitly shared whenever multiple threads
1192 -+# use OpenSSL.) Multi-threaded applications will crash at random if
1193 -+# it is not set.
1194 -+#
1195 -+# locking_function() must be able to handle up to CRYPTO_num_locks()
1196 -+# different mutex locks. It sets the n-th lock if mode & CRYPTO_LOCK, and
1197 -+# releases it otherwise.
1198 -+#
1199 -+# filename and line are the file number of the function setting the
1200 -+# lock. They can be useful for debugging.
1201 -+
1202 -+
1203 -+# This logic is moved to C code so that the callbacks can be invoked
1204 -+# without caring about the GIL.
1205 -+
1206 -+separate_module_source = """
1207 -+
1208 -+#include <openssl/crypto.h>
1209 -+
1210 -+static unsigned int _ssl_locks_count = 0;
1211 -+static struct RPyOpaque_ThreadLock *_ssl_locks;
1212 -+
1213 -+static unsigned long _ssl_thread_id_function(void) {
1214 -+ return RPyThreadGetIdent();
1215 -+}
1216 -+
1217 -+static void _ssl_thread_locking_function(int mode, int n, const char *file,
1218 -+ int line) {
1219 -+ if ((_ssl_locks == NULL) ||
1220 -+ (n < 0) || ((unsigned)n >= _ssl_locks_count))
1221 -+ return;
1222 -+
1223 -+ if (mode & CRYPTO_LOCK) {
1224 -+ RPyThreadAcquireLock(_ssl_locks[n], 1);
1225 -+ } else {
1226 -+ RPyThreadReleaseLock(_ssl_locks[n]);
1227 -+ }
1228 -+}
1229 -+
1230 -+int _PyPy_SSL_SetupThreads(void)
1231 -+{
1232 -+ unsigned int i;
1233 -+ _ssl_locks_count = CRYPTO_num_locks();
1234 -+ _ssl_locks = calloc(_ssl_locks_count, sizeof(struct RPyOpaque_ThreadLock));
1235 -+ if (_ssl_locks == NULL)
1236 -+ return 0;
1237 -+ for (i=0; i<_ssl_locks_count; i++) {
1238 -+ if (RPyThreadLockInit(_ssl_locks + i) == 0)
1239 -+ return 0;
1240 -+ }
1241 -+ CRYPTO_set_locking_callback(_ssl_thread_locking_function);
1242 -+ CRYPTO_set_id_callback(_ssl_thread_id_function);
1243 -+ return 1;
1244 -+}
1245 -+"""
1246 -+
1247 -+
1248 -+eci = ExternalCompilationInfo(
1249 -+ separate_module_sources=[separate_module_source],
1250 -+ export_symbols=['_PyPy_SSL_SetupThreads'],
1251 -+)
1252 -+
1253 -+_PyPy_SSL_SetupThreads = rffi.llexternal('_PyPy_SSL_SetupThreads',
1254 -+ [], rffi.INT,
1255 -+ compilation_info=eci)
1256 -+
1257 -+def setup_ssl_threads():
1258 -+ result = _PyPy_SSL_SetupThreads()
1259 -+ if rffi.cast(lltype.Signed, result) == 0:
1260 -+ raise MemoryError
1261 -
1262
1263 diff --git a/dev-python/pypy-bin/files/1.9-ssl-threads-2-25cd11066d95.patch b/dev-python/pypy-bin/files/1.9-ssl-threads-2-25cd11066d95.patch
1264 deleted file mode 100644
1265 index a1878f3..0000000
1266 --- a/dev-python/pypy-bin/files/1.9-ssl-threads-2-25cd11066d95.patch
1267 +++ /dev/null
1268 @@ -1,22 +0,0 @@
1269 -changeset: 55578:25cd11066d95
1270 -tag: tip
1271 -user: Armin Rigo <arigo@×××××.org>
1272 -date: Mon Jun 11 15:19:38 2012 +0200
1273 -summary: Fix.
1274 -
1275 -diff -r e701bca5f3b9 -r 25cd11066d95 pypy/module/_ssl/thread_lock.py
1276 ---- a/pypy/module/_ssl/thread_lock.py Mon Jun 11 15:01:00 2012 +0200
1277 -+++ b/pypy/module/_ssl/thread_lock.py Mon Jun 11 15:19:38 2012 +0200
1278 -@@ -39,9 +39,9 @@
1279 - return;
1280 -
1281 - if (mode & CRYPTO_LOCK) {
1282 -- RPyThreadAcquireLock(_ssl_locks[n], 1);
1283 -+ RPyThreadAcquireLock(_ssl_locks + n, 1);
1284 - } else {
1285 -- RPyThreadReleaseLock(_ssl_locks[n]);
1286 -+ RPyThreadReleaseLock(_ssl_locks + n);
1287 - }
1288 - }
1289 -
1290 -
1291
1292 diff --git a/dev-python/pypy-bin/files/2.0.2-distutils-fix_handling_of_executables_and_flags.patch b/dev-python/pypy-bin/files/2.0.2-distutils-fix_handling_of_executables_and_flags.patch
1293 deleted file mode 100644
1294 index db7db3b..0000000
1295 --- a/dev-python/pypy-bin/files/2.0.2-distutils-fix_handling_of_executables_and_flags.patch
1296 +++ /dev/null
1297 @@ -1,323 +0,0 @@
1298 -http://bugs.python.org/issue1222585
1299 -
1300 ---- lib-python/2.7/distutils/cygwinccompiler.py
1301 -+++ lib-python/2.7/distutils/cygwinccompiler.py
1302 -@@ -132,9 +132,13 @@
1303 - self.set_executables(compiler='gcc -mcygwin -O -Wall',
1304 - compiler_so='gcc -mcygwin -mdll -O -Wall',
1305 - compiler_cxx='g++ -mcygwin -O -Wall',
1306 -+ compiler_so_cxx='g++ -mcygwin -mdll -O -Wall',
1307 - linker_exe='gcc -mcygwin',
1308 - linker_so=('%s -mcygwin %s' %
1309 -- (self.linker_dll, shared_option)))
1310 -+ (self.linker_dll, shared_option)),
1311 -+ linker_exe_cxx='g++ -mcygwin',
1312 -+ linker_so_cxx=('%s -mcygwin %s' %
1313 -+ (self.linker_dll, shared_option)))
1314 -
1315 - # cygwin and mingw32 need different sets of libraries
1316 - if self.gcc_version == "2.91.57":
1317 -@@ -160,8 +164,12 @@
1318 - raise CompileError, msg
1319 - else: # for other files use the C-compiler
1320 - try:
1321 -- self.spawn(self.compiler_so + cc_args + [src, '-o', obj] +
1322 -- extra_postargs)
1323 -+ if self.detect_language(src) == 'c++':
1324 -+ self.spawn(self.compiler_so_cxx + cc_args + [src, '-o', obj] +
1325 -+ extra_postargs)
1326 -+ else:
1327 -+ self.spawn(self.compiler_so + cc_args + [src, '-o', obj] +
1328 -+ extra_postargs)
1329 - except DistutilsExecError, msg:
1330 - raise CompileError, msg
1331 -
1332 -@@ -322,10 +330,15 @@
1333 - self.set_executables(compiler='gcc -mno-cygwin -O -Wall',
1334 - compiler_so='gcc -mno-cygwin -mdll -O -Wall',
1335 - compiler_cxx='g++ -mno-cygwin -O -Wall',
1336 -+ compiler_so_cxx='g++ -mno-cygwin -mdll -O -Wall',
1337 - linker_exe='gcc -mno-cygwin',
1338 - linker_so='%s -mno-cygwin %s %s'
1339 - % (self.linker_dll, shared_option,
1340 -- entry_point))
1341 -+ entry_point),
1342 -+ linker_exe_cxx='g++ -mno-cygwin',
1343 -+ linker_so_cxx='%s -mno-cygwin %s %s'
1344 -+ % (self.linker_dll, shared_option,
1345 -+ entry_point))
1346 - # Maybe we should also append -mthreads, but then the finished
1347 - # dlls need another dll (mingwm10.dll see Mingw32 docs)
1348 - # (-mthreads: Support thread-safe exception handling on `Mingw32')
1349 ---- lib-python/2.7/distutils/emxccompiler.py
1350 -+++ lib-python/2.7/distutils/emxccompiler.py
1351 -@@ -65,8 +65,12 @@
1352 - # XXX optimization, warnings etc. should be customizable.
1353 - self.set_executables(compiler='gcc -Zomf -Zmt -O3 -fomit-frame-pointer -mprobe -Wall',
1354 - compiler_so='gcc -Zomf -Zmt -O3 -fomit-frame-pointer -mprobe -Wall',
1355 -+ compiler_cxx='g++ -Zomf -Zmt -O3 -fomit-frame-pointer -mprobe -Wall',
1356 -+ compiler_so_cxx='g++ -Zomf -Zmt -O3 -fomit-frame-pointer -mprobe -Wall',
1357 - linker_exe='gcc -Zomf -Zmt -Zcrtdll',
1358 -- linker_so='gcc -Zomf -Zmt -Zcrtdll -Zdll')
1359 -+ linker_so='gcc -Zomf -Zmt -Zcrtdll -Zdll',
1360 -+ linker_exe_cxx='g++ -Zomf -Zmt -Zcrtdll',
1361 -+ linker_so_cxx='g++ -Zomf -Zmt -Zcrtdll -Zdll')
1362 -
1363 - # want the gcc library statically linked (so that we don't have
1364 - # to distribute a version dependent on the compiler we have)
1365 -@@ -83,8 +87,12 @@
1366 - raise CompileError, msg
1367 - else: # for other files use the C-compiler
1368 - try:
1369 -- self.spawn(self.compiler_so + cc_args + [src, '-o', obj] +
1370 -- extra_postargs)
1371 -+ if self.detect_language(src) == 'c++':
1372 -+ self.spawn(self.compiler_so_cxx + cc_args + [src, '-o', obj] +
1373 -+ extra_postargs)
1374 -+ else:
1375 -+ self.spawn(self.compiler_so + cc_args + [src, '-o', obj] +
1376 -+ extra_postargs)
1377 - except DistutilsExecError, msg:
1378 - raise CompileError, msg
1379 -
1380 ---- lib-python/2.7/distutils/sysconfig_cpython.py
1381 -+++ lib-python/2.7/distutils/sysconfig_cpython.py
1382 -@@ -150,10 +150,12 @@
1383 - varies across Unices and is stored in Python's Makefile.
1384 - """
1385 - if compiler.compiler_type == "unix":
1386 -- (cc, cxx, opt, cflags, ccshared, ldshared, so_ext, ar, ar_flags) = \
1387 -- get_config_vars('CC', 'CXX', 'OPT', 'CFLAGS',
1388 -- 'CCSHARED', 'LDSHARED', 'SO', 'AR',
1389 -- 'ARFLAGS')
1390 -+ (cc, cxx, ccshared, ldshared, ldcxxshared, so_ext, ar, ar_flags) = \
1391 -+ get_config_vars('CC', 'CXX', 'CCSHARED', 'LDSHARED', 'LDCXXSHARED',
1392 -+ 'SO', 'AR', 'ARFLAGS')
1393 -+
1394 -+ cflags = ''
1395 -+ cxxflags = ''
1396 -
1397 - newcc = None
1398 - if 'CC' in os.environ:
1399 -@@ -191,19 +193,27 @@
1400 - cxx = os.environ['CXX']
1401 - if 'LDSHARED' in os.environ:
1402 - ldshared = os.environ['LDSHARED']
1403 -+ if 'LDCXXSHARED' in os.environ:
1404 -+ ldcxxshared = os.environ['LDCXXSHARED']
1405 - if 'CPP' in os.environ:
1406 - cpp = os.environ['CPP']
1407 - else:
1408 - cpp = cc + " -E" # not always
1409 - if 'LDFLAGS' in os.environ:
1410 - ldshared = ldshared + ' ' + os.environ['LDFLAGS']
1411 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['LDFLAGS']
1412 - if 'CFLAGS' in os.environ:
1413 -- cflags = opt + ' ' + os.environ['CFLAGS']
1414 -+ cflags = os.environ['CFLAGS']
1415 - ldshared = ldshared + ' ' + os.environ['CFLAGS']
1416 -+ if 'CXXFLAGS' in os.environ:
1417 -+ cxxflags = os.environ['CXXFLAGS']
1418 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['CXXFLAGS']
1419 - if 'CPPFLAGS' in os.environ:
1420 - cpp = cpp + ' ' + os.environ['CPPFLAGS']
1421 - cflags = cflags + ' ' + os.environ['CPPFLAGS']
1422 -+ cxxflags = cxxflags + ' ' + os.environ['CPPFLAGS']
1423 - ldshared = ldshared + ' ' + os.environ['CPPFLAGS']
1424 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['CPPFLAGS']
1425 - if 'AR' in os.environ:
1426 - ar = os.environ['AR']
1427 - if 'ARFLAGS' in os.environ:
1428 -@@ -212,13 +222,17 @@
1429 - archiver = ar + ' ' + ar_flags
1430 -
1431 - cc_cmd = cc + ' ' + cflags
1432 -+ cxx_cmd = cxx + ' ' + cxxflags
1433 - compiler.set_executables(
1434 - preprocessor=cpp,
1435 - compiler=cc_cmd,
1436 - compiler_so=cc_cmd + ' ' + ccshared,
1437 -- compiler_cxx=cxx,
1438 -+ compiler_cxx=cxx_cmd,
1439 -+ compiler_so_cxx=cxx_cmd + ' ' + ccshared,
1440 - linker_so=ldshared,
1441 - linker_exe=cc,
1442 -+ linker_so_cxx=ldcxxshared,
1443 -+ linker_exe_cxx=cxx,
1444 - archiver=archiver)
1445 -
1446 - compiler.shared_lib_extension = so_ext
1447 -@@ -530,7 +544,7 @@
1448 - for key in ('LDFLAGS', 'BASECFLAGS', 'LDSHARED',
1449 - # a number of derived variables. These need to be
1450 - # patched up as well.
1451 -- 'CFLAGS', 'PY_CFLAGS', 'BLDSHARED'):
1452 -+ 'CFLAGS', 'CXXFLAGS', 'PY_CFLAGS', 'BLDSHARED'):
1453 - flags = _config_vars[key]
1454 - flags = re.sub('-arch\s+\w+\s', ' ', flags)
1455 - flags = re.sub('-isysroot [^ \t]*', ' ', flags)
1456 -@@ -549,7 +563,7 @@
1457 - for key in ('LDFLAGS', 'BASECFLAGS', 'LDSHARED',
1458 - # a number of derived variables. These need to be
1459 - # patched up as well.
1460 -- 'CFLAGS', 'PY_CFLAGS', 'BLDSHARED'):
1461 -+ 'CFLAGS', 'CXXFLAGS', 'PY_CFLAGS', 'BLDSHARED'):
1462 -
1463 - flags = _config_vars[key]
1464 - flags = re.sub('-arch\s+\w+\s', ' ', flags)
1465 -@@ -573,7 +587,7 @@
1466 - for key in ('LDFLAGS', 'BASECFLAGS', 'LDSHARED',
1467 - # a number of derived variables. These need to be
1468 - # patched up as well.
1469 -- 'CFLAGS', 'PY_CFLAGS', 'BLDSHARED'):
1470 -+ 'CFLAGS', 'CXXFLAGS', 'PY_CFLAGS', 'BLDSHARED'):
1471 -
1472 - flags = _config_vars[key]
1473 - flags = re.sub('-isysroot\s+\S+(\s|$)', ' ', flags)
1474 ---- lib-python/2.7/distutils/sysconfig_pypy.py
1475 -+++ lib-python/2.7/distutils/sysconfig_pypy.py
1476 -@@ -114,13 +114,56 @@
1477 - optional C speedup components.
1478 - """
1479 - if compiler.compiler_type == "unix":
1480 -- compiler.compiler_so.extend(['-O2', '-fPIC', '-Wimplicit'])
1481 -+ cc = ' '.join(compiler.compiler)
1482 -+ cxx = ' '.join(compiler.compiler_cxx)
1483 -+ ldshared = ' '.join(compiler.linker_so)
1484 -+ ldcxxshared = ' '.join(compiler.linker_so_cxx)
1485 -+
1486 -+ cflags = ''
1487 -+ cxxflags = ''
1488 -+ ccshared = '-fPIC'
1489 -+
1490 -+ if 'CC' in os.environ:
1491 -+ cc = os.environ['CC']
1492 -+ if 'CXX' in os.environ:
1493 -+ cxx = os.environ['CXX']
1494 -+ if 'LDSHARED' in os.environ:
1495 -+ ldshared = os.environ['LDSHARED']
1496 -+ if 'LDCXXSHARED' in os.environ:
1497 -+ ldcxxshared = os.environ['LDCXXSHARED']
1498 -+ if 'CPP' in os.environ:
1499 -+ cpp = os.environ['CPP']
1500 -+ else:
1501 -+ cpp = cc + " -E" # not always
1502 -+ if 'LDFLAGS' in os.environ:
1503 -+ ldshared = ldshared + ' ' + os.environ['LDFLAGS']
1504 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['LDFLAGS']
1505 -+ if 'CFLAGS' in os.environ:
1506 -+ cflags = os.environ['CFLAGS']
1507 -+ ldshared = ldshared + ' ' + os.environ['CFLAGS']
1508 -+ if 'CXXFLAGS' in os.environ:
1509 -+ cxxflags = os.environ['CXXFLAGS']
1510 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['CXXFLAGS']
1511 -+ if 'CPPFLAGS' in os.environ:
1512 -+ cpp = cpp + ' ' + os.environ['CPPFLAGS']
1513 -+ cflags = cflags + ' ' + os.environ['CPPFLAGS']
1514 -+ cxxflags = cxxflags + ' ' + os.environ['CPPFLAGS']
1515 -+ ldshared = ldshared + ' ' + os.environ['CPPFLAGS']
1516 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['CPPFLAGS']
1517 -+
1518 -+ cc_cmd = cc + ' ' + cflags
1519 -+ cxx_cmd = cxx + ' ' + cxxflags
1520 -+ compiler.set_executables(
1521 -+ preprocessor=cpp,
1522 -+ compiler=cc_cmd,
1523 -+ compiler_so=cc_cmd + ' ' + ccshared,
1524 -+ compiler_cxx=cxx_cmd,
1525 -+ compiler_so_cxx=cxx_cmd + ' ' + ccshared,
1526 -+ linker_so=ldshared,
1527 -+ linker_exe=cc,
1528 -+ linker_so_cxx=ldcxxshared,
1529 -+ linker_exe_cxx=cxx)
1530 - compiler.shared_lib_extension = get_config_var('SO')
1531 -- if "CFLAGS" in os.environ:
1532 -- cflags = os.environ["CFLAGS"]
1533 -- compiler.compiler.append(cflags)
1534 -- compiler.compiler_so.append(cflags)
1535 -- compiler.linker_so.append(cflags)
1536 -
1537 -
1538 - from sysconfig_cpython import (
1539 ---- lib-python/2.7/distutils/unixccompiler.py
1540 -+++ lib-python/2.7/distutils/unixccompiler.py
1541 -@@ -114,14 +114,17 @@
1542 - # are pretty generic; they will probably have to be set by an outsider
1543 - # (eg. using information discovered by the sysconfig about building
1544 - # Python extensions).
1545 -- executables = {'preprocessor' : None,
1546 -- 'compiler' : ["cc"],
1547 -- 'compiler_so' : ["cc"],
1548 -- 'compiler_cxx' : ["cc"],
1549 -- 'linker_so' : ["cc", "-shared"],
1550 -- 'linker_exe' : ["cc"],
1551 -- 'archiver' : ["ar", "-cr"],
1552 -- 'ranlib' : None,
1553 -+ executables = {'preprocessor' : None,
1554 -+ 'compiler' : ["cc"],
1555 -+ 'compiler_so' : ["cc"],
1556 -+ 'compiler_cxx' : ["c++"],
1557 -+ 'compiler_so_cxx' : ["c++"],
1558 -+ 'linker_so' : ["cc", "-shared"],
1559 -+ 'linker_exe' : ["cc"],
1560 -+ 'linker_so_cxx' : ["c++", "-shared"],
1561 -+ 'linker_exe_cxx' : ["c++"],
1562 -+ 'archiver' : ["ar", "-cr"],
1563 -+ 'ranlib' : None,
1564 - }
1565 -
1566 - if sys.platform[:6] == "darwin":
1567 -@@ -171,11 +174,18 @@
1568 -
1569 - def _compile(self, obj, src, ext, cc_args, extra_postargs, pp_opts):
1570 - compiler_so = self.compiler_so
1571 -+ compiler_so_cxx = self.compiler_so_cxx
1572 - if sys.platform == 'darwin':
1573 - compiler_so = _darwin_compiler_fixup(compiler_so, cc_args + extra_postargs)
1574 -+ compiler_so_cxx = _darwin_compiler_fixup(compiler_so_cxx, cc_args +
1575 -+ extra_postargs)
1576 - try:
1577 -- self.spawn(compiler_so + cc_args + [src, '-o', obj] +
1578 -- extra_postargs)
1579 -+ if self.detect_language(src) == 'c++':
1580 -+ self.spawn(compiler_so_cxx + cc_args + [src, '-o', obj] +
1581 -+ extra_postargs)
1582 -+ else:
1583 -+ self.spawn(compiler_so + cc_args + [src, '-o', obj] +
1584 -+ extra_postargs)
1585 - except DistutilsExecError, msg:
1586 - raise CompileError, msg
1587 -
1588 -@@ -232,23 +242,16 @@
1589 - ld_args.extend(extra_postargs)
1590 - self.mkpath(os.path.dirname(output_filename))
1591 - try:
1592 -- if target_desc == CCompiler.EXECUTABLE:
1593 -- linker = self.linker_exe[:]
1594 -+ if target_lang == "c++":
1595 -+ if target_desc == CCompiler.EXECUTABLE:
1596 -+ linker = self.linker_exe_cxx[:]
1597 -+ else:
1598 -+ linker = self.linker_so_cxx[:]
1599 - else:
1600 -- linker = self.linker_so[:]
1601 -- if target_lang == "c++" and self.compiler_cxx:
1602 -- # skip over environment variable settings if /usr/bin/env
1603 -- # is used to set up the linker's environment.
1604 -- # This is needed on OSX. Note: this assumes that the
1605 -- # normal and C++ compiler have the same environment
1606 -- # settings.
1607 -- i = 0
1608 -- if os.path.basename(linker[0]) == "env":
1609 -- i = 1
1610 -- while '=' in linker[i]:
1611 -- i = i + 1
1612 --
1613 -- linker[i] = self.compiler_cxx[i]
1614 -+ if target_desc == CCompiler.EXECUTABLE:
1615 -+ linker = self.linker_exe[:]
1616 -+ else:
1617 -+ linker = self.linker_so[:]
1618 -
1619 - if sys.platform == 'darwin':
1620 - linker = _darwin_compiler_fixup(linker, ld_args)
1621
1622 diff --git a/dev-python/pypy-bin/metadata.xml b/dev-python/pypy-bin/metadata.xml
1623 deleted file mode 100644
1624 index 8c56cbd..0000000
1625 --- a/dev-python/pypy-bin/metadata.xml
1626 +++ /dev/null
1627 @@ -1,13 +0,0 @@
1628 -<?xml version="1.0" encoding="UTF-8"?>
1629 -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
1630 -<pkgmetadata>
1631 - <herd>python</herd>
1632 - <maintainer>
1633 - <email>mgorny@g.o</email>
1634 - <name>Michał Górny</name>
1635 - <description>amd64 build maintainer</description>
1636 - </maintainer>
1637 - <use>
1638 - <flag name="shadowstack">Use a shadow stack for finding GC roots</flag>
1639 - </use>
1640 -</pkgmetadata>
1641
1642 diff --git a/dev-python/pypy-bin/pypy-bin-1.9.ebuild b/dev-python/pypy-bin/pypy-bin-1.9.ebuild
1643 deleted file mode 100644
1644 index 292bb6a..0000000
1645 --- a/dev-python/pypy-bin/pypy-bin-1.9.ebuild
1646 +++ /dev/null
1647 @@ -1,155 +0,0 @@
1648 -# Copyright 1999-2013 Gentoo Foundation
1649 -# Distributed under the terms of the GNU General Public License v2
1650 -# $Header: /var/cvsroot/gentoo-x86/dev-python/pypy/pypy-1.9-r2.ebuild,v 1.5 2013/07/22 06:54:59 mgorny Exp $
1651 -
1652 -EAPI=5
1653 -
1654 -PYTHON_COMPAT=( python2_7 pypy{1_8,1_9,2_0} )
1655 -inherit eutils multilib pax-utils python-any-r1 vcs-snapshot versionator
1656 -
1657 -BINHOST="http://dev.gentoo.org/~mgorny/dist/${PN}"
1658 -
1659 -DESCRIPTION="A fast, compliant alternative implementation of the Python language (binary package)"
1660 -HOMEPAGE="http://pypy.org/"
1661 -SRC_URI="https://bitbucket.org/pypy/pypy/get/release-${PV}.tar.bz2 -> pypy-${PV}.tar.bz2
1662 - amd64? (
1663 - jit? ( shadowstack? (
1664 - ${BINHOST}/${P}-amd64+bzip2+jit+ncurses+shadowstack.tar.xz
1665 - ) )
1666 - jit? ( !shadowstack? (
1667 - ${BINHOST}/${P}-amd64+bzip2+jit+ncurses.tar.xz
1668 - ) )
1669 - !jit? ( !shadowstack? (
1670 - ${BINHOST}/${P}-amd64+bzip2+ncurses.tar.xz
1671 - ) )
1672 - )
1673 - x86? (
1674 - sse2? (
1675 - jit? ( shadowstack? (
1676 - ${BINHOST}/${P}-x86+bzip2+jit+ncurses+shadowstack+sse2.tar.xz
1677 - ) )
1678 - jit? ( !shadowstack? (
1679 - ${BINHOST}/${P}-x86+bzip2+jit+ncurses+sse2.tar.xz
1680 - ) )
1681 - !jit? ( !shadowstack? (
1682 - ${BINHOST}/${P}-x86+bzip2+ncurses+sse2.tar.xz
1683 - ) )
1684 - )
1685 - !sse2? (
1686 - !jit? ( !shadowstack? (
1687 - ${BINHOST}/${P}-x86+bzip2+ncurses.tar.xz
1688 - ) )
1689 - )
1690 - )"
1691 -
1692 -# Supported variants
1693 -REQUIRED_USE="!jit? ( !shadowstack )
1694 - x86? ( !sse2? ( !jit !shadowstack ) )"
1695 -
1696 -LICENSE="MIT"
1697 -SLOT=$(get_version_component_range 1-2 ${PV})
1698 -KEYWORDS="~amd64 ~x86"
1699 -IUSE="doc +jit shadowstack sqlite sse2 test"
1700 -
1701 -RDEPEND="
1702 - ~app-arch/bzip2-1.0.6
1703 - ~dev-libs/expat-2.1.0
1704 - || ( ~dev-libs/libffi-3.0.13
1705 - ~dev-libs/libffi-3.0.12
1706 - ~dev-libs/libffi-3.0.11 )
1707 - || ( ~dev-libs/openssl-1.0.1e
1708 - ~dev-libs/openssl-1.0.1d
1709 - ~dev-libs/openssl-1.0.1c )
1710 - || ( ~sys-libs/glibc-2.17
1711 - ~sys-libs/glibc-2.16.0
1712 - ~sys-libs/glibc-2.15 )
1713 - ~sys-libs/ncurses-5.9
1714 - || ( ~sys-libs/zlib-1.2.8
1715 - ~sys-libs/zlib-1.2.7 )
1716 - sqlite? ( dev-db/sqlite:3 )
1717 - !dev-python/pypy:${SLOT}"
1718 -DEPEND="doc? ( dev-python/sphinx )
1719 - test? ( ${RDEPEND} )"
1720 -PDEPEND="app-admin/python-updater"
1721 -
1722 -S=${WORKDIR}/pypy-${PV}
1723 -
1724 -pkg_setup() {
1725 - use doc && python-any-r1_pkg_setup
1726 -}
1727 -
1728 -src_prepare() {
1729 - epatch "${FILESDIR}/${PV}-no-bytecode-4151f9c406b6.patch"
1730 - epatch "${FILESDIR}/${PV}-scripts-location.patch"
1731 - epatch "${FILESDIR}/${PV}-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch"
1732 - epatch "${FILESDIR}/${PV}-distutils-fix_handling_of_executables_and_flags.patch"
1733 - epatch "${FILESDIR}/${PV}-ssl-threads-1-34b3b5aac082.patch"
1734 - epatch "${FILESDIR}/${PV}-ssl-threads-2-25cd11066d95.patch"
1735 - epatch "${FILESDIR}/${PV}-get_python_lib_standard_lib-04ea518e5b71.patch"
1736 - epatch "${FILESDIR}/${PV}-more-ignored-ops-a9a8faa76bca.patch"
1737 - epatch "${FILESDIR}/${PV}-more-ignored-ops-146ddf82a279.patch"
1738 - epatch "${FILESDIR}/${PV}-pybuffer-release-double-decref-4ec2a5b49386.patch"
1739 - epatch "${FILESDIR}/${PV}-signal-a33052b17f4e.patch"
1740 - epatch "${FILESDIR}/${PV}-getargs-freelist-c26dc70ee340.patch"
1741 - epatch "${FILESDIR}/${PV}-ssl-errors-25d3418150d2.patch"
1742 -
1743 - # The following is Gentoo-specific.
1744 - epatch "${FILESDIR}/${PV}-no-static-hack.patch"
1745 -
1746 - epatch_user
1747 -}
1748 -
1749 -src_compile() {
1750 - # Tadaam! PyPy compiled!
1751 - mv "${WORKDIR}"/${P}*/pypy-c . || die
1752 - mv "${WORKDIR}"/${P}*/include/*.h include/ || die
1753 - mv pypy/module/cpyext/include/*.h include/ || die
1754 -
1755 - use doc && emake -C pypy/doc/ html
1756 -}
1757 -
1758 -src_test() {
1759 - # (unset)
1760 - local -x PYTHONDONTWRITEBYTECODE
1761 -
1762 - ./pypy-c ./pypy/test_all.py --pypy=./pypy-c lib-python || die
1763 -}
1764 -
1765 -src_install() {
1766 - einfo "Installing PyPy ..."
1767 - insinto "/usr/$(get_libdir)/pypy${SLOT}"
1768 - doins -r include lib_pypy lib-python pypy-c
1769 - fperms a+x ${INSDESTTREE}/pypy-c
1770 - use jit && pax-mark m "${ED%/}${INSDESTTREE}/pypy-c"
1771 - dosym ../$(get_libdir)/pypy${SLOT}/pypy-c /usr/bin/pypy-c${SLOT}
1772 - dosym ../$(get_libdir)/pypy${SLOT}/include /usr/include/pypy${SLOT}
1773 - dodoc README
1774 -
1775 - if ! use sqlite; then
1776 - rm -r "${ED%/}${INSDESTTREE}"/lib-python/*2.7/sqlite3 || die
1777 - rm "${ED%/}${INSDESTTREE}"/lib_pypy/_sqlite3.py || die
1778 - fi
1779 -
1780 - # Install docs
1781 - use doc && dohtml -r pypy/doc/_build/html/
1782 -
1783 - einfo "Generating caches and byte-compiling ..."
1784 -
1785 - python_export pypy-c${SLOT} EPYTHON PYTHON PYTHON_SITEDIR
1786 - local PYTHON=${ED%/}${INSDESTTREE}/pypy-c
1787 -
1788 - echo "EPYTHON='${EPYTHON}'" > epython.py
1789 - python_domodule epython.py
1790 -
1791 - # Note: call portage helpers before this line.
1792 - # PYTHONPATH confuses them and will result in random failures.
1793 -
1794 - local -x PYTHONPATH="${ED%/}${INSDESTTREE}/lib_pypy:${ED%/}${INSDESTTREE}/lib-python/2.7"
1795 -
1796 - # Generate Grammar and PatternGrammar pickles.
1797 - "${PYTHON}" -c "import lib2to3.pygram, lib2to3.patcomp; lib2to3.patcomp.PatternCompiler()" \
1798 - || die "Generation of Grammar and PatternGrammar pickles failed"
1799 -
1800 - # compile the installed modules
1801 - python_optimize "${ED%/}${INSDESTTREE}"
1802 -}
1803
1804 diff --git a/dev-python/pypy-bin/pypy-bin-2.0.2.ebuild b/dev-python/pypy-bin/pypy-bin-2.0.2.ebuild
1805 deleted file mode 100644
1806 index b4d1794..0000000
1807 --- a/dev-python/pypy-bin/pypy-bin-2.0.2.ebuild
1808 +++ /dev/null
1809 @@ -1,148 +0,0 @@
1810 -# Copyright 1999-2013 Gentoo Foundation
1811 -# Distributed under the terms of the GNU General Public License v2
1812 -# $Header: /var/cvsroot/gentoo-x86/dev-python/pypy/pypy-2.0.2.ebuild,v 1.3 2013/06/18 10:41:29 idella4 Exp $
1813 -
1814 -EAPI=5
1815 -
1816 -PYTHON_COMPAT=( python2_7 pypy{1_8,1_9,2_0} )
1817 -inherit eutils multilib pax-utils python-any-r1 versionator
1818 -
1819 -BINHOST="http://dev.gentoo.org/~mgorny/dist/${PN}"
1820 -
1821 -DESCRIPTION="A fast, compliant alternative implementation of the Python language (binary package)"
1822 -HOMEPAGE="http://pypy.org/"
1823 -SRC_URI="mirror://bitbucket/pypy/pypy/downloads/pypy-${PV}-src.tar.bz2
1824 - amd64? (
1825 - jit? ( shadowstack? (
1826 - ${BINHOST}/${P}-amd64+bzip2+jit+ncurses+shadowstack.tar.xz
1827 - ) )
1828 - jit? ( !shadowstack? (
1829 - ${BINHOST}/${P}-amd64+bzip2+jit+ncurses.tar.xz
1830 - ) )
1831 - !jit? ( !shadowstack? (
1832 - ${BINHOST}/${P}-amd64+bzip2+ncurses.tar.xz
1833 - ) )
1834 - )
1835 - x86? (
1836 - sse2? (
1837 - jit? ( shadowstack? (
1838 - ${BINHOST}/${P}-x86+bzip2+jit+ncurses+shadowstack+sse2.tar.xz
1839 - ) )
1840 - jit? ( !shadowstack? (
1841 - ${BINHOST}/${P}-x86+bzip2+jit+ncurses+sse2.tar.xz
1842 - ) )
1843 - !jit? ( !shadowstack? (
1844 - ${BINHOST}/${P}-x86+bzip2+ncurses+sse2.tar.xz
1845 - ) )
1846 - )
1847 - !sse2? (
1848 - !jit? ( !shadowstack? (
1849 - ${BINHOST}/${P}-x86+bzip2+ncurses.tar.xz
1850 - ) )
1851 - )
1852 - )"
1853 -
1854 -# Supported variants
1855 -REQUIRED_USE="!jit? ( !shadowstack )
1856 - x86? ( !sse2? ( !jit !shadowstack ) )"
1857 -
1858 -LICENSE="MIT"
1859 -SLOT=$(get_version_component_range 1-2 ${PV})
1860 -KEYWORDS="~amd64 ~x86"
1861 -IUSE="doc +jit shadowstack sqlite sse2 test"
1862 -
1863 -RDEPEND="
1864 - ~app-arch/bzip2-1.0.6
1865 - ~dev-libs/expat-2.1.0
1866 - || ( ~dev-libs/libffi-3.0.13
1867 - ~dev-libs/libffi-3.0.12
1868 - ~dev-libs/libffi-3.0.11 )
1869 - || ( ~dev-libs/openssl-1.0.1e
1870 - ~dev-libs/openssl-1.0.1d
1871 - ~dev-libs/openssl-1.0.1c )
1872 - || ( ~sys-libs/glibc-2.17
1873 - ~sys-libs/glibc-2.16.0
1874 - ~sys-libs/glibc-2.15 )
1875 - ~sys-libs/ncurses-5.9
1876 - || ( ~sys-libs/zlib-1.2.8
1877 - ~sys-libs/zlib-1.2.7 )
1878 - sqlite? ( dev-db/sqlite:3 )
1879 - !dev-python/pypy:${SLOT}"
1880 -DEPEND="doc? ( dev-python/sphinx )
1881 - test? ( ${RDEPEND} )"
1882 -PDEPEND="app-admin/python-updater"
1883 -
1884 -S=${WORKDIR}/pypy-${PV}-src
1885 -
1886 -pkg_setup() {
1887 - use doc && python-any-r1_pkg_setup
1888 -}
1889 -
1890 -src_prepare() {
1891 - epatch "${FILESDIR}/1.9-scripts-location.patch"
1892 - epatch "${FILESDIR}/1.9-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch"
1893 - epatch "${FILESDIR}/2.0.2-distutils-fix_handling_of_executables_and_flags.patch"
1894 -
1895 - epatch_user
1896 -}
1897 -
1898 -src_compile() {
1899 - # Tadaam! PyPy compiled!
1900 - mv "${WORKDIR}"/${P}*/pypy-c . || die
1901 - mv "${WORKDIR}"/${P}*/include/*.h include/ || die
1902 - mv pypy/module/cpyext/include/*.h include/ || die
1903 -
1904 - use doc && emake -C pypy/doc/ html
1905 -}
1906 -
1907 -src_test() {
1908 - # (unset)
1909 - local -x PYTHONDONTWRITEBYTECODE
1910 -
1911 - ./pypy-c ./pypy/test_all.py --pypy=./pypy-c lib-python || die
1912 -}
1913 -
1914 -src_install() {
1915 - einfo "Installing PyPy ..."
1916 - insinto "/usr/$(get_libdir)/pypy${SLOT}"
1917 - doins -r include lib_pypy lib-python pypy-c
1918 - fperms a+x ${INSDESTTREE}/pypy-c
1919 - use jit && pax-mark m "${ED%/}${INSDESTTREE}/pypy-c"
1920 - dosym ../$(get_libdir)/pypy${SLOT}/pypy-c /usr/bin/pypy-c${SLOT}
1921 - dosym ../$(get_libdir)/pypy${SLOT}/include /usr/include/pypy${SLOT}
1922 - dodoc README.rst
1923 -
1924 - if ! use sqlite; then
1925 - rm -r "${ED%/}${INSDESTTREE}"/lib-python/*2.7/sqlite3 || die
1926 - rm "${ED%/}${INSDESTTREE}"/lib_pypy/_sqlite3.py || die
1927 - fi
1928 -
1929 - # Install docs
1930 - use doc && dohtml -r pypy/doc/_build/html/
1931 -
1932 - einfo "Generating caches and byte-compiling ..."
1933 -
1934 - python_export pypy-c${SLOT} EPYTHON PYTHON PYTHON_SITEDIR
1935 - local PYTHON=${ED%/}${INSDESTTREE}/pypy-c
1936 -
1937 - echo "EPYTHON='${EPYTHON}'" > epython.py
1938 - python_domodule epython.py
1939 -
1940 - # Note: call portage helpers before this line.
1941 - # PYTHONPATH confuses them and will result in random failures.
1942 -
1943 - local -x PYTHONPATH="${ED%/}${INSDESTTREE}/lib_pypy:${ED%/}${INSDESTTREE}/lib-python/2.7"
1944 -
1945 - # Generate Grammar and PatternGrammar pickles.
1946 - "${PYTHON}" -c "import lib2to3.pygram, lib2to3.patcomp; lib2to3.patcomp.PatternCompiler()" \
1947 - || die "Generation of Grammar and PatternGrammar pickles failed"
1948 -
1949 - # Generate cffi cache
1950 - "${PYTHON}" -c "import _curses" || die "Failed to import _curses"
1951 - if use sqlite; then
1952 - "${PYTHON}" -c "import _sqlite3" || die "Failed to import _sqlite3"
1953 - fi
1954 -
1955 - # compile the installed modules
1956 - python_optimize "${ED%/}${INSDESTTREE}"
1957 -}
1958
1959 diff --git a/mail-client/claws-mail-gkr/claws-mail-gkr-9999.ebuild b/mail-client/claws-mail-gkr/claws-mail-gkr-9999.ebuild
1960 deleted file mode 100644
1961 index 755112d..0000000
1962 --- a/mail-client/claws-mail-gkr/claws-mail-gkr-9999.ebuild
1963 +++ /dev/null
1964 @@ -1,31 +0,0 @@
1965 -# Copyright 1999-2012 Gentoo Foundation
1966 -# Distributed under the terms of the GNU General Public License v2
1967 -# $Header: $
1968 -
1969 -EAPI=4
1970 -
1971 -#if LIVE
1972 -AUTOTOOLS_AUTORECONF=yes
1973 -EGIT_REPO_URI="http://bitbucket.org/mgorny/${PN}.git"
1974 -
1975 -inherit git-2
1976 -#endif
1977 -
1978 -inherit autotools-utils
1979 -
1980 -DESCRIPTION="Gnome-keyring password storage plugin for claws-mail"
1981 -HOMEPAGE="https://bitbucket.org/mgorny/claws-mail-gkr/"
1982 -SRC_URI="mirror://bitbucket/mgorny/${PN}/downloads/${P}.tar.bz2"
1983 -
1984 -LICENSE="GPL-2"
1985 -SLOT="0"
1986 -KEYWORDS="~amd64 ~x86"
1987 -IUSE=""
1988 -
1989 -# XXX: raise it when patch applied
1990 -RDEPEND="mail-client/claws-mail"
1991 -
1992 -#if LIVE
1993 -KEYWORDS=
1994 -SRC_URI=
1995 -#endif
1996
1997 diff --git a/mail-client/claws-mail-gkr/metadata.xml b/mail-client/claws-mail-gkr/metadata.xml
1998 deleted file mode 100644
1999 index b15b64a..0000000
2000 --- a/mail-client/claws-mail-gkr/metadata.xml
2001 +++ /dev/null
2002 @@ -1,15 +0,0 @@
2003 -<?xml version="1.0" encoding="UTF-8"?>
2004 -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
2005 -<pkgmetadata>
2006 - <maintainer>
2007 - <email>mgorny@g.o</email>
2008 - <name>Michał Górny</name>
2009 - </maintainer>
2010 - <upstream>
2011 - <maintainer status="active">
2012 - <email>mgorny@g.o</email>
2013 - <name>Michał Górny</name>
2014 - </maintainer>
2015 - <bugs-to>https://bitbucket.org/mgorny/claws-mail-gkr/issues/</bugs-to>
2016 - </upstream>
2017 -</pkgmetadata>