aboutsummaryrefslogtreecommitdiffstats
path: root/toolchain/gcc/patches-12.x/970-macos_arm64-building-fix.patch
blob: 89730449f5547a0d313b08567fcfd31cec3398c7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
commit 9c6e71079b46ad5433165feaa2001450f2017b56
Author: Przemysław Buczkowski <prem@prem.moe>
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 <jscipione@gmail.com>
    Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>

--- a/gcc/config/aarch64/aarch64.h
+++ b/gcc/config/aarch64/aarch64.h
@@ -1293,7 +1293,7 @@ extern const char *aarch64_rewrite_mcpu
 #define MCPU_TO_MARCH_SPEC_FUNCTIONS \
   { "rewrite_mcpu", aarch64_rewrite_mcpu },
 
-#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 <errno.h>
 
 /* 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;