diff options
Diffstat (limited to 'repo/devel/gcc/0027-ada-musl-support-fixes.patch')
-rw-r--r-- | repo/devel/gcc/0027-ada-musl-support-fixes.patch | 223 |
1 files changed, 0 insertions, 223 deletions
diff --git a/repo/devel/gcc/0027-ada-musl-support-fixes.patch b/repo/devel/gcc/0027-ada-musl-support-fixes.patch deleted file mode 100644 index 0f4ef64..0000000 --- a/repo/devel/gcc/0027-ada-musl-support-fixes.patch +++ /dev/null @@ -1,223 +0,0 @@ -From 21692d89e7876dcaecea3e3c961c6504be4a83e9 Mon Sep 17 00:00:00 2001 -From: Ariadne Conill <ariadne@dereferenced.org> -Date: Fri, 21 Aug 2020 07:07:48 +0000 -Subject: [PATCH] ada: musl support fixes - ---- - gcc/ada/Makefile.rtl | 10 +++++----- - gcc/ada/adaint.c | 34 +++++++++++++++++++--------------- - gcc/ada/adaint.h | 10 ++++------ - gcc/ada/terminals.c | 8 ++++---- - 4 files changed, 32 insertions(+), 30 deletions(-) - -diff --git a/gcc/ada/Makefile.rtl b/gcc/ada/Makefile.rtl -index 55ff9b0f3d5..0fadf4e4b79 100644 ---- a/gcc/ada/Makefile.rtl -+++ b/gcc/ada/Makefile.rtl -@@ -1533,7 +1533,7 @@ ifeq ($(strip $(filter-out %86 linux%,$(target_cpu) $(target_os))),) - s-intman.adb<libgnarl/s-intman__posix.adb \ - s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \ - $(TRASYM_DWARF_UNIX_PAIRS) \ -- 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 \ -@@ -2083,7 +2083,7 @@ ifeq ($(strip $(filter-out powerpc% linux%,$(target_cpu) $(target_os))),) - s-osinte.adb<libgnarl/s-osinte__posix.adb \ - s-tpopsp.adb<libgnarl/s-tpopsp__tls.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 -@@ -2112,7 +2112,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<libgnarl/a-intnam__linux.ads \ - s-inmaop.adb<libgnarl/s-inmaop__posix.adb \ -@@ -2305,7 +2305,7 @@ ifeq ($(strip $(filter-out %ia64 linux%,$(target_cpu) $(target_os))),) - s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \ - s-taspri.ads<libgnarl/s-taspri__posix-noaltstack.ads \ - $(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 -@@ -2401,7 +2401,7 @@ ifeq ($(strip $(filter-out %x86_64 linux%,$(target_cpu) $(target_os))),) - s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \ - s-taspri.ads<libgnarl/s-taspri__posix.ads \ - $(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/adaint.c b/gcc/ada/adaint.c -index 595abf87d65..00858c24f53 100644 ---- a/gcc/ada/adaint.c -+++ b/gcc/ada/adaint.c -@@ -90,6 +90,11 @@ - #include <sys/param.h> - #include <sys/pstat.h> - #endif -+ -+#if defined (linux) -+#define _GNU_SOURCE 1 -+#include <sched.h> -+#endif - - #ifdef __PikeOS__ - #define __BSD_VISIBLE 1 -@@ -3308,7 +3313,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 -@@ -3318,7 +3322,7 @@ __gnat_lwp_self (void) - - /* Dynamic cpu sets */ - --cpu_set_t * -+void * - __gnat_cpu_alloc (size_t count) - { - return CPU_ALLOC (count); -@@ -3331,33 +3335,33 @@ __gnat_cpu_alloc_size (size_t count) - } - - void --__gnat_cpu_free (cpu_set_t *set) -+__gnat_cpu_free (void *set) - { -- CPU_FREE (set); -+ CPU_FREE ((cpu_set_t *) set); - } - - void --__gnat_cpu_zero (size_t count, cpu_set_t *set) -+__gnat_cpu_zero (size_t count, void *set) - { -- CPU_ZERO_S (count, set); -+ CPU_ZERO_S (count, (cpu_set_t *) set); - } - - void --__gnat_cpu_set (int cpu, size_t count, cpu_set_t *set) -+__gnat_cpu_set (int cpu, size_t count, void *set) - { - /* Ada handles CPU numbers starting from 1, while C identifies the first - CPU by a 0, so we need to adjust. */ -- CPU_SET_S (cpu - 1, count, set); -+ CPU_SET_S (cpu - 1, count, (cpu_set_t *) set); - } - - #else /* !CPU_ALLOC */ - - /* Static cpu sets */ - --cpu_set_t * -+void * - __gnat_cpu_alloc (size_t count ATTRIBUTE_UNUSED) - { -- return (cpu_set_t *) xmalloc (sizeof (cpu_set_t)); -+ return xmalloc (sizeof (cpu_set_t)); - } - - size_t -@@ -3367,23 +3371,23 @@ __gnat_cpu_alloc_size (size_t count ATTRIBUTE_UNUSED) - } - - void --__gnat_cpu_free (cpu_set_t *set) -+__gnat_cpu_free (void *set) - { - free (set); - } - - void --__gnat_cpu_zero (size_t count ATTRIBUTE_UNUSED, cpu_set_t *set) -+__gnat_cpu_zero (size_t count ATTRIBUTE_UNUSED, void *set) - { -- CPU_ZERO (set); -+ CPU_ZERO ((cpu_set_t *) set); - } - - void --__gnat_cpu_set (int cpu, size_t count ATTRIBUTE_UNUSED, cpu_set_t *set) -+__gnat_cpu_set (int cpu, size_t count ATTRIBUTE_UNUSED, void *set) - { - /* Ada handles CPU numbers starting from 1, while C identifies the first - CPU by a 0, so we need to adjust. */ -- CPU_SET (cpu - 1, set); -+ CPU_SET (cpu - 1, (cpu_set_t *) set); - } - #endif /* !CPU_ALLOC */ - #endif /* __linux__ */ -diff --git a/gcc/ada/adaint.h b/gcc/ada/adaint.h -index 311e240dfcc..1c4d0050103 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 */ - --#include <sched.h> -- --extern cpu_set_t *__gnat_cpu_alloc (size_t); -+extern void * __gnat_cpu_alloc (size_t); - extern size_t __gnat_cpu_alloc_size (size_t); --extern void __gnat_cpu_free (cpu_set_t *); --extern void __gnat_cpu_zero (size_t, cpu_set_t *); --extern void __gnat_cpu_set (int, size_t, cpu_set_t *); -+extern void __gnat_cpu_free (void *); -+extern void __gnat_cpu_zero (size_t, void *); -+extern void __gnat_cpu_set (int, size_t, void *); - #endif - - #if defined (_WIN32) -diff --git a/gcc/ada/terminals.c b/gcc/ada/terminals.c -index af4417fab90..bab6bf3ca87 100644 ---- a/gcc/ada/terminals.c -+++ b/gcc/ada/terminals.c -@@ -1145,7 +1145,7 @@ __gnat_setup_winsize (void *desc, int rows, int columns) - /* POSIX does not specify how to open the master side of a terminal.Several - methods are available (system specific): - 1- using a cloning device (USE_CLONE_DEVICE) -- 2- getpt (USE_GETPT) -+ 2- posix_openpt (USE_POSIX_OPENPT) - 3- openpty (USE_OPENPTY) - - When using the cloning device method, the macro USE_CLONE_DEVICE should -@@ -1159,7 +1159,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) -@@ -1208,8 +1208,8 @@ allocate_pty_desc (pty_desc **desc) { - int master_fd = -1; - char *slave_name = NULL; - --#ifdef USE_GETPT -- master_fd = getpt (); -+#if defined(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) --- -2.31.1 - |