commit 9c6e71079b46ad5433165feaa2001450f2017b56 Author: Przemysław Buczkowski Date: Mon Aug 16 13:16:21 2021 +0100 GCC: Patch for Apple Silicon compatibility This patch fixes a linker error occuring when compiling the cross-compiler on macOS and ARM64 architecture. Adapted from: https://github.com/richfelker/musl-cross-make/issues/116#issuecomment-823612404 Change-Id: Ia3ee98a163bbb62689f42e2da83a5ef36beb0913 Reviewed-on: https://review.haiku-os.org/c/buildtools/+/4329 Reviewed-by: John Scipione Reviewed-by: Adrien Destugues --- a/gcc/config/aarch64/aarch64.h +++ b/gcc/config/aarch64/aarch64.h @@ -1195,7 +1195,7 @@ extern enum aarch64_code_model aarch64_c /* Extra specs when building a native AArch64-hosted compiler. Option rewriting rules based on host system. */ -#if defined(__aarch64__) +#if defined(__aarch64__) && ! defined(__APPLE__) extern const char *host_detect_local_cpu (int argc, const char **argv); #define HAVE_LOCAL_CPU_DETECT # define EXTRA_SPEC_FUNCTIONS \ --- a/gcc/config/host-darwin.cc +++ b/gcc/config/host-darwin.cc @@ -23,6 +23,8 @@ #include "options.h" #include "diagnostic-core.h" #include "config/host-darwin.h" +#include "hosthooks.h" +#include "hosthooks-def.h" #include /* For Darwin (macOS only) platforms, without ASLR (PIE) enabled on the @@ -181,3 +183,5 @@ darwin_gt_pch_use_address (void *&addr, return 1; } + +const struct host_hooks host_hooks = HOST_HOOKS_INITIALIZER;