This is the final bugfix release in the gcc-5 series. Compile and run tested on macOS 10.13 (Xcode 9), mvebu/ar71xx. Removed redundant patch for macOS (backported upstream by yours truly) Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
		
			
				
	
	
		
			121 lines
		
	
	
		
			4.8 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			121 lines
		
	
	
		
			4.8 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
From: ktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4>
 | 
						|
Date: Fri, 8 May 2015 08:30:40 +0000 (+0000)
 | 
						|
Subject: [PATCH 0/13] Add musl support to GCC
 | 
						|
X-Git-Url: https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff_plain;h=f2d678afa5b8385d763b93772d73d6bf80a9739e
 | 
						|
 | 
						|
[PATCH 0/13] Add musl support to GCC
 | 
						|
 | 
						|
2015-05-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
 | 
						|
 | 
						|
	* config/glibc-stdint.h (OPTION_MUSL): Define.
 | 
						|
	(INT_FAST16_TYPE, INT_FAST32_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE):
 | 
						|
	Change the definition based on OPTION_MUSL for 64 bit targets.
 | 
						|
	* config/linux.h (OPTION_MUSL): Redefine.
 | 
						|
	* config/alpha/linux.h (OPTION_MUSL): Redefine.
 | 
						|
	* config/rs6000/linux.h (OPTION_MUSL): Redefine.
 | 
						|
	* config/rs6000/linux64.h (OPTION_MUSL): Redefine.
 | 
						|
 | 
						|
 | 
						|
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@222905 138bc75d-0d04-0410-961f-82ee72b054a4
 | 
						|
---
 | 
						|
 | 
						|
--- a/gcc/config/alpha/linux.h
 | 
						|
+++ b/gcc/config/alpha/linux.h
 | 
						|
@@ -61,10 +61,14 @@ along with GCC; see the file COPYING3.
 | 
						|
 #define OPTION_GLIBC  (DEFAULT_LIBC == LIBC_GLIBC)
 | 
						|
 #define OPTION_UCLIBC (DEFAULT_LIBC == LIBC_UCLIBC)
 | 
						|
 #define OPTION_BIONIC (DEFAULT_LIBC == LIBC_BIONIC)
 | 
						|
+#undef OPTION_MUSL
 | 
						|
+#define OPTION_MUSL   (DEFAULT_LIBC == LIBC_MUSL)
 | 
						|
 #else
 | 
						|
 #define OPTION_GLIBC  (linux_libc == LIBC_GLIBC)
 | 
						|
 #define OPTION_UCLIBC (linux_libc == LIBC_UCLIBC)
 | 
						|
 #define OPTION_BIONIC (linux_libc == LIBC_BIONIC)
 | 
						|
+#undef OPTION_MUSL
 | 
						|
+#define OPTION_MUSL   (linux_libc == LIBC_MUSL)
 | 
						|
 #endif
 | 
						|
 
 | 
						|
 /* Determine what functions are present at the runtime;
 | 
						|
--- a/gcc/config/glibc-stdint.h
 | 
						|
+++ b/gcc/config/glibc-stdint.h
 | 
						|
@@ -22,6 +22,12 @@ a copy of the GCC Runtime Library Except
 | 
						|
 see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 | 
						|
 <http://www.gnu.org/licenses/>.  */
 | 
						|
 
 | 
						|
+/* Systems using musl libc should use this header and make sure
 | 
						|
+   OPTION_MUSL is defined correctly before using the TYPE macros. */
 | 
						|
+#ifndef OPTION_MUSL
 | 
						|
+#define OPTION_MUSL 0
 | 
						|
+#endif
 | 
						|
+
 | 
						|
 #define SIG_ATOMIC_TYPE "int"
 | 
						|
 
 | 
						|
 #define INT8_TYPE "signed char"
 | 
						|
@@ -43,12 +49,12 @@ see the files COPYING3 and COPYING.RUNTI
 | 
						|
 #define UINT_LEAST64_TYPE (LONG_TYPE_SIZE == 64 ? "long unsigned int" : "long long unsigned int")
 | 
						|
 
 | 
						|
 #define INT_FAST8_TYPE "signed char"
 | 
						|
-#define INT_FAST16_TYPE (LONG_TYPE_SIZE == 64 ? "long int" : "int")
 | 
						|
-#define INT_FAST32_TYPE (LONG_TYPE_SIZE == 64 ? "long int" : "int")
 | 
						|
+#define INT_FAST16_TYPE (LONG_TYPE_SIZE == 64 && !OPTION_MUSL ? "long int" : "int")
 | 
						|
+#define INT_FAST32_TYPE (LONG_TYPE_SIZE == 64 && !OPTION_MUSL ? "long int" : "int")
 | 
						|
 #define INT_FAST64_TYPE (LONG_TYPE_SIZE == 64 ? "long int" : "long long int")
 | 
						|
 #define UINT_FAST8_TYPE "unsigned char"
 | 
						|
-#define UINT_FAST16_TYPE (LONG_TYPE_SIZE == 64 ? "long unsigned int" : "unsigned int")
 | 
						|
-#define UINT_FAST32_TYPE (LONG_TYPE_SIZE == 64 ? "long unsigned int" : "unsigned int")
 | 
						|
+#define UINT_FAST16_TYPE (LONG_TYPE_SIZE == 64 && !OPTION_MUSL ? "long unsigned int" : "unsigned int")
 | 
						|
+#define UINT_FAST32_TYPE (LONG_TYPE_SIZE == 64 && !OPTION_MUSL ? "long unsigned int" : "unsigned int")
 | 
						|
 #define UINT_FAST64_TYPE (LONG_TYPE_SIZE == 64 ? "long unsigned int" : "long long unsigned int")
 | 
						|
 
 | 
						|
 #define INTPTR_TYPE (LONG_TYPE_SIZE == 64 ? "long int" : "int")
 | 
						|
--- a/gcc/config/linux.h
 | 
						|
+++ b/gcc/config/linux.h
 | 
						|
@@ -32,11 +32,13 @@ see the files COPYING3 and COPYING.RUNTI
 | 
						|
 #define OPTION_GLIBC  (DEFAULT_LIBC == LIBC_GLIBC)
 | 
						|
 #define OPTION_UCLIBC (DEFAULT_LIBC == LIBC_UCLIBC)
 | 
						|
 #define OPTION_BIONIC (DEFAULT_LIBC == LIBC_BIONIC)
 | 
						|
+#undef OPTION_MUSL
 | 
						|
 #define OPTION_MUSL   (DEFAULT_LIBC == LIBC_MUSL)
 | 
						|
 #else
 | 
						|
 #define OPTION_GLIBC  (linux_libc == LIBC_GLIBC)
 | 
						|
 #define OPTION_UCLIBC (linux_libc == LIBC_UCLIBC)
 | 
						|
 #define OPTION_BIONIC (linux_libc == LIBC_BIONIC)
 | 
						|
+#undef OPTION_MUSL
 | 
						|
 #define OPTION_MUSL   (linux_libc == LIBC_MUSL)
 | 
						|
 #endif
 | 
						|
 
 | 
						|
--- a/gcc/config/rs6000/linux.h
 | 
						|
+++ b/gcc/config/rs6000/linux.h
 | 
						|
@@ -30,10 +30,14 @@
 | 
						|
 #define OPTION_GLIBC  (DEFAULT_LIBC == LIBC_GLIBC)
 | 
						|
 #define OPTION_UCLIBC (DEFAULT_LIBC == LIBC_UCLIBC)
 | 
						|
 #define OPTION_BIONIC (DEFAULT_LIBC == LIBC_BIONIC)
 | 
						|
+#undef OPTION_MUSL
 | 
						|
+#define OPTION_MUSL   (DEFAULT_LIBC == LIBC_MUSL)
 | 
						|
 #else
 | 
						|
 #define OPTION_GLIBC  (linux_libc == LIBC_GLIBC)
 | 
						|
 #define OPTION_UCLIBC (linux_libc == LIBC_UCLIBC)
 | 
						|
 #define OPTION_BIONIC (linux_libc == LIBC_BIONIC)
 | 
						|
+#undef OPTION_MUSL
 | 
						|
+#define OPTION_MUSL   (linux_libc == LIBC_MUSL)
 | 
						|
 #endif
 | 
						|
 
 | 
						|
 /* Determine what functions are present at the runtime;
 | 
						|
--- a/gcc/config/rs6000/linux64.h
 | 
						|
+++ b/gcc/config/rs6000/linux64.h
 | 
						|
@@ -299,10 +299,14 @@ extern int dot_symbols;
 | 
						|
 #define OPTION_GLIBC  (DEFAULT_LIBC == LIBC_GLIBC)
 | 
						|
 #define OPTION_UCLIBC (DEFAULT_LIBC == LIBC_UCLIBC)
 | 
						|
 #define OPTION_BIONIC (DEFAULT_LIBC == LIBC_BIONIC)
 | 
						|
+#undef OPTION_MUSL
 | 
						|
+#define OPTION_MUSL   (DEFAULT_LIBC == LIBC_MUSL)
 | 
						|
 #else
 | 
						|
 #define OPTION_GLIBC  (linux_libc == LIBC_GLIBC)
 | 
						|
 #define OPTION_UCLIBC (linux_libc == LIBC_UCLIBC)
 | 
						|
 #define OPTION_BIONIC (linux_libc == LIBC_BIONIC)
 | 
						|
+#undef OPTION_MUSL
 | 
						|
+#define OPTION_MUSL   (linux_libc == LIBC_MUSL)
 | 
						|
 #endif
 | 
						|
 
 | 
						|
 /* Determine what functions are present at the runtime;
 |