1 |
commit: 6800eaeb8bc9bcaaf1169b404d6509d68be71a63 |
2 |
Author: Michał Górny <mgorny <AT> gentoo <DOT> org> |
3 |
AuthorDate: Thu Aug 15 08:09:01 2019 +0000 |
4 |
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> |
5 |
CommitDate: Thu Aug 15 08:10:31 2019 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6800eaeb |
7 |
|
8 |
dev-python/pypy3: Restore non-SSE2 x86 backend |
9 |
|
10 |
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org> |
11 |
|
12 |
dev-python/pypy3/pypy3-7.1.1.ebuild | 25 +++++++++++++++++++++++-- |
13 |
dev-python/pypy3/pypy3-9999.ebuild | 25 +++++++++++++++++++++++-- |
14 |
2 files changed, 46 insertions(+), 4 deletions(-) |
15 |
|
16 |
diff --git a/dev-python/pypy3/pypy3-7.1.1.ebuild b/dev-python/pypy3/pypy3-7.1.1.ebuild |
17 |
index f0f7cdf74a2..344f0da4013 100644 |
18 |
--- a/dev-python/pypy3/pypy3-7.1.1.ebuild |
19 |
+++ b/dev-python/pypy3/pypy3-7.1.1.ebuild |
20 |
@@ -17,7 +17,8 @@ LICENSE="MIT" |
21 |
# pypy3 -c 'import sysconfig; print(sysconfig.get_config_var("SOABI"))' |
22 |
SLOT="0/71-py36" |
23 |
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" |
24 |
-IUSE="bzip2 gdbm +jit libressl low-memory ncurses sandbox sqlite tk" |
25 |
+IUSE="bzip2 cpu_flags_x86_sse2 gdbm +jit libressl low-memory ncurses |
26 |
+ sandbox sqlite tk" |
27 |
|
28 |
RDEPEND=">=sys-libs/zlib-1.1.3:0= |
29 |
virtual/libffi:0= |
30 |
@@ -103,12 +104,32 @@ src_prepare() { |
31 |
src_configure() { |
32 |
tc-export CC |
33 |
|
34 |
+ local jit_backend |
35 |
+ if use jit; then |
36 |
+ jit_backend='--jit-backend=' |
37 |
+ |
38 |
+ # We only need the explicit sse2 switch for x86. |
39 |
+ # On other arches we can rely on autodetection which uses |
40 |
+ # compiler macros. Plus, --jit-backend= doesn't accept all |
41 |
+ # the modern values... |
42 |
+ |
43 |
+ if use x86; then |
44 |
+ if use cpu_flags_x86_sse2; then |
45 |
+ jit_backend+=x86 |
46 |
+ else |
47 |
+ jit_backend+=x86-without-sse2 |
48 |
+ fi |
49 |
+ else |
50 |
+ jit_backend+=auto |
51 |
+ fi |
52 |
+ fi |
53 |
+ |
54 |
local args=( |
55 |
--shared |
56 |
$(usex jit -Ojit -O2) |
57 |
$(usex sandbox --sandbox '') |
58 |
|
59 |
- --jit-backend=auto |
60 |
+ ${jit_backend} |
61 |
|
62 |
pypy/goal/targetpypystandalone |
63 |
) |
64 |
|
65 |
diff --git a/dev-python/pypy3/pypy3-9999.ebuild b/dev-python/pypy3/pypy3-9999.ebuild |
66 |
index ca7aae03fe8..d6e6b0856ea 100644 |
67 |
--- a/dev-python/pypy3/pypy3-9999.ebuild |
68 |
+++ b/dev-python/pypy3/pypy3-9999.ebuild |
69 |
@@ -20,7 +20,8 @@ LICENSE="MIT" |
70 |
# pypy3 -c 'import sysconfig; print(sysconfig.get_config_var("SOABI"))' |
71 |
SLOT="0/71-py36" |
72 |
KEYWORDS="" |
73 |
-IUSE="bzip2 gdbm +jit libressl low-memory ncurses sandbox sqlite tk" |
74 |
+IUSE="bzip2 cpu_flags_x86_sse2 gdbm +jit libressl low-memory ncurses |
75 |
+ sandbox sqlite tk" |
76 |
|
77 |
RDEPEND=">=sys-libs/zlib-1.1.3:0= |
78 |
virtual/libffi:0= |
79 |
@@ -111,12 +112,32 @@ src_prepare() { |
80 |
src_configure() { |
81 |
tc-export CC |
82 |
|
83 |
+ local jit_backend |
84 |
+ if use jit; then |
85 |
+ jit_backend='--jit-backend=' |
86 |
+ |
87 |
+ # We only need the explicit sse2 switch for x86. |
88 |
+ # On other arches we can rely on autodetection which uses |
89 |
+ # compiler macros. Plus, --jit-backend= doesn't accept all |
90 |
+ # the modern values... |
91 |
+ |
92 |
+ if use x86; then |
93 |
+ if use cpu_flags_x86_sse2; then |
94 |
+ jit_backend+=x86 |
95 |
+ else |
96 |
+ jit_backend+=x86-without-sse2 |
97 |
+ fi |
98 |
+ else |
99 |
+ jit_backend+=auto |
100 |
+ fi |
101 |
+ fi |
102 |
+ |
103 |
local args=( |
104 |
--shared |
105 |
$(usex jit -Ojit -O2) |
106 |
$(usex sandbox --sandbox '') |
107 |
|
108 |
- --jit-backend=auto |
109 |
+ ${jit_backend} |
110 |
|
111 |
pypy/goal/targetpypystandalone |
112 |
) |