diff options
-rw-r--r-- | dev-binpkg/pypy3/Manifest | 12 | ||||
-rw-r--r-- | dev-binpkg/pypy3/files/2.3.1-shared-lib.patch | 11 | ||||
-rw-r--r-- | dev-binpkg/pypy3/files/2.5.0-shared-lib.patch | 12 | ||||
-rw-r--r-- | dev-binpkg/pypy3/files/5.7.1-kill-flto.patch | 27 | ||||
-rw-r--r-- | dev-binpkg/pypy3/files/pypy3-2.4.0-gcc-4.9.patch | 26 | ||||
-rw-r--r-- | dev-binpkg/pypy3/files/pypy3-2.4.0-libressl.patch | 187 | ||||
-rw-r--r-- | dev-binpkg/pypy3/metadata.xml | 4 | ||||
-rw-r--r-- | dev-binpkg/pypy3/pypy3-2.4.0.ebuild | 188 | ||||
-rw-r--r-- | dev-binpkg/pypy3/pypy3-5.10.0.ebuild | 199 | ||||
-rw-r--r-- | dev-binpkg/pypy3/pypy3-5.10.1.ebuild | 199 | ||||
-rw-r--r-- | dev-binpkg/pypy3/pypy3-5.2.0_alpha1.ebuild | 188 | ||||
-rw-r--r-- | dev-binpkg/pypy3/pypy3-5.5.0_alpha.ebuild | 186 | ||||
-rw-r--r-- | dev-binpkg/pypy3/pypy3-5.7.1.ebuild | 201 | ||||
-rw-r--r-- | dev-binpkg/pypy3/pypy3-5.8.0.ebuild | 199 | ||||
-rw-r--r-- | dev-binpkg/pypy3/pypy3-5.9.0.ebuild | 199 | ||||
-rw-r--r-- | dev-binpkg/pypy3/pypy3-6.0.0.ebuild | 199 | ||||
-rw-r--r-- | dev-binpkg/pypy3/pypy3-7.0.0.ebuild | 178 | ||||
-rw-r--r-- | dev-binpkg/pypy3/pypy3-7.1.0.ebuild | 178 | ||||
-rw-r--r-- | dev-binpkg/pypy3/pypy3-7.1.1.ebuild | 198 |
19 files changed, 1 insertions, 2590 deletions
diff --git a/dev-binpkg/pypy3/Manifest b/dev-binpkg/pypy3/Manifest index 5c05d4d..4fa9943 100644 --- a/dev-binpkg/pypy3/Manifest +++ b/dev-binpkg/pypy3/Manifest @@ -1,13 +1 @@ -DIST pypy3-2.4.0-src.tar.bz2 14693194 BLAKE2B 835940610682a85118fc6118b804a75ea842aa74324826a276d776caccdfd65436b8e38f6a949837ba08d04c57ab4c9c5fff5734743805368e95ec2cb04bb60f SHA512 7e2b0c21f1833b8cd61251c2d58c6a9f99207e5d582618f0036886ff28dcb313541dce1c36bd1b57b332a36a94b13e416bb7b67110be7c8ece8283749ba712be -DIST pypy3-v5.10.0-src.tar.bz2 29075971 BLAKE2B 02fb64d514ab292e09ced57e1c206b04d0fb38353ad6ec0e836448344a6d126d0fccfb61cbd278ea3acaa227032640e82f9ffd7efe3b33ade1ca34a18831b3e4 SHA512 69a373c18dbad9dd617f994ad885c8d8975f0c484ba9dd547e6e892c9a3030a43e9e3ee668aee5f4969403883de1311cef97a0a5e5701921172ee6c2119b771b -DIST pypy3-v5.10.1-src.tar.bz2 29071765 BLAKE2B d5c163697d8dd36a9a61e9a355719628902de0c9a4c038d31cd134d9bb26b8058abfdf85b09715208146295c37e343fae5e1e4a3c8d1999306eeea93791e326c SHA512 91b0ed25130bdbb46d5e577136b5fe63d5162917dcc2d0b69f5cac2a283ece9d0bfd3c7c8dc61ff391e0550fa1603326f6edeb2df3159d71617fefe6c07439f5 -DIST pypy3-v5.7.1-src.tar.bz2 28811162 BLAKE2B 1186669b9b024c4b021fdc08395fc3fca34656b88a0ddb5ff3d10b7ea2ec043669db0c47443e8a5fe75fc3c348d806a871f263b18deff3a95d614d8a77c3a5cc SHA512 f8ead8214ad7d89fe80e24d97b13ece7f2c80b2f11446257a2eab0e3025fc7d8fec26474b0e9eb2b2e3ccd629532dd062829459361b601add12e40793bd5aa60 -DIST pypy3-v5.8.0-src.tar.bz2 28986883 BLAKE2B dc6c906109269e8d1bd6b171cabf6475aa803e4326a9974ded86fbb0943798317761bc0ae0ab09829a48c073b3755c8a2bdcb03bed4b06b9a70cee061867edb6 SHA512 d78b4c899a5643028664365ed973a7b292a8e5b3989cc75203cd381ea3cda7dd73121c574726e23dca86e8364fcfcf42c372c9deee438c805f30d6e1c4ac115a -DIST pypy3-v5.9.0-src.tar.bz2 29055111 BLAKE2B 181d87ebe4a83a3f03b28d891f248f718ad120ed54621f8054f19a65aebbe90b65c69e40ca656612356b2019aa9ac22d5e242e688a80190b046511a8ceb9c040 SHA512 3d5384d644fdd1bc8b95f5747dbd1771ae06eb2cfc7b57be359b8bf40177676afd097620d0cb9d9000c40d8cce075cfa6bfd92de987d3dd927c04d7d595dc5bd -DIST pypy3-v6.0.0-src.tar.bz2 22648140 BLAKE2B b8678859b0c24494788ddf6f410a3ec1a56a04663452e1aba25d3f41c5073a95866d1623f00cb1a6c9d0256df728fa60d1edb5b58d26c0d88577769cc8a6205d SHA512 ea406c4dd1837a6ab13026de01330790f3c18f6e2bfb83e8553e52acf78b43dfb559ce75c2d91395055c771db359356c8183ed950da6f01a21bf09128935af5e -DIST pypy3.3-v5.2.0-alpha1-src.tar.bz2 24390595 BLAKE2B 597c2fde68b884592f2c0fb8032a8ee6b0bfb6d3ee47dc1e64a7bb6759f329b909cadb04c99c422f6e4f756ab2787aa3f850d6e05e37f06c3f28436d98e0f805 SHA512 1b6bcab12a7f4dd0ac44158b8acafd64de4b9bcc277385ba4c05982381dcd577fa6ec7b2247f70d2671055f3669764b92b4447b32d51ded58c60e6ec23509595 -DIST pypy3.3-v5.5.0-alpha-src.tar.bz2 25122033 BLAKE2B 6d0fc60fd8f5461a043f7a48dc6faaf0fd886a83a87955053e4fd9aae33e3e0a84421319916284170ade4cb663d1aa3c0db761489745cda685a4d55efc0eccb1 SHA512 b2cf9700e45c452293297edffe08e572dffc3c567026b4b5d9165c1ba1b4d858ffc8a6754f5f28781020016c36440e5c02d07562d075b12444c9c32ea5dd2168 -DIST pypy3.5-v7.0.0-src.tar.bz2 22730690 BLAKE2B 312aea1f88303b225bbfa5e82a28d3c2893d9977b03a3fd12923db15c4a77f04ec3fbce947f0684c4e27073836583ef8a5eaf5be05612e564172170740c2a6e3 SHA512 3facac26e06e254cbf244841824b35ec211859123f6ba9f095dc980292c10d9cf1d11de62cc6372cf77e92ee1cd2358bbd794b3ff25cb7172e1b21c02c8ce6c2 -DIST pypy3.6-v7.1.0-src.tar.bz2 23167216 BLAKE2B 12a085c2d4820289643818d8bc1c17304e4cf4f4687054452d878c6f26fd36802bbbe5baee73f0ce2f0322e126dbccbcf7b48ca6569bb7eb8d59f473bd80d4b1 SHA512 1a0a9e9de31c63114c0537747c4a718504a28b780a2ef1f76bff6051a1ec68b496b574989f0b729c07611cd81e199135dd268834dfa6f9664e1e119db8ae20e4 -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-binpkg/pypy3/files/2.3.1-shared-lib.patch b/dev-binpkg/pypy3/files/2.3.1-shared-lib.patch deleted file mode 100644 index ae1139f..0000000 --- a/dev-binpkg/pypy3/files/2.3.1-shared-lib.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- rpython/translator/platform/posix.py -+++ rpython/translator/platform/posix.py -@@ -180,7 +180,7 @@ - 'int main(int argc, char* argv[]) ' - '{ return $(PYPY_MAIN_FUNCTION)(argc, argv); }" > $@') - m.rule('$(DEFAULT_TARGET)', ['$(TARGET)', 'main.o'], -- '$(CC_LINK) $(LDFLAGS_LINK) main.o -L. -l$(SHARED_IMPORT_LIB) -o $@') -+ '$(CC_LINK) $(LDFLAGS_LINK) main.o -L. -l$(SHARED_IMPORT_LIB) \'-Wl,-rpath,$$ORIGIN\' -o $@') - - return m - diff --git a/dev-binpkg/pypy3/files/2.5.0-shared-lib.patch b/dev-binpkg/pypy3/files/2.5.0-shared-lib.patch deleted file mode 100644 index b5c877b..0000000 --- a/dev-binpkg/pypy3/files/2.5.0-shared-lib.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ur pypy-2.5.0-src.orig/rpython/translator/platform/posix.py pypy-2.5.0-src/rpython/translator/platform/posix.py ---- a/rpython/translator/platform/posix.py 2015-02-03 05:12:49.000000000 +0800 -+++ b/rpython/translator/platform/posix.py 2015-03-22 07:36:01.420116684 +0800 -@@ -183,7 +183,7 @@ - 'int main(int argc, char* argv[]) ' - '{ return $(PYPY_MAIN_FUNCTION)(argc, argv); }" > $@') - m.rule('$(DEFAULT_TARGET)', ['$(TARGET)', 'main.o'], -- '$(CC_LINK) $(LDFLAGS_LINK) main.o -L. -l$(SHARED_IMPORT_LIB) -o $@ $(RPATH_FLAGS)') -+ '$(CC_LINK) $(LDFLAGS_LINK) main.o -L. -l$(SHARED_IMPORT_LIB) \'-Wl,-rpath,$$ORIGIN\' -o $@') - - return m - diff --git a/dev-binpkg/pypy3/files/5.7.1-kill-flto.patch b/dev-binpkg/pypy3/files/5.7.1-kill-flto.patch deleted file mode 100644 index 92395bd..0000000 --- a/dev-binpkg/pypy3/files/5.7.1-kill-flto.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 261f9280d9736965a8626c2d6a6fadd4254b2b89 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> -Date: Tue, 25 Apr 2017 17:03:46 +0200 -Subject: [PATCH] Kill -flto - ---- - rpython/translator/platform/posix.py | 4 ---- - 1 file changed, 4 deletions(-) - -diff --git a/rpython/translator/platform/posix.py b/rpython/translator/platform/posix.py -index a8d4768..20a2934 100644 ---- a/rpython/translator/platform/posix.py -+++ b/rpython/translator/platform/posix.py -@@ -130,10 +130,6 @@ class BasePosix(Platform): - else: - cflags = tuple(self.cflags) + tuple(self.standalone_only) - -- # xxx check which compilers accept this option or not -- if not config or config.translation.gcrootfinder != 'asmgcc': -- cflags = ('-flto',) + cflags -- - m = GnuMakefile(path) - m.exe_name = path.join(exe_name.basename) - m.eci = eci --- -2.12.2 - diff --git a/dev-binpkg/pypy3/files/pypy3-2.4.0-gcc-4.9.patch b/dev-binpkg/pypy3/files/pypy3-2.4.0-gcc-4.9.patch deleted file mode 100644 index dd3a688..0000000 --- a/dev-binpkg/pypy3/files/pypy3-2.4.0-gcc-4.9.patch +++ /dev/null @@ -1,26 +0,0 @@ -Description: Expect cmovnb and jnb - Fixes an FTBFS since gcc 4.9.2, which is emmiting new operations -Author: Stefano Rivera <stefanor@debian.org> -Forwarded: https://bitbucket.org/pypy/pypy/commits/c1abec418acf30bb04891c3249bc12cbe8f48d4a -Bug-Debian: https://bugs.debian.org/771137 -Last-Update: 2014-11-26 - ---- a/rpython/translator/c/gcc/trackgcroot.py -+++ b/rpython/translator/c/gcc/trackgcroot.py -@@ -590,7 +590,7 @@ - - # The various cmov* operations - for name in ''' -- e ne g ge l le a ae b be p np s ns o no -+ e ne g ge l le a ae b be nb p np s ns o no - '''.split(): - locals()['visit_cmov' + name] = binary_insn - locals()['visit_cmov' + name + 'l'] = binary_insn -@@ -837,6 +837,7 @@ - visit_jb = conditional_jump - visit_jbe = conditional_jump - visit_jp = conditional_jump -+ visit_jnb = conditional_jump - visit_jnp = conditional_jump - visit_js = conditional_jump - visit_jns = conditional_jump diff --git a/dev-binpkg/pypy3/files/pypy3-2.4.0-libressl.patch b/dev-binpkg/pypy3/files/pypy3-2.4.0-libressl.patch deleted file mode 100644 index 5852939..0000000 --- a/dev-binpkg/pypy3/files/pypy3-2.4.0-libressl.patch +++ /dev/null @@ -1,187 +0,0 @@ -From 66bef80988c9efe60b61c6bc05f3206b4c3df7e8 Mon Sep 17 00:00:00 2001 -From: hasufell <hasufell@gentoo.org> -Date: Mon, 12 Oct 2015 20:43:50 +0200 -Subject: [PATCH] Add LibreSSL support, patches backported from upstream - -https://bitbucket.org/pypy/pypy/pull-requests/333/deal-with-platforms-without-rand_egd-take/diff ---- - pypy/module/_ssl/interp_ssl.py | 34 +++++++++++++++----------- - pypy/module/_ssl/test/test_ssl.py | 8 +++--- - rpython/rlib/ropenssl.py | 6 ++++- - rpython/rtyper/tool/rffi_platform.py | 12 ++++++--- - rpython/rtyper/tool/test/test_rffi_platform.py | 24 +++++++++++++++++- - 5 files changed, 61 insertions(+), 23 deletions(-) - -diff --git a/pypy/module/_ssl/interp_ssl.py b/pypy/module/_ssl/interp_ssl.py -index 0cac165..f210167 100644 ---- a/pypy/module/_ssl/interp_ssl.py -+++ b/pypy/module/_ssl/interp_ssl.py -@@ -310,20 +310,26 @@ if HAVE_OPENSSL_RAND: - res = libssl_RAND_status() - return space.wrap(res) - -- @unwrap_spec(path=str) -- def RAND_egd(space, path): -- """RAND_egd(path) -> bytes -- -- Queries the entropy gather daemon (EGD) on socket path. Returns number -- of bytes read. Raises socket.sslerror if connection to EGD fails or -- if it does provide enough data to seed PRNG.""" -- with rffi.scoped_str2charp(path) as socket_path: -- bytes = libssl_RAND_egd(socket_path) -- if bytes == -1: -- raise ssl_error(space, -- "EGD connection failed or EGD did not return " -- "enough data to seed the PRNG") -- return space.wrap(bytes) -+ if HAVE_OPENSSL_RAND_EGD: -+ @unwrap_spec(path=str) -+ def RAND_egd(space, path): -+ """RAND_egd(path) -> bytes -+ -+ Queries the entropy gather daemon (EGD) on socket path. Returns number -+ of bytes read. Raises socket.sslerror if connection to EGD fails or -+ if it does provide enough data to seed PRNG.""" -+ with rffi.scoped_str2charp(path) as socket_path: -+ bytes = libssl_RAND_egd(socket_path) -+ if bytes == -1: -+ raise ssl_error(space, -+ "EGD connection failed or EGD did not return " -+ "enough data to seed the PRNG") -+ return space.wrap(bytes) -+ else: -+ # Dummy func for platforms missing RAND_egd(). Most likely LibreSSL. -+ @unwrap_spec(path=str) -+ def RAND_egd(space, path): -+ raise ssl_error(space, "RAND_egd unavailable") - - - class SSLSocket(W_Root): -diff --git a/pypy/module/_ssl/test/test_ssl.py b/pypy/module/_ssl/test/test_ssl.py -index 3204610..9722fd5 100644 ---- a/pypy/module/_ssl/test/test_ssl.py -+++ b/pypy/module/_ssl/test/test_ssl.py -@@ -33,7 +33,8 @@ class AppTestSSL: - assert isinstance(_ssl.OPENSSL_VERSION_INFO, tuple) - assert len(_ssl.OPENSSL_VERSION_INFO) == 5 - assert isinstance(_ssl.OPENSSL_VERSION, str) -- assert 'openssl' in _ssl.OPENSSL_VERSION.lower() -+ lower_version = _ssl.OPENSSL_VERSION.lower() -+ assert 'openssl' in lower_version or "libressl" in lower_version - - def test_RAND_add(self): - import _ssl -@@ -64,8 +65,9 @@ class AppTestSSL: - - def test_sslwrap(self): - import ssl, _socket, sys, gc -- if sys.platform == 'darwin' or 'freebsd' in sys.platform: -- skip("hangs indefinitely on OSX & FreeBSD (also on CPython)") -+ if sys.platform == 'darwin' or 'freebsd' in sys.platform or \ -+ 'openbsd' in sys.platform: -+ skip("hangs indefinitely on OSX & BSD (also on CPython)") - s = _socket.socket() - ss = ssl.wrap_socket(s) - -diff --git a/rpython/rlib/ropenssl.py b/rpython/rlib/ropenssl.py -index c36779d..6fe45d0 100644 ---- a/rpython/rlib/ropenssl.py -+++ b/rpython/rlib/ropenssl.py -@@ -168,6 +168,9 @@ OBJ_NAME = rffi.CArrayPtr(OBJ_NAME_st) - - HAVE_OPENSSL_RAND = OPENSSL_VERSION_NUMBER >= 0x0090500f - HAVE_SSL_CTX_CLEAR_OPTIONS = OPENSSL_VERSION_NUMBER >= 0x009080df -+HAVE_OPENSSL_RAND_EGD = rffi_platform.has('RAND_egd("/")', -+ '#include <openssl/rand.h>', -+ libraries=['ssl', 'crypto']) - - def external(name, argtypes, restype, **kw): - kw['compilation_info'] = eci -@@ -194,7 +197,8 @@ ssl_external('CRYPTO_set_id_callback', - if HAVE_OPENSSL_RAND: - ssl_external('RAND_add', [rffi.CCHARP, rffi.INT, rffi.DOUBLE], lltype.Void) - ssl_external('RAND_status', [], rffi.INT) -- ssl_external('RAND_egd', [rffi.CCHARP], rffi.INT) -+ if HAVE_OPENSSL_RAND_EGD: -+ ssl_external('RAND_egd', [rffi.CCHARP], rffi.INT) - ssl_external('SSL_CTX_new', [SSL_METHOD], SSL_CTX) - ssl_external('SSL_get_SSL_CTX', [SSL], SSL_CTX) - ssl_external('TLSv1_method', [], SSL_METHOD) -diff --git a/rpython/rtyper/tool/rffi_platform.py b/rpython/rtyper/tool/rffi_platform.py -index 1760877..1d56c20 100755 ---- a/rpython/rtyper/tool/rffi_platform.py -+++ b/rpython/rtyper/tool/rffi_platform.py -@@ -17,12 +17,15 @@ from rpython.rlib.rarithmetic import r_uint, r_longlong, r_ulonglong, intmask - # - # Helpers for simple cases - --def eci_from_header(c_header_source, include_dirs=None): -+def eci_from_header(c_header_source, include_dirs=None, libraries=None): - if include_dirs is None: - include_dirs = [] -+ if libraries is None: -+ libraries = [] - return ExternalCompilationInfo( - post_include_bits=[c_header_source], -- include_dirs=include_dirs -+ include_dirs=include_dirs, -+ libraries=libraries, - ) - - def getstruct(name, c_header_source, interesting_fields): -@@ -75,9 +78,10 @@ def getintegerfunctionresult(function, args=None, c_header_source='', includes=[ - CConfig._compilation_info_.includes = includes - return configure(CConfig)['RESULT'] - --def has(name, c_header_source, include_dirs=None): -+def has(name, c_header_source, include_dirs=None, libraries=None): - class CConfig: -- _compilation_info_ = eci_from_header(c_header_source, include_dirs) -+ _compilation_info_ = \ -+ eci_from_header(c_header_source, include_dirs, libraries) - HAS = Has(name) - return configure(CConfig)['HAS'] - -diff --git a/rpython/rtyper/tool/test/test_rffi_platform.py b/rpython/rtyper/tool/test/test_rffi_platform.py -index bfa069e..4feae87 100644 ---- a/rpython/rtyper/tool/test/test_rffi_platform.py -+++ b/rpython/rtyper/tool/test/test_rffi_platform.py -@@ -271,12 +271,34 @@ def test_array(): - [("d_name", lltype.FixedSizeArray(rffi.CHAR, 1))]) - assert dirent.c_d_name.length == 32 - --def test_has(): -+def test_has_0001(): - assert rffi_platform.has("x", "int x = 3;") - assert not rffi_platform.has("x", "") - # has() should also not crash if it is given an invalid #include - assert not rffi_platform.has("x", "#include <some/path/which/cannot/exist>") - -+def test_has_0002(): -+ assert rffi_platform.has("pow", "#include <math.h>", libraries=["m"]) -+ -+def test_has_0003(): -+ """multiple libraries""" -+ assert rffi_platform.has("pow", "#include <math.h>", libraries=["m", "c"]) -+ -+def test_has_0004(): -+ """bogus symbol name""" -+ assert not rffi_platform.has("pow", "#include <math.h>", -+ libraries=["boguslibname"]) -+ -+def test_has_0005(): -+ """bogus symbol name and lib name""" -+ assert not rffi_platform.has("bogus_symbol_name", "#include <math.h>", -+ libraries=["boguslibname"]) -+ -+def test_has_0006(): -+ """missing include""" -+ assert not rffi_platform.has("pow", "", libraries=["m"]) -+ -+ - def test_verify_eci(): - eci = ExternalCompilationInfo() - rffi_platform.verify_eci(eci) --- -2.6.1 - diff --git a/dev-binpkg/pypy3/metadata.xml b/dev-binpkg/pypy3/metadata.xml index 675ce03..5915221 100644 --- a/dev-binpkg/pypy3/metadata.xml +++ b/dev-binpkg/pypy3/metadata.xml @@ -1,14 +1,12 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <herd>python</herd> - <maintainer> + <maintainer type="person"> <email>mgorny@gentoo.org</email> <name>Michał Górny</name> </maintainer> <use> <flag name="low-memory">Build using PyPy with the engine configured towards low memory footprint. This makes it possible to build PyPy using ~3.5G of RAM on amd64 and ~half of that on x86, at the cost of lengthened build time. Please note that you will need an extra ~1G of extra RAM or swap since the translation memory (unused at the time) is not freed when the C compiler is spawned.</flag> <flag name="sandbox">Enable sandboxing functionality</flag> - <flag name="shadowstack">Use a shadow stack for finding GC roots</flag> </use> </pkgmetadata> diff --git a/dev-binpkg/pypy3/pypy3-2.4.0.ebuild b/dev-binpkg/pypy3/pypy3-2.4.0.ebuild deleted file mode 100644 index 89a1389..0000000 --- a/dev-binpkg/pypy3/pypy3-2.4.0.ebuild +++ /dev/null @@ -1,188 +0,0 @@ -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -EAPI=5 - -# pypy3 needs to be built using python 2 -PYTHON_COMPAT=( python2_7 pypy ) -inherit check-reqs eutils multilib multiprocessing pax-utils \ - python-any-r1 toolchain-funcs versionator - -DESCRIPTION="A fast, compliant alternative implementation of Python 3" -HOMEPAGE="http://pypy.org/" -SRC_URI="https://bitbucket.org/pypy/pypy/downloads/${P}-src.tar.bz2" - -LICENSE="MIT" -SLOT="0/$(get_version_component_range 1-2 ${PV})" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 +jit low-memory ncurses sandbox shadowstack cpu_flags_x86_sse2" - -DEPEND=">=sys-libs/zlib-1.1.3 - virtual/libffi - virtual/libintl - dev-libs/expat - dev-libs/openssl - bzip2? ( app-arch/bzip2 ) - ncurses? ( sys-libs/ncurses[-tinfo] ) - app-arch/lzip - low-memory? ( virtual/pypy:0 ) - !low-memory? ( ${PYTHON_DEPS} )" - -S="${WORKDIR}/${P}-src" - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use low-memory; then - CHECKREQS_MEMORY="1750M" - use amd64 && CHECKREQS_MEMORY="3500M" - else - CHECKREQS_MEMORY="3G" - use amd64 && CHECKREQS_MEMORY="6G" - fi - fi - - check-reqs_pkg_pretend -} - -pkg_setup() { - local force_pypy - - pkg_pretend - - use low-memory && local EPYTHON - if has_version virtual/pypy && [[ ! ${EPYTHON} ]]; then - einfo "Using PyPy to perform the translation." - local EPYTHON=pypy - else - einfo "Using ${EPYTHON:-python2} to perform the translation. Please note that upstream" - einfo "recommends using PyPy for that. If you wish to do so, please install" - einfo "virtual/pypy and ensure that EPYTHON variable is unset." - fi - - python-any-r1_pkg_setup - - local cpu - if use amd64; then - # common denominator between Intel & AMD - cpu='x86-64' - elif use x86; then - if use cpu_flags_x86_sse2; then - # lowest with SSE2 - cpu='pentium-m' - else - # lowest with SSE, compat. with athlon-xp - # TODO: do we want to support something older? - cpu='pentium3' - fi - else - die "Unsupported arch ${ARCH}" - fi - - export CFLAGS="-march=${cpu} -mtune=generic -O2 -pipe" - export CXXFLAGS=${CFLAGS} - - elog "CFLAGS: ${CFLAGS}" -} - -src_prepare() { - epatch \ - "${FILESDIR}"/${P}-gcc-4.9.patch \ - "${FILESDIR}"/2.3.1-shared-lib.patch # 517002 - epatch "${FILESDIR}"/${PN}-2.4.0-libressl.patch - - epatch_user -} - -src_compile() { - tc-export CC - - local jit_backend - if use jit; then - jit_backend='--jit-backend=' - - # We only need the explicit sse2 switch for x86. - # On other arches we can rely on autodetection which uses - # compiler macros. Plus, --jit-backend= doesn't accept all - # the modern values... - - if use x86; then - if use cpu_flags_x86_sse2; then - jit_backend+=x86 - else - jit_backend+=x86-without-sse2 - fi - else - jit_backend+=auto - fi - fi - - local args=( - --shared - $(usex jit -Ojit -O2) - $(usex shadowstack --gcrootfinder=shadowstack '') - $(usex sandbox --sandbox '') - - ${jit_backend} - --make-jobs=$(makeopts_jobs) - - pypy/goal/targetpypystandalone - ) - - # Avoid linking against libraries disabled by use flags - local opts=( - bzip2:bz2 - ncurses:_minimal_curses - ) - - local opt - for opt in "${opts[@]}"; do - local flag=${opt%:*} - local mod=${opt#*:} - - args+=( - $(usex ${flag} --withmod --withoutmod)-${mod} - ) - done - - local interp=( "${PYTHON}" ) - if use low-memory; then - interp=( env PYPY_GC_MAX_DELTA=200MB - "${PYTHON}" --jit loop_longevity=300 ) - fi - - set -- "${interp[@]}" rpython/bin/rpython --batch "${args[@]}" - echo -e "\033[1m${@}\033[0m" - "${@}" || die "compile error" - - pax-mark m "${ED%/}${INSDESTTREE}/pypy-c" -} - -src_install() { - local flags=( bzip2 jit ncurses sandbox shadowstack ) - use x86 && flags+=( cpu_flags_x86_sse2 ) - local f suffix="-${ARCH}" - - for f in ${flags[@]}; do - use ${f} && suffix+="+${f#cpu_flags_x86_}" - done - - local BIN_P=pypy3-bin-${PV} - - einfo "Zipping PyPy ..." - mkdir "${BIN_P}${suffix}"{,/include} || die - mv pypy-c libpypy-c.so "${BIN_P}${suffix}"/ || die - mv include/pypy_* "${BIN_P}${suffix}"/include/ || die - chmod +x "${BIN_P}${suffix}"/pypy-c || die - - tar -cf "${BIN_P}${suffix}.tar" "${BIN_P}${suffix}" || die - lzip -v9 "${BIN_P}${suffix}.tar" || die -} - -# Yup, very hacky. -pkg_preinst() { - # integrity check. - [[ ${PYPY_BINPKG_STORE} ]] || die 'PYPY_BINPKG_STORE unset, wtf?!' - mkdir -p "${ROOT%/}${PYPY_BINPKG_STORE}" || die - mv "${S}"/*.tar.lz "${ROOT%/}${PYPY_BINPKG_STORE}" || die -} diff --git a/dev-binpkg/pypy3/pypy3-5.10.0.ebuild b/dev-binpkg/pypy3/pypy3-5.10.0.ebuild deleted file mode 100644 index 4890a7f..0000000 --- a/dev-binpkg/pypy3/pypy3-5.10.0.ebuild +++ /dev/null @@ -1,199 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -# pypy3 needs to be built using python 2 -PYTHON_COMPAT=( python2_7 pypy ) -inherit check-reqs multilib multiprocessing pax-utils python-any-r1 toolchain-funcs versionator - -MY_P=pypy3-v${PV} - -DESCRIPTION="A fast, compliant alternative implementation of the Python (3.3) language" -HOMEPAGE="http://pypy.org/" -SRC_URI="https://bitbucket.org/pypy/pypy/downloads/${MY_P}-src.tar.bz2" - -LICENSE="MIT" -# XX from pypy3-XX.so module suffix -SLOT="0/59" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 +jit libressl low-memory ncurses sandbox cpu_flags_x86_sse2" - -DEPEND=">=sys-libs/zlib-1.1.3:0= - virtual/libffi:0= - virtual/libintl:0= - dev-libs/expat:0= - !libressl? ( dev-libs/openssl:0=[-bindist] ) - libressl? ( dev-libs/libressl:0= ) - bzip2? ( app-arch/bzip2:0= ) - ncurses? ( sys-libs/ncurses:0= ) - app-arch/lzip - low-memory? ( virtual/pypy:0 ) - !low-memory? ( ${PYTHON_DEPS} )" -# doc? ( dev-python/sphinx ) - -S="${WORKDIR}/${MY_P}-src" - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use low-memory; then - CHECKREQS_MEMORY="1750M" - use amd64 && CHECKREQS_MEMORY="3500M" - else - CHECKREQS_MEMORY="3G" - use amd64 && CHECKREQS_MEMORY="6G" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - pkg_pretend - - # unset to allow forcing pypy below :) - use low-memory && local EPYTHON= - if python_is_installed pypy && [[ ! ${EPYTHON} || ${EPYTHON} == pypy ]]; then - einfo "Using PyPy to perform the translation." - local EPYTHON=pypy - else - einfo "Using ${EPYTHON:-python2} to perform the translation. Please note that upstream" - einfo "recommends using PyPy for that. If you wish to do so, please install" - einfo "virtual/pypy and ensure that EPYTHON variable is unset." - fi - - python-any-r1_pkg_setup - - local cpu - if use amd64; then - # common denominator between Intel & AMD - cpu='x86-64' - elif use x86; then - if use cpu_flags_x86_sse2; then - # lowest with SSE2 - cpu='pentium-m' - else - # lowest with SSE, compat. with athlon-xp - # TODO: do we want to support something older? - cpu='pentium3' - fi - else - die "Unsupported arch ${ARCH}" - fi - - export CFLAGS="-march=${cpu} -mtune=generic -O2 -pipe" - export CXXFLAGS=${CFLAGS} - - elog "CFLAGS: ${CFLAGS}" - fi -} - -src_prepare() { - eapply "${FILESDIR}"/5.9.0-shared-lib.patch # 517002 - - eapply_user -} - -src_configure() { - tc-export CC - - local jit_backend - if use jit; then - jit_backend='--jit-backend=' - - # We only need the explicit sse2 switch for x86. - # On other arches we can rely on autodetection which uses - # compiler macros. Plus, --jit-backend= doesn't accept all - # the modern values... - - if use x86; then - if use cpu_flags_x86_sse2; then - jit_backend+=x86 - else - jit_backend+=x86-without-sse2 - fi - else - jit_backend+=auto - fi - fi - - local args=( - --shared - $(usex jit -Ojit -O2) - $(usex sandbox --sandbox '') - - ${jit_backend} - --make-jobs=$(makeopts_jobs) - - pypy/goal/targetpypystandalone - ) - - # Avoid linking against libraries disabled by use flags - local opts=( - bzip2:bz2 - ncurses:_minimal_curses - ) - - local opt - for opt in "${opts[@]}"; do - local flag=${opt%:*} - local mod=${opt#*:} - - args+=( - $(usex ${flag} --withmod --withoutmod)-${mod} - ) - done - - local interp=( "${PYTHON}" ) - if use low-memory; then - interp=( env PYPY_GC_MAX_DELTA=200MB - "${PYTHON}" --jit loop_longevity=300 ) - fi - - # translate into the C sources - # we're going to make them ourselves since otherwise pypy does not - # free up the unneeded memory before spawning the compiler - set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}" - echo -e "\033[1m${@}\033[0m" - "${@}" || die "translation failed" -} - -src_compile() { - emake -C "${T}"/usession*-0/testing_1 - - # copy back to make sys.prefix happy - cp -p "${T}"/usession*-0/testing_1/{pypy3-c,libpypy3-c.so} . || die - pax-mark m pypy3-c libpypy3-c.so - - #use doc && emake -C pypy/doc html -} - -src_install() { - local flags=( bzip2 jit ncurses sandbox ) - use x86 && flags+=( cpu_flags_x86_sse2 ) - local f suffix="-${ARCH}" - - for f in ${flags[@]}; do - use ${f} && suffix+="+${f#cpu_flags_x86_}" - done - - local BIN_P=pypy3-bin-${PV} - - einfo "Zipping PyPy ..." - mkdir "${BIN_P}${suffix}"{,/include} || die - mv pypy3-c libpypy3-c.so "${BIN_P}${suffix}"/ || die - mv include/pypy_* "${BIN_P}${suffix}"/include/ || die - chmod +x "${BIN_P}${suffix}"/pypy3-c || die - - tar -cf "${BIN_P}${suffix}.tar" "${BIN_P}${suffix}" || die - lzip -v9 "${BIN_P}${suffix}.tar" || die -} - -# Yup, very hacky. -pkg_preinst() { - # integrity check. - [[ ${PYPY_BINPKG_STORE} ]] || die 'PYPY_BINPKG_STORE unset, wtf?!' - mkdir -p "${ROOT%/}${PYPY_BINPKG_STORE}" || die - mv "${S}"/*.tar.lz "${ROOT%/}${PYPY_BINPKG_STORE}" || die -} diff --git a/dev-binpkg/pypy3/pypy3-5.10.1.ebuild b/dev-binpkg/pypy3/pypy3-5.10.1.ebuild deleted file mode 100644 index 4890a7f..0000000 --- a/dev-binpkg/pypy3/pypy3-5.10.1.ebuild +++ /dev/null @@ -1,199 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -# pypy3 needs to be built using python 2 -PYTHON_COMPAT=( python2_7 pypy ) -inherit check-reqs multilib multiprocessing pax-utils python-any-r1 toolchain-funcs versionator - -MY_P=pypy3-v${PV} - -DESCRIPTION="A fast, compliant alternative implementation of the Python (3.3) language" -HOMEPAGE="http://pypy.org/" -SRC_URI="https://bitbucket.org/pypy/pypy/downloads/${MY_P}-src.tar.bz2" - -LICENSE="MIT" -# XX from pypy3-XX.so module suffix -SLOT="0/59" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 +jit libressl low-memory ncurses sandbox cpu_flags_x86_sse2" - -DEPEND=">=sys-libs/zlib-1.1.3:0= - virtual/libffi:0= - virtual/libintl:0= - dev-libs/expat:0= - !libressl? ( dev-libs/openssl:0=[-bindist] ) - libressl? ( dev-libs/libressl:0= ) - bzip2? ( app-arch/bzip2:0= ) - ncurses? ( sys-libs/ncurses:0= ) - app-arch/lzip - low-memory? ( virtual/pypy:0 ) - !low-memory? ( ${PYTHON_DEPS} )" -# doc? ( dev-python/sphinx ) - -S="${WORKDIR}/${MY_P}-src" - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use low-memory; then - CHECKREQS_MEMORY="1750M" - use amd64 && CHECKREQS_MEMORY="3500M" - else - CHECKREQS_MEMORY="3G" - use amd64 && CHECKREQS_MEMORY="6G" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - pkg_pretend - - # unset to allow forcing pypy below :) - use low-memory && local EPYTHON= - if python_is_installed pypy && [[ ! ${EPYTHON} || ${EPYTHON} == pypy ]]; then - einfo "Using PyPy to perform the translation." - local EPYTHON=pypy - else - einfo "Using ${EPYTHON:-python2} to perform the translation. Please note that upstream" - einfo "recommends using PyPy for that. If you wish to do so, please install" - einfo "virtual/pypy and ensure that EPYTHON variable is unset." - fi - - python-any-r1_pkg_setup - - local cpu - if use amd64; then - # common denominator between Intel & AMD - cpu='x86-64' - elif use x86; then - if use cpu_flags_x86_sse2; then - # lowest with SSE2 - cpu='pentium-m' - else - # lowest with SSE, compat. with athlon-xp - # TODO: do we want to support something older? - cpu='pentium3' - fi - else - die "Unsupported arch ${ARCH}" - fi - - export CFLAGS="-march=${cpu} -mtune=generic -O2 -pipe" - export CXXFLAGS=${CFLAGS} - - elog "CFLAGS: ${CFLAGS}" - fi -} - -src_prepare() { - eapply "${FILESDIR}"/5.9.0-shared-lib.patch # 517002 - - eapply_user -} - -src_configure() { - tc-export CC - - local jit_backend - if use jit; then - jit_backend='--jit-backend=' - - # We only need the explicit sse2 switch for x86. - # On other arches we can rely on autodetection which uses - # compiler macros. Plus, --jit-backend= doesn't accept all - # the modern values... - - if use x86; then - if use cpu_flags_x86_sse2; then - jit_backend+=x86 - else - jit_backend+=x86-without-sse2 - fi - else - jit_backend+=auto - fi - fi - - local args=( - --shared - $(usex jit -Ojit -O2) - $(usex sandbox --sandbox '') - - ${jit_backend} - --make-jobs=$(makeopts_jobs) - - pypy/goal/targetpypystandalone - ) - - # Avoid linking against libraries disabled by use flags - local opts=( - bzip2:bz2 - ncurses:_minimal_curses - ) - - local opt - for opt in "${opts[@]}"; do - local flag=${opt%:*} - local mod=${opt#*:} - - args+=( - $(usex ${flag} --withmod --withoutmod)-${mod} - ) - done - - local interp=( "${PYTHON}" ) - if use low-memory; then - interp=( env PYPY_GC_MAX_DELTA=200MB - "${PYTHON}" --jit loop_longevity=300 ) - fi - - # translate into the C sources - # we're going to make them ourselves since otherwise pypy does not - # free up the unneeded memory before spawning the compiler - set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}" - echo -e "\033[1m${@}\033[0m" - "${@}" || die "translation failed" -} - -src_compile() { - emake -C "${T}"/usession*-0/testing_1 - - # copy back to make sys.prefix happy - cp -p "${T}"/usession*-0/testing_1/{pypy3-c,libpypy3-c.so} . || die - pax-mark m pypy3-c libpypy3-c.so - - #use doc && emake -C pypy/doc html -} - -src_install() { - local flags=( bzip2 jit ncurses sandbox ) - use x86 && flags+=( cpu_flags_x86_sse2 ) - local f suffix="-${ARCH}" - - for f in ${flags[@]}; do - use ${f} && suffix+="+${f#cpu_flags_x86_}" - done - - local BIN_P=pypy3-bin-${PV} - - einfo "Zipping PyPy ..." - mkdir "${BIN_P}${suffix}"{,/include} || die - mv pypy3-c libpypy3-c.so "${BIN_P}${suffix}"/ || die - mv include/pypy_* "${BIN_P}${suffix}"/include/ || die - chmod +x "${BIN_P}${suffix}"/pypy3-c || die - - tar -cf "${BIN_P}${suffix}.tar" "${BIN_P}${suffix}" || die - lzip -v9 "${BIN_P}${suffix}.tar" || die -} - -# Yup, very hacky. -pkg_preinst() { - # integrity check. - [[ ${PYPY_BINPKG_STORE} ]] || die 'PYPY_BINPKG_STORE unset, wtf?!' - mkdir -p "${ROOT%/}${PYPY_BINPKG_STORE}" || die - mv "${S}"/*.tar.lz "${ROOT%/}${PYPY_BINPKG_STORE}" || die -} diff --git a/dev-binpkg/pypy3/pypy3-5.2.0_alpha1.ebuild b/dev-binpkg/pypy3/pypy3-5.2.0_alpha1.ebuild deleted file mode 100644 index 3c3df9d..0000000 --- a/dev-binpkg/pypy3/pypy3-5.2.0_alpha1.ebuild +++ /dev/null @@ -1,188 +0,0 @@ -# Copyright 1999-2016 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -EAPI=5 - -# pypy3 needs to be built using python 2 -PYTHON_COMPAT=( python2_7 pypy ) -inherit check-reqs eutils multilib multiprocessing pax-utils \ - python-any-r1 toolchain-funcs versionator - -MY_P=pypy3.3-v${PV/_/-} - -DESCRIPTION="A fast, compliant alternative implementation of Python 3" -HOMEPAGE="http://pypy.org/" -SRC_URI="https://bitbucket.org/pypy/pypy/downloads/${MY_P}-src.tar.bz2" - -LICENSE="MIT" -SLOT="0/$(get_version_component_range 1-2 ${PV})" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 +jit low-memory ncurses sandbox shadowstack cpu_flags_x86_sse2" - -DEPEND=">=sys-libs/zlib-1.1.3 - virtual/libffi - virtual/libintl - dev-libs/expat - dev-libs/openssl - bzip2? ( app-arch/bzip2 ) - ncurses? ( sys-libs/ncurses[-tinfo] ) - app-arch/lzip - low-memory? ( virtual/pypy:0 ) - !low-memory? ( ${PYTHON_DEPS} )" - -S="${WORKDIR}/${MY_P}-src" - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use low-memory; then - CHECKREQS_MEMORY="1750M" - use amd64 && CHECKREQS_MEMORY="3500M" - else - CHECKREQS_MEMORY="3G" - use amd64 && CHECKREQS_MEMORY="6G" - fi - fi - - check-reqs_pkg_pretend -} - -pkg_setup() { - local force_pypy - - pkg_pretend - - use low-memory && local EPYTHON - if has_version virtual/pypy && [[ ! ${EPYTHON} ]]; then - einfo "Using PyPy to perform the translation." - local EPYTHON=pypy - else - einfo "Using ${EPYTHON:-python2} to perform the translation. Please note that upstream" - einfo "recommends using PyPy for that. If you wish to do so, please install" - einfo "virtual/pypy and ensure that EPYTHON variable is unset." - fi - - python-any-r1_pkg_setup - - local cpu - if use amd64; then - # common denominator between Intel & AMD - cpu='x86-64' - elif use x86; then - if use cpu_flags_x86_sse2; then - # lowest with SSE2 - cpu='pentium-m' - else - # lowest with SSE, compat. with athlon-xp - # TODO: do we want to support something older? - cpu='pentium3' - fi - else - die "Unsupported arch ${ARCH}" - fi - - export CFLAGS="-march=${cpu} -mtune=generic -O2 -pipe" - export CXXFLAGS=${CFLAGS} - - elog "CFLAGS: ${CFLAGS}" -} - -src_prepare() { - epatch \ - "${FILESDIR}"/2.5.0-shared-lib.patch # 517002 - - epatch_user -} - -src_compile() { - tc-export CC - - local jit_backend - if use jit; then - jit_backend='--jit-backend=' - - # We only need the explicit sse2 switch for x86. - # On other arches we can rely on autodetection which uses - # compiler macros. Plus, --jit-backend= doesn't accept all - # the modern values... - - if use x86; then - if use cpu_flags_x86_sse2; then - jit_backend+=x86 - else - jit_backend+=x86-without-sse2 - fi - else - jit_backend+=auto - fi - fi - - local args=( - --shared - $(usex jit -Ojit -O2) - $(usex shadowstack --gcrootfinder=shadowstack '') - $(usex sandbox --sandbox '') - - ${jit_backend} - --make-jobs=$(makeopts_jobs) - - pypy/goal/targetpypystandalone - ) - - # Avoid linking against libraries disabled by use flags - local opts=( - bzip2:bz2 - ncurses:_minimal_curses - ) - - local opt - for opt in "${opts[@]}"; do - local flag=${opt%:*} - local mod=${opt#*:} - - args+=( - $(usex ${flag} --withmod --withoutmod)-${mod} - ) - done - - local interp=( "${PYTHON}" ) - if use low-memory; then - interp=( env PYPY_GC_MAX_DELTA=200MB - "${PYTHON}" --jit loop_longevity=300 ) - fi - - set -- "${interp[@]}" rpython/bin/rpython --batch "${args[@]}" - echo -e "\033[1m${@}\033[0m" - "${@}" || die "compile error" - - pax-mark m "${ED%/}${INSDESTTREE}/pypy-c" -} - -src_install() { - local flags=( bzip2 jit ncurses sandbox shadowstack ) - use x86 && flags+=( cpu_flags_x86_sse2 ) - local f suffix="-${ARCH}" - - for f in ${flags[@]}; do - use ${f} && suffix+="+${f#cpu_flags_x86_}" - done - - local BIN_P=pypy3-bin-${PV} - - einfo "Zipping PyPy ..." - mkdir "${BIN_P}${suffix}"{,/include} || die - mv pypy-c libpypy-c.so "${BIN_P}${suffix}"/ || die - mv include/pypy_* "${BIN_P}${suffix}"/include/ || die - chmod +x "${BIN_P}${suffix}"/pypy-c || die - - tar -cf "${BIN_P}${suffix}.tar" "${BIN_P}${suffix}" || die - lzip -v9 "${BIN_P}${suffix}.tar" || die -} - -# Yup, very hacky. -pkg_preinst() { - # integrity check. - [[ ${PYPY_BINPKG_STORE} ]] || die 'PYPY_BINPKG_STORE unset, wtf?!' - mkdir -p "${ROOT%/}${PYPY_BINPKG_STORE}" || die - mv "${S}"/*.tar.lz "${ROOT%/}${PYPY_BINPKG_STORE}" || die -} diff --git a/dev-binpkg/pypy3/pypy3-5.5.0_alpha.ebuild b/dev-binpkg/pypy3/pypy3-5.5.0_alpha.ebuild deleted file mode 100644 index 7800269..0000000 --- a/dev-binpkg/pypy3/pypy3-5.5.0_alpha.ebuild +++ /dev/null @@ -1,186 +0,0 @@ -# Copyright 1999-2016 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -EAPI=5 - -# pypy3 needs to be built using python 2 -PYTHON_COMPAT=( python2_7 pypy ) -inherit check-reqs eutils multilib multiprocessing pax-utils \ - python-any-r1 toolchain-funcs versionator - -DESCRIPTION="A fast, compliant alternative implementation of Python 3" -HOMEPAGE="http://pypy.org/" -SRC_URI="https://bitbucket.org/pypy/pypy/downloads/pypy3.3-v${PV/_/-}-src.tar.bz2" - -LICENSE="MIT" -SLOT="0/$(get_version_component_range 1-2 ${PV})" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 +jit low-memory ncurses sandbox shadowstack cpu_flags_x86_sse2" - -DEPEND=">=sys-libs/zlib-1.1.3:0= - virtual/libffi:0= - virtual/libintl:0= - dev-libs/expat:0= - dev-libs/openssl:0=[-bindist] - bzip2? ( app-arch/bzip2:0= ) - ncurses? ( sys-libs/ncurses:0= ) - app-arch/lzip - low-memory? ( virtual/pypy:0 ) - !low-memory? ( ${PYTHON_DEPS} )" - -# Who would care about predictable directory names? -S="${WORKDIR}/pypy3-v${PV%_*}-src" - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use low-memory; then - CHECKREQS_MEMORY="1750M" - use amd64 && CHECKREQS_MEMORY="3500M" - else - CHECKREQS_MEMORY="3G" - use amd64 && CHECKREQS_MEMORY="6G" - fi - fi - - check-reqs_pkg_pretend -} - -pkg_setup() { - local force_pypy - - pkg_pretend - - use low-memory && local EPYTHON - if has_version virtual/pypy && [[ ! ${EPYTHON} ]]; then - einfo "Using PyPy to perform the translation." - local EPYTHON=pypy - else - einfo "Using ${EPYTHON:-python2} to perform the translation. Please note that upstream" - einfo "recommends using PyPy for that. If you wish to do so, please install" - einfo "virtual/pypy and ensure that EPYTHON variable is unset." - fi - - python-any-r1_pkg_setup - - local cpu - if use amd64; then - # common denominator between Intel & AMD - cpu='x86-64' - elif use x86; then - if use cpu_flags_x86_sse2; then - # lowest with SSE2 - cpu='pentium-m' - else - # lowest with SSE, compat. with athlon-xp - # TODO: do we want to support something older? - cpu='pentium3' - fi - else - die "Unsupported arch ${ARCH}" - fi - - export CFLAGS="-march=${cpu} -mtune=generic -O2 -pipe" - export CXXFLAGS=${CFLAGS} - - elog "CFLAGS: ${CFLAGS}" -} - -src_prepare() { - epatch "${FILESDIR}"/2.5.0-shared-lib.patch # 517002 - - epatch_user -} - -src_compile() { - tc-export CC - - local jit_backend - if use jit; then - jit_backend='--jit-backend=' - - # We only need the explicit sse2 switch for x86. - # On other arches we can rely on autodetection which uses - # compiler macros. Plus, --jit-backend= doesn't accept all - # the modern values... - - if use x86; then - if use cpu_flags_x86_sse2; then - jit_backend+=x86 - else - jit_backend+=x86-without-sse2 - fi - else - jit_backend+=auto - fi - fi - - local args=( - --shared - $(usex jit -Ojit -O2) - $(usex shadowstack --gcrootfinder=shadowstack '') - $(usex sandbox --sandbox '') - - ${jit_backend} - --make-jobs=$(makeopts_jobs) - - pypy/goal/targetpypystandalone - ) - - # Avoid linking against libraries disabled by use flags - local opts=( - bzip2:bz2 - ncurses:_minimal_curses - ) - - local opt - for opt in "${opts[@]}"; do - local flag=${opt%:*} - local mod=${opt#*:} - - args+=( - $(usex ${flag} --withmod --withoutmod)-${mod} - ) - done - - local interp=( "${PYTHON}" ) - if use low-memory; then - interp=( env PYPY_GC_MAX_DELTA=200MB - "${PYTHON}" --jit loop_longevity=300 ) - fi - - set -- "${interp[@]}" rpython/bin/rpython --batch "${args[@]}" - echo -e "\033[1m${@}\033[0m" - "${@}" || die "compile error" - - pax-mark m "${ED%/}${INSDESTTREE}/pypy-c" -} - -src_install() { - local flags=( bzip2 jit ncurses sandbox shadowstack ) - use x86 && flags+=( cpu_flags_x86_sse2 ) - local f suffix="-${ARCH}" - - for f in ${flags[@]}; do - use ${f} && suffix+="+${f#cpu_flags_x86_}" - done - - local BIN_P=pypy3-bin-${PV} - - einfo "Zipping PyPy ..." - mkdir "${BIN_P}${suffix}"{,/include} || die - mv pypy-c libpypy-c.so "${BIN_P}${suffix}"/ || die - mv include/pypy_* "${BIN_P}${suffix}"/include/ || die - chmod +x "${BIN_P}${suffix}"/pypy-c || die - - tar -cf "${BIN_P}${suffix}.tar" "${BIN_P}${suffix}" || die - lzip -v9 "${BIN_P}${suffix}.tar" || die -} - -# Yup, very hacky. -pkg_preinst() { - # integrity check. - [[ ${PYPY_BINPKG_STORE} ]] || die 'PYPY_BINPKG_STORE unset, wtf?!' - mkdir -p "${ROOT%/}${PYPY_BINPKG_STORE}" || die - mv "${S}"/*.tar.lz "${ROOT%/}${PYPY_BINPKG_STORE}" || die -} diff --git a/dev-binpkg/pypy3/pypy3-5.7.1.ebuild b/dev-binpkg/pypy3/pypy3-5.7.1.ebuild deleted file mode 100644 index 2c97683..0000000 --- a/dev-binpkg/pypy3/pypy3-5.7.1.ebuild +++ /dev/null @@ -1,201 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -# pypy3 needs to be built using python 2 -PYTHON_COMPAT=( python2_7 pypy ) -inherit check-reqs multilib multiprocessing pax-utils python-any-r1 toolchain-funcs versionator - -MY_P=pypy3-v${PV} - -DESCRIPTION="A fast, compliant alternative implementation of the Python (3.3) language" -HOMEPAGE="http://pypy.org/" -SRC_URI="https://bitbucket.org/pypy/pypy/downloads/${MY_P}-src.tar.bz2" - -LICENSE="MIT" -# XX from pypy3-XX.so module suffix -SLOT="0/55" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 +jit libressl low-memory ncurses sandbox cpu_flags_x86_sse2" - -DEPEND=">=sys-libs/zlib-1.1.3:0= - virtual/libffi:0= - virtual/libintl:0= - dev-libs/expat:0= - !libressl? ( dev-libs/openssl:0=[-bindist] ) - libressl? ( dev-libs/libressl:0= ) - bzip2? ( app-arch/bzip2:0= ) - ncurses? ( sys-libs/ncurses:0= ) - app-arch/lzip - low-memory? ( virtual/pypy:0 ) - !low-memory? ( ${PYTHON_DEPS} )" -# doc? ( dev-python/sphinx ) - -S="${WORKDIR}/${MY_P}-src" - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use low-memory; then - CHECKREQS_MEMORY="1750M" - use amd64 && CHECKREQS_MEMORY="3500M" - else - CHECKREQS_MEMORY="3G" - use amd64 && CHECKREQS_MEMORY="6G" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - pkg_pretend - - # unset to allow forcing pypy below :) - use low-memory && local EPYTHON= - if python_is_installed pypy && [[ ! ${EPYTHON} || ${EPYTHON} == pypy ]]; then - einfo "Using PyPy to perform the translation." - local EPYTHON=pypy - else - einfo "Using ${EPYTHON:-python2} to perform the translation. Please note that upstream" - einfo "recommends using PyPy for that. If you wish to do so, please install" - einfo "virtual/pypy and ensure that EPYTHON variable is unset." - fi - - python-any-r1_pkg_setup - - local cpu - if use amd64; then - # common denominator between Intel & AMD - cpu='x86-64' - elif use x86; then - if use cpu_flags_x86_sse2; then - # lowest with SSE2 - cpu='pentium-m' - else - # lowest with SSE, compat. with athlon-xp - # TODO: do we want to support something older? - cpu='pentium3' - fi - else - die "Unsupported arch ${ARCH}" - fi - - export CFLAGS="-march=${cpu} -mtune=generic -O2 -pipe" - export CXXFLAGS=${CFLAGS} - - elog "CFLAGS: ${CFLAGS}" - fi -} - -src_prepare() { - eapply "${FILESDIR}"/2.5.0-shared-lib.patch # 517002 - # disarm implicit -flto - eapply "${FILESDIR}"/5.7.1-kill-flto.patch - - eapply_user -} - -src_configure() { - tc-export CC - - local jit_backend - if use jit; then - jit_backend='--jit-backend=' - - # We only need the explicit sse2 switch for x86. - # On other arches we can rely on autodetection which uses - # compiler macros. Plus, --jit-backend= doesn't accept all - # the modern values... - - if use x86; then - if use cpu_flags_x86_sse2; then - jit_backend+=x86 - else - jit_backend+=x86-without-sse2 - fi - else - jit_backend+=auto - fi - fi - - local args=( - --shared - $(usex jit -Ojit -O2) - $(usex sandbox --sandbox '') - - ${jit_backend} - --make-jobs=$(makeopts_jobs) - - pypy/goal/targetpypystandalone - ) - - # Avoid linking against libraries disabled by use flags - local opts=( - bzip2:bz2 - ncurses:_minimal_curses - ) - - local opt - for opt in "${opts[@]}"; do - local flag=${opt%:*} - local mod=${opt#*:} - - args+=( - $(usex ${flag} --withmod --withoutmod)-${mod} - ) - done - - local interp=( "${PYTHON}" ) - if use low-memory; then - interp=( env PYPY_GC_MAX_DELTA=200MB - "${PYTHON}" --jit loop_longevity=300 ) - fi - - # translate into the C sources - # we're going to make them ourselves since otherwise pypy does not - # free up the unneeded memory before spawning the compiler - set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}" - echo -e "\033[1m${@}\033[0m" - "${@}" || die "translation failed" -} - -src_compile() { - emake -C "${T}"/usession*-0/testing_1 - - # copy back to make sys.prefix happy - cp -p "${T}"/usession*-0/testing_1/{pypy3-c,libpypy3-c.so} . || die - pax-mark m pypy3-c libpypy3-c.so - - #use doc && emake -C pypy/doc html -} - -src_install() { - local flags=( bzip2 jit ncurses sandbox ) - use x86 && flags+=( cpu_flags_x86_sse2 ) - local f suffix="-${ARCH}" - - for f in ${flags[@]}; do - use ${f} && suffix+="+${f#cpu_flags_x86_}" - done - - local BIN_P=pypy3-bin-${PV} - - einfo "Zipping PyPy ..." - mkdir "${BIN_P}${suffix}"{,/include} || die - mv pypy3-c libpypy3-c.so "${BIN_P}${suffix}"/ || die - mv include/pypy_* "${BIN_P}${suffix}"/include/ || die - chmod +x "${BIN_P}${suffix}"/pypy3-c || die - - tar -cf "${BIN_P}${suffix}.tar" "${BIN_P}${suffix}" || die - lzip -v9 "${BIN_P}${suffix}.tar" || die -} - -# Yup, very hacky. -pkg_preinst() { - # integrity check. - [[ ${PYPY_BINPKG_STORE} ]] || die 'PYPY_BINPKG_STORE unset, wtf?!' - mkdir -p "${ROOT%/}${PYPY_BINPKG_STORE}" || die - mv "${S}"/*.tar.lz "${ROOT%/}${PYPY_BINPKG_STORE}" || die -} diff --git a/dev-binpkg/pypy3/pypy3-5.8.0.ebuild b/dev-binpkg/pypy3/pypy3-5.8.0.ebuild deleted file mode 100644 index 960566a..0000000 --- a/dev-binpkg/pypy3/pypy3-5.8.0.ebuild +++ /dev/null @@ -1,199 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -# pypy3 needs to be built using python 2 -PYTHON_COMPAT=( python2_7 pypy ) -inherit check-reqs multilib multiprocessing pax-utils python-any-r1 toolchain-funcs versionator - -MY_P=pypy3-v${PV} - -DESCRIPTION="A fast, compliant alternative implementation of the Python (3.3) language" -HOMEPAGE="http://pypy.org/" -SRC_URI="https://bitbucket.org/pypy/pypy/downloads/${MY_P}-src.tar.bz2" - -LICENSE="MIT" -# XX from pypy3-XX.so module suffix -SLOT="0/55" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 +jit libressl low-memory ncurses sandbox cpu_flags_x86_sse2" - -DEPEND=">=sys-libs/zlib-1.1.3:0= - virtual/libffi:0= - virtual/libintl:0= - dev-libs/expat:0= - !libressl? ( dev-libs/openssl:0=[-bindist] ) - libressl? ( dev-libs/libressl:0= ) - bzip2? ( app-arch/bzip2:0= ) - ncurses? ( sys-libs/ncurses:0= ) - app-arch/lzip - low-memory? ( virtual/pypy:0 ) - !low-memory? ( ${PYTHON_DEPS} )" -# doc? ( dev-python/sphinx ) - -S="${WORKDIR}/${MY_P}-src" - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use low-memory; then - CHECKREQS_MEMORY="1750M" - use amd64 && CHECKREQS_MEMORY="3500M" - else - CHECKREQS_MEMORY="3G" - use amd64 && CHECKREQS_MEMORY="6G" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - pkg_pretend - - # unset to allow forcing pypy below :) - use low-memory && local EPYTHON= - if python_is_installed pypy && [[ ! ${EPYTHON} || ${EPYTHON} == pypy ]]; then - einfo "Using PyPy to perform the translation." - local EPYTHON=pypy - else - einfo "Using ${EPYTHON:-python2} to perform the translation. Please note that upstream" - einfo "recommends using PyPy for that. If you wish to do so, please install" - einfo "virtual/pypy and ensure that EPYTHON variable is unset." - fi - - python-any-r1_pkg_setup - - local cpu - if use amd64; then - # common denominator between Intel & AMD - cpu='x86-64' - elif use x86; then - if use cpu_flags_x86_sse2; then - # lowest with SSE2 - cpu='pentium-m' - else - # lowest with SSE, compat. with athlon-xp - # TODO: do we want to support something older? - cpu='pentium3' - fi - else - die "Unsupported arch ${ARCH}" - fi - - export CFLAGS="-march=${cpu} -mtune=generic -O2 -pipe" - export CXXFLAGS=${CFLAGS} - - elog "CFLAGS: ${CFLAGS}" - fi -} - -src_prepare() { - eapply "${FILESDIR}"/2.5.0-shared-lib.patch # 517002 - - eapply_user -} - -src_configure() { - tc-export CC - - local jit_backend - if use jit; then - jit_backend='--jit-backend=' - - # We only need the explicit sse2 switch for x86. - # On other arches we can rely on autodetection which uses - # compiler macros. Plus, --jit-backend= doesn't accept all - # the modern values... - - if use x86; then - if use cpu_flags_x86_sse2; then - jit_backend+=x86 - else - jit_backend+=x86-without-sse2 - fi - else - jit_backend+=auto - fi - fi - - local args=( - --shared - $(usex jit -Ojit -O2) - $(usex sandbox --sandbox '') - - ${jit_backend} - --make-jobs=$(makeopts_jobs) - - pypy/goal/targetpypystandalone - ) - - # Avoid linking against libraries disabled by use flags - local opts=( - bzip2:bz2 - ncurses:_minimal_curses - ) - - local opt - for opt in "${opts[@]}"; do - local flag=${opt%:*} - local mod=${opt#*:} - - args+=( - $(usex ${flag} --withmod --withoutmod)-${mod} - ) - done - - local interp=( "${PYTHON}" ) - if use low-memory; then - interp=( env PYPY_GC_MAX_DELTA=200MB - "${PYTHON}" --jit loop_longevity=300 ) - fi - - # translate into the C sources - # we're going to make them ourselves since otherwise pypy does not - # free up the unneeded memory before spawning the compiler - set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}" - echo -e "\033[1m${@}\033[0m" - "${@}" || die "translation failed" -} - -src_compile() { - emake -C "${T}"/usession*-0/testing_1 - - # copy back to make sys.prefix happy - cp -p "${T}"/usession*-0/testing_1/{pypy3-c,libpypy3-c.so} . || die - pax-mark m pypy3-c libpypy3-c.so - - #use doc && emake -C pypy/doc html -} - -src_install() { - local flags=( bzip2 jit ncurses sandbox ) - use x86 && flags+=( cpu_flags_x86_sse2 ) - local f suffix="-${ARCH}" - - for f in ${flags[@]}; do - use ${f} && suffix+="+${f#cpu_flags_x86_}" - done - - local BIN_P=pypy3-bin-${PV} - - einfo "Zipping PyPy ..." - mkdir "${BIN_P}${suffix}"{,/include} || die - mv pypy3-c libpypy3-c.so "${BIN_P}${suffix}"/ || die - mv include/pypy_* "${BIN_P}${suffix}"/include/ || die - chmod +x "${BIN_P}${suffix}"/pypy3-c || die - - tar -cf "${BIN_P}${suffix}.tar" "${BIN_P}${suffix}" || die - lzip -v9 "${BIN_P}${suffix}.tar" || die -} - -# Yup, very hacky. -pkg_preinst() { - # integrity check. - [[ ${PYPY_BINPKG_STORE} ]] || die 'PYPY_BINPKG_STORE unset, wtf?!' - mkdir -p "${ROOT%/}${PYPY_BINPKG_STORE}" || die - mv "${S}"/*.tar.lz "${ROOT%/}${PYPY_BINPKG_STORE}" || die -} diff --git a/dev-binpkg/pypy3/pypy3-5.9.0.ebuild b/dev-binpkg/pypy3/pypy3-5.9.0.ebuild deleted file mode 100644 index 4890a7f..0000000 --- a/dev-binpkg/pypy3/pypy3-5.9.0.ebuild +++ /dev/null @@ -1,199 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -# pypy3 needs to be built using python 2 -PYTHON_COMPAT=( python2_7 pypy ) -inherit check-reqs multilib multiprocessing pax-utils python-any-r1 toolchain-funcs versionator - -MY_P=pypy3-v${PV} - -DESCRIPTION="A fast, compliant alternative implementation of the Python (3.3) language" -HOMEPAGE="http://pypy.org/" -SRC_URI="https://bitbucket.org/pypy/pypy/downloads/${MY_P}-src.tar.bz2" - -LICENSE="MIT" -# XX from pypy3-XX.so module suffix -SLOT="0/59" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 +jit libressl low-memory ncurses sandbox cpu_flags_x86_sse2" - -DEPEND=">=sys-libs/zlib-1.1.3:0= - virtual/libffi:0= - virtual/libintl:0= - dev-libs/expat:0= - !libressl? ( dev-libs/openssl:0=[-bindist] ) - libressl? ( dev-libs/libressl:0= ) - bzip2? ( app-arch/bzip2:0= ) - ncurses? ( sys-libs/ncurses:0= ) - app-arch/lzip - low-memory? ( virtual/pypy:0 ) - !low-memory? ( ${PYTHON_DEPS} )" -# doc? ( dev-python/sphinx ) - -S="${WORKDIR}/${MY_P}-src" - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use low-memory; then - CHECKREQS_MEMORY="1750M" - use amd64 && CHECKREQS_MEMORY="3500M" - else - CHECKREQS_MEMORY="3G" - use amd64 && CHECKREQS_MEMORY="6G" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - pkg_pretend - - # unset to allow forcing pypy below :) - use low-memory && local EPYTHON= - if python_is_installed pypy && [[ ! ${EPYTHON} || ${EPYTHON} == pypy ]]; then - einfo "Using PyPy to perform the translation." - local EPYTHON=pypy - else - einfo "Using ${EPYTHON:-python2} to perform the translation. Please note that upstream" - einfo "recommends using PyPy for that. If you wish to do so, please install" - einfo "virtual/pypy and ensure that EPYTHON variable is unset." - fi - - python-any-r1_pkg_setup - - local cpu - if use amd64; then - # common denominator between Intel & AMD - cpu='x86-64' - elif use x86; then - if use cpu_flags_x86_sse2; then - # lowest with SSE2 - cpu='pentium-m' - else - # lowest with SSE, compat. with athlon-xp - # TODO: do we want to support something older? - cpu='pentium3' - fi - else - die "Unsupported arch ${ARCH}" - fi - - export CFLAGS="-march=${cpu} -mtune=generic -O2 -pipe" - export CXXFLAGS=${CFLAGS} - - elog "CFLAGS: ${CFLAGS}" - fi -} - -src_prepare() { - eapply "${FILESDIR}"/5.9.0-shared-lib.patch # 517002 - - eapply_user -} - -src_configure() { - tc-export CC - - local jit_backend - if use jit; then - jit_backend='--jit-backend=' - - # We only need the explicit sse2 switch for x86. - # On other arches we can rely on autodetection which uses - # compiler macros. Plus, --jit-backend= doesn't accept all - # the modern values... - - if use x86; then - if use cpu_flags_x86_sse2; then - jit_backend+=x86 - else - jit_backend+=x86-without-sse2 - fi - else - jit_backend+=auto - fi - fi - - local args=( - --shared - $(usex jit -Ojit -O2) - $(usex sandbox --sandbox '') - - ${jit_backend} - --make-jobs=$(makeopts_jobs) - - pypy/goal/targetpypystandalone - ) - - # Avoid linking against libraries disabled by use flags - local opts=( - bzip2:bz2 - ncurses:_minimal_curses - ) - - local opt - for opt in "${opts[@]}"; do - local flag=${opt%:*} - local mod=${opt#*:} - - args+=( - $(usex ${flag} --withmod --withoutmod)-${mod} - ) - done - - local interp=( "${PYTHON}" ) - if use low-memory; then - interp=( env PYPY_GC_MAX_DELTA=200MB - "${PYTHON}" --jit loop_longevity=300 ) - fi - - # translate into the C sources - # we're going to make them ourselves since otherwise pypy does not - # free up the unneeded memory before spawning the compiler - set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}" - echo -e "\033[1m${@}\033[0m" - "${@}" || die "translation failed" -} - -src_compile() { - emake -C "${T}"/usession*-0/testing_1 - - # copy back to make sys.prefix happy - cp -p "${T}"/usession*-0/testing_1/{pypy3-c,libpypy3-c.so} . || die - pax-mark m pypy3-c libpypy3-c.so - - #use doc && emake -C pypy/doc html -} - -src_install() { - local flags=( bzip2 jit ncurses sandbox ) - use x86 && flags+=( cpu_flags_x86_sse2 ) - local f suffix="-${ARCH}" - - for f in ${flags[@]}; do - use ${f} && suffix+="+${f#cpu_flags_x86_}" - done - - local BIN_P=pypy3-bin-${PV} - - einfo "Zipping PyPy ..." - mkdir "${BIN_P}${suffix}"{,/include} || die - mv pypy3-c libpypy3-c.so "${BIN_P}${suffix}"/ || die - mv include/pypy_* "${BIN_P}${suffix}"/include/ || die - chmod +x "${BIN_P}${suffix}"/pypy3-c || die - - tar -cf "${BIN_P}${suffix}.tar" "${BIN_P}${suffix}" || die - lzip -v9 "${BIN_P}${suffix}.tar" || die -} - -# Yup, very hacky. -pkg_preinst() { - # integrity check. - [[ ${PYPY_BINPKG_STORE} ]] || die 'PYPY_BINPKG_STORE unset, wtf?!' - mkdir -p "${ROOT%/}${PYPY_BINPKG_STORE}" || die - mv "${S}"/*.tar.lz "${ROOT%/}${PYPY_BINPKG_STORE}" || die -} diff --git a/dev-binpkg/pypy3/pypy3-6.0.0.ebuild b/dev-binpkg/pypy3/pypy3-6.0.0.ebuild deleted file mode 100644 index 4890a7f..0000000 --- a/dev-binpkg/pypy3/pypy3-6.0.0.ebuild +++ /dev/null @@ -1,199 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -# pypy3 needs to be built using python 2 -PYTHON_COMPAT=( python2_7 pypy ) -inherit check-reqs multilib multiprocessing pax-utils python-any-r1 toolchain-funcs versionator - -MY_P=pypy3-v${PV} - -DESCRIPTION="A fast, compliant alternative implementation of the Python (3.3) language" -HOMEPAGE="http://pypy.org/" -SRC_URI="https://bitbucket.org/pypy/pypy/downloads/${MY_P}-src.tar.bz2" - -LICENSE="MIT" -# XX from pypy3-XX.so module suffix -SLOT="0/59" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 +jit libressl low-memory ncurses sandbox cpu_flags_x86_sse2" - -DEPEND=">=sys-libs/zlib-1.1.3:0= - virtual/libffi:0= - virtual/libintl:0= - dev-libs/expat:0= - !libressl? ( dev-libs/openssl:0=[-bindist] ) - libressl? ( dev-libs/libressl:0= ) - bzip2? ( app-arch/bzip2:0= ) - ncurses? ( sys-libs/ncurses:0= ) - app-arch/lzip - low-memory? ( virtual/pypy:0 ) - !low-memory? ( ${PYTHON_DEPS} )" -# doc? ( dev-python/sphinx ) - -S="${WORKDIR}/${MY_P}-src" - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use low-memory; then - CHECKREQS_MEMORY="1750M" - use amd64 && CHECKREQS_MEMORY="3500M" - else - CHECKREQS_MEMORY="3G" - use amd64 && CHECKREQS_MEMORY="6G" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - pkg_pretend - - # unset to allow forcing pypy below :) - use low-memory && local EPYTHON= - if python_is_installed pypy && [[ ! ${EPYTHON} || ${EPYTHON} == pypy ]]; then - einfo "Using PyPy to perform the translation." - local EPYTHON=pypy - else - einfo "Using ${EPYTHON:-python2} to perform the translation. Please note that upstream" - einfo "recommends using PyPy for that. If you wish to do so, please install" - einfo "virtual/pypy and ensure that EPYTHON variable is unset." - fi - - python-any-r1_pkg_setup - - local cpu - if use amd64; then - # common denominator between Intel & AMD - cpu='x86-64' - elif use x86; then - if use cpu_flags_x86_sse2; then - # lowest with SSE2 - cpu='pentium-m' - else - # lowest with SSE, compat. with athlon-xp - # TODO: do we want to support something older? - cpu='pentium3' - fi - else - die "Unsupported arch ${ARCH}" - fi - - export CFLAGS="-march=${cpu} -mtune=generic -O2 -pipe" - export CXXFLAGS=${CFLAGS} - - elog "CFLAGS: ${CFLAGS}" - fi -} - -src_prepare() { - eapply "${FILESDIR}"/5.9.0-shared-lib.patch # 517002 - - eapply_user -} - -src_configure() { - tc-export CC - - local jit_backend - if use jit; then - jit_backend='--jit-backend=' - - # We only need the explicit sse2 switch for x86. - # On other arches we can rely on autodetection which uses - # compiler macros. Plus, --jit-backend= doesn't accept all - # the modern values... - - if use x86; then - if use cpu_flags_x86_sse2; then - jit_backend+=x86 - else - jit_backend+=x86-without-sse2 - fi - else - jit_backend+=auto - fi - fi - - local args=( - --shared - $(usex jit -Ojit -O2) - $(usex sandbox --sandbox '') - - ${jit_backend} - --make-jobs=$(makeopts_jobs) - - pypy/goal/targetpypystandalone - ) - - # Avoid linking against libraries disabled by use flags - local opts=( - bzip2:bz2 - ncurses:_minimal_curses - ) - - local opt - for opt in "${opts[@]}"; do - local flag=${opt%:*} - local mod=${opt#*:} - - args+=( - $(usex ${flag} --withmod --withoutmod)-${mod} - ) - done - - local interp=( "${PYTHON}" ) - if use low-memory; then - interp=( env PYPY_GC_MAX_DELTA=200MB - "${PYTHON}" --jit loop_longevity=300 ) - fi - - # translate into the C sources - # we're going to make them ourselves since otherwise pypy does not - # free up the unneeded memory before spawning the compiler - set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}" - echo -e "\033[1m${@}\033[0m" - "${@}" || die "translation failed" -} - -src_compile() { - emake -C "${T}"/usession*-0/testing_1 - - # copy back to make sys.prefix happy - cp -p "${T}"/usession*-0/testing_1/{pypy3-c,libpypy3-c.so} . || die - pax-mark m pypy3-c libpypy3-c.so - - #use doc && emake -C pypy/doc html -} - -src_install() { - local flags=( bzip2 jit ncurses sandbox ) - use x86 && flags+=( cpu_flags_x86_sse2 ) - local f suffix="-${ARCH}" - - for f in ${flags[@]}; do - use ${f} && suffix+="+${f#cpu_flags_x86_}" - done - - local BIN_P=pypy3-bin-${PV} - - einfo "Zipping PyPy ..." - mkdir "${BIN_P}${suffix}"{,/include} || die - mv pypy3-c libpypy3-c.so "${BIN_P}${suffix}"/ || die - mv include/pypy_* "${BIN_P}${suffix}"/include/ || die - chmod +x "${BIN_P}${suffix}"/pypy3-c || die - - tar -cf "${BIN_P}${suffix}.tar" "${BIN_P}${suffix}" || die - lzip -v9 "${BIN_P}${suffix}.tar" || die -} - -# Yup, very hacky. -pkg_preinst() { - # integrity check. - [[ ${PYPY_BINPKG_STORE} ]] || die 'PYPY_BINPKG_STORE unset, wtf?!' - mkdir -p "${ROOT%/}${PYPY_BINPKG_STORE}" || die - mv "${S}"/*.tar.lz "${ROOT%/}${PYPY_BINPKG_STORE}" || die -} diff --git a/dev-binpkg/pypy3/pypy3-7.0.0.ebuild b/dev-binpkg/pypy3/pypy3-7.0.0.ebuild deleted file mode 100644 index e9d7985..0000000 --- a/dev-binpkg/pypy3/pypy3-7.0.0.ebuild +++ /dev/null @@ -1,178 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -# pypy3 needs to be built using python 2 -PYTHON_COMPAT=( python2_7 pypy ) -inherit check-reqs pax-utils python-any-r1 toolchain-funcs - -MY_P=pypy3.5-v${PV} - -DESCRIPTION="A fast, compliant alternative implementation of the Python (3.5) language" -HOMEPAGE="http://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" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 +jit libressl low-memory ncurses sandbox cpu_flags_x86_sse2" - -DEPEND=">=sys-libs/zlib-1.1.3:0= - virtual/libffi:0= - virtual/libintl:0= - dev-libs/expat:0= - !libressl? ( dev-libs/openssl:0=[-bindist] ) - libressl? ( dev-libs/libressl:0= ) - bzip2? ( app-arch/bzip2:0= ) - ncurses? ( sys-libs/ncurses:0= ) - app-arch/lzip - low-memory? ( virtual/pypy:0 ) - !low-memory? ( ${PYTHON_DEPS} )" -# doc? ( dev-python/sphinx ) - -S="${WORKDIR}/${MY_P}-src" - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use low-memory; then - CHECKREQS_MEMORY="1750M" - use amd64 && CHECKREQS_MEMORY="3500M" - else - CHECKREQS_MEMORY="3G" - use amd64 && CHECKREQS_MEMORY="6G" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - pkg_pretend - - # unset to allow forcing pypy below :) - use low-memory && local EPYTHON= - if python_is_installed pypy && [[ ! ${EPYTHON} || ${EPYTHON} == pypy ]]; then - einfo "Using PyPy to perform the translation." - local EPYTHON=pypy - else - einfo "Using ${EPYTHON:-python2} to perform the translation. Please note that upstream" - einfo "recommends using PyPy for that. If you wish to do so, please install" - einfo "virtual/pypy and ensure that EPYTHON variable is unset." - fi - - python-any-r1_pkg_setup - - local cpu - if use amd64; then - # common denominator between Intel & AMD - cpu='x86-64' - elif use x86; then - if use cpu_flags_x86_sse2; then - # lowest with SSE2 - cpu='pentium-m' - else - # lowest with SSE, compat. with athlon-xp - # TODO: do we want to support something older? - cpu='pentium3' - fi - else - die "Unsupported arch ${ARCH}" - fi - - export CFLAGS="-march=${cpu} -mtune=generic -O2 -pipe" - export CXXFLAGS=${CFLAGS} - - elog "CFLAGS: ${CFLAGS}" - fi -} - -src_prepare() { - eapply "${FILESDIR}"/5.9.0-shared-lib.patch # 517002 - - eapply_user -} - -src_configure() { - tc-export CC - - local args=( - --shared - $(usex jit -Ojit -O2) - $(usex sandbox --sandbox '') - - --jit-backend=auto - - pypy/goal/targetpypystandalone - ) - - # Avoid linking against libraries disabled by use flags - local opts=( - bzip2:bz2 - ncurses:_minimal_curses - ) - - local opt - for opt in "${opts[@]}"; do - local flag=${opt%:*} - local mod=${opt#*:} - - args+=( - $(usex ${flag} --withmod --withoutmod)-${mod} - ) - done - - local interp=( "${PYTHON}" ) - if use low-memory; then - interp=( env PYPY_GC_MAX_DELTA=200MB - "${PYTHON}" --jit loop_longevity=300 ) - fi - - # translate into the C sources - # we're going to make them ourselves since otherwise pypy does not - # free up the unneeded memory before spawning the compiler - set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}" - echo -e "\033[1m${@}\033[0m" - "${@}" || die "translation failed" -} - -src_compile() { - emake -C "${T}"/usession*-0/testing_1 - - # copy back to make sys.prefix happy - cp -p "${T}"/usession*-0/testing_1/{pypy3-c,libpypy3-c.so} . || die - pax-mark m pypy3-c libpypy3-c.so - - #use doc && emake -C pypy/doc html -} - -src_install() { - local flags=( bzip2 jit ncurses sandbox ) - use x86 && flags+=( cpu_flags_x86_sse2 ) - local f suffix="-${ARCH}" - - for f in ${flags[@]}; do - use ${f} && suffix+="+${f#cpu_flags_x86_}" - done - - local BIN_P=pypy3-bin-${PV} - - einfo "Zipping PyPy ..." - mkdir "${BIN_P}${suffix}"{,/include} || die - mv pypy3-c libpypy3-c.so "${BIN_P}${suffix}"/ || die - mv include/pypy_* "${BIN_P}${suffix}"/include/ || die - chmod +x "${BIN_P}${suffix}"/pypy3-c || die - - tar -cf "${BIN_P}${suffix}.tar" "${BIN_P}${suffix}" || die - lzip -v9 "${BIN_P}${suffix}.tar" || die -} - -# Yup, very hacky. -pkg_preinst() { - # integrity check. - [[ ${PYPY_BINPKG_STORE} ]] || die 'PYPY_BINPKG_STORE unset, wtf?!' - mkdir -p "${ROOT%/}${PYPY_BINPKG_STORE}" || die - mv "${S}"/*.tar.lz "${ROOT%/}${PYPY_BINPKG_STORE}" || die -} diff --git a/dev-binpkg/pypy3/pypy3-7.1.0.ebuild b/dev-binpkg/pypy3/pypy3-7.1.0.ebuild deleted file mode 100644 index f1e198c..0000000 --- a/dev-binpkg/pypy3/pypy3-7.1.0.ebuild +++ /dev/null @@ -1,178 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -# pypy3 needs to be built using python 2 -PYTHON_COMPAT=( python2_7 pypy ) -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="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" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 +jit libressl low-memory ncurses sandbox cpu_flags_x86_sse2" - -DEPEND=">=sys-libs/zlib-1.1.3:0= - virtual/libffi:0= - virtual/libintl:0= - dev-libs/expat:0= - !libressl? ( dev-libs/openssl:0=[-bindist] ) - libressl? ( dev-libs/libressl:0= ) - bzip2? ( app-arch/bzip2:0= ) - ncurses? ( sys-libs/ncurses:0= ) - app-arch/lzip - low-memory? ( virtual/pypy:0 ) - !low-memory? ( ${PYTHON_DEPS} )" -# doc? ( dev-python/sphinx ) - -S="${WORKDIR}/${MY_P}-src" - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use low-memory; then - CHECKREQS_MEMORY="1750M" - use amd64 && CHECKREQS_MEMORY="3500M" - else - CHECKREQS_MEMORY="3G" - use amd64 && CHECKREQS_MEMORY="6G" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - pkg_pretend - - # unset to allow forcing pypy below :) - use low-memory && local EPYTHON= - if python_is_installed pypy && [[ ! ${EPYTHON} || ${EPYTHON} == pypy ]]; then - einfo "Using PyPy to perform the translation." - local EPYTHON=pypy - else - einfo "Using ${EPYTHON:-python2} to perform the translation. Please note that upstream" - einfo "recommends using PyPy for that. If you wish to do so, please install" - einfo "virtual/pypy and ensure that EPYTHON variable is unset." - fi - - python-any-r1_pkg_setup - - local cpu - if use amd64; then - # common denominator between Intel & AMD - cpu='x86-64' - elif use x86; then - if use cpu_flags_x86_sse2; then - # lowest with SSE2 - cpu='pentium-m' - else - # lowest with SSE, compat. with athlon-xp - # TODO: do we want to support something older? - cpu='pentium3' - fi - else - die "Unsupported arch ${ARCH}" - fi - - export CFLAGS="-march=${cpu} -mtune=generic -O2 -pipe" - export CXXFLAGS=${CFLAGS} - - elog "CFLAGS: ${CFLAGS}" - fi -} - -src_prepare() { - eapply "${FILESDIR}"/5.9.0-shared-lib.patch # 517002 - - eapply_user -} - -src_configure() { - tc-export CC - - local args=( - --shared - $(usex jit -Ojit -O2) - $(usex sandbox --sandbox '') - - --jit-backend=auto - - pypy/goal/targetpypystandalone - ) - - # Avoid linking against libraries disabled by use flags - local opts=( - bzip2:bz2 - ncurses:_minimal_curses - ) - - local opt - for opt in "${opts[@]}"; do - local flag=${opt%:*} - local mod=${opt#*:} - - args+=( - $(usex ${flag} --withmod --withoutmod)-${mod} - ) - done - - local interp=( "${PYTHON}" ) - if use low-memory; then - interp=( env PYPY_GC_MAX_DELTA=200MB - "${PYTHON}" --jit loop_longevity=300 ) - fi - - # translate into the C sources - # we're going to make them ourselves since otherwise pypy does not - # free up the unneeded memory before spawning the compiler - set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}" - echo -e "\033[1m${@}\033[0m" - "${@}" || die "translation failed" -} - -src_compile() { - emake -C "${T}"/usession*-0/testing_1 - - # copy back to make sys.prefix happy - cp -p "${T}"/usession*-0/testing_1/{pypy3-c,libpypy3-c.so} . || die - pax-mark m pypy3-c libpypy3-c.so - - #use doc && emake -C pypy/doc html -} - -src_install() { - local flags=( bzip2 jit ncurses sandbox ) - use x86 && flags+=( cpu_flags_x86_sse2 ) - local f suffix="-${ARCH}" - - for f in ${flags[@]}; do - use ${f} && suffix+="+${f#cpu_flags_x86_}" - done - - local BIN_P=pypy3-bin-${PV} - - einfo "Zipping PyPy ..." - mkdir "${BIN_P}${suffix}"{,/include} || die - mv pypy3-c libpypy3-c.so "${BIN_P}${suffix}"/ || die - mv include/pypy_* "${BIN_P}${suffix}"/include/ || die - chmod +x "${BIN_P}${suffix}"/pypy3-c || die - - tar -cf "${BIN_P}${suffix}.tar" "${BIN_P}${suffix}" || die - lzip -v9 "${BIN_P}${suffix}.tar" || die -} - -# Yup, very hacky. -pkg_preinst() { - # integrity check. - [[ ${PYPY_BINPKG_STORE} ]] || die 'PYPY_BINPKG_STORE unset, wtf?!' - mkdir -p "${ROOT%/}${PYPY_BINPKG_STORE}" || die - mv "${S}"/*.tar.lz "${ROOT%/}${PYPY_BINPKG_STORE}" || die -} diff --git a/dev-binpkg/pypy3/pypy3-7.1.1.ebuild b/dev-binpkg/pypy3/pypy3-7.1.1.ebuild deleted file mode 100644 index c104421..0000000 --- a/dev-binpkg/pypy3/pypy3-7.1.1.ebuild +++ /dev/null @@ -1,198 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -# pypy3 needs to be built using python 2 -PYTHON_COMPAT=( python2_7 pypy ) -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="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" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 +jit libressl low-memory ncurses sandbox cpu_flags_x86_sse2" - -DEPEND=">=sys-libs/zlib-1.1.3:0= - virtual/libffi:0= - virtual/libintl:0= - dev-libs/expat:0= - !libressl? ( dev-libs/openssl:0=[-bindist] ) - libressl? ( dev-libs/libressl:0= ) - bzip2? ( app-arch/bzip2:0= ) - ncurses? ( sys-libs/ncurses:0= ) - app-arch/lzip - low-memory? ( virtual/pypy:0 ) - !low-memory? ( ${PYTHON_DEPS} )" -# doc? ( dev-python/sphinx ) - -S="${WORKDIR}/${MY_P}-src" - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use low-memory; then - CHECKREQS_MEMORY="1750M" - use amd64 && CHECKREQS_MEMORY="3500M" - else - CHECKREQS_MEMORY="3G" - use amd64 && CHECKREQS_MEMORY="6G" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - pkg_pretend - - # unset to allow forcing pypy below :) - use low-memory && local EPYTHON= - if python_is_installed pypy && [[ ! ${EPYTHON} || ${EPYTHON} == pypy ]]; then - einfo "Using PyPy to perform the translation." - local EPYTHON=pypy - else - einfo "Using ${EPYTHON:-python2} to perform the translation. Please note that upstream" - einfo "recommends using PyPy for that. If you wish to do so, please install" - einfo "virtual/pypy and ensure that EPYTHON variable is unset." - fi - - python-any-r1_pkg_setup - - local cpu - if use amd64; then - # common denominator between Intel & AMD - cpu='x86-64' - elif use x86; then - if use cpu_flags_x86_sse2; then - # lowest with SSE2 - cpu='pentium-m' - else - # lowest with SSE, compat. with athlon-xp - # TODO: do we want to support something older? - cpu='pentium3' - fi - else - die "Unsupported arch ${ARCH}" - fi - - export CFLAGS="-march=${cpu} -mtune=generic -O2 -pipe" - export CXXFLAGS=${CFLAGS} - - elog "CFLAGS: ${CFLAGS}" - fi -} - -src_prepare() { - eapply "${FILESDIR}"/5.9.0-shared-lib.patch # 517002 - - eapply_user -} - -src_configure() { - tc-export CC - - local jit_backend - if use jit; then - jit_backend='--jit-backend=' - - # We only need the explicit sse2 switch for x86. - # On other arches we can rely on autodetection which uses - # compiler macros. Plus, --jit-backend= doesn't accept all - # the modern values... - - if use x86; then - if use cpu_flags_x86_sse2; then - jit_backend+=x86 - else - jit_backend+=x86-without-sse2 - fi - else - jit_backend+=auto - fi - fi - - local args=( - --shared - $(usex jit -Ojit -O2) - $(usex sandbox --sandbox '') - - ${jit_backend} - - pypy/goal/targetpypystandalone - ) - - # Avoid linking against libraries disabled by use flags - local opts=( - bzip2:bz2 - ncurses:_minimal_curses - ) - - local opt - for opt in "${opts[@]}"; do - local flag=${opt%:*} - local mod=${opt#*:} - - args+=( - $(usex ${flag} --withmod --withoutmod)-${mod} - ) - done - - local interp=( "${PYTHON}" ) - if use low-memory; then - interp=( env PYPY_GC_MAX_DELTA=200MB - "${PYTHON}" --jit loop_longevity=300 ) - fi - - # translate into the C sources - # we're going to make them ourselves since otherwise pypy does not - # free up the unneeded memory before spawning the compiler - set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}" - echo -e "\033[1m${@}\033[0m" - "${@}" || die "translation failed" -} - -src_compile() { - emake -C "${T}"/usession*-0/testing_1 - - # copy back to make sys.prefix happy - cp -p "${T}"/usession*-0/testing_1/{pypy3-c,libpypy3-c.so} . || die - pax-mark m pypy3-c libpypy3-c.so - - #use doc && emake -C pypy/doc html -} - -src_install() { - local flags=( bzip2 jit ncurses sandbox ) - use x86 && flags+=( cpu_flags_x86_sse2 ) - local f suffix="-${ARCH}" - - for f in ${flags[@]}; do - use ${f} && suffix+="+${f#cpu_flags_x86_}" - done - - local BIN_P=pypy3-bin-${PV} - - einfo "Zipping PyPy ..." - mkdir "${BIN_P}${suffix}"{,/include} || die - mv pypy3-c libpypy3-c.so "${BIN_P}${suffix}"/ || die - mv include/pypy_* "${BIN_P}${suffix}"/include/ || die - chmod +x "${BIN_P}${suffix}"/pypy3-c || die - - tar -cf "${BIN_P}${suffix}.tar" "${BIN_P}${suffix}" || die - lzip -v9 "${BIN_P}${suffix}.tar" || die -} - -# Yup, very hacky. -pkg_preinst() { - # integrity check. - [[ ${PYPY_BINPKG_STORE} ]] || die 'PYPY_BINPKG_STORE unset, wtf?!' - mkdir -p "${ROOT%/}${PYPY_BINPKG_STORE}" || die - mv "${S}"/*.tar.lz "${ROOT%/}${PYPY_BINPKG_STORE}" || die -} |