1 |
commit: c8762844e2a26ab7ed62a161195106652675828b |
2 |
Author: Robin H. Johnson <robbat2 <AT> gentoo <DOT> org> |
3 |
AuthorDate: Wed May 8 21:19:50 2019 +0000 |
4 |
Commit: Robin H. Johnson <robbat2 <AT> gentoo <DOT> org> |
5 |
CommitDate: Wed May 8 21:24:42 2019 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c8762844 |
7 |
|
8 |
sys-libs/db: compile-fix by dropping mutex=ARM/gcc-assembly |
9 |
|
10 |
This is a compile-fix so that old versions build on newer ARM hardware. |
11 |
|
12 |
The ARM assembly code does not work on newer hardware |
13 |
so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. |
14 |
|
15 |
Specifically, it uses the SWPB op, which was deprecated [1] |
16 |
The SWPB op ALSO cannot be used in ARM-Thumb mode. |
17 |
|
18 |
>=sys-libs/db-6.1 uses LDREX instead, but that fix CANNOT be backported |
19 |
due differing licenses in the new versions (the new version is AGPL). |
20 |
|
21 |
Trust the compiler instead for older sys-libs/db versions, and just drop |
22 |
--with-mutex=ARM/gcc-assembly from the configure. |
23 |
|
24 |
[1] http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm |
25 |
|
26 |
Fixes: https://bugs.gentoo.org/555740 |
27 |
Reported-By: Christohper Harrington <ironiridis <AT> gmail.com> |
28 |
Reported-By: Luke-Jr <luke-jr <AT> utopios.org> |
29 |
Package-Manager: Portage-2.3.62, Repoman-2.3.12 |
30 |
Signed-off-by: Robin H. Johnson <robbat2 <AT> gentoo.org> |
31 |
|
32 |
sys-libs/db/db-4.7.25_p4.ebuild | 10 ++++++++-- |
33 |
sys-libs/db/db-4.8.30-r2.ebuild | 10 ++++++++-- |
34 |
sys-libs/db/db-5.1.29-r1.ebuild | 10 ++++++++-- |
35 |
sys-libs/db/db-5.3.28-r2.ebuild | 8 +++++++- |
36 |
sys-libs/db/db-5.3.28-r3.ebuild | 8 +++++++- |
37 |
sys-libs/db/db-6.0.35-r1.ebuild | 8 +++++++- |
38 |
sys-libs/db/db-6.0.35.ebuild | 8 +++++++- |
39 |
7 files changed, 52 insertions(+), 10 deletions(-) |
40 |
|
41 |
diff --git a/sys-libs/db/db-4.7.25_p4.ebuild b/sys-libs/db/db-4.7.25_p4.ebuild |
42 |
index 2f341da53d5..807fc0adc02 100644 |
43 |
--- a/sys-libs/db/db-4.7.25_p4.ebuild |
44 |
+++ b/sys-libs/db/db-4.7.25_p4.ebuild |
45 |
@@ -1,4 +1,4 @@ |
46 |
-# Copyright 1999-2018 Gentoo Foundation |
47 |
+# Copyright 1999-2019 Gentoo Authors |
48 |
# Distributed under the terms of the GNU General Public License v2 |
49 |
|
50 |
EAPI=0 |
51 |
@@ -118,13 +118,19 @@ src_compile() { |
52 |
--enable-o_direct \ |
53 |
--without-uniquename \ |
54 |
$(use_enable rpc) \ |
55 |
- $(use arm && echo --with-mutex=ARM/gcc-assembly) \ |
56 |
$(use amd64 && echo --with-mutex=x86/gcc-assembly) \ |
57 |
$(use_enable cxx) \ |
58 |
$(use_enable java) \ |
59 |
${myconf} \ |
60 |
$(use_enable test) \ |
61 |
"$@" |
62 |
+ # The embedded assembly on ARM does not work on newer hardware |
63 |
+ # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. |
64 |
+ # Specifically, it uses the SWPB op, which was deprecated: |
65 |
+ # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm |
66 |
+ # The op ALSO cannot be used in ARM-Thumb mode. |
67 |
+ # Trust the compiler instead. |
68 |
+ # >=db-6.1 uses LDREX instead. |
69 |
|
70 |
emake || die "make failed" |
71 |
} |
72 |
|
73 |
diff --git a/sys-libs/db/db-4.8.30-r2.ebuild b/sys-libs/db/db-4.8.30-r2.ebuild |
74 |
index b19ec4fc505..bdedb3547a7 100644 |
75 |
--- a/sys-libs/db/db-4.8.30-r2.ebuild |
76 |
+++ b/sys-libs/db/db-4.8.30-r2.ebuild |
77 |
@@ -1,4 +1,4 @@ |
78 |
-# Copyright 1999-2018 Gentoo Foundation |
79 |
+# Copyright 1999-2019 Gentoo Authors |
80 |
# Distributed under the terms of the GNU General Public License v2 |
81 |
|
82 |
EAPI=5 |
83 |
@@ -125,13 +125,19 @@ multilib_src_configure() { |
84 |
--enable-compat185 \ |
85 |
--enable-o_direct \ |
86 |
--without-uniquename \ |
87 |
- $([[ ${ABI} == arm ]] && echo --with-mutex=ARM/gcc-assembly) \ |
88 |
$([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) \ |
89 |
$(use_enable cxx) \ |
90 |
$(use_enable cxx stl) \ |
91 |
$(multilib_native_use_enable java) \ |
92 |
"${myconf[@]}" \ |
93 |
$(use_enable test) |
94 |
+ # The embedded assembly on ARM does not work on newer hardware |
95 |
+ # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. |
96 |
+ # Specifically, it uses the SWPB op, which was deprecated: |
97 |
+ # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm |
98 |
+ # The op ALSO cannot be used in ARM-Thumb mode. |
99 |
+ # Trust the compiler instead. |
100 |
+ # >=db-6.1 uses LDREX instead. |
101 |
} |
102 |
|
103 |
multilib_src_test() { |
104 |
|
105 |
diff --git a/sys-libs/db/db-5.1.29-r1.ebuild b/sys-libs/db/db-5.1.29-r1.ebuild |
106 |
index a00e96a4a1b..5f28da0d367 100644 |
107 |
--- a/sys-libs/db/db-5.1.29-r1.ebuild |
108 |
+++ b/sys-libs/db/db-5.1.29-r1.ebuild |
109 |
@@ -1,4 +1,4 @@ |
110 |
-# Copyright 1999-2018 Gentoo Foundation |
111 |
+# Copyright 1999-2019 Gentoo Authors |
112 |
# Distributed under the terms of the GNU General Public License v2 |
113 |
|
114 |
EAPI=5 |
115 |
@@ -148,7 +148,6 @@ src_configure() { |
116 |
--enable-sql \ |
117 |
--enable-sql_codegen \ |
118 |
--disable-sql_compat \ |
119 |
- $(use arm && echo --with-mutex=ARM/gcc-assembly) \ |
120 |
$(use amd64 && echo --with-mutex=x86/gcc-assembly) \ |
121 |
$(use_enable cxx) \ |
122 |
$(use_enable cxx stl) \ |
123 |
@@ -156,6 +155,13 @@ src_configure() { |
124 |
${myconf} \ |
125 |
$(use_enable test) \ |
126 |
"$@" |
127 |
+ # The embedded assembly on ARM does not work on newer hardware |
128 |
+ # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. |
129 |
+ # Specifically, it uses the SWPB op, which was deprecated: |
130 |
+ # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm |
131 |
+ # The op ALSO cannot be used in ARM-Thumb mode. |
132 |
+ # Trust the compiler instead. |
133 |
+ # >=db-6.1 uses LDREX instead. |
134 |
} |
135 |
|
136 |
src_compile() { |
137 |
|
138 |
diff --git a/sys-libs/db/db-5.3.28-r2.ebuild b/sys-libs/db/db-5.3.28-r2.ebuild |
139 |
index 8738e10e008..47b37d93ea6 100644 |
140 |
--- a/sys-libs/db/db-5.3.28-r2.ebuild |
141 |
+++ b/sys-libs/db/db-5.3.28-r2.ebuild |
142 |
@@ -159,13 +159,19 @@ multilib_src_configure() { |
143 |
--enable-sql \ |
144 |
--enable-sql_codegen \ |
145 |
--disable-sql_compat \ |
146 |
- $([[ ${ABI} == arm ]] && echo --with-mutex=ARM/gcc-assembly) \ |
147 |
$([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) \ |
148 |
$(use_enable cxx) \ |
149 |
$(use_enable cxx stl) \ |
150 |
$(multilib_native_use_enable java) \ |
151 |
"${myconf[@]}" \ |
152 |
$(use_enable test) |
153 |
+ # The embedded assembly on ARM does not work on newer hardware |
154 |
+ # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. |
155 |
+ # Specifically, it uses the SWPB op, which was deprecated: |
156 |
+ # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm |
157 |
+ # The op ALSO cannot be used in ARM-Thumb mode. |
158 |
+ # Trust the compiler instead. |
159 |
+ # >=db-6.1 uses LDREX instead. |
160 |
} |
161 |
|
162 |
multilib_src_install() { |
163 |
|
164 |
diff --git a/sys-libs/db/db-5.3.28-r3.ebuild b/sys-libs/db/db-5.3.28-r3.ebuild |
165 |
index 24f0d3c333b..d29b9bb65a4 100644 |
166 |
--- a/sys-libs/db/db-5.3.28-r3.ebuild |
167 |
+++ b/sys-libs/db/db-5.3.28-r3.ebuild |
168 |
@@ -161,13 +161,19 @@ multilib_src_configure() { |
169 |
--disable-sql \ |
170 |
--disable-sql_codegen \ |
171 |
--disable-sql_compat \ |
172 |
- $([[ ${ABI} == arm ]] && echo --with-mutex=ARM/gcc-assembly) \ |
173 |
$([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) \ |
174 |
$(use_enable cxx) \ |
175 |
$(use_enable cxx stl) \ |
176 |
$(multilib_native_use_enable java) \ |
177 |
"${myconf[@]}" \ |
178 |
$(use_enable test) |
179 |
+ # The embedded assembly on ARM does not work on newer hardware |
180 |
+ # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. |
181 |
+ # Specifically, it uses the SWPB op, which was deprecated: |
182 |
+ # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm |
183 |
+ # The op ALSO cannot be used in ARM-Thumb mode. |
184 |
+ # Trust the compiler instead. |
185 |
+ # >=db-6.1 uses LDREX instead. |
186 |
} |
187 |
|
188 |
multilib_src_install() { |
189 |
|
190 |
diff --git a/sys-libs/db/db-6.0.35-r1.ebuild b/sys-libs/db/db-6.0.35-r1.ebuild |
191 |
index 0cd34cc3b7a..a2d1df993e5 100644 |
192 |
--- a/sys-libs/db/db-6.0.35-r1.ebuild |
193 |
+++ b/sys-libs/db/db-6.0.35-r1.ebuild |
194 |
@@ -159,13 +159,19 @@ multilib_src_configure() { |
195 |
--disable-sql \ |
196 |
--disable-sql_codegen \ |
197 |
--disable-sql_compat \ |
198 |
- $([[ ${ABI} == arm ]] && echo --with-mutex=ARM/gcc-assembly) \ |
199 |
$([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) \ |
200 |
$(use_enable cxx) \ |
201 |
$(use_enable cxx stl) \ |
202 |
$(multilib_native_use_enable java) \ |
203 |
"${myconf[@]}" \ |
204 |
$(use_enable test) |
205 |
+ # The embedded assembly on ARM does not work on newer hardware |
206 |
+ # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. |
207 |
+ # Specifically, it uses the SWPB op, which was deprecated: |
208 |
+ # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm |
209 |
+ # The op ALSO cannot be used in ARM-Thumb mode. |
210 |
+ # Trust the compiler instead. |
211 |
+ # >=db-6.1 uses LDREX instead. |
212 |
} |
213 |
|
214 |
multilib_src_install() { |
215 |
|
216 |
diff --git a/sys-libs/db/db-6.0.35.ebuild b/sys-libs/db/db-6.0.35.ebuild |
217 |
index b03e9d66b02..476381c66a9 100644 |
218 |
--- a/sys-libs/db/db-6.0.35.ebuild |
219 |
+++ b/sys-libs/db/db-6.0.35.ebuild |
220 |
@@ -157,13 +157,19 @@ multilib_src_configure() { |
221 |
--enable-sql \ |
222 |
--enable-sql_codegen \ |
223 |
--disable-sql_compat \ |
224 |
- $([[ ${ABI} == arm ]] && echo --with-mutex=ARM/gcc-assembly) \ |
225 |
$([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) \ |
226 |
$(use_enable cxx) \ |
227 |
$(use_enable cxx stl) \ |
228 |
$(multilib_native_use_enable java) \ |
229 |
"${myconf[@]}" \ |
230 |
$(use_enable test) |
231 |
+ # The embedded assembly on ARM does not work on newer hardware |
232 |
+ # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. |
233 |
+ # Specifically, it uses the SWPB op, which was deprecated: |
234 |
+ # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm |
235 |
+ # The op ALSO cannot be used in ARM-Thumb mode. |
236 |
+ # Trust the compiler instead. |
237 |
+ # >=db-6.1 uses LDREX instead. |
238 |
} |
239 |
|
240 |
multilib_src_install() { |