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 /sys-libs/db/db-4.7.25_p4.ebuild
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>
Diffstat (limited to 'sys-libs/db/db-4.7.25_p4.ebuild')
-rw-r--r--sys-libs/db/db-4.7.25_p4.ebuild10
1 files changed, 8 insertions, 2 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"
}