Gentoo Archives: gentoo-commits

From: "Michał Górny" <mgorny@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/pypy3-bin/, dev-python/pypy3-bin/files/
Date: Mon, 30 Dec 2019 11:59:08
Message-Id: 1577707075.46fca434de1e6e299e918018b70b0fcc9d635478.mgorny@gentoo
1 commit: 46fca434de1e6e299e918018b70b0fcc9d635478
2 Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
3 AuthorDate: Mon Dec 30 11:05:01 2019 +0000
4 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
5 CommitDate: Mon Dec 30 11:57:55 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=46fca434
7
8 dev-python/pypy3-bin: Remove old
9
10 Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
11
12 dev-python/pypy3-bin/Manifest | 5 -
13 ....UnixCCompiler.runtime_library_dir_option.patch | 11 -
14 dev-python/pypy3-bin/files/7.0.0-gentoo-path.patch | 52 ----
15 .../pypy3-bin/files/7.2.0-distutils-cxx.patch | 306 ---------------------
16 .../files/python-3.5-distutils-OO-build.patch | 80 ------
17 dev-python/pypy3-bin/pypy3-bin-7.2.0-r1.ebuild | 184 -------------
18 6 files changed, 638 deletions(-)
19
20 diff --git a/dev-python/pypy3-bin/Manifest b/dev-python/pypy3-bin/Manifest
21 deleted file mode 100644
22 index 5fce1c7302c..00000000000
23 --- a/dev-python/pypy3-bin/Manifest
24 +++ /dev/null
25 @@ -1,5 +0,0 @@
26 -DIST pypy3-bin-7.2.0-amd64+bzip2+jit+ncurses.tar.lz 11429130 BLAKE2B 41de1efcfc72704a3b8fcee1fa0ca030bca0dc07b75856dbc9ee5a9e40c6298406360d3342dffde38131f6d708a6dc07d3708d6e6478dc95d7c6a6ece2d7b86b SHA512 7a97797a961e12d5498dadb5bc87ad9d43a9e9dea88a7617236dba79230f5f0cc02ab8ab21a60c279cca4a341dd3d814d50d4029b94be1f525bf7b9294d19269
27 -DIST pypy3-bin-7.2.0-amd64+bzip2+ncurses.tar.lz 7174734 BLAKE2B c2f916433a6105a04c70f6b53c43dc479b64f26794a75a6e6b7122fb7d2f4f825c47d2eb82cf95ecb795e494879718aad88661b2fe12faa87b737cbcd20b5a47 SHA512 c4a635b6b819a104ff1b1f3b39363c9bb5cab4299cff2fb6e78c64984691d3116b8378e8a47500f9c626bbf48c4a3a8d26fa23fe2daa945bcc3dc97db9b4a8c9
28 -DIST pypy3-bin-7.2.0-x86+bzip2+jit+ncurses+sse2.tar.lz 8662494 BLAKE2B bf37ac682098c49efba0f05999ce70368c91cbc0012cdcde86303424fd225eb50a8b6fa058e0c3a9511c2668da47a042f1b836f9142ed4b112db43da3addd6ce SHA512 6fc0d15e5d82ab06937ca099d1ea2f77d00a6d4e1b4c6d9637c39944c0f077ae0c5eb0edb7c6746aaafb76cb0e8a0458340c888e340df2c8438515f55a38017e
29 -DIST pypy3-bin-7.2.0-x86+bzip2+ncurses+sse2.tar.lz 5625900 BLAKE2B d6642cc8b37f9c032ed23da41c5597bd41615c55312bee5b0de3e8543fb74ecf2504c74d9d3c8a51c0fc42285812835cab70d6f8a5a5f15f0d7b637260e0a656 SHA512 1014ea6d37cfa7a6cb60eb47b6a0e959036aaa5c774852484a57f75d4e5450fb50c1b170f571a1288ba70d710b0731e946773cb05751eca6478b4fffb185dc94
30 -DIST pypy3.6-v7.2.0-src.tar.bz2 21850076 BLAKE2B 756ea3034fe8971c979ec83c9cbfac55a680f3ef03b276475aa4318f3480ae5ede609b8413412df64db553a33979670498b1f97184f3b57406619c9db7f01127 SHA512 bcbb53062a473d504bcc082cf6286f6169c83d1f38d22c4d7c4e46ddc32bca9d91e71194637e6650db5bec02b29fe262b22fe236d627b6bc3e6e0c59c66c07cc
31
32 diff --git a/dev-python/pypy3-bin/files/1.9-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch b/dev-python/pypy3-bin/files/1.9-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch
33 deleted file mode 100644
34 index 29d99dcfdb7..00000000000
35 --- a/dev-python/pypy3-bin/files/1.9-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch
36 +++ /dev/null
37 @@ -1,11 +0,0 @@
38 ---- a/lib-python/3/distutils/unixccompiler.py
39 -+++ b/lib-python/3/distutils/unixccompiler.py
40 -@@ -297,7 +297,7 @@
41 - # this time, there's no way to determine this information from
42 - # the configuration data stored in the Python installation, so
43 - # we use this hack.
44 -- compiler = os.path.basename(sysconfig.get_config_var("CC"))
45 -+ compiler = os.path.basename(self.compiler[0])
46 - if sys.platform[:6] == "darwin":
47 - # MacOSX's linker doesn't understand the -R flag at all
48 - return "-L" + dir
49
50 diff --git a/dev-python/pypy3-bin/files/7.0.0-gentoo-path.patch b/dev-python/pypy3-bin/files/7.0.0-gentoo-path.patch
51 deleted file mode 100644
52 index 135e496f253..00000000000
53 --- a/dev-python/pypy3-bin/files/7.0.0-gentoo-path.patch
54 +++ /dev/null
55 @@ -1,52 +0,0 @@
56 -From 44c16c344f137cc91a145294c4124174fc25ad16 Mon Sep 17 00:00:00 2001
57 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@g.o>
58 -Date: Fri, 27 Nov 2015 17:02:42 +0100
59 -Subject: [PATCH] Gentoo: override paths for system-wide install based on
60 - sys.prefix
61 -
62 -Override all default distutils install paths to ones suitable for
63 -system-wide install when sys.prefix indicates we're running the Gentoo
64 -system-wide install of PyPy with no prefix overrides (e.g. virtualenv).
65 -
66 -Fixes: https://bugs.gentoo.org/462306
67 -Fixes: https://bugs.gentoo.org/465546
68 -
69 -[updated for 7.0.0]
70 ----
71 - lib-python/3/distutils/command/install.py | 13 ++++++++++++-
72 - 1 file changed, 12 insertions(+), 1 deletion(-)
73 -
74 -diff --git a/lib-python/3/distutils/command/install.py b/lib-python/3/distutils/command/install.py
75 -index 77a1827d4b..255603967f 100644
76 ---- a/lib-python/3/distutils/command/install.py
77 -+++ b/lib-python/3/distutils/command/install.py
78 -@@ -50,6 +50,13 @@ INSTALL_SCHEMES = {
79 - 'scripts': '$base/bin',
80 - 'data' : '$base',
81 - },
82 -+ 'gentoo': {
83 -+ 'purelib': '$base/site-packages',
84 -+ 'platlib': '$base/site-packages',
85 -+ 'headers': '$base/include',
86 -+ 'scripts': '@EPREFIX@/usr/bin',
87 -+ 'data' : '@EPREFIX@/usr',
88 -+ },
89 - }
90 -
91 - # user site schemes
92 -@@ -461,7 +468,11 @@ class install(Command):
93 - # it's the caller's problem if they supply a bad name!
94 - if (hasattr(sys, 'pypy_version_info') and
95 - not name.endswith(('_user', '_home'))):
96 -- name = 'pypy'
97 -+ if self.install_base == os.path.normpath('@EPREFIX@/usr/lib/pypy3.6'):
98 -+ # override paths for system-wide install
99 -+ name = 'gentoo'
100 -+ else:
101 -+ name = 'pypy'
102 - scheme = INSTALL_SCHEMES[name]
103 - for key in SCHEME_KEYS:
104 - attrname = 'install_' + key
105 ---
106 -2.21.0.rc1
107 -
108
109 diff --git a/dev-python/pypy3-bin/files/7.2.0-distutils-cxx.patch b/dev-python/pypy3-bin/files/7.2.0-distutils-cxx.patch
110 deleted file mode 100644
111 index 89a38050c80..00000000000
112 --- a/dev-python/pypy3-bin/files/7.2.0-distutils-cxx.patch
113 +++ /dev/null
114 @@ -1,306 +0,0 @@
115 -diff --git a/lib-python/3/distutils/cygwinccompiler.py b/lib-python/3/distutils/cygwinccompiler.py
116 -index 1c36990..ead3174 100644
117 ---- a/lib-python/3/distutils/cygwinccompiler.py
118 -+++ b/lib-python/3/distutils/cygwinccompiler.py
119 -@@ -125,8 +125,10 @@ class CygwinCCompiler(UnixCCompiler):
120 - # dllwrap 2.10.90 is buggy
121 - if self.ld_version >= "2.10.90":
122 - self.linker_dll = "gcc"
123 -+ self.linker_dll_cxx = "g++"
124 - else:
125 - self.linker_dll = "dllwrap"
126 -+ self.linker_dll_cxx = "dllwrap"
127 -
128 - # ld_version >= "2.13" support -shared so use it instead of
129 - # -mdll -static
130 -@@ -140,9 +142,13 @@ class CygwinCCompiler(UnixCCompiler):
131 - self.set_executables(compiler='gcc -mcygwin -O -Wall',
132 - compiler_so='gcc -mcygwin -mdll -O -Wall',
133 - compiler_cxx='g++ -mcygwin -O -Wall',
134 -+ compiler_so_cxx='g++ -mcygwin -mdll -O -Wall',
135 - linker_exe='gcc -mcygwin',
136 - linker_so=('%s -mcygwin %s' %
137 -- (self.linker_dll, shared_option)))
138 -+ (self.linker_dll, shared_option)),
139 -+ linker_exe_cxx='g++ -mcygwin',
140 -+ linker_so_cxx=('%s -mcygwin %s' %
141 -+ (self.linker_dll_cxx, shared_option)))
142 -
143 - # cygwin and mingw32 need different sets of libraries
144 - if self.gcc_version == "2.91.57":
145 -@@ -166,8 +172,12 @@ class CygwinCCompiler(UnixCCompiler):
146 - raise CompileError(msg)
147 - else: # for other files use the C-compiler
148 - try:
149 -- self.spawn(self.compiler_so + cc_args + [src, '-o', obj] +
150 -- extra_postargs)
151 -+ if self.detect_language(src) == 'c++':
152 -+ self.spawn(self.compiler_so_cxx + cc_args + [src, '-o', obj] +
153 -+ extra_postargs)
154 -+ else:
155 -+ self.spawn(self.compiler_so + cc_args + [src, '-o', obj] +
156 -+ extra_postargs)
157 - except DistutilsExecError as msg:
158 - raise CompileError(msg)
159 -
160 -@@ -302,9 +312,14 @@ class Mingw32CCompiler(CygwinCCompiler):
161 - self.set_executables(compiler='gcc -O -Wall',
162 - compiler_so='gcc -mdll -O -Wall',
163 - compiler_cxx='g++ -O -Wall',
164 -+ compiler_so_cxx='g++ -mdll -O -Wall',
165 - linker_exe='gcc',
166 - linker_so='%s %s %s'
167 - % (self.linker_dll, shared_option,
168 -+ entry_point),
169 -+ linker_exe_cxx='g++',
170 -+ linker_so_cxx='%s %s %s'
171 -+ % (self.linker_dll_cxx, shared_option,
172 - entry_point))
173 - # Maybe we should also append -mthreads, but then the finished
174 - # dlls need another dll (mingwm10.dll see Mingw32 docs)
175 -diff --git a/lib-python/3/distutils/sysconfig_cpython.py b/lib-python/3/distutils/sysconfig_cpython.py
176 -index b8340f1..a8c5473 100644
177 ---- a/lib-python/3/distutils/sysconfig_cpython.py
178 -+++ b/lib-python/3/distutils/sysconfig_cpython.py
179 -@@ -170,9 +170,12 @@ def customize_compiler(compiler):
180 - _osx_support.customize_compiler(_config_vars)
181 - _config_vars['CUSTOMIZED_OSX_COMPILER'] = 'True'
182 -
183 -- (cc, cxx, opt, cflags, ccshared, ldshared, shlib_suffix, ar, ar_flags) = \
184 -- get_config_vars('CC', 'CXX', 'OPT', 'CFLAGS',
185 -- 'CCSHARED', 'LDSHARED', 'SHLIB_SUFFIX', 'AR', 'ARFLAGS')
186 -+ (cc, cxx, ccshared, ldshared, ldcxxshared, shlib_suffix, ar, ar_flags) = \
187 -+ get_config_vars('CC', 'CXX', 'CCSHARED', 'LDSHARED', 'LDCXXSHARED',
188 -+ 'SHLIB_SUFFIX', 'AR', 'ARFLAGS')
189 -+
190 -+ cflags = ''
191 -+ cxxflags = ''
192 -
193 - if 'CC' in os.environ:
194 - newcc = os.environ['CC']
195 -@@ -187,19 +190,27 @@ def customize_compiler(compiler):
196 - cxx = os.environ['CXX']
197 - if 'LDSHARED' in os.environ:
198 - ldshared = os.environ['LDSHARED']
199 -+ if 'LDCXXSHARED' in os.environ:
200 -+ ldcxxshared = os.environ['LDCXXSHARED']
201 - if 'CPP' in os.environ:
202 - cpp = os.environ['CPP']
203 - else:
204 - cpp = cc + " -E" # not always
205 - if 'LDFLAGS' in os.environ:
206 - ldshared = ldshared + ' ' + os.environ['LDFLAGS']
207 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['LDFLAGS']
208 - if 'CFLAGS' in os.environ:
209 -- cflags = opt + ' ' + os.environ['CFLAGS']
210 -+ cflags = os.environ['CFLAGS']
211 - ldshared = ldshared + ' ' + os.environ['CFLAGS']
212 -+ if 'CXXFLAGS' in os.environ:
213 -+ cxxflags = os.environ['CXXFLAGS']
214 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['CXXFLAGS']
215 - if 'CPPFLAGS' in os.environ:
216 - cpp = cpp + ' ' + os.environ['CPPFLAGS']
217 - cflags = cflags + ' ' + os.environ['CPPFLAGS']
218 -+ cxxflags = cxxflags + ' ' + os.environ['CPPFLAGS']
219 - ldshared = ldshared + ' ' + os.environ['CPPFLAGS']
220 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['CPPFLAGS']
221 - if 'AR' in os.environ:
222 - ar = os.environ['AR']
223 - if 'ARFLAGS' in os.environ:
224 -@@ -208,13 +219,17 @@ def customize_compiler(compiler):
225 - archiver = ar + ' ' + ar_flags
226 -
227 - cc_cmd = cc + ' ' + cflags
228 -+ cxx_cmd = cxx + ' ' + cxxflags
229 - compiler.set_executables(
230 - preprocessor=cpp,
231 - compiler=cc_cmd,
232 - compiler_so=cc_cmd + ' ' + ccshared,
233 -- compiler_cxx=cxx,
234 -+ compiler_cxx=cxx_cmd,
235 -+ compiler_so_cxx=cxx_cmd + ' ' + ccshared,
236 - linker_so=ldshared,
237 - linker_exe=cc,
238 -+ linker_so_cxx=ldcxxshared,
239 -+ linker_exe_cxx=cxx,
240 - archiver=archiver)
241 -
242 - compiler.shared_lib_extension = shlib_suffix
243 -diff --git a/lib-python/3/distutils/sysconfig_pypy.py b/lib-python/3/distutils/sysconfig_pypy.py
244 -index bf1748e..70dfd72 100644
245 ---- a/lib-python/3/distutils/sysconfig_pypy.py
246 -+++ b/lib-python/3/distutils/sysconfig_pypy.py
247 -@@ -145,36 +145,52 @@ def customize_compiler(compiler):
248 - _osx_support.customize_compiler(_config_vars)
249 - _config_vars['CUSTOMIZED_OSX_COMPILER'] = 'True'
250 -
251 -- (cc, cxx, opt, cflags, ccshared, ldshared, shlib_suffix, ar, ar_flags) = \
252 -- get_config_vars('CC', 'CXX', 'OPT', 'CFLAGS',
253 -- 'CCSHARED', 'LDSHARED', 'SHLIB_SUFFIX', 'AR', 'ARFLAGS')
254 -+ (cc, cxx, ccshared, ldshared, ldcxxshared, shlib_suffix, ar, ar_flags) = \
255 -+ get_config_vars('CC', 'CXX', 'CCSHARED', 'LDSHARED', 'LDCXXSHARED',
256 -+ 'SHLIB_SUFFIX', 'AR', 'ARFLAGS')
257 -+
258 -+ cflags = ''
259 -+ cxxflags = ''
260 -
261 - if 'CC' in os.environ:
262 - newcc = os.environ['CC']
263 -- if (sys.platform == 'darwin'
264 -+ if (True
265 - and 'LDSHARED' not in os.environ
266 - and ldshared.startswith(cc)):
267 - # On OS X, if CC is overridden, use that as the default
268 - # command for LDSHARED as well
269 -+ # Gentoo: s/OS X/every system/
270 - ldshared = newcc + ldshared[len(cc):]
271 - cc = newcc
272 - if 'CXX' in os.environ:
273 -- cxx = os.environ['CXX']
274 -+ newcxx = os.environ['CXX']
275 -+ if ('LDCXXSHARED' not in os.environ
276 -+ and ldcxxshared.startswith(cxx)):
277 -+ ldcxxshared = newcxx + ldcxxshared[len(cxx):]
278 -+ cxx = newcxx
279 - if 'LDSHARED' in os.environ:
280 - ldshared = os.environ['LDSHARED']
281 -+ if 'LDCXXSHARED' in os.environ:
282 -+ ldcxxshared = os.environ['LDCXXSHARED']
283 - if 'CPP' in os.environ:
284 - cpp = os.environ['CPP']
285 - else:
286 - cpp = cc + " -E" # not always
287 - if 'LDFLAGS' in os.environ:
288 - ldshared = ldshared + ' ' + os.environ['LDFLAGS']
289 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['LDFLAGS']
290 - if 'CFLAGS' in os.environ:
291 -- cflags = opt + ' ' + os.environ['CFLAGS']
292 -+ cflags = os.environ['CFLAGS']
293 - ldshared = ldshared + ' ' + os.environ['CFLAGS']
294 -+ if 'CXXFLAGS' in os.environ:
295 -+ cxxflags = os.environ['CXXFLAGS']
296 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['CXXFLAGS']
297 - if 'CPPFLAGS' in os.environ:
298 - cpp = cpp + ' ' + os.environ['CPPFLAGS']
299 - cflags = cflags + ' ' + os.environ['CPPFLAGS']
300 -+ cxxflags = cxxflags + ' ' + os.environ['CPPFLAGS']
301 - ldshared = ldshared + ' ' + os.environ['CPPFLAGS']
302 -+ ldcxxshared = ldcxxshared + ' ' + os.environ['CPPFLAGS']
303 - if 'AR' in os.environ:
304 - ar = os.environ['AR']
305 - if 'ARFLAGS' in os.environ:
306 -@@ -183,13 +199,17 @@ def customize_compiler(compiler):
307 - archiver = ar + ' ' + ar_flags
308 -
309 - cc_cmd = cc + ' ' + cflags
310 -+ cxx_cmd = cxx + ' ' + cxxflags
311 - compiler.set_executables(
312 - preprocessor=cpp,
313 - compiler=cc_cmd,
314 - compiler_so=cc_cmd + ' ' + ccshared,
315 -- compiler_cxx=cxx,
316 -+ compiler_cxx=cxx_cmd,
317 -+ compiler_so_cxx=cxx_cmd + ' ' + ccshared,
318 - linker_so=ldshared,
319 - linker_exe=cc,
320 -+ linker_so_cxx=ldcxxshared,
321 -+ linker_exe_cxx=cxx,
322 - archiver=archiver)
323 -
324 - compiler.shared_lib_extension = shlib_suffix
325 -diff --git a/lib-python/3/distutils/unixccompiler.py b/lib-python/3/distutils/unixccompiler.py
326 -index 2944ceb..cf2f219 100644
327 ---- a/lib-python/3/distutils/unixccompiler.py
328 -+++ b/lib-python/3/distutils/unixccompiler.py
329 -@@ -52,14 +52,17 @@ class UnixCCompiler(CCompiler):
330 - # are pretty generic; they will probably have to be set by an outsider
331 - # (eg. using information discovered by the sysconfig about building
332 - # Python extensions).
333 -- executables = {'preprocessor' : None,
334 -- 'compiler' : ["cc"],
335 -- 'compiler_so' : ["cc"],
336 -- 'compiler_cxx' : ["c++"], # pypy: changed, 'cc' is bogus
337 -- 'linker_so' : ["cc", "-shared"],
338 -- 'linker_exe' : ["cc"],
339 -- 'archiver' : ["ar", "-cr"],
340 -- 'ranlib' : None,
341 -+ executables = {'preprocessor' : None,
342 -+ 'compiler' : ["cc"],
343 -+ 'compiler_so' : ["cc"],
344 -+ 'compiler_cxx' : ["c++"],
345 -+ 'compiler_so_cxx' : ["c++"],
346 -+ 'linker_so' : ["cc", "-shared"],
347 -+ 'linker_exe' : ["cc"],
348 -+ 'linker_so_cxx' : ["c++", "-shared"],
349 -+ 'linker_exe_cxx' : ["c++"],
350 -+ 'archiver' : ["ar", "-cr"],
351 -+ 'ranlib' : None,
352 - }
353 -
354 - if sys.platform[:6] == "darwin":
355 -@@ -125,12 +128,19 @@ class UnixCCompiler(CCompiler):
356 -
357 - def _compile(self, obj, src, ext, cc_args, extra_postargs, pp_opts):
358 - compiler_so = self.compiler_so
359 -+ compiler_so_cxx = self.compiler_so_cxx
360 - if sys.platform == 'darwin':
361 - compiler_so = _osx_support.compiler_fixup(compiler_so,
362 - cc_args + extra_postargs)
363 -+ compiler_so_cxx = _osx_support.compiler_fixup(compiler_so_cxx,
364 -+ cc_args + extra_postargs)
365 - try:
366 -- self.spawn(compiler_so + cc_args + [src, '-o', obj] +
367 -- extra_postargs)
368 -+ if self.detect_language(src) == 'c++':
369 -+ self.spawn(compiler_so_cxx + cc_args + [src, '-o', obj] +
370 -+ extra_postargs)
371 -+ else:
372 -+ self.spawn(compiler_so + cc_args + [src, '-o', obj] +
373 -+ extra_postargs)
374 - except DistutilsExecError as msg:
375 - raise CompileError(msg)
376 -
377 -@@ -188,22 +198,16 @@ class UnixCCompiler(CCompiler):
378 - ld_args.extend(extra_postargs)
379 - self.mkpath(os.path.dirname(output_filename))
380 - try:
381 -- if target_desc == CCompiler.EXECUTABLE:
382 -- linker = self.linker_exe[:]
383 -+ if target_lang == "c++":
384 -+ if target_desc == CCompiler.EXECUTABLE:
385 -+ linker = self.linker_exe_cxx[:]
386 -+ else:
387 -+ linker = self.linker_so_cxx[:]
388 - else:
389 -- linker = self.linker_so[:]
390 -- if target_lang == "c++" and self.compiler_cxx:
391 -- # skip over environment variable settings if /usr/bin/env
392 -- # is used to set up the linker's environment.
393 -- # This is needed on OSX. Note: this assumes that the
394 -- # normal and C++ compiler have the same environment
395 -- # settings.
396 -- i = 0
397 -- if os.path.basename(linker[0]) == "env":
398 -- i = 1
399 -- while '=' in linker[i]:
400 -- i += 1
401 -- linker[i] = self.compiler_cxx[i]
402 -+ if target_desc == CCompiler.EXECUTABLE:
403 -+ linker = self.linker_exe[:]
404 -+ else:
405 -+ linker = self.linker_so[:]
406 -
407 - if sys.platform == 'darwin':
408 - linker = _osx_support.compiler_fixup(linker, ld_args)
409 -diff --git a/lib_pypy/_sysconfigdata.py b/lib_pypy/_sysconfigdata.py
410 -index 4d2b0bc..5ed9641 100644
411 ---- a/lib_pypy/_sysconfigdata.py
412 -+++ b/lib_pypy/_sysconfigdata.py
413 -@@ -15,6 +15,7 @@ build_time_vars = {
414 - 'CFLAGS': "-DNDEBUG -O2",
415 - 'CCSHARED': "-fPIC",
416 - 'LDSHARED': "cc -pthread -shared",
417 -+ 'LDCXXSHARED': "c++ -pthread -shared",
418 - 'EXT_SUFFIX': so_ext,
419 - 'SHLIB_SUFFIX': ".so",
420 - 'AR': "ar",
421
422 diff --git a/dev-python/pypy3-bin/files/python-3.5-distutils-OO-build.patch b/dev-python/pypy3-bin/files/python-3.5-distutils-OO-build.patch
423 deleted file mode 100644
424 index ff4446662a9..00000000000
425 --- a/dev-python/pypy3-bin/files/python-3.5-distutils-OO-build.patch
426 +++ /dev/null
427 @@ -1,80 +0,0 @@
428 -From 90507018442f9adabb586fd3d0a0206b9c2f2f50 Mon Sep 17 00:00:00 2001
429 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@g.o>
430 -Date: Sun, 5 Jun 2016 08:18:01 +0200
431 -Subject: [PATCH] distutils: make -OO enable both opt-1 and opt-2 optimization
432 -
433 -Bug: http://bugs.python.org/issue27226
434 -Bug: https://bugs.gentoo.org/585060
435 ----
436 - distutils/command/build_py.py | 8 ++++----
437 - distutils/command/install_lib.py | 12 ++++++------
438 - 2 files changed, 10 insertions(+), 10 deletions(-)
439 -
440 -diff --git a/distutils/command/build_py.py b/distutils/command/build_py.py
441 -index cf0ca57..838d4e4 100644
442 ---- a/distutils/command/build_py.py
443 -+++ b/distutils/command/build_py.py
444 -@@ -315,9 +315,9 @@ class build_py (Command):
445 - if self.compile:
446 - outputs.append(importlib.util.cache_from_source(
447 - filename, optimization=''))
448 -- if self.optimize > 0:
449 -+ for opt in range(1, self.optimize + 1):
450 - outputs.append(importlib.util.cache_from_source(
451 -- filename, optimization=self.optimize))
452 -+ filename, optimization=opt))
453 -
454 - outputs += [
455 - os.path.join(build_dir, filename)
456 -@@ -387,8 +387,8 @@ class build_py (Command):
457 - if self.compile:
458 - byte_compile(files, optimize=0,
459 - force=self.force, prefix=prefix, dry_run=self.dry_run)
460 -- if self.optimize > 0:
461 -- byte_compile(files, optimize=self.optimize,
462 -+ for opt in range(1, self.optimize + 1):
463 -+ byte_compile(files, optimize=opt,
464 - force=self.force, prefix=prefix, dry_run=self.dry_run)
465 -
466 - class build_py_2to3(build_py, Mixin2to3):
467 -diff --git a/distutils/command/install_lib.py b/distutils/command/install_lib.py
468 -index 6154cf0..049b662 100644
469 ---- a/distutils/command/install_lib.py
470 -+++ b/distutils/command/install_lib.py
471 -@@ -24,8 +24,8 @@ class install_lib(Command):
472 - # 2) compile .pyc only (--compile --no-optimize; default)
473 - # 3) compile .pyc and "opt-1" .pyc (--compile --optimize)
474 - # 4) compile "opt-1" .pyc only (--no-compile --optimize)
475 -- # 5) compile .pyc and "opt-2" .pyc (--compile --optimize-more)
476 -- # 6) compile "opt-2" .pyc only (--no-compile --optimize-more)
477 -+ # 5) compile .pyc, "opt-1" and "opt-2" .pyc (--compile --optimize-more)
478 -+ # 6) compile "opt-1" and "opt-2" .pyc (--no-compile --optimize-more)
479 - #
480 - # The UI for this is two options, 'compile' and 'optimize'.
481 - # 'compile' is strictly boolean, and only decides whether to
482 -@@ -132,8 +132,8 @@ class install_lib(Command):
483 - byte_compile(files, optimize=0,
484 - force=self.force, prefix=install_root,
485 - dry_run=self.dry_run)
486 -- if self.optimize > 0:
487 -- byte_compile(files, optimize=self.optimize,
488 -+ for opt in range(1, self.optimize + 1):
489 -+ byte_compile(files, optimize=opt,
490 - force=self.force, prefix=install_root,
491 - verbose=self.verbose, dry_run=self.dry_run)
492 -
493 -@@ -167,9 +167,9 @@ class install_lib(Command):
494 - if self.compile:
495 - bytecode_files.append(importlib.util.cache_from_source(
496 - py_file, optimization=''))
497 -- if self.optimize > 0:
498 -+ for opt in range(1, self.optimize + 1):
499 - bytecode_files.append(importlib.util.cache_from_source(
500 -- py_file, optimization=self.optimize))
501 -+ py_file, optimization=opt))
502 -
503 - return bytecode_files
504 -
505 ---
506 -2.8.3
507 -
508
509 diff --git a/dev-python/pypy3-bin/pypy3-bin-7.2.0-r1.ebuild b/dev-python/pypy3-bin/pypy3-bin-7.2.0-r1.ebuild
510 deleted file mode 100644
511 index 11871340755..00000000000
512 --- a/dev-python/pypy3-bin/pypy3-bin-7.2.0-r1.ebuild
513 +++ /dev/null
514 @@ -1,184 +0,0 @@
515 -# Copyright 1999-2019 Gentoo Authors
516 -# Distributed under the terms of the GNU General Public License v2
517 -
518 -EAPI=7
519 -
520 -# Test runner needs Python 2.
521 -PYTHON_COMPAT=( python2_7 pypy )
522 -inherit pax-utils python-any-r1 unpacker
523 -
524 -BINHOST="https://dev.gentoo.org/~mgorny/dist/pypy3-bin/${PV}"
525 -MY_P=pypy3.6-v${PV}
526 -
527 -DESCRIPTION="Pre-built version of PyPy3"
528 -HOMEPAGE="https://pypy.org/"
529 -SRC_URI="https://bitbucket.org/pypy/pypy/downloads/${MY_P}-src.tar.bz2
530 - amd64? (
531 - jit? ( ${BINHOST}/${P}-amd64+bzip2+jit+ncurses.tar.lz )
532 - !jit? ( ${BINHOST}/${P}-amd64+bzip2+ncurses.tar.lz )
533 - )
534 - x86? (
535 - cpu_flags_x86_sse2? (
536 - jit? ( ${BINHOST}/${P}-x86+bzip2+jit+ncurses+sse2.tar.lz )
537 - !jit? ( ${BINHOST}/${P}-x86+bzip2+ncurses+sse2.tar.lz )
538 - )
539 - )"
540 -
541 -LICENSE="MIT"
542 -# pypy3 -c 'import sysconfig; print(sysconfig.get_config_var("SOABI"))'
543 -SLOT="0/72-py36"
544 -KEYWORDS="~amd64 ~x86"
545 -IUSE="gdbm +jit libressl sqlite cpu_flags_x86_sse2 test tk"
546 -RESTRICT="!test? ( test )"
547 -# Supported variants
548 -REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
549 -
550 -RDEPEND="
551 - app-arch/bzip2:0/1
552 - dev-libs/expat:0/0
553 - dev-libs/libffi:0/7
554 - sys-devel/gcc:*
555 - >=sys-libs/glibc-2.28
556 - sys-libs/ncurses:0/6
557 - sys-libs/zlib:0/1
558 - gdbm? ( sys-libs/gdbm:0= )
559 - !libressl? ( dev-libs/openssl:0= )
560 - libressl? ( dev-libs/libressl:0= )
561 - sqlite? ( dev-db/sqlite:3= )
562 - tk? (
563 - dev-lang/tk:0=
564 - dev-tcltk/tix:0=
565 - )
566 - !dev-python/pypy3:0"
567 -DEPEND="${RDEPEND}
568 - app-arch/lzip
569 - app-arch/xz-utils
570 - test? ( ${PYTHON_DEPS} )"
571 -
572 -S=${WORKDIR}/${MY_P}-src
573 -
574 -QA_PREBUILT="
575 - usr/lib/pypy3.6/pypy3-c
576 - usr/lib/pypy3.6/libpypy3-c.so"
577 -
578 -src_prepare() {
579 - eapply "${FILESDIR}/7.0.0-gentoo-path.patch"
580 - eapply "${FILESDIR}/1.9-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch"
581 - eapply "${FILESDIR}"/7.2.0-distutils-cxx.patch
582 -
583 - sed -e "s^@EPREFIX@^${EPREFIX}^" \
584 - -i lib-python/3/distutils/command/install.py || die
585 -
586 - # apply CPython stdlib patches
587 - pushd lib-python/3 > /dev/null || die
588 - eapply "${FILESDIR}"/python-3.5-distutils-OO-build.patch
589 - popd > /dev/null || die
590 -
591 - eapply_user
592 -}
593 -
594 -src_compile() {
595 - # Tadaam! PyPy compiled!
596 - mv "${WORKDIR}"/${P}*/{libpypy3-c.so,pypy3-c} . || die
597 - mv "${WORKDIR}"/${P}*/include/*.h include/ || die
598 - mv pypy/module/cpyext/include/*.h include/ || die
599 - mv pypy/module/cpyext/parse/*.h include/ || die
600 -
601 - pax-mark m pypy3-c libpypy3-c.so
602 -
603 - einfo "Generating caches and CFFI modules ..."
604 -
605 - # Generate Grammar and PatternGrammar pickles.
606 - ./pypy3-c -c "import lib2to3.pygram, lib2to3.patcomp; lib2to3.patcomp.PatternCompiler()" \
607 - || die "Generation of Grammar and PatternGrammar pickles failed"
608 -
609 - # Generate cffi modules
610 - # Please keep in sync with pypy/tool/build_cffi_imports.py!
611 -#cffi_build_scripts = {
612 -# "_blake2": "_blake2/_blake2_build.py",
613 -# "_ssl": "_ssl_build.py",
614 -# "sqlite3": "_sqlite3_build.py",
615 -# "audioop": "_audioop_build.py",
616 -# "tk": "_tkinter/tklib_build.py",
617 -# "curses": "_curses_build.py" if sys.platform != "win32" else None,
618 -# "syslog": "_syslog_build.py" if sys.platform != "win32" else None,
619 -# "gdbm": "_gdbm_build.py" if sys.platform != "win32" else None,
620 -# "pwdgrp": "_pwdgrp_build.py" if sys.platform != "win32" else None,
621 -# "resource": "_resource_build.py" if sys.platform != "win32" else None,
622 -# "lzma": "_lzma_build.py",
623 -# "_decimal": "_decimal_build.py",
624 -# "ssl": "_ssl_build.py",
625 -# "_blake2": "_blake2/_blake2_build.py",
626 -# "_sha3": "_sha3/_sha3_build.py",
627 - cffi_targets=( blake2/_blake2 sha3/_sha3 ssl
628 - audioop curses syslog pwdgrp resource lzma decimal )
629 - use gdbm && cffi_targets+=( gdbm )
630 - use sqlite && cffi_targets+=( sqlite3 )
631 - use tk && cffi_targets+=( tkinter/tklib )
632 -
633 - local t
634 - # all modules except tkinter output to .
635 - # tkinter outputs to the correct dir ...
636 - cd lib_pypy || die
637 - for t in "${cffi_targets[@]}"; do
638 - # tkinter doesn't work via -m
639 - ../pypy3-c "_${t}_build.py" || die "Failed to build CFFI bindings for ${t}"
640 - done
641 -
642 - # Cleanup temporary objects
643 - find -name "_cffi_*.[co]" -delete || die
644 - find -type d -empty -delete || die
645 -}
646 -
647 -src_test() {
648 - # (unset)
649 - local -x PYTHONDONTWRITEBYTECODE=
650 -
651 - # Test runner requires Python 2 too. However, it spawns PyPy3
652 - # internally so that we end up testing the correct interpreter.
653 - "${PYTHON}" ./pypy/test_all.py --pypy=./pypy3-c -vv lib-python || die
654 -}
655 -
656 -src_install() {
657 - local dest=/usr/lib/pypy3.6
658 - einfo "Installing PyPy ..."
659 - exeinto "${dest}"
660 - doexe pypy3-c libpypy3-c.so
661 - pax-mark m "${ED}${dest}/pypy3-c" "${ED}${dest}/libpypy3-c.so"
662 - insinto "${dest}"
663 - # preserve mtimes to avoid obsoleting caches
664 - insopts -p
665 - doins -r include lib_pypy lib-python
666 - dosym ../lib/pypy3.6/pypy3-c /usr/bin/pypy3
667 - dodoc README.rst
668 -
669 - if ! use gdbm; then
670 - rm -r "${ED}${dest}"/lib_pypy/_gdbm* || die
671 - fi
672 - if ! use sqlite; then
673 - rm -r "${ED}${dest}"/lib-python/*3/sqlite3 \
674 - "${ED}${dest}"/lib_pypy/_sqlite3* \
675 - "${ED}${dest}"/lib-python/*3/test/test_sqlite.py || die
676 - fi
677 - if ! use tk; then
678 - rm -r "${ED}${dest}"/lib-python/*3/{idlelib,tkinter} \
679 - "${ED}${dest}"/lib_pypy/_tkinter \
680 - "${ED}${dest}"/lib-python/*3/test/test_{tcl,tk,ttk*}.py || die
681 - fi
682 -
683 - einfo "Generating caches and byte-compiling ..."
684 -
685 - local -x PYTHON=${ED}${dest}/pypy3-c
686 - # we can't use eclass function since PyPy is dumb and always gives
687 - # paths relative to the interpreter
688 - local PYTHON_SITEDIR=${EPREFIX}/usr/lib/pypy3.6/site-packages
689 - python_export pypy3 EPYTHON
690 -
691 - echo "EPYTHON='${EPYTHON}'" > epython.py || die
692 - python_domodule epython.py
693 -
694 - einfo "Byte-compiling Python standard library..."
695 -
696 - # compile the installed modules
697 - python_optimize "${ED}${dest}"
698 -}