From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id D3247138336 for ; Fri, 18 Oct 2019 16:24:43 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id B0359E08EF; Fri, 18 Oct 2019 16:24:42 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 8B237E08EF for ; Fri, 18 Oct 2019 16:24:42 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id C6CE634C017 for ; Fri, 18 Oct 2019 16:24:40 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id C8FDB838 for ; Fri, 18 Oct 2019 16:24:38 +0000 (UTC) From: "Michał Górny" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Michał Górny" Message-ID: <1571415858.3a339e9997a03f170066624b4eb7c4e92f0eddb4.mgorny@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/pypy3/, dev-python/pypy3/files/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-python/pypy3/Manifest dev-python/pypy3/files/7.2.0-distutils-cxx.patch dev-python/pypy3/pypy3-7.2.0.ebuild dev-python/pypy3/pypy3-9999.ebuild X-VCS-Directories: dev-python/pypy3/files/ dev-python/pypy3/ X-VCS-Committer: mgorny X-VCS-Committer-Name: Michał Górny X-VCS-Revision: 3a339e9997a03f170066624b4eb7c4e92f0eddb4 X-VCS-Branch: master Date: Fri, 18 Oct 2019 16:24:38 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: dc992471-c295-4066-b131-194f93ea690f X-Archives-Hash: 2c031e7dbb3c71708c336f3b50fd50dc commit: 3a339e9997a03f170066624b4eb7c4e92f0eddb4 Author: Michał Górny gentoo org> AuthorDate: Thu Oct 17 17:34:59 2019 +0000 Commit: Michał Górny gentoo org> CommitDate: Fri Oct 18 16:24:18 2019 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3a339e99 dev-python/pypy3: Bump to 7.2.0 Signed-off-by: Michał Górny gentoo.org> dev-python/pypy3/Manifest | 1 + dev-python/pypy3/files/7.2.0-distutils-cxx.patch | 306 +++++++++++++++++++++ .../{pypy3-9999.ebuild => pypy3-7.2.0.ebuild} | 49 ++-- dev-python/pypy3/pypy3-9999.ebuild | 35 ++- 4 files changed, 342 insertions(+), 49 deletions(-) diff --git a/dev-python/pypy3/Manifest b/dev-python/pypy3/Manifest index d687ce6ca9f..1c2085f148f 100644 --- a/dev-python/pypy3/Manifest +++ b/dev-python/pypy3/Manifest @@ -1 +1,2 @@ DIST pypy3.6-v7.1.1-src.tar.bz2 23171982 BLAKE2B be43528bc6f3e02d146016a4969bd8c7a9e880a3bd3b77f441aac6d22ef67700f71e0171ec000066bd2c0bd506db64af69d6b75b59a92222dd0353ee70e6629b SHA512 17e78f9c7080d597a6283d8e8247d1ca78f09a14ff221db8c3d90d255b5befc73102b317ca34a80979e544d5ee72f3e5e649f89d185a085f4cc15012da4d0473 +DIST pypy3.6-v7.2.0-src.tar.bz2 21850076 BLAKE2B 756ea3034fe8971c979ec83c9cbfac55a680f3ef03b276475aa4318f3480ae5ede609b8413412df64db553a33979670498b1f97184f3b57406619c9db7f01127 SHA512 bcbb53062a473d504bcc082cf6286f6169c83d1f38d22c4d7c4e46ddc32bca9d91e71194637e6650db5bec02b29fe262b22fe236d627b6bc3e6e0c59c66c07cc diff --git a/dev-python/pypy3/files/7.2.0-distutils-cxx.patch b/dev-python/pypy3/files/7.2.0-distutils-cxx.patch new file mode 100644 index 00000000000..89a38050c80 --- /dev/null +++ b/dev-python/pypy3/files/7.2.0-distutils-cxx.patch @@ -0,0 +1,306 @@ +diff --git a/lib-python/3/distutils/cygwinccompiler.py b/lib-python/3/distutils/cygwinccompiler.py +index 1c36990..ead3174 100644 +--- a/lib-python/3/distutils/cygwinccompiler.py ++++ b/lib-python/3/distutils/cygwinccompiler.py +@@ -125,8 +125,10 @@ class CygwinCCompiler(UnixCCompiler): + # dllwrap 2.10.90 is buggy + if self.ld_version >= "2.10.90": + self.linker_dll = "gcc" ++ self.linker_dll_cxx = "g++" + else: + self.linker_dll = "dllwrap" ++ self.linker_dll_cxx = "dllwrap" + + # ld_version >= "2.13" support -shared so use it instead of + # -mdll -static +@@ -140,9 +142,13 @@ class CygwinCCompiler(UnixCCompiler): + self.set_executables(compiler='gcc -mcygwin -O -Wall', + compiler_so='gcc -mcygwin -mdll -O -Wall', + compiler_cxx='g++ -mcygwin -O -Wall', ++ compiler_so_cxx='g++ -mcygwin -mdll -O -Wall', + linker_exe='gcc -mcygwin', + linker_so=('%s -mcygwin %s' % +- (self.linker_dll, shared_option))) ++ (self.linker_dll, shared_option)), ++ linker_exe_cxx='g++ -mcygwin', ++ linker_so_cxx=('%s -mcygwin %s' % ++ (self.linker_dll_cxx, shared_option))) + + # cygwin and mingw32 need different sets of libraries + if self.gcc_version == "2.91.57": +@@ -166,8 +172,12 @@ class CygwinCCompiler(UnixCCompiler): + raise CompileError(msg) + else: # for other files use the C-compiler + try: +- self.spawn(self.compiler_so + cc_args + [src, '-o', obj] + +- extra_postargs) ++ if self.detect_language(src) == 'c++': ++ self.spawn(self.compiler_so_cxx + cc_args + [src, '-o', obj] + ++ extra_postargs) ++ else: ++ self.spawn(self.compiler_so + cc_args + [src, '-o', obj] + ++ extra_postargs) + except DistutilsExecError as msg: + raise CompileError(msg) + +@@ -302,9 +312,14 @@ class Mingw32CCompiler(CygwinCCompiler): + self.set_executables(compiler='gcc -O -Wall', + compiler_so='gcc -mdll -O -Wall', + compiler_cxx='g++ -O -Wall', ++ compiler_so_cxx='g++ -mdll -O -Wall', + linker_exe='gcc', + linker_so='%s %s %s' + % (self.linker_dll, shared_option, ++ entry_point), ++ linker_exe_cxx='g++', ++ linker_so_cxx='%s %s %s' ++ % (self.linker_dll_cxx, shared_option, + entry_point)) + # Maybe we should also append -mthreads, but then the finished + # dlls need another dll (mingwm10.dll see Mingw32 docs) +diff --git a/lib-python/3/distutils/sysconfig_cpython.py b/lib-python/3/distutils/sysconfig_cpython.py +index b8340f1..a8c5473 100644 +--- a/lib-python/3/distutils/sysconfig_cpython.py ++++ b/lib-python/3/distutils/sysconfig_cpython.py +@@ -170,9 +170,12 @@ def customize_compiler(compiler): + _osx_support.customize_compiler(_config_vars) + _config_vars['CUSTOMIZED_OSX_COMPILER'] = 'True' + +- (cc, cxx, opt, cflags, ccshared, ldshared, shlib_suffix, ar, ar_flags) = \ +- get_config_vars('CC', 'CXX', 'OPT', 'CFLAGS', +- 'CCSHARED', 'LDSHARED', 'SHLIB_SUFFIX', 'AR', 'ARFLAGS') ++ (cc, cxx, ccshared, ldshared, ldcxxshared, shlib_suffix, ar, ar_flags) = \ ++ get_config_vars('CC', 'CXX', 'CCSHARED', 'LDSHARED', 'LDCXXSHARED', ++ 'SHLIB_SUFFIX', 'AR', 'ARFLAGS') ++ ++ cflags = '' ++ cxxflags = '' + + if 'CC' in os.environ: + newcc = os.environ['CC'] +@@ -187,19 +190,27 @@ def customize_compiler(compiler): + cxx = os.environ['CXX'] + if 'LDSHARED' in os.environ: + ldshared = os.environ['LDSHARED'] ++ if 'LDCXXSHARED' in os.environ: ++ ldcxxshared = os.environ['LDCXXSHARED'] + if 'CPP' in os.environ: + cpp = os.environ['CPP'] + else: + cpp = cc + " -E" # not always + if 'LDFLAGS' in os.environ: + ldshared = ldshared + ' ' + os.environ['LDFLAGS'] ++ ldcxxshared = ldcxxshared + ' ' + os.environ['LDFLAGS'] + if 'CFLAGS' in os.environ: +- cflags = opt + ' ' + os.environ['CFLAGS'] ++ cflags = os.environ['CFLAGS'] + ldshared = ldshared + ' ' + os.environ['CFLAGS'] ++ if 'CXXFLAGS' in os.environ: ++ cxxflags = os.environ['CXXFLAGS'] ++ ldcxxshared = ldcxxshared + ' ' + os.environ['CXXFLAGS'] + if 'CPPFLAGS' in os.environ: + cpp = cpp + ' ' + os.environ['CPPFLAGS'] + cflags = cflags + ' ' + os.environ['CPPFLAGS'] ++ cxxflags = cxxflags + ' ' + os.environ['CPPFLAGS'] + ldshared = ldshared + ' ' + os.environ['CPPFLAGS'] ++ ldcxxshared = ldcxxshared + ' ' + os.environ['CPPFLAGS'] + if 'AR' in os.environ: + ar = os.environ['AR'] + if 'ARFLAGS' in os.environ: +@@ -208,13 +219,17 @@ def customize_compiler(compiler): + archiver = ar + ' ' + ar_flags + + cc_cmd = cc + ' ' + cflags ++ cxx_cmd = cxx + ' ' + cxxflags + compiler.set_executables( + preprocessor=cpp, + compiler=cc_cmd, + compiler_so=cc_cmd + ' ' + ccshared, +- compiler_cxx=cxx, ++ compiler_cxx=cxx_cmd, ++ compiler_so_cxx=cxx_cmd + ' ' + ccshared, + linker_so=ldshared, + linker_exe=cc, ++ linker_so_cxx=ldcxxshared, ++ linker_exe_cxx=cxx, + archiver=archiver) + + compiler.shared_lib_extension = shlib_suffix +diff --git a/lib-python/3/distutils/sysconfig_pypy.py b/lib-python/3/distutils/sysconfig_pypy.py +index bf1748e..70dfd72 100644 +--- a/lib-python/3/distutils/sysconfig_pypy.py ++++ b/lib-python/3/distutils/sysconfig_pypy.py +@@ -145,36 +145,52 @@ def customize_compiler(compiler): + _osx_support.customize_compiler(_config_vars) + _config_vars['CUSTOMIZED_OSX_COMPILER'] = 'True' + +- (cc, cxx, opt, cflags, ccshared, ldshared, shlib_suffix, ar, ar_flags) = \ +- get_config_vars('CC', 'CXX', 'OPT', 'CFLAGS', +- 'CCSHARED', 'LDSHARED', 'SHLIB_SUFFIX', 'AR', 'ARFLAGS') ++ (cc, cxx, ccshared, ldshared, ldcxxshared, shlib_suffix, ar, ar_flags) = \ ++ get_config_vars('CC', 'CXX', 'CCSHARED', 'LDSHARED', 'LDCXXSHARED', ++ 'SHLIB_SUFFIX', 'AR', 'ARFLAGS') ++ ++ cflags = '' ++ cxxflags = '' + + if 'CC' in os.environ: + newcc = os.environ['CC'] +- if (sys.platform == 'darwin' ++ if (True + and 'LDSHARED' not in os.environ + and ldshared.startswith(cc)): + # On OS X, if CC is overridden, use that as the default + # command for LDSHARED as well ++ # Gentoo: s/OS X/every system/ + ldshared = newcc + ldshared[len(cc):] + cc = newcc + if 'CXX' in os.environ: +- cxx = os.environ['CXX'] ++ newcxx = os.environ['CXX'] ++ if ('LDCXXSHARED' not in os.environ ++ and ldcxxshared.startswith(cxx)): ++ ldcxxshared = newcxx + ldcxxshared[len(cxx):] ++ cxx = newcxx + if 'LDSHARED' in os.environ: + ldshared = os.environ['LDSHARED'] ++ if 'LDCXXSHARED' in os.environ: ++ ldcxxshared = os.environ['LDCXXSHARED'] + if 'CPP' in os.environ: + cpp = os.environ['CPP'] + else: + cpp = cc + " -E" # not always + if 'LDFLAGS' in os.environ: + ldshared = ldshared + ' ' + os.environ['LDFLAGS'] ++ ldcxxshared = ldcxxshared + ' ' + os.environ['LDFLAGS'] + if 'CFLAGS' in os.environ: +- cflags = opt + ' ' + os.environ['CFLAGS'] ++ cflags = os.environ['CFLAGS'] + ldshared = ldshared + ' ' + os.environ['CFLAGS'] ++ if 'CXXFLAGS' in os.environ: ++ cxxflags = os.environ['CXXFLAGS'] ++ ldcxxshared = ldcxxshared + ' ' + os.environ['CXXFLAGS'] + if 'CPPFLAGS' in os.environ: + cpp = cpp + ' ' + os.environ['CPPFLAGS'] + cflags = cflags + ' ' + os.environ['CPPFLAGS'] ++ cxxflags = cxxflags + ' ' + os.environ['CPPFLAGS'] + ldshared = ldshared + ' ' + os.environ['CPPFLAGS'] ++ ldcxxshared = ldcxxshared + ' ' + os.environ['CPPFLAGS'] + if 'AR' in os.environ: + ar = os.environ['AR'] + if 'ARFLAGS' in os.environ: +@@ -183,13 +199,17 @@ def customize_compiler(compiler): + archiver = ar + ' ' + ar_flags + + cc_cmd = cc + ' ' + cflags ++ cxx_cmd = cxx + ' ' + cxxflags + compiler.set_executables( + preprocessor=cpp, + compiler=cc_cmd, + compiler_so=cc_cmd + ' ' + ccshared, +- compiler_cxx=cxx, ++ compiler_cxx=cxx_cmd, ++ compiler_so_cxx=cxx_cmd + ' ' + ccshared, + linker_so=ldshared, + linker_exe=cc, ++ linker_so_cxx=ldcxxshared, ++ linker_exe_cxx=cxx, + archiver=archiver) + + compiler.shared_lib_extension = shlib_suffix +diff --git a/lib-python/3/distutils/unixccompiler.py b/lib-python/3/distutils/unixccompiler.py +index 2944ceb..cf2f219 100644 +--- a/lib-python/3/distutils/unixccompiler.py ++++ b/lib-python/3/distutils/unixccompiler.py +@@ -52,14 +52,17 @@ class UnixCCompiler(CCompiler): + # are pretty generic; they will probably have to be set by an outsider + # (eg. using information discovered by the sysconfig about building + # Python extensions). +- executables = {'preprocessor' : None, +- 'compiler' : ["cc"], +- 'compiler_so' : ["cc"], +- 'compiler_cxx' : ["c++"], # pypy: changed, 'cc' is bogus +- 'linker_so' : ["cc", "-shared"], +- 'linker_exe' : ["cc"], +- 'archiver' : ["ar", "-cr"], +- 'ranlib' : None, ++ executables = {'preprocessor' : None, ++ 'compiler' : ["cc"], ++ 'compiler_so' : ["cc"], ++ 'compiler_cxx' : ["c++"], ++ 'compiler_so_cxx' : ["c++"], ++ 'linker_so' : ["cc", "-shared"], ++ 'linker_exe' : ["cc"], ++ 'linker_so_cxx' : ["c++", "-shared"], ++ 'linker_exe_cxx' : ["c++"], ++ 'archiver' : ["ar", "-cr"], ++ 'ranlib' : None, + } + + if sys.platform[:6] == "darwin": +@@ -125,12 +128,19 @@ class UnixCCompiler(CCompiler): + + def _compile(self, obj, src, ext, cc_args, extra_postargs, pp_opts): + compiler_so = self.compiler_so ++ compiler_so_cxx = self.compiler_so_cxx + if sys.platform == 'darwin': + compiler_so = _osx_support.compiler_fixup(compiler_so, + cc_args + extra_postargs) ++ compiler_so_cxx = _osx_support.compiler_fixup(compiler_so_cxx, ++ cc_args + extra_postargs) + try: +- self.spawn(compiler_so + cc_args + [src, '-o', obj] + +- extra_postargs) ++ if self.detect_language(src) == 'c++': ++ self.spawn(compiler_so_cxx + cc_args + [src, '-o', obj] + ++ extra_postargs) ++ else: ++ self.spawn(compiler_so + cc_args + [src, '-o', obj] + ++ extra_postargs) + except DistutilsExecError as msg: + raise CompileError(msg) + +@@ -188,22 +198,16 @@ class UnixCCompiler(CCompiler): + ld_args.extend(extra_postargs) + self.mkpath(os.path.dirname(output_filename)) + try: +- if target_desc == CCompiler.EXECUTABLE: +- linker = self.linker_exe[:] ++ if target_lang == "c++": ++ if target_desc == CCompiler.EXECUTABLE: ++ linker = self.linker_exe_cxx[:] ++ else: ++ linker = self.linker_so_cxx[:] + else: +- linker = self.linker_so[:] +- if target_lang == "c++" and self.compiler_cxx: +- # skip over environment variable settings if /usr/bin/env +- # is used to set up the linker's environment. +- # This is needed on OSX. Note: this assumes that the +- # normal and C++ compiler have the same environment +- # settings. +- i = 0 +- if os.path.basename(linker[0]) == "env": +- i = 1 +- while '=' in linker[i]: +- i += 1 +- linker[i] = self.compiler_cxx[i] ++ if target_desc == CCompiler.EXECUTABLE: ++ linker = self.linker_exe[:] ++ else: ++ linker = self.linker_so[:] + + if sys.platform == 'darwin': + linker = _osx_support.compiler_fixup(linker, ld_args) +diff --git a/lib_pypy/_sysconfigdata.py b/lib_pypy/_sysconfigdata.py +index 4d2b0bc..5ed9641 100644 +--- a/lib_pypy/_sysconfigdata.py ++++ b/lib_pypy/_sysconfigdata.py +@@ -15,6 +15,7 @@ build_time_vars = { + 'CFLAGS': "-DNDEBUG -O2", + 'CCSHARED': "-fPIC", + 'LDSHARED': "cc -pthread -shared", ++ 'LDCXXSHARED': "c++ -pthread -shared", + 'EXT_SUFFIX': so_ext, + 'SHLIB_SUFFIX': ".so", + 'AR': "ar", diff --git a/dev-python/pypy3/pypy3-9999.ebuild b/dev-python/pypy3/pypy3-7.2.0.ebuild similarity index 86% copy from dev-python/pypy3/pypy3-9999.ebuild copy to dev-python/pypy3/pypy3-7.2.0.ebuild index d6e6b0856ea..b703db56d2d 100644 --- a/dev-python/pypy3/pypy3-9999.ebuild +++ b/dev-python/pypy3/pypy3-7.2.0.ebuild @@ -5,21 +5,18 @@ EAPI=7 # pypy3 needs to be built using python 2 PYTHON_COMPAT=( python2_7 pypy ) -EHG_PROJECT="pypy" -EHG_REPO_URI="https://bitbucket.org/pypy/pypy" -EHG_REVISION="py3.6" -inherit check-reqs mercurial pax-utils python-any-r1 toolchain-funcs +inherit check-reqs pax-utils python-any-r1 toolchain-funcs MY_P=pypy3.6-v${PV} DESCRIPTION="A fast, compliant alternative implementation of the Python (3.6) language" -HOMEPAGE="http://pypy.org/" -SRC_URI="" +HOMEPAGE="https://pypy.org/" +SRC_URI="https://bitbucket.org/pypy/pypy/downloads/${MY_P}-src.tar.bz2" LICENSE="MIT" # pypy3 -c 'import sysconfig; print(sysconfig.get_config_var("SOABI"))' -SLOT="0/71-py36" -KEYWORDS="" +SLOT="0/72-py36" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" IUSE="bzip2 cpu_flags_x86_sse2 gdbm +jit libressl low-memory ncurses sandbox sqlite tk" @@ -87,16 +84,11 @@ pkg_setup() { fi } -src_unpack() { - default - mercurial_src_unpack -} - src_prepare() { eapply "${FILESDIR}/7.0.0-gentoo-path.patch" eapply "${FILESDIR}/1.9-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch" eapply "${FILESDIR}"/5.9.0-shared-lib.patch # 517002 - eapply "${FILESDIR}"/7.0.0_all_distutils_cxx.patch + eapply "${FILESDIR}"/7.2.0-distutils-cxx.patch sed -e "s^@EPREFIX@^${EPREFIX}^" \ -i lib-python/3/distutils/command/install.py || die @@ -188,18 +180,18 @@ src_compile() { # Generate cffi modules # Please keep in sync with pypy/tool/build_cffi_imports.py! #cffi_build_scripts = { +# "_blake2": "_blake2/_blake2_build.py", +# "_ssl": "_ssl_build.py", # "sqlite3": "_sqlite3_build.py", # "audioop": "_audioop_build.py", # "tk": "_tkinter/tklib_build.py", # "curses": "_curses_build.py" if sys.platform != "win32" else None, # "syslog": "_syslog_build.py" if sys.platform != "win32" else None, -# "_gdbm": "_gdbm_build.py" if sys.platform != "win32" else None, +# "gdbm": "_gdbm_build.py" if sys.platform != "win32" else None, # "pwdgrp": "_pwdgrp_build.py" if sys.platform != "win32" else None, # "resource": "_resource_build.py" if sys.platform != "win32" else None, # "lzma": "_lzma_build.py", # "_decimal": "_decimal_build.py", -# "_ssl": "_ssl_build.py", -# "_blake2": "_blake2/_blake2_build.py", # "_sha3": "_sha3/_sha3_build.py", cffi_targets=( blake2/_blake2 sha3/_sha3 ssl audioop syslog pwdgrp resource lzma decimal ) @@ -208,9 +200,6 @@ src_compile() { use sqlite && cffi_targets+=( sqlite3 ) use tk && cffi_targets+=( tkinter/tklib ) - einfo "Please disregard the import errors during CFFI cache generation." - einfo "They come from modules not built yet." - local t # all modules except tkinter output to . # tkinter outputs to the correct dir ... @@ -239,7 +228,7 @@ src_install() { einfo "Installing PyPy ..." exeinto "${dest}" doexe pypy3-c libpypy3-c.so - pax-mark m "${ED%/}${dest}/pypy3-c" "${ED%/}${dest}/libpypy3-c.so" + pax-mark m "${ED}${dest}/pypy3-c" "${ED}${dest}/libpypy3-c.so" insinto "${dest}" # preserve mtimes to avoid obsoleting caches insopts -p @@ -248,22 +237,22 @@ src_install() { dodoc README.rst if ! use gdbm; then - rm -r "${ED%/}${dest}"/lib_pypy/_gdbm* || die + rm -r "${ED}${dest}"/lib_pypy/_gdbm* || die fi if ! use sqlite; then - rm -r "${ED%/}${dest}"/lib-python/*3/sqlite3 \ - "${ED%/}${dest}"/lib_pypy/_sqlite3* \ - "${ED%/}${dest}"/lib-python/*3/test/test_sqlite.py || die + rm -r "${ED}${dest}"/lib-python/*3/sqlite3 \ + "${ED}${dest}"/lib_pypy/_sqlite3* \ + "${ED}${dest}"/lib-python/*3/test/test_sqlite.py || die fi if ! use tk; then - rm -r "${ED%/}${dest}"/lib-python/*3/{idlelib,tkinter} \ - "${ED%/}${dest}"/lib_pypy/_tkinter \ - "${ED%/}${dest}"/lib-python/*3/test/test_{tcl,tk,ttk*}.py || die + rm -r "${ED}${dest}"/lib-python/*3/{idlelib,tkinter} \ + "${ED}${dest}"/lib_pypy/_tkinter \ + "${ED}${dest}"/lib-python/*3/test/test_{tcl,tk,ttk*}.py || die fi einfo "Generating caches and byte-compiling ..." - local -x PYTHON=${ED%/}${dest}/pypy3-c + local -x PYTHON=${ED}${dest}/pypy3-c # we can't use eclass function since PyPy is dumb and always gives # paths relative to the interpreter local PYTHON_SITEDIR=${EPREFIX}/usr/lib/pypy3.6/site-packages @@ -275,5 +264,5 @@ src_install() { einfo "Byte-compiling Python standard library..." # compile the installed modules - python_optimize "${ED%/}${dest}" + python_optimize "${ED}${dest}" } diff --git a/dev-python/pypy3/pypy3-9999.ebuild b/dev-python/pypy3/pypy3-9999.ebuild index d6e6b0856ea..12b0e7fae86 100644 --- a/dev-python/pypy3/pypy3-9999.ebuild +++ b/dev-python/pypy3/pypy3-9999.ebuild @@ -13,12 +13,12 @@ inherit check-reqs mercurial pax-utils python-any-r1 toolchain-funcs MY_P=pypy3.6-v${PV} DESCRIPTION="A fast, compliant alternative implementation of the Python (3.6) language" -HOMEPAGE="http://pypy.org/" +HOMEPAGE="https://pypy.org/" SRC_URI="" LICENSE="MIT" # pypy3 -c 'import sysconfig; print(sysconfig.get_config_var("SOABI"))' -SLOT="0/71-py36" +SLOT="0/72-py36" KEYWORDS="" IUSE="bzip2 cpu_flags_x86_sse2 gdbm +jit libressl low-memory ncurses sandbox sqlite tk" @@ -96,7 +96,7 @@ src_prepare() { eapply "${FILESDIR}/7.0.0-gentoo-path.patch" eapply "${FILESDIR}/1.9-distutils.unixccompiler.UnixCCompiler.runtime_library_dir_option.patch" eapply "${FILESDIR}"/5.9.0-shared-lib.patch # 517002 - eapply "${FILESDIR}"/7.0.0_all_distutils_cxx.patch + eapply "${FILESDIR}"/7.2.0-distutils-cxx.patch sed -e "s^@EPREFIX@^${EPREFIX}^" \ -i lib-python/3/distutils/command/install.py || die @@ -188,18 +188,18 @@ src_compile() { # Generate cffi modules # Please keep in sync with pypy/tool/build_cffi_imports.py! #cffi_build_scripts = { +# "_blake2": "_blake2/_blake2_build.py", +# "_ssl": "_ssl_build.py", # "sqlite3": "_sqlite3_build.py", # "audioop": "_audioop_build.py", # "tk": "_tkinter/tklib_build.py", # "curses": "_curses_build.py" if sys.platform != "win32" else None, # "syslog": "_syslog_build.py" if sys.platform != "win32" else None, -# "_gdbm": "_gdbm_build.py" if sys.platform != "win32" else None, +# "gdbm": "_gdbm_build.py" if sys.platform != "win32" else None, # "pwdgrp": "_pwdgrp_build.py" if sys.platform != "win32" else None, # "resource": "_resource_build.py" if sys.platform != "win32" else None, # "lzma": "_lzma_build.py", # "_decimal": "_decimal_build.py", -# "_ssl": "_ssl_build.py", -# "_blake2": "_blake2/_blake2_build.py", # "_sha3": "_sha3/_sha3_build.py", cffi_targets=( blake2/_blake2 sha3/_sha3 ssl audioop syslog pwdgrp resource lzma decimal ) @@ -208,9 +208,6 @@ src_compile() { use sqlite && cffi_targets+=( sqlite3 ) use tk && cffi_targets+=( tkinter/tklib ) - einfo "Please disregard the import errors during CFFI cache generation." - einfo "They come from modules not built yet." - local t # all modules except tkinter output to . # tkinter outputs to the correct dir ... @@ -239,7 +236,7 @@ src_install() { einfo "Installing PyPy ..." exeinto "${dest}" doexe pypy3-c libpypy3-c.so - pax-mark m "${ED%/}${dest}/pypy3-c" "${ED%/}${dest}/libpypy3-c.so" + pax-mark m "${ED}${dest}/pypy3-c" "${ED}${dest}/libpypy3-c.so" insinto "${dest}" # preserve mtimes to avoid obsoleting caches insopts -p @@ -248,22 +245,22 @@ src_install() { dodoc README.rst if ! use gdbm; then - rm -r "${ED%/}${dest}"/lib_pypy/_gdbm* || die + rm -r "${ED}${dest}"/lib_pypy/_gdbm* || die fi if ! use sqlite; then - rm -r "${ED%/}${dest}"/lib-python/*3/sqlite3 \ - "${ED%/}${dest}"/lib_pypy/_sqlite3* \ - "${ED%/}${dest}"/lib-python/*3/test/test_sqlite.py || die + rm -r "${ED}${dest}"/lib-python/*3/sqlite3 \ + "${ED}${dest}"/lib_pypy/_sqlite3* \ + "${ED}${dest}"/lib-python/*3/test/test_sqlite.py || die fi if ! use tk; then - rm -r "${ED%/}${dest}"/lib-python/*3/{idlelib,tkinter} \ - "${ED%/}${dest}"/lib_pypy/_tkinter \ - "${ED%/}${dest}"/lib-python/*3/test/test_{tcl,tk,ttk*}.py || die + rm -r "${ED}${dest}"/lib-python/*3/{idlelib,tkinter} \ + "${ED}${dest}"/lib_pypy/_tkinter \ + "${ED}${dest}"/lib-python/*3/test/test_{tcl,tk,ttk*}.py || die fi einfo "Generating caches and byte-compiling ..." - local -x PYTHON=${ED%/}${dest}/pypy3-c + local -x PYTHON=${ED}${dest}/pypy3-c # we can't use eclass function since PyPy is dumb and always gives # paths relative to the interpreter local PYTHON_SITEDIR=${EPREFIX}/usr/lib/pypy3.6/site-packages @@ -275,5 +272,5 @@ src_install() { einfo "Byte-compiling Python standard library..." # compile the installed modules - python_optimize "${ED%/}${dest}" + python_optimize "${ED}${dest}" }