mirror of
https://github.com/crosstool-ng/crosstool-ng.git
synced 2024-12-27 08:12:30 +00:00
29b6e00368
https://sourceware.org/pipermail/binutils/2022-August/122246.html Add binutils 2.39 and regenerate patches. 0008-binutils-2.38-vs.-ppc32-linux-kernel.patch is dropped as it has been applied upstream. Add a milestone for 2.39 which will be handy for Loongarch. Binutils now requires bison >= 3.0.4 to build gprofng for x86/aarch64 so we build our own bison when the host bison does not meet that requirement (which appears to be the case on macOS). Signed-off-by: Chris Packham <judge.packham@gmail.com>
71 lines
1.7 KiB
Diff
71 lines
1.7 KiB
Diff
From 2b887f9f158c963d0ffb9759c9ff4d89c88b7ed1 Mon Sep 17 00:00:00 2001
|
|
From: Andrew Hsieh <andrewhsieh@google.com>
|
|
Date: Wed, 18 Mar 2015 10:57:24 +0800
|
|
Subject: [PATCH] Fix darwin build
|
|
|
|
1. In Drawin PTHREAD_ONCE_INIT is {0x30B1BCBA, {0}} and the GCC < 4.4
|
|
doesn't support ended initializer list
|
|
2. wcsncasecmp doesn't exist in MacSDK10.6.x
|
|
|
|
Change-Id: I69204a72f853f5263dffedc448379d75ed4eca2e
|
|
---
|
|
bfd/peXXigen.c | 22 ++++++++++++++++++++++
|
|
gold/gold-threads.cc | 15 ++++++++++++---
|
|
2 files changed, 34 insertions(+), 3 deletions(-)
|
|
|
|
--- a/bfd/peXXigen.c
|
|
+++ b/bfd/peXXigen.c
|
|
@@ -3641,6 +3641,28 @@
|
|
}
|
|
#endif /* not Cygwin/Mingw */
|
|
|
|
+#if defined __APPLE__ && __DARWIN_C_LEVEL < 200809L
|
|
+/* wcsncasecmp isn't always defined in Mac SDK */
|
|
+static int
|
|
+wcsncasecmp(const wchar_t *s1, const wchar_t *s2, size_t n)
|
|
+{
|
|
+ wchar_t c1, c2;
|
|
+
|
|
+ if (n == 0)
|
|
+ return (0);
|
|
+ for (; *s1; s1++, s2++)
|
|
+ {
|
|
+ c1 = towlower(*s1);
|
|
+ c2 = towlower(*s2);
|
|
+ if (c1 != c2)
|
|
+ return ((int)c1 - c2);
|
|
+ if (--n == 0)
|
|
+ return (0);
|
|
+ }
|
|
+ return (-*s2);
|
|
+}
|
|
+#endif
|
|
+
|
|
/* Perform a comparison of two entries. */
|
|
static signed int
|
|
rsrc_cmp (bool is_name, rsrc_entry * a, rsrc_entry * b)
|
|
--- a/gold/gold-threads.cc
|
|
+++ b/gold/gold-threads.cc
|
|
@@ -284,9 +284,18 @@
|
|
class Once_initialize
|
|
{
|
|
public:
|
|
- Once_initialize()
|
|
- : once_(PTHREAD_ONCE_INIT)
|
|
- { }
|
|
+ Once_initialize()
|
|
+#if !defined(__APPLE__)
|
|
+ : once_(PTHREAD_ONCE_INIT)
|
|
+ { }
|
|
+#else
|
|
+// In Drawin PTHREAD_ONCE_INIT is {0x30B1BCBA, {0}} and the GCC < 4.4 doesn't support
|
|
+// extended initializer list as above */
|
|
+ {
|
|
+ pthread_once_t once_2 = PTHREAD_ONCE_INIT;
|
|
+ once_ = once_2;
|
|
+ }
|
|
+#endif
|
|
|
|
// Return a pointer to the pthread_once_t variable.
|
|
pthread_once_t*
|