summaryrefslogtreecommitdiff
path: root/patches/binutils/2.25.1/350-Darwin-Two-fixes-from-Android-NDK-PTHREAD_ONCE_INIT-wcsncasecmp.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/binutils/2.25.1/350-Darwin-Two-fixes-from-Android-NDK-PTHREAD_ONCE_INIT-wcsncasecmp.patch')
-rw-r--r--patches/binutils/2.25.1/350-Darwin-Two-fixes-from-Android-NDK-PTHREAD_ONCE_INIT-wcsncasecmp.patch77
1 files changed, 0 insertions, 77 deletions
diff --git a/patches/binutils/2.25.1/350-Darwin-Two-fixes-from-Android-NDK-PTHREAD_ONCE_INIT-wcsncasecmp.patch b/patches/binutils/2.25.1/350-Darwin-Two-fixes-from-Android-NDK-PTHREAD_ONCE_INIT-wcsncasecmp.patch
deleted file mode 100644
index 6168b31..0000000
--- a/patches/binutils/2.25.1/350-Darwin-Two-fixes-from-Android-NDK-PTHREAD_ONCE_INIT-wcsncasecmp.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-From c39479f4ab4d372b518957871e1f205a03e7c3d6 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
----
- binutils-2.25/bfd/peXXigen.c | 22 ++++++++++++++++++++++
- binutils-2.25/gold/gold-threads.cc | 15 ++++++++++++---
- 2 files changed, 34 insertions(+), 3 deletions(-)
-
-diff --git binutils-2.25.orig/bfd/peXXigen.c binutils-2.25/bfd/peXXigen.c
-index 13e39e4..7a98306 100644
---- binutils-2.25.orig/bfd/peXXigen.c
-+++ binutils-2.25/bfd/peXXigen.c
-@@ -3522,6 +3522,28 @@ u16_mbtouc (wchar_t * puc, const unsigned short * s, unsigned int n)
- }
- #endif /* HAVE_WCHAR_H and 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 (bfd_boolean is_name, rsrc_entry * a, rsrc_entry * b)
-diff --git binutils-2.25.orig/gold/gold-threads.cc binutils-2.25/gold/gold-threads.cc
-index ff5a8ac..45140e0 100644
---- binutils-2.25.orig/gold/gold-threads.cc
-+++ binutils-2.25/gold/gold-threads.cc
-@@ -284,9 +284,18 @@ Condvar::~Condvar()
- 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*
---
-2.1.3
-