diff options
Diffstat (limited to 'main/gcc/ada-musl.patch')
-rw-r--r-- | main/gcc/ada-musl.patch | 126 |
1 files changed, 103 insertions, 23 deletions
diff --git a/main/gcc/ada-musl.patch b/main/gcc/ada-musl.patch index 464c3d57d9..7a86ae4afa 100644 --- a/main/gcc/ada-musl.patch +++ b/main/gcc/ada-musl.patch @@ -1,7 +1,8 @@ -diff -rup gcc-5.1.0/gcc.orig/ada/adaint.c gcc-5.1.0/gcc/ada/adaint.c ---- gcc-5.1.0/gcc.orig/ada/adaint.c 2015-02-20 11:48:57.000000000 +0000 -+++ gcc-5.1.0/gcc/ada/adaint.c 2015-06-02 10:47:51.672767476 +0000 -@@ -70,6 +70,11 @@ +diff --git a/gcc/ada/adaint.c b/gcc/ada/adaint.c +index 3b0aea9..ee0bb69 100644 +--- a/gcc/ada/adaint.c ++++ b/gcc/ada/adaint.c +@@ -76,6 +76,11 @@ #include <sys/param.h> #include <sys/pstat.h> #endif @@ -13,16 +14,15 @@ diff -rup gcc-5.1.0/gcc.orig/ada/adaint.c gcc-5.1.0/gcc/ada/adaint.c #ifdef __PikeOS__ #define __BSD_VISIBLE 1 -@@ -3057,8 +3062,6 @@ __gnat_lwp_self (void) - return (void *) syscall (__NR_gettid); - } +@@ -3255,7 +3260,6 @@ __gnat_lwp_self (void) + #endif + #if defined (__linux__) -#include <sched.h> -- + /* glibc versions earlier than 2.7 do not define the routines to handle dynamically allocated CPU sets. For these targets, we use the static - versions. */ -@@ -3067,7 +3070,7 @@ __gnat_lwp_self (void) +@@ -3265,7 +3269,7 @@ __gnat_lwp_self (void) /* Dynamic cpu sets */ @@ -31,7 +31,7 @@ diff -rup gcc-5.1.0/gcc.orig/ada/adaint.c gcc-5.1.0/gcc/ada/adaint.c __gnat_cpu_alloc (size_t count) { return CPU_ALLOC (count); -@@ -3080,33 +3083,33 @@ __gnat_cpu_alloc_size (size_t count) +@@ -3278,33 +3282,33 @@ __gnat_cpu_alloc_size (size_t count) } void @@ -73,7 +73,7 @@ diff -rup gcc-5.1.0/gcc.orig/ada/adaint.c gcc-5.1.0/gcc/ada/adaint.c } size_t -@@ -3116,23 +3119,23 @@ __gnat_cpu_alloc_size (size_t count ATTR +@@ -3314,23 +3318,23 @@ __gnat_cpu_alloc_size (size_t count ATTRIBUTE_UNUSED) } void @@ -101,11 +101,12 @@ diff -rup gcc-5.1.0/gcc.orig/ada/adaint.c gcc-5.1.0/gcc/ada/adaint.c + CPU_SET (cpu - 1, (cpu_set_t *) set); } #endif /* !CPU_ALLOC */ - #endif /* linux */ -diff -rup gcc-5.1.0/gcc.orig/ada/adaint.h gcc-5.1.0/gcc/ada/adaint.h ---- gcc-5.1.0/gcc.orig/ada/adaint.h 2015-01-27 17:20:27.000000000 +0000 -+++ gcc-5.1.0/gcc/ada/adaint.h 2015-06-02 10:47:23.188910894 +0000 -@@ -287,13 +287,11 @@ extern void *__gnat_lwp_self (voi + #endif /* __linux__ */ +diff --git a/gcc/ada/adaint.h b/gcc/ada/adaint.h +index 0d12f7e..a063b47 100644 +--- a/gcc/ada/adaint.h ++++ b/gcc/ada/adaint.h +@@ -316,13 +316,11 @@ extern void *__gnat_lwp_self (void); /* Routines for interface to required CPU set primitives */ @@ -123,15 +124,94 @@ diff -rup gcc-5.1.0/gcc.orig/ada/adaint.h gcc-5.1.0/gcc/ada/adaint.h #endif #if defined (_WIN32) -diff -rup gcc-5.1.0/gcc.orig/ada/gcc-interface/Makefile.in gcc-5.1.0/gcc/ada/gcc-interface/Makefile.in ---- gcc-5.1.0/gcc.orig/ada/gcc-interface/Makefile.in 2015-04-09 20:29:28.000000000 +0000 -+++ gcc-5.1.0/gcc/ada/gcc-interface/Makefile.in 2015-06-02 10:47:23.188910894 +0000 -@@ -1910,7 +1910,7 @@ ifeq ($(strip $(filter-out powerpc% linu +diff --git a/gcc/ada/terminals.c b/gcc/ada/terminals.c +index 7025f57..207b50d 100644 +--- a/gcc/ada/terminals.c ++++ b/gcc/ada/terminals.c +@@ -1108,13 +1108,6 @@ __gnat_setup_winsize (void *desc, int rows, int columns) + #include <stdio.h> + #include <stdlib.h> + +-/* On some system termio is either absent or including it will disable termios +- (HP-UX) */ +-#if !defined (__hpux__) && !defined (BSD) && !defined (__APPLE__) \ +- && !defined (__rtems__) && !defined (__QNXNTO__) +-# include <termio.h> +-#endif +- + #include <sys/ioctl.h> + #include <termios.h> + #include <fcntl.h> +diff --git a/gcc/ada/gcc-interface/Makefile.in b/gcc/ada/gcc-interface/Makefile.in +index ebb955e..08cfbee 100644 +--- a/gcc/ada/gcc-interface/Makefile.in ++++ b/gcc/ada/gcc-interface/Makefile.in +@@ -1028,7 +1028,7 @@ ifeq ($(strip $(filter-out %86 linux%,$(target_cpu) $(target_os))),) + s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \ + $(TRASYM_DWARF_UNIX_PAIRS) \ + g-sercom.adb<libgnat/g-sercom__linux.adb \ +- s-tsmona.adb<libgnat/s-tsmona__linux.adb \ ++ s-tsmona.adb<libgnat/s-tsmona.adb \ + a-exetim.adb<libgnarl/a-exetim__posix.adb \ + a-exetim.ads<libgnarl/a-exetim__default.ads \ + s-linux.ads<libgnarl/s-linux.ads \ +@@ -1545,7 +1545,7 @@ ifeq ($(strip $(filter-out powerpc% linux%,$(target_cpu) $(target_os))),) + s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \ + g-sercom.adb<libgnat/g-sercom__linux.adb \ + $(TRASYM_DWARF_UNIX_PAIRS) \ +- s-tsmona.adb<libgnat/s-tsmona__linux.adb \ ++ s-tsmona.adb<libgnat/s-tsmona.adb \ + $(ATOMICS_TARGET_PAIRS) \ + $(ATOMICS_BUILTINS_TARGET_PAIRS) \ + system.ads<libgnat/system-linux-ppc.ads +@@ -1574,7 +1574,7 @@ ifeq ($(strip $(filter-out powerpc% linux%,$(target_cpu) $(target_os))),) endif # ARM linux, GNU eabi -ifeq ($(strip $(filter-out arm% linux-gnueabi%,$(target_cpu) $(target_os))),) +ifeq ($(strip $(filter-out arm% linux-gnueabi% linux-musleabi% linux-muslgnueabi%,$(target_cpu) $(target_os))),) LIBGNAT_TARGET_PAIRS = \ - a-intnam.ads<a-intnam-linux.ads \ - s-inmaop.adb<s-inmaop-posix.adb \ + a-intnam.ads<libgnarl/a-intnam__linux.ads \ + s-inmaop.adb<libgnarl/s-inmaop__posix.adb \ +@@ -1774,7 +1774,7 @@ ifeq ($(strip $(filter-out %ia64 linux%,$(target_cpu) $(target_os))),) + s-taspri.ads<libgnarl/s-taspri__posix-noaltstack.ads \ + g-sercom.adb<libgnat/g-sercom__linux.adb \ + $(TRASYM_DWARF_UNIX_PAIRS) \ +- s-tsmona.adb<libgnat/s-tsmona__linux.adb \ ++ s-tsmona.adb<libgnat/s-tsmona.adb \ + $(ATOMICS_TARGET_PAIRS) \ + $(ATOMICS_BUILTINS_TARGET_PAIRS) \ + system.ads<libgnat/system-linux-ia64.ads +@@ -1871,7 +1871,7 @@ ifeq ($(strip $(filter-out %x86_64 linux%,$(target_cpu) $(target_os))),) + s-taspri.ads<libgnarl/s-taspri__posix.ads \ + g-sercom.adb<libgnat/g-sercom__linux.adb \ + $(TRASYM_DWARF_UNIX_PAIRS) \ +- s-tsmona.adb<libgnat/s-tsmona__linux.adb \ ++ s-tsmona.adb<libgnat/s-tsmona.adb \ + $(ATOMICS_TARGET_PAIRS) \ + $(X86_64_TARGET_PAIRS) \ + system.ads<libgnat/system-linux-x86.ads +diff --git a/gcc/ada/terminals.c b/gcc/ada/terminals.c +index 207b50d..bd3a02c 100644 +--- a/gcc/ada/terminals.c ++++ b/gcc/ada/terminals.c +@@ -1152,7 +1152,7 @@ __gnat_setup_winsize (void *desc, int rows, int columns) + #if defined (__APPLE__) || defined (BSD) + #define USE_OPENPTY + #elif defined (__linux__) +-#define USE_GETPT ++#define USE_POSIX_OPENPT + #elif defined (__sun__) + #define USE_CLONE_DEVICE "/dev/ptmx" + #elif defined (_AIX) +@@ -1201,8 +1201,8 @@ allocate_pty_desc (pty_desc **desc) { + int master_fd = -1; + char *slave_name = NULL; + +-#ifdef USE_GETPT +- master_fd = getpt (); ++#ifdef USE_POSIX_OPENPT ++ master_fd = posix_openpt(O_RDWR | O_NOCTTY); + #elif defined (USE_OPENPTY) + status = openpty (&master_fd, &slave_fd, NULL, NULL, NULL); + #elif defined (USE_CLONE_DEVICE) |