diff options
author | Rolf Eike Beer <eike@sf-mail.de> | 2018-09-07 20:57:31 +0200 |
---|---|---|
committer | Sergei Trofimovich <slyfox@gentoo.org> | 2018-09-16 22:28:40 +0100 |
commit | 68b4b694543cddeb2f33115f5581403d1187fe3f (patch) | |
tree | a5785bfc1cbb392a3f68f57fbcb119f5354626fd /dev-util/boost-build/files | |
parent | app-admin/ansible: 2.5.8 and 2.6.3 stable amd64 and x86 with cleanup (diff) | |
download | gentoo-68b4b694543cddeb2f33115f5581403d1187fe3f.tar.gz gentoo-68b4b694543cddeb2f33115f5581403d1187fe3f.tar.bz2 gentoo-68b4b694543cddeb2f33115f5581403d1187fe3f.zip |
dev-util/boost-build: add patch to unbreak compiler options on sparc
Boost tries to autodetect the processor architecture and overrides any flags
set with CXXFLAGS with the -mcpu value it thinks it is appropiate. Sadly the
most recent architecture it knows of is ultrasparc3. For every newer cpu type
it falls back to it's default, which is v7 (which would be the compiler default
anyway). This avoids any advanced cpu instructions, e.g. those that support
atomic operations on thing larger than a byte. Remove the whole outdated cruft
and just use whatever the user passed in.
Closes: https://bugs.gentoo.org/646234
Closes: https://github.com/gentoo/gentoo/pull/9802
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
Package-Manager: Portage-2.3.40, Repoman-2.3.9
Diffstat (limited to 'dev-util/boost-build/files')
-rw-r--r-- | dev-util/boost-build/files/boost-build-1.62.0-sparc-no-default-flags.patch | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/dev-util/boost-build/files/boost-build-1.62.0-sparc-no-default-flags.patch b/dev-util/boost-build/files/boost-build-1.62.0-sparc-no-default-flags.patch new file mode 100644 index 000000000000..a3f450b0edf1 --- /dev/null +++ b/dev-util/boost-build/files/boost-build-1.62.0-sparc-no-default-flags.patch @@ -0,0 +1,47 @@ +--- a/tools/gcc.py 2018-09-07 17:44:59.668796217 +0200 ++++ b/tools/gcc.py 2018-09-07 17:45:56.378794314 +0200 +@@ -811,20 +811,6 @@ + # Sparc + flags('gcc', 'OPTIONS', ['<architecture>sparc/<address-model>32'], ['-m32']) + flags('gcc', 'OPTIONS', ['<architecture>sparc/<address-model>64'], ['-m64']) +-cpu_flags('gcc', 'OPTIONS', 'sparc', 'v7', ['-mcpu=v7'], default=True) +-cpu_flags('gcc', 'OPTIONS', 'sparc', 'cypress', ['-mcpu=cypress']) +-cpu_flags('gcc', 'OPTIONS', 'sparc', 'v8', ['-mcpu=v8']) +-cpu_flags('gcc', 'OPTIONS', 'sparc', 'supersparc', ['-mcpu=supersparc']) +-cpu_flags('gcc', 'OPTIONS', 'sparc', 'sparclite', ['-mcpu=sparclite']) +-cpu_flags('gcc', 'OPTIONS', 'sparc', 'hypersparc', ['-mcpu=hypersparc']) +-cpu_flags('gcc', 'OPTIONS', 'sparc', 'sparclite86x', ['-mcpu=sparclite86x']) +-cpu_flags('gcc', 'OPTIONS', 'sparc', 'f930', ['-mcpu=f930']) +-cpu_flags('gcc', 'OPTIONS', 'sparc', 'f934', ['-mcpu=f934']) +-cpu_flags('gcc', 'OPTIONS', 'sparc', 'sparclet', ['-mcpu=sparclet']) +-cpu_flags('gcc', 'OPTIONS', 'sparc', 'tsc701', ['-mcpu=tsc701']) +-cpu_flags('gcc', 'OPTIONS', 'sparc', 'v9', ['-mcpu=v9']) +-cpu_flags('gcc', 'OPTIONS', 'sparc', 'ultrasparc', ['-mcpu=ultrasparc']) +-cpu_flags('gcc', 'OPTIONS', 'sparc', 'ultrasparc3', ['-mcpu=ultrasparc3']) + # RS/6000 & PowerPC + flags('gcc', 'OPTIONS', ['<architecture>power/<address-model>32'], ['-m32']) + flags('gcc', 'OPTIONS', ['<architecture>power/<address-model>64'], ['-m64']) +--- a/tools/gcc.jam 2018-09-07 17:45:12.168795797 +0200 ++++ b/tools/gcc.jam 2018-09-07 17:46:25.498793337 +0200 +@@ -1134,21 +1134,6 @@ + cpu-flags gcc OPTIONS : x86 : c3-2 : -march=c3-2 ; + ## + cpu-flags gcc OPTIONS : x86 : atom : -march=atom ; +-# Sparc +-cpu-flags gcc OPTIONS : sparc : v7 : -mcpu=v7 : default ; +-cpu-flags gcc OPTIONS : sparc : cypress : -mcpu=cypress ; +-cpu-flags gcc OPTIONS : sparc : v8 : -mcpu=v8 ; +-cpu-flags gcc OPTIONS : sparc : supersparc : -mcpu=supersparc ; +-cpu-flags gcc OPTIONS : sparc : sparclite : -mcpu=sparclite ; +-cpu-flags gcc OPTIONS : sparc : hypersparc : -mcpu=hypersparc ; +-cpu-flags gcc OPTIONS : sparc : sparclite86x : -mcpu=sparclite86x ; +-cpu-flags gcc OPTIONS : sparc : f930 : -mcpu=f930 ; +-cpu-flags gcc OPTIONS : sparc : f934 : -mcpu=f934 ; +-cpu-flags gcc OPTIONS : sparc : sparclet : -mcpu=sparclet ; +-cpu-flags gcc OPTIONS : sparc : tsc701 : -mcpu=tsc701 ; +-cpu-flags gcc OPTIONS : sparc : v9 : -mcpu=v9 ; +-cpu-flags gcc OPTIONS : sparc : ultrasparc : -mcpu=ultrasparc ; +-cpu-flags gcc OPTIONS : sparc : ultrasparc3 : -mcpu=ultrasparc3 ; + # RS/6000 & PowerPC + cpu-flags gcc OPTIONS : power : 403 : -mcpu=403 ; + cpu-flags gcc OPTIONS : power : 505 : -mcpu=505 ; |