1 |
commit: 7e36c68a53910f208788c822a1d12fa12582669f |
2 |
Author: Michał Górny <mgorny <AT> gentoo <DOT> org> |
3 |
AuthorDate: Mon Jun 30 08:30:59 2014 +0000 |
4 |
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> |
5 |
CommitDate: Mon Jun 30 08:30:59 2014 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=dev/mgorny.git;a=commit;h=7e36c68a |
7 |
|
8 |
dev-python/pypy-binpackage: bump. |
9 |
|
10 |
--- |
11 |
dev-python/pypy-binpackage/Manifest | 2 +- |
12 |
.../files/2.3-21_all_distutils_c++.patch | 321 +++++++++++++++++++++ |
13 |
...e-2.0.2.ebuild => pypy-binpackage-2.3.1.ebuild} | 40 ++- |
14 |
3 files changed, 339 insertions(+), 24 deletions(-) |
15 |
|
16 |
diff --git a/dev-python/pypy-binpackage/Manifest b/dev-python/pypy-binpackage/Manifest |
17 |
index 876272d..4bea985 100644 |
18 |
--- a/dev-python/pypy-binpackage/Manifest |
19 |
+++ b/dev-python/pypy-binpackage/Manifest |
20 |
@@ -1,2 +1,2 @@ |
21 |
-DIST pypy-2.0.2-src.tar.bz2 14819848 SHA256 1991c90d6b98e2408b3790d4b57b71ec1c69346328b8321505ce8f6ab4544c3c SHA512 5b8b56194dff468dd249dea0014fadafb791eb69858ffae0b9c7638f087df277a84ddadc7d5b0fdb48a12ca8e6b70eb95cb5b7a5f56fe8fe3396820b814ecfd7 WHIRLPOOL bb1f71e0b2d3e145edcb1baa17b0a13c09f5229cf1b0532edbb3d0d5c87ef39543c0ef6b9dc7ce2778c4a3336d4a1580fce9cf960f82b72ddfed02e06d10d8af |
22 |
DIST pypy-2.2.1-src.tar.bz2 14439822 SHA256 252045187e443656a2beb412dadac9296e8fe8db0f75a66ed5265db58c35035f SHA512 68b52c5b1a9b96593aa1dd38ad0b1b7b282852008e3ae3c488a5e19ab2bede68e2b40afdb79d85a4ab21cb1da6647b8b958fcefe34c99a1f6cbc1a19d695d3b6 WHIRLPOOL 6eca63959d8ee5663f868daaaac32ad1180b07e2f8b63d839652902095a098ffbfa29c6f83451733270a4b2f73b65450cb3b80a878b9dd1ec71089bfff11e9f6 |
23 |
+DIST pypy-2.3.1-src.tar.bz2 15225332 SHA256 3fd10d97c0177c33ed358a78eb26f5bf1f91b266af853564b1a9d8c310a1e439 SHA512 86aab86c5f413cdd6a56680915605de5c1416255b43a8dce1b4dcf8f1febdb3275076a4a9c7de30002387d59e4171a52da2528436eb205d8d947de7edd049c65 WHIRLPOOL c78d41240f1803d9461f797fd0ef647a40a6990a4e3a504e80a0eaaf460d052bb60fe6240cacdb3ee8737500c9c7f418b1d55c619d01ac7b73aace3d82157aa6 |
24 |
|
25 |
diff --git a/dev-python/pypy-binpackage/files/2.3-21_all_distutils_c++.patch b/dev-python/pypy-binpackage/files/2.3-21_all_distutils_c++.patch |
26 |
new file mode 100644 |
27 |
index 0000000..2787360 |
28 |
--- /dev/null |
29 |
+++ b/dev-python/pypy-binpackage/files/2.3-21_all_distutils_c++.patch |
30 |
@@ -0,0 +1,321 @@ |
31 |
+http://bugs.python.org/issue1222585 |
32 |
+ |
33 |
+--- Lib/distutils/cygwinccompiler.py |
34 |
++++ Lib/distutils/cygwinccompiler.py |
35 |
+@@ -117,8 +117,10 @@ |
36 |
+ # dllwrap 2.10.90 is buggy |
37 |
+ if self.ld_version >= "2.10.90": |
38 |
+ self.linker_dll = "gcc" |
39 |
++ self.linker_dll_cxx = "g++" |
40 |
+ else: |
41 |
+ self.linker_dll = "dllwrap" |
42 |
++ self.linker_dll_cxx = "dllwrap" |
43 |
+ |
44 |
+ # ld_version >= "2.13" support -shared so use it instead of |
45 |
+ # -mdll -static |
46 |
+@@ -132,9 +134,13 @@ |
47 |
+ self.set_executables(compiler='gcc -mcygwin -O -Wall', |
48 |
+ compiler_so='gcc -mcygwin -mdll -O -Wall', |
49 |
+ compiler_cxx='g++ -mcygwin -O -Wall', |
50 |
++ compiler_so_cxx='g++ -mcygwin -mdll -O -Wall', |
51 |
+ linker_exe='gcc -mcygwin', |
52 |
+ linker_so=('%s -mcygwin %s' % |
53 |
+- (self.linker_dll, shared_option))) |
54 |
++ (self.linker_dll, shared_option)), |
55 |
++ linker_exe_cxx='g++ -mcygwin', |
56 |
++ linker_so_cxx=('%s -mcygwin %s' % |
57 |
++ (self.linker_dll_cxx, shared_option))) |
58 |
+ |
59 |
+ # cygwin and mingw32 need different sets of libraries |
60 |
+ if self.gcc_version == "2.91.57": |
61 |
+@@ -160,8 +166,12 @@ |
62 |
+ raise CompileError, msg |
63 |
+ else: # for other files use the C-compiler |
64 |
+ try: |
65 |
+- self.spawn(self.compiler_so + cc_args + [src, '-o', obj] + |
66 |
+- extra_postargs) |
67 |
++ if self.detect_language(src) == 'c++': |
68 |
++ self.spawn(self.compiler_so_cxx + cc_args + [src, '-o', obj] + |
69 |
++ extra_postargs) |
70 |
++ else: |
71 |
++ self.spawn(self.compiler_so + cc_args + [src, '-o', obj] + |
72 |
++ extra_postargs) |
73 |
+ except DistutilsExecError, msg: |
74 |
+ raise CompileError, msg |
75 |
+ |
76 |
+@@ -327,9 +337,14 @@ |
77 |
+ self.set_executables(compiler='gcc%s -O -Wall' % no_cygwin, |
78 |
+ compiler_so='gcc%s -mdll -O -Wall' % no_cygwin, |
79 |
+ compiler_cxx='g++%s -O -Wall' % no_cygwin, |
80 |
++ compiler_so_cxx='g++%s -mdll -O -Wall' % no_cygwin, |
81 |
+ linker_exe='gcc%s' % no_cygwin, |
82 |
+ linker_so='%s%s %s %s' |
83 |
+ % (self.linker_dll, no_cygwin, |
84 |
++ shared_option, entry_point), |
85 |
++ linker_exe_cxx='g++%s' % no_cygwin, |
86 |
++ linker_so_cxx='%s%s %s %s' |
87 |
++ % (self.linker_dll_cxx, no_cygwin, |
88 |
+ shared_option, entry_point)) |
89 |
+ # Maybe we should also append -mthreads, but then the finished |
90 |
+ # dlls need another dll (mingwm10.dll see Mingw32 docs) |
91 |
+--- Lib/distutils/emxccompiler.py |
92 |
++++ Lib/distutils/emxccompiler.py |
93 |
+@@ -65,8 +65,12 @@ |
94 |
+ # XXX optimization, warnings etc. should be customizable. |
95 |
+ self.set_executables(compiler='gcc -Zomf -Zmt -O3 -fomit-frame-pointer -mprobe -Wall', |
96 |
+ compiler_so='gcc -Zomf -Zmt -O3 -fomit-frame-pointer -mprobe -Wall', |
97 |
++ compiler_cxx='g++ -Zomf -Zmt -O3 -fomit-frame-pointer -mprobe -Wall', |
98 |
++ compiler_so_cxx='g++ -Zomf -Zmt -O3 -fomit-frame-pointer -mprobe -Wall', |
99 |
+ linker_exe='gcc -Zomf -Zmt -Zcrtdll', |
100 |
+- linker_so='gcc -Zomf -Zmt -Zcrtdll -Zdll') |
101 |
++ linker_so='gcc -Zomf -Zmt -Zcrtdll -Zdll', |
102 |
++ linker_exe_cxx='g++ -Zomf -Zmt -Zcrtdll', |
103 |
++ linker_so_cxx='g++ -Zomf -Zmt -Zcrtdll -Zdll') |
104 |
+ |
105 |
+ # want the gcc library statically linked (so that we don't have |
106 |
+ # to distribute a version dependent on the compiler we have) |
107 |
+@@ -83,8 +87,12 @@ |
108 |
+ raise CompileError, msg |
109 |
+ else: # for other files use the C-compiler |
110 |
+ try: |
111 |
+- self.spawn(self.compiler_so + cc_args + [src, '-o', obj] + |
112 |
+- extra_postargs) |
113 |
++ if self.detect_language(src) == 'c++': |
114 |
++ self.spawn(self.compiler_so_cxx + cc_args + [src, '-o', obj] + |
115 |
++ extra_postargs) |
116 |
++ else: |
117 |
++ self.spawn(self.compiler_so + cc_args + [src, '-o', obj] + |
118 |
++ extra_postargs) |
119 |
+ except DistutilsExecError, msg: |
120 |
+ raise CompileError, msg |
121 |
+ |
122 |
+--- Lib/distutils/sysconfig_cpython.py |
123 |
++++ Lib/distutils/sysconfig_cpython.py |
124 |
+@@ -170,10 +170,12 @@ |
125 |
+ _osx_support.customize_compiler(_config_vars) |
126 |
+ _config_vars['CUSTOMIZED_OSX_COMPILER'] = 'True' |
127 |
+ |
128 |
+- (cc, cxx, opt, cflags, ccshared, ldshared, so_ext, ar, ar_flags) = \ |
129 |
+- get_config_vars('CC', 'CXX', 'OPT', 'CFLAGS', |
130 |
+- 'CCSHARED', 'LDSHARED', 'SO', 'AR', |
131 |
+- 'ARFLAGS') |
132 |
++ (cc, cxx, ccshared, ldshared, ldcxxshared, so_ext, ar, ar_flags) = \ |
133 |
++ get_config_vars('CC', 'CXX', 'CCSHARED', 'LDSHARED', 'LDCXXSHARED', |
134 |
++ 'SO', 'AR', 'ARFLAGS') |
135 |
++ |
136 |
++ cflags = '' |
137 |
++ cxxflags = '' |
138 |
+ |
139 |
+ if 'CC' in os.environ: |
140 |
+ newcc = os.environ['CC'] |
141 |
+@@ -188,19 +190,27 @@ |
142 |
+ cxx = os.environ['CXX'] |
143 |
+ if 'LDSHARED' in os.environ: |
144 |
+ ldshared = os.environ['LDSHARED'] |
145 |
++ if 'LDCXXSHARED' in os.environ: |
146 |
++ ldcxxshared = os.environ['LDCXXSHARED'] |
147 |
+ if 'CPP' in os.environ: |
148 |
+ cpp = os.environ['CPP'] |
149 |
+ else: |
150 |
+ cpp = cc + " -E" # not always |
151 |
+ if 'LDFLAGS' in os.environ: |
152 |
+ ldshared = ldshared + ' ' + os.environ['LDFLAGS'] |
153 |
++ ldcxxshared = ldcxxshared + ' ' + os.environ['LDFLAGS'] |
154 |
+ if 'CFLAGS' in os.environ: |
155 |
+- cflags = opt + ' ' + os.environ['CFLAGS'] |
156 |
++ cflags = os.environ['CFLAGS'] |
157 |
+ ldshared = ldshared + ' ' + os.environ['CFLAGS'] |
158 |
++ if 'CXXFLAGS' in os.environ: |
159 |
++ cxxflags = os.environ['CXXFLAGS'] |
160 |
++ ldcxxshared = ldcxxshared + ' ' + os.environ['CXXFLAGS'] |
161 |
+ if 'CPPFLAGS' in os.environ: |
162 |
+ cpp = cpp + ' ' + os.environ['CPPFLAGS'] |
163 |
+ cflags = cflags + ' ' + os.environ['CPPFLAGS'] |
164 |
++ cxxflags = cxxflags + ' ' + os.environ['CPPFLAGS'] |
165 |
+ ldshared = ldshared + ' ' + os.environ['CPPFLAGS'] |
166 |
++ ldcxxshared = ldcxxshared + ' ' + os.environ['CPPFLAGS'] |
167 |
+ if 'AR' in os.environ: |
168 |
+ ar = os.environ['AR'] |
169 |
+ if 'ARFLAGS' in os.environ: |
170 |
+@@ -209,13 +219,17 @@ |
171 |
+ archiver = ar + ' ' + ar_flags |
172 |
+ |
173 |
+ cc_cmd = cc + ' ' + cflags |
174 |
++ cxx_cmd = cxx + ' ' + cxxflags |
175 |
+ compiler.set_executables( |
176 |
+ preprocessor=cpp, |
177 |
+ compiler=cc_cmd, |
178 |
+ compiler_so=cc_cmd + ' ' + ccshared, |
179 |
+- compiler_cxx=cxx, |
180 |
++ compiler_cxx=cxx_cmd, |
181 |
++ compiler_so_cxx=cxx_cmd + ' ' + ccshared, |
182 |
+ linker_so=ldshared, |
183 |
+ linker_exe=cc, |
184 |
++ linker_so_cxx=ldcxxshared, |
185 |
++ linker_exe_cxx=cxx, |
186 |
+ archiver=archiver) |
187 |
+ |
188 |
+ compiler.shared_lib_extension = so_ext |
189 |
+--- Lib/distutils/unixccompiler.py |
190 |
++++ Lib/distutils/unixccompiler.py |
191 |
+@@ -55,14 +55,17 @@ |
192 |
+ # are pretty generic; they will probably have to be set by an outsider |
193 |
+ # (eg. using information discovered by the sysconfig about building |
194 |
+ # Python extensions). |
195 |
+- executables = {'preprocessor' : None, |
196 |
+- 'compiler' : ["cc"], |
197 |
+- 'compiler_so' : ["cc"], |
198 |
+- 'compiler_cxx' : ["cc"], |
199 |
+- 'linker_so' : ["cc", "-shared"], |
200 |
+- 'linker_exe' : ["cc"], |
201 |
+- 'archiver' : ["ar", "-cr"], |
202 |
+- 'ranlib' : None, |
203 |
++ executables = {'preprocessor' : None, |
204 |
++ 'compiler' : ["cc"], |
205 |
++ 'compiler_so' : ["cc"], |
206 |
++ 'compiler_cxx' : ["c++"], |
207 |
++ 'compiler_so_cxx' : ["c++"], |
208 |
++ 'linker_so' : ["cc", "-shared"], |
209 |
++ 'linker_exe' : ["cc"], |
210 |
++ 'linker_so_cxx' : ["c++", "-shared"], |
211 |
++ 'linker_exe_cxx' : ["c++"], |
212 |
++ 'archiver' : ["ar", "-cr"], |
213 |
++ 'ranlib' : None, |
214 |
+ } |
215 |
+ |
216 |
+ if sys.platform[:6] == "darwin": |
217 |
+@@ -112,12 +115,19 @@ |
218 |
+ |
219 |
+ def _compile(self, obj, src, ext, cc_args, extra_postargs, pp_opts): |
220 |
+ compiler_so = self.compiler_so |
221 |
++ compiler_so_cxx = self.compiler_so_cxx |
222 |
+ if sys.platform == 'darwin': |
223 |
+ compiler_so = _osx_support.compiler_fixup(compiler_so, |
224 |
+ cc_args + extra_postargs) |
225 |
++ compiler_so_cxx = _osx_support.compiler_fixup(compiler_so_cxx, |
226 |
++ cc_args + extra_postargs) |
227 |
+ try: |
228 |
+- self.spawn(compiler_so + cc_args + [src, '-o', obj] + |
229 |
+- extra_postargs) |
230 |
++ if self.detect_language(src) == 'c++': |
231 |
++ self.spawn(compiler_so_cxx + cc_args + [src, '-o', obj] + |
232 |
++ extra_postargs) |
233 |
++ else: |
234 |
++ self.spawn(compiler_so + cc_args + [src, '-o', obj] + |
235 |
++ extra_postargs) |
236 |
+ except DistutilsExecError, msg: |
237 |
+ raise CompileError, msg |
238 |
+ |
239 |
+@@ -174,23 +184,16 @@ |
240 |
+ ld_args.extend(extra_postargs) |
241 |
+ self.mkpath(os.path.dirname(output_filename)) |
242 |
+ try: |
243 |
+- if target_desc == CCompiler.EXECUTABLE: |
244 |
+- linker = self.linker_exe[:] |
245 |
++ if target_lang == "c++": |
246 |
++ if target_desc == CCompiler.EXECUTABLE: |
247 |
++ linker = self.linker_exe_cxx[:] |
248 |
++ else: |
249 |
++ linker = self.linker_so_cxx[:] |
250 |
+ else: |
251 |
+- linker = self.linker_so[:] |
252 |
+- if target_lang == "c++" and self.compiler_cxx: |
253 |
+- # skip over environment variable settings if /usr/bin/env |
254 |
+- # is used to set up the linker's environment. |
255 |
+- # This is needed on OSX. Note: this assumes that the |
256 |
+- # normal and C++ compiler have the same environment |
257 |
+- # settings. |
258 |
+- i = 0 |
259 |
+- if os.path.basename(linker[0]) == "env": |
260 |
+- i = 1 |
261 |
+- while '=' in linker[i]: |
262 |
+- i = i + 1 |
263 |
+- |
264 |
+- linker[i] = self.compiler_cxx[i] |
265 |
++ if target_desc == CCompiler.EXECUTABLE: |
266 |
++ linker = self.linker_exe[:] |
267 |
++ else: |
268 |
++ linker = self.linker_so[:] |
269 |
+ |
270 |
+ if sys.platform == 'darwin': |
271 |
+ linker = _osx_support.compiler_fixup(linker, ld_args) |
272 |
+--- Lib/_osx_support.py |
273 |
++++ Lib/_osx_support.py |
274 |
+@@ -14,13 +14,13 @@ |
275 |
+ # configuration variables that may contain universal build flags, |
276 |
+ # like "-arch" or "-isdkroot", that may need customization for |
277 |
+ # the user environment |
278 |
+-_UNIVERSAL_CONFIG_VARS = ('CFLAGS', 'LDFLAGS', 'CPPFLAGS', 'BASECFLAGS', |
279 |
+- 'BLDSHARED', 'LDSHARED', 'CC', 'CXX', |
280 |
+- 'PY_CFLAGS', 'PY_LDFLAGS', 'PY_CPPFLAGS', |
281 |
+- 'PY_CORE_CFLAGS') |
282 |
++_UNIVERSAL_CONFIG_VARS = ('CFLAGS', 'CXXFLAGS', 'LDFLAGS', 'CPPFLAGS', |
283 |
++ 'BASECFLAGS', 'BLDSHARED', 'LDSHARED', 'LDCXXSHARED', |
284 |
++ 'CC', 'CXX', 'PY_CFLAGS', 'PY_LDFLAGS', |
285 |
++ 'PY_CPPFLAGS', 'PY_CORE_CFLAGS') |
286 |
+ |
287 |
+ # configuration variables that may contain compiler calls |
288 |
+-_COMPILER_CONFIG_VARS = ('BLDSHARED', 'LDSHARED', 'CC', 'CXX') |
289 |
++_COMPILER_CONFIG_VARS = ('BLDSHARED', 'LDSHARED', 'LDCXXSHARED', 'CC', 'CXX') |
290 |
+ |
291 |
+ # prefix added to original configuration variable names |
292 |
+ _INITPRE = '_OSX_SUPPORT_INITIAL_' |
293 |
+--- a/distutils/sysconfig_pypy.py |
294 |
++++ b/distutils/sysconfig_pypy.py |
295 |
+@@ -123,7 +123,55 @@ |
296 |
+ optional C speedup components. |
297 |
+ """ |
298 |
+ if compiler.compiler_type == "unix": |
299 |
+- compiler.compiler_so.extend(['-O2', '-fPIC', '-Wimplicit']) |
300 |
++ cc = ' '.join(compiler.compiler) |
301 |
++ cxx = ' '.join(compiler.compiler_cxx) |
302 |
++ ldshared = ' '.join(compiler.linker_so) |
303 |
++ ldcxxshared = ' '.join(compiler.linker_so_cxx) |
304 |
++ |
305 |
++ cflags = '' |
306 |
++ cxxflags = '' |
307 |
++ ccshared = '-fPIC' |
308 |
++ |
309 |
++ if 'CC' in os.environ: |
310 |
++ cc = os.environ['CC'] |
311 |
++ if 'CXX' in os.environ: |
312 |
++ cxx = os.environ['CXX'] |
313 |
++ if 'LDSHARED' in os.environ: |
314 |
++ ldshared = os.environ['LDSHARED'] |
315 |
++ if 'LDCXXSHARED' in os.environ: |
316 |
++ ldcxxshared = os.environ['LDCXXSHARED'] |
317 |
++ if 'CPP' in os.environ: |
318 |
++ cpp = os.environ['CPP'] |
319 |
++ else: |
320 |
++ cpp = cc + " -E" # not always |
321 |
++ if 'LDFLAGS' in os.environ: |
322 |
++ ldshared = ldshared + ' ' + os.environ['LDFLAGS'] |
323 |
++ ldcxxshared = ldcxxshared + ' ' + os.environ['LDFLAGS'] |
324 |
++ if 'CFLAGS' in os.environ: |
325 |
++ cflags = os.environ['CFLAGS'] |
326 |
++ ldshared = ldshared + ' ' + os.environ['CFLAGS'] |
327 |
++ if 'CXXFLAGS' in os.environ: |
328 |
++ cxxflags = os.environ['CXXFLAGS'] |
329 |
++ ldcxxshared = ldcxxshared + ' ' + os.environ['CXXFLAGS'] |
330 |
++ if 'CPPFLAGS' in os.environ: |
331 |
++ cpp = cpp + ' ' + os.environ['CPPFLAGS'] |
332 |
++ cflags = cflags + ' ' + os.environ['CPPFLAGS'] |
333 |
++ cxxflags = cxxflags + ' ' + os.environ['CPPFLAGS'] |
334 |
++ ldshared = ldshared + ' ' + os.environ['CPPFLAGS'] |
335 |
++ ldcxxshared = ldcxxshared + ' ' + os.environ['CPPFLAGS'] |
336 |
++ |
337 |
++ cc_cmd = cc + ' ' + cflags |
338 |
++ cxx_cmd = cxx + ' ' + cxxflags |
339 |
++ compiler.set_executables( |
340 |
++ preprocessor=cpp, |
341 |
++ compiler=cc_cmd, |
342 |
++ compiler_so=cc_cmd + ' ' + ccshared, |
343 |
++ compiler_cxx=cxx_cmd, |
344 |
++ compiler_so_cxx=cxx_cmd + ' ' + ccshared, |
345 |
++ linker_so=ldshared, |
346 |
++ linker_exe=cc, |
347 |
++ linker_so_cxx=ldcxxshared, |
348 |
++ linker_exe_cxx=cxx) |
349 |
+ compiler.shared_lib_extension = get_config_var('SO') |
350 |
+ if "CPPFLAGS" in os.environ: |
351 |
+ cppflags = shlex.split(os.environ["CPPFLAGS"]) |
352 |
|
353 |
diff --git a/dev-python/pypy-binpackage/pypy-binpackage-2.0.2.ebuild b/dev-python/pypy-binpackage/pypy-binpackage-2.3.1.ebuild |
354 |
similarity index 75% |
355 |
rename from dev-python/pypy-binpackage/pypy-binpackage-2.0.2.ebuild |
356 |
rename to dev-python/pypy-binpackage/pypy-binpackage-2.3.1.ebuild |
357 |
index 0e390b0..833c324 100644 |
358 |
--- a/dev-python/pypy-binpackage/pypy-binpackage-2.0.2.ebuild |
359 |
+++ b/dev-python/pypy-binpackage/pypy-binpackage-2.3.1.ebuild |
360 |
@@ -1,24 +1,22 @@ |
361 |
-# Copyright 1999-2013 Gentoo Foundation |
362 |
+# Copyright 1999-2014 Gentoo Foundation |
363 |
# Distributed under the terms of the GNU General Public License v2 |
364 |
-# $Header: /var/cvsroot/gentoo-x86/dev-python/pypy/pypy-2.0.2.ebuild,v 1.3 2013/06/18 10:41:29 idella4 Exp $ |
365 |
+# $Header: /var/cvsroot/gentoo-x86/dev-python/pypy/pypy-2.2.1.ebuild,v 1.2 2014/03/12 09:14:21 mgorny Exp $ |
366 |
|
367 |
EAPI=5 |
368 |
|
369 |
-# pypy should be preferred, per upstream. |
370 |
-# that's the easiest way of forcing it. |
371 |
-PYTHON_COMPAT=( pypy{1_8,1_9,2_0} ) |
372 |
-inherit check-reqs eutils flag-o-matic multilib multiprocessing pax-utils python-any-r1 toolchain-funcs versionator |
373 |
- |
374 |
+PYTHON_COMPAT=( python2_7 pypy2_0 ) |
375 |
+inherit check-reqs eutils multilib multiprocessing pax-utils \ |
376 |
+ python-any-r1 toolchain-funcs versionator |
377 |
MY_P=pypy-${PV} |
378 |
|
379 |
DESCRIPTION="A fast, compliant alternative implementation of the Python language" |
380 |
HOMEPAGE="http://pypy.org/" |
381 |
-SRC_URI="mirror://bitbucket/pypy/pypy/downloads/${MY_P}-src.tar.bz2" |
382 |
+SRC_URI="https://bitbucket.org/${PN}/${PN}/get/release-${PV}.tar.bz2 -> ${MY_P}-src.tar.bz2" |
383 |
|
384 |
LICENSE="MIT" |
385 |
-SLOT=0 |
386 |
+SLOT="0/$(get_version_component_range 1-2 ${PV})" |
387 |
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" |
388 |
-IUSE="bzip2 +jit ncurses sandbox shadowstack sse2" |
389 |
+IUSE="bzip2 +jit ncurses sandbox shadowstack sqlite sse2" |
390 |
|
391 |
DEPEND=">=sys-libs/zlib-1.1.3 |
392 |
virtual/libffi |
393 |
@@ -33,19 +31,11 @@ DEPEND=">=sys-libs/zlib-1.1.3 |
394 |
S="${WORKDIR}/${MY_P}-src" |
395 |
|
396 |
pkg_pretend() { |
397 |
- if [[ ! ${PYPY_BINPKG_STORE} ]]; then |
398 |
- eerror "Please set PYPY_BINPKG_STORE to the location where built" |
399 |
- eerror "packages are to be stored." |
400 |
- |
401 |
- die "Set PYPY_BINPKG_STORE." |
402 |
- fi |
403 |
- |
404 |
CHECKREQS_MEMORY="2G" |
405 |
use amd64 && CHECKREQS_MEMORY="4G" |
406 |
check-reqs_pkg_pretend |
407 |
-# if [[ ${MERGE_TYPE} != binary && "$(gcc-version)" == "4.8" ]]; then |
408 |
-# die "PyPy does not build correctly with GCC 4.8" |
409 |
-# fi |
410 |
+ |
411 |
+ [[ ${PYPY_BINPKG_STORE} ]] || die 'PYPY_BINPKG_STORE unset, wtf?!' |
412 |
} |
413 |
|
414 |
pkg_setup() { |
415 |
@@ -78,7 +68,10 @@ pkg_setup() { |
416 |
src_prepare() { |
417 |
epatch "${FILESDIR}/1.9-scripts-location.patch" |
418 |
epatch "${FILESDIR}/1.9-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch" |
419 |
- epatch "${FILESDIR}/2.0.2-distutils-fix_handling_of_executables_and_flags.patch" |
420 |
+ |
421 |
+ pushd lib-python/2.7 > /dev/null || die |
422 |
+ epatch "${FILESDIR}/2.3-21_all_distutils_c++.patch" |
423 |
+ popd > /dev/null || die |
424 |
|
425 |
epatch_user |
426 |
} |
427 |
@@ -107,6 +100,7 @@ src_compile() { |
428 |
fi |
429 |
|
430 |
local args=( |
431 |
+ --shared |
432 |
$(usex jit -Ojit -O2) |
433 |
$(usex shadowstack --gcrootfinder=shadowstack '') |
434 |
$(usex sandbox --sandbox '') |
435 |
@@ -151,12 +145,12 @@ src_install() { |
436 |
|
437 |
einfo "Zipping PyPy ..." |
438 |
mkdir "${BIN_P}${suffix}"{,/include} || die |
439 |
- mv pypy-c "${BIN_P}${suffix}"/ || die |
440 |
+ mv pypy-c libpypy-c.so "${BIN_P}${suffix}"/ || die |
441 |
mv include/pypy_* "${BIN_P}${suffix}"/include/ || die |
442 |
chmod +x "${BIN_P}${suffix}"/pypy-c || die |
443 |
|
444 |
tar -cf "${BIN_P}${suffix}.tar" "${BIN_P}${suffix}" || die |
445 |
- xz -vz9 "${BIN_P}${suffix}.tar" || die |
446 |
+ xz -vz9e "${BIN_P}${suffix}.tar" || die |
447 |
} |
448 |
|
449 |
# Yup, very hacky. |