summaryrefslogtreecommitdiff
path: root/profiles/prefix/darwin
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-08-06 14:10:02 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-08-06 14:10:02 +0100
commit7e17b5aabc330abb894f2b90bef0e3fcbcd180d2 (patch)
tree0b0cd08ce6e24faf7c868b07127ee0b6b32153c7 /profiles/prefix/darwin
parentda3552023d9aae2ee5183df71a80a8169414974e (diff)
gentoo auto-resync : 06:08:2022 - 14:10:01
Diffstat (limited to 'profiles/prefix/darwin')
-rw-r--r--profiles/prefix/darwin/macos/arch/arm64/profile.bashrc26
1 files changed, 18 insertions, 8 deletions
diff --git a/profiles/prefix/darwin/macos/arch/arm64/profile.bashrc b/profiles/prefix/darwin/macos/arch/arm64/profile.bashrc
index 6bfe36915c9d..314c9a7e4f99 100644
--- a/profiles/prefix/darwin/macos/arch/arm64/profile.bashrc
+++ b/profiles/prefix/darwin/macos/arch/arm64/profile.bashrc
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
pre_src_configure() {
@@ -11,13 +11,23 @@ pre_src_configure() {
# triplets, so patch that for various versions of autoconf
# This bit should be kept in sync with fix_config_sub in
# bootstrap-prefix.sh
- if [[ ${CHOST} == arm64-apple-darwin* ]] ; then
- # Apple Silicon doesn't use aarch64, but arm64
- find . -name "config.sub" | \
- xargs sed -i -e 's/ arm\(-\*\)* / arm\1 | arm64\1 /'
- find . -name "config.sub" | \
- xargs sed -i -e 's/ aarch64 / aarch64 | arm64 /'
- fi
+ # Apple Silicon doesn't use aarch64, but arm64
+ find . -name "config.sub" | \
+ ${XARGS} sed -i -e 's/ arm\(-\*\)* / arm\1 | arm64\1 /'
+ find . -name "config.sub" | \
+ ${XARGS} sed -i -e 's/ aarch64 / aarch64 | arm64 /'
+
+ # currently the toolchain appears to be a bit funky, and generates
+ # code the (host) linker thinks is invalid with -O2 and up:
+ # ld: in section __TEXT,__text reloc 442: symbol index out of range
+ # file 'src/preproc/refer/refer-label.o' for architecture arm64
+ case ${CATEGORY}/${PN} in
+ sys-apps/groff |\
+ app-editors/vim)
+ [[ ${CFLAGS} == *-O[23456789]* ]] && CFLAGS="${CFLAGS} -O1"
+ [[ ${CXXFLAGS} == *-O[23456789]* ]] && CXXFLAGS="${CFLAGS} -O1"
+ ;;
+ esac
popd > /dev/null
}