summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2019-05-08 14:19:50 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2019-05-08 14:24:42 -0700
commitc8762844e2a26ab7ed62a161195106652675828b (patch)
treea148f1ced86f710d50db45b64b55a7bc18121b21
parentdev-java/openjdk-jre-bin: drop old :11 (diff)
downloadgentoo-c8762844e2a26ab7ed62a161195106652675828b.tar.gz
gentoo-c8762844e2a26ab7ed62a161195106652675828b.tar.bz2
gentoo-c8762844e2a26ab7ed62a161195106652675828b.zip
sys-libs/db: compile-fix by dropping mutex=ARM/gcc-assembly
This is a compile-fix so that old versions build on newer ARM hardware. The ARM assembly code does not work on newer hardware so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. Specifically, it uses the SWPB op, which was deprecated [1] The SWPB op ALSO cannot be used in ARM-Thumb mode. >=sys-libs/db-6.1 uses LDREX instead, but that fix CANNOT be backported due differing licenses in the new versions (the new version is AGPL). Trust the compiler instead for older sys-libs/db versions, and just drop --with-mutex=ARM/gcc-assembly from the configure. [1] http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm Fixes: https://bugs.gentoo.org/555740 Reported-By: Christohper Harrington <ironiridis@gmail.com> Reported-By: Luke-Jr <luke-jr@utopios.org> Package-Manager: Portage-2.3.62, Repoman-2.3.12 Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
-rw-r--r--sys-libs/db/db-4.7.25_p4.ebuild10
-rw-r--r--sys-libs/db/db-4.8.30-r2.ebuild10
-rw-r--r--sys-libs/db/db-5.1.29-r1.ebuild10
-rw-r--r--sys-libs/db/db-5.3.28-r2.ebuild8
-rw-r--r--sys-libs/db/db-5.3.28-r3.ebuild8
-rw-r--r--sys-libs/db/db-6.0.35-r1.ebuild8
-rw-r--r--sys-libs/db/db-6.0.35.ebuild8
7 files changed, 52 insertions, 10 deletions
diff --git a/sys-libs/db/db-4.7.25_p4.ebuild b/sys-libs/db/db-4.7.25_p4.ebuild
index 2f341da53d5f..807fc0adc028 100644
--- a/sys-libs/db/db-4.7.25_p4.ebuild
+++ b/sys-libs/db/db-4.7.25_p4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=0
@@ -118,13 +118,19 @@ src_compile() {
--enable-o_direct \
--without-uniquename \
$(use_enable rpc) \
- $(use arm && echo --with-mutex=ARM/gcc-assembly) \
$(use amd64 && echo --with-mutex=x86/gcc-assembly) \
$(use_enable cxx) \
$(use_enable java) \
${myconf} \
$(use_enable test) \
"$@"
+ # The embedded assembly on ARM does not work on newer hardware
+ # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore.
+ # Specifically, it uses the SWPB op, which was deprecated:
+ # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm
+ # The op ALSO cannot be used in ARM-Thumb mode.
+ # Trust the compiler instead.
+ # >=db-6.1 uses LDREX instead.
emake || die "make failed"
}
diff --git a/sys-libs/db/db-4.8.30-r2.ebuild b/sys-libs/db/db-4.8.30-r2.ebuild
index b19ec4fc505c..bdedb3547a75 100644
--- a/sys-libs/db/db-4.8.30-r2.ebuild
+++ b/sys-libs/db/db-4.8.30-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -125,13 +125,19 @@ multilib_src_configure() {
--enable-compat185 \
--enable-o_direct \
--without-uniquename \
- $([[ ${ABI} == arm ]] && echo --with-mutex=ARM/gcc-assembly) \
$([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) \
$(use_enable cxx) \
$(use_enable cxx stl) \
$(multilib_native_use_enable java) \
"${myconf[@]}" \
$(use_enable test)
+ # The embedded assembly on ARM does not work on newer hardware
+ # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore.
+ # Specifically, it uses the SWPB op, which was deprecated:
+ # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm
+ # The op ALSO cannot be used in ARM-Thumb mode.
+ # Trust the compiler instead.
+ # >=db-6.1 uses LDREX instead.
}
multilib_src_test() {
diff --git a/sys-libs/db/db-5.1.29-r1.ebuild b/sys-libs/db/db-5.1.29-r1.ebuild
index a00e96a4a1b2..5f28da0d3676 100644
--- a/sys-libs/db/db-5.1.29-r1.ebuild
+++ b/sys-libs/db/db-5.1.29-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -148,7 +148,6 @@ src_configure() {
--enable-sql \
--enable-sql_codegen \
--disable-sql_compat \
- $(use arm && echo --with-mutex=ARM/gcc-assembly) \
$(use amd64 && echo --with-mutex=x86/gcc-assembly) \
$(use_enable cxx) \
$(use_enable cxx stl) \
@@ -156,6 +155,13 @@ src_configure() {
${myconf} \
$(use_enable test) \
"$@"
+ # The embedded assembly on ARM does not work on newer hardware
+ # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore.
+ # Specifically, it uses the SWPB op, which was deprecated:
+ # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm
+ # The op ALSO cannot be used in ARM-Thumb mode.
+ # Trust the compiler instead.
+ # >=db-6.1 uses LDREX instead.
}
src_compile() {
diff --git a/sys-libs/db/db-5.3.28-r2.ebuild b/sys-libs/db/db-5.3.28-r2.ebuild
index 8738e10e0083..47b37d93ea64 100644
--- a/sys-libs/db/db-5.3.28-r2.ebuild
+++ b/sys-libs/db/db-5.3.28-r2.ebuild
@@ -159,13 +159,19 @@ multilib_src_configure() {
--enable-sql \
--enable-sql_codegen \
--disable-sql_compat \
- $([[ ${ABI} == arm ]] && echo --with-mutex=ARM/gcc-assembly) \
$([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) \
$(use_enable cxx) \
$(use_enable cxx stl) \
$(multilib_native_use_enable java) \
"${myconf[@]}" \
$(use_enable test)
+ # The embedded assembly on ARM does not work on newer hardware
+ # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore.
+ # Specifically, it uses the SWPB op, which was deprecated:
+ # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm
+ # The op ALSO cannot be used in ARM-Thumb mode.
+ # Trust the compiler instead.
+ # >=db-6.1 uses LDREX instead.
}
multilib_src_install() {
diff --git a/sys-libs/db/db-5.3.28-r3.ebuild b/sys-libs/db/db-5.3.28-r3.ebuild
index 24f0d3c333b9..d29b9bb65a4e 100644
--- a/sys-libs/db/db-5.3.28-r3.ebuild
+++ b/sys-libs/db/db-5.3.28-r3.ebuild
@@ -161,13 +161,19 @@ multilib_src_configure() {
--disable-sql \
--disable-sql_codegen \
--disable-sql_compat \
- $([[ ${ABI} == arm ]] && echo --with-mutex=ARM/gcc-assembly) \
$([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) \
$(use_enable cxx) \
$(use_enable cxx stl) \
$(multilib_native_use_enable java) \
"${myconf[@]}" \
$(use_enable test)
+ # The embedded assembly on ARM does not work on newer hardware
+ # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore.
+ # Specifically, it uses the SWPB op, which was deprecated:
+ # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm
+ # The op ALSO cannot be used in ARM-Thumb mode.
+ # Trust the compiler instead.
+ # >=db-6.1 uses LDREX instead.
}
multilib_src_install() {
diff --git a/sys-libs/db/db-6.0.35-r1.ebuild b/sys-libs/db/db-6.0.35-r1.ebuild
index 0cd34cc3b7ac..a2d1df993e54 100644
--- a/sys-libs/db/db-6.0.35-r1.ebuild
+++ b/sys-libs/db/db-6.0.35-r1.ebuild
@@ -159,13 +159,19 @@ multilib_src_configure() {
--disable-sql \
--disable-sql_codegen \
--disable-sql_compat \
- $([[ ${ABI} == arm ]] && echo --with-mutex=ARM/gcc-assembly) \
$([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) \
$(use_enable cxx) \
$(use_enable cxx stl) \
$(multilib_native_use_enable java) \
"${myconf[@]}" \
$(use_enable test)
+ # The embedded assembly on ARM does not work on newer hardware
+ # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore.
+ # Specifically, it uses the SWPB op, which was deprecated:
+ # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm
+ # The op ALSO cannot be used in ARM-Thumb mode.
+ # Trust the compiler instead.
+ # >=db-6.1 uses LDREX instead.
}
multilib_src_install() {
diff --git a/sys-libs/db/db-6.0.35.ebuild b/sys-libs/db/db-6.0.35.ebuild
index b03e9d66b023..476381c66a90 100644
--- a/sys-libs/db/db-6.0.35.ebuild
+++ b/sys-libs/db/db-6.0.35.ebuild
@@ -157,13 +157,19 @@ multilib_src_configure() {
--enable-sql \
--enable-sql_codegen \
--disable-sql_compat \
- $([[ ${ABI} == arm ]] && echo --with-mutex=ARM/gcc-assembly) \
$([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) \
$(use_enable cxx) \
$(use_enable cxx stl) \
$(multilib_native_use_enable java) \
"${myconf[@]}" \
$(use_enable test)
+ # The embedded assembly on ARM does not work on newer hardware
+ # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore.
+ # Specifically, it uses the SWPB op, which was deprecated:
+ # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm
+ # The op ALSO cannot be used in ARM-Thumb mode.
+ # Trust the compiler instead.
+ # >=db-6.1 uses LDREX instead.
}
multilib_src_install() {