1 |
commit: 7e5859b42a87364c116f50c2c4c6be42ffaba1a9 |
2 |
Author: James Le Cuirot <chewi <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sat Jun 11 20:39:05 2022 +0000 |
4 |
Commit: Sam James <sam <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat Jun 25 21:39:23 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7e5859b4 |
7 |
|
8 |
profiles: Mask glibc[stack-realign] on non-amd64/x86, default on amd64 |
9 |
|
10 |
The stack alignment issue affecting compatibility with older 32-bit |
11 |
binaries is specific to amd64 and x86. |
12 |
|
13 |
The workaround incurs a performance cost on the 32-bit build, so enable |
14 |
the flag by default on amd64 but not on x86. Other popular distributions |
15 |
always enable this workaround. |
16 |
|
17 |
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org> |
18 |
Signed-off-by: Sam James <sam <AT> gentoo.org> |
19 |
|
20 |
profiles/arch/amd64/no-multilib/package.use.mask | 6 +++++- |
21 |
profiles/arch/amd64/package.use | 7 ++++++- |
22 |
profiles/arch/amd64/package.use.mask | 4 ++++ |
23 |
profiles/arch/x86/package.use.mask | 4 ++++ |
24 |
profiles/base/package.use.mask | 4 ++++ |
25 |
5 files changed, 23 insertions(+), 2 deletions(-) |
26 |
|
27 |
diff --git a/profiles/arch/amd64/no-multilib/package.use.mask b/profiles/arch/amd64/no-multilib/package.use.mask |
28 |
index b0f82168e189..e97fb4228074 100644 |
29 |
--- a/profiles/arch/amd64/no-multilib/package.use.mask |
30 |
+++ b/profiles/arch/amd64/no-multilib/package.use.mask |
31 |
@@ -1,6 +1,10 @@ |
32 |
-# Copyright 1999-2021 Gentoo Authors |
33 |
+# Copyright 1999-2022 Gentoo Authors |
34 |
# Distributed under the terms of the GNU General Public License v2 |
35 |
|
36 |
+# James Le Cuirot <chewi@g.o> (2022-06-25) |
37 |
+# This flag concerns a 32-bit x86-specific problem. |
38 |
+sys-libs/glibc stack-realign |
39 |
+ |
40 |
# Ben Kohler <bkohler@g.o> (2022-06-07) |
41 |
# Disable 32bit builds on no-multilib |
42 |
sys-apps/memtest86+ bios32 efi32 iso32 |
43 |
|
44 |
diff --git a/profiles/arch/amd64/package.use b/profiles/arch/amd64/package.use |
45 |
index a51accc1910e..7b827e562200 100644 |
46 |
--- a/profiles/arch/amd64/package.use |
47 |
+++ b/profiles/arch/amd64/package.use |
48 |
@@ -1,6 +1,11 @@ |
49 |
-# Copyright 1999-2021 Gentoo Authors |
50 |
+# Copyright 1999-2022 Gentoo Authors |
51 |
# Distributed under the terms of the GNU General Public License v2 |
52 |
|
53 |
+# James Le Cuirot <chewi@g.o> (2022-06-25) |
54 |
+# Realign the stack in the 32-bit build for compatibility with older binaries by |
55 |
+# default. This is not the default on x86 because it has a performance cost. |
56 |
+sys-libs/glibc stack-realign |
57 |
+ |
58 |
# Ben Kohler <bkohler@g.o> (2022-06-07) |
59 |
# Enable BIOS & UEFI targets by default |
60 |
sys-apps/memtest86+ bios64 efi64 |
61 |
|
62 |
diff --git a/profiles/arch/amd64/package.use.mask b/profiles/arch/amd64/package.use.mask |
63 |
index 2ea7855ee51c..189adb55d64f 100644 |
64 |
--- a/profiles/arch/amd64/package.use.mask |
65 |
+++ b/profiles/arch/amd64/package.use.mask |
66 |
@@ -17,6 +17,10 @@ |
67 |
|
68 |
#--- END OF EXAMPLES --- |
69 |
|
70 |
+# James Le Cuirot <chewi@g.o> (2022-06-25) |
71 |
+# Allow stack to be realigned for compatibility with older 32-bit binaries. |
72 |
+sys-libs/glibc -stack-realign |
73 |
+ |
74 |
# Unmask media-libs/libxmp here |
75 |
media-sound/qmmp -xmp |
76 |
|
77 |
|
78 |
diff --git a/profiles/arch/x86/package.use.mask b/profiles/arch/x86/package.use.mask |
79 |
index cc2431ca8f0a..a618c72fa0ce 100644 |
80 |
--- a/profiles/arch/x86/package.use.mask |
81 |
+++ b/profiles/arch/x86/package.use.mask |
82 |
@@ -1,6 +1,10 @@ |
83 |
# Copyright 1999-2022 Gentoo Authors |
84 |
# Distributed under the terms of the GNU General Public License v2 |
85 |
|
86 |
+# James Le Cuirot <chewi@g.o> (2022-06-25) |
87 |
+# Allow stack to be realigned for compatibility with older 32-bit binaries. |
88 |
+sys-libs/glibc -stack-realign |
89 |
+ |
90 |
# Anna Vyalkova <cyber+gentoo@×××××.in> (2022-06-25) |
91 |
# Unkeyworded test dep |
92 |
app-vim/jedi test |
93 |
|
94 |
diff --git a/profiles/base/package.use.mask b/profiles/base/package.use.mask |
95 |
index b65e7efa7daa..b97dee8d561f 100644 |
96 |
--- a/profiles/base/package.use.mask |
97 |
+++ b/profiles/base/package.use.mask |
98 |
@@ -6,6 +6,10 @@ |
99 |
# This file is only for generic masks. For arch-specific masks (i.e. |
100 |
# mask everywhere, unmask on arch/*) use arch/base. |
101 |
|
102 |
+# James Le Cuirot <chewi@g.o> (2022-06-25) |
103 |
+# This flag concerns an x86-specific problem. |
104 |
+sys-libs/glibc stack-realign |
105 |
+ |
106 |
# Matt Turner <mattst88@g.o> (2022-06-21) |
107 |
# Depends on old spidermonkey:68. Upstream recommends using Duktape or Webkit |
108 |
# for PAC parsing. See https://github.com/libproxy/libproxy/pull/139 |