gcc: add Apple Silicon support for newer versions (#32702)
This commit is contained in:
parent
677a862fb9
commit
1f6545c1c7
@ -317,11 +317,11 @@ class Gcc(AutotoolsPackage, GNUMirrorPackage):
|
|||||||
# on XCode 12.5
|
# on XCode 12.5
|
||||||
conflicts("+bootstrap", when="@:11.1 %apple-clang@12.0.5")
|
conflicts("+bootstrap", when="@:11.1 %apple-clang@12.0.5")
|
||||||
|
|
||||||
# aarch64/M1 is supported in GCC 12+
|
# aarch64/M1 is supported in GCC 11.3-12.2
|
||||||
conflicts(
|
conflicts(
|
||||||
"@:11.2,11.3.1:",
|
"@:11.2,12.3:",
|
||||||
when="target=aarch64: platform=darwin",
|
when="target=aarch64: platform=darwin",
|
||||||
msg="Only GCC 11.3.0 supports macOS M1 (aarch64)",
|
msg="Only GCC 11.3-12.2 support macOS M1 (aarch64)",
|
||||||
)
|
)
|
||||||
|
|
||||||
# Newer binutils than RHEL's is required to run `as` on some instructions
|
# Newer binutils than RHEL's is required to run `as` on some instructions
|
||||||
@ -331,6 +331,9 @@ class Gcc(AutotoolsPackage, GNUMirrorPackage):
|
|||||||
# GCC 11 requires GCC 4.8 or later (https://gcc.gnu.org/gcc-11/changes.html)
|
# GCC 11 requires GCC 4.8 or later (https://gcc.gnu.org/gcc-11/changes.html)
|
||||||
conflicts("%gcc@:4.7", when="@11:")
|
conflicts("%gcc@:4.7", when="@11:")
|
||||||
|
|
||||||
|
# https://github.com/iains/gcc-12-branch/issues/6
|
||||||
|
conflicts("%apple-clang@14:")
|
||||||
|
|
||||||
if sys.platform == "darwin":
|
if sys.platform == "darwin":
|
||||||
# Fix parallel build on APFS filesystem
|
# Fix parallel build on APFS filesystem
|
||||||
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81797
|
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81797
|
||||||
@ -371,6 +374,17 @@ class Gcc(AutotoolsPackage, GNUMirrorPackage):
|
|||||||
sha256="e02006b7ec917cc1390645d95735a6a866caed0dfe506d5bef742f7862cab218",
|
sha256="e02006b7ec917cc1390645d95735a6a866caed0dfe506d5bef742f7862cab218",
|
||||||
when="@11.3.0 target=aarch64:",
|
when="@11.3.0 target=aarch64:",
|
||||||
)
|
)
|
||||||
|
# https://github.com/iains/gcc-12-branch
|
||||||
|
patch(
|
||||||
|
"https://raw.githubusercontent.com/Homebrew/formula-patches/76677f2b/gcc/gcc-12.1.0-arm.diff",
|
||||||
|
sha256="a000f1d9cb1dd98c7c4ef00df31435cd5d712d2f9d037ddc044f8bf82a16cf35",
|
||||||
|
when="@12.1.0 target=aarch64:",
|
||||||
|
)
|
||||||
|
patch(
|
||||||
|
"https://raw.githubusercontent.com/Homebrew/formula-patches/1d184289/gcc/gcc-12.2.0-arm.diff",
|
||||||
|
sha256="a7843b5c6bf1401e40c20c72af69c8f6fc9754ae980bb4a5f0540220b3dcb62d",
|
||||||
|
when="@12.2.0 target=aarch64:",
|
||||||
|
)
|
||||||
conflicts("+bootstrap", when="@11.3.0 target=aarch64:")
|
conflicts("+bootstrap", when="@11.3.0 target=aarch64:")
|
||||||
|
|
||||||
# Use -headerpad_max_install_names in the build,
|
# Use -headerpad_max_install_names in the build,
|
||||||
|
Loading…
Reference in New Issue
Block a user