From 98bc4decdeab1361bdc585c86591718fb08c8ffb Mon Sep 17 00:00:00 2001 From: Alexey Neyman Date: Sat, 2 Dec 2017 12:44:39 -0800 Subject: Run all patches through renumbering and update Signed-off-by: Alexey Neyman --- .../2.12.1/0000-Fix-ARM-build-with-GCC-trunk.patch | 72 ++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 packages/glibc-ports/2.12.1/0000-Fix-ARM-build-with-GCC-trunk.patch (limited to 'packages/glibc-ports/2.12.1/0000-Fix-ARM-build-with-GCC-trunk.patch') diff --git a/packages/glibc-ports/2.12.1/0000-Fix-ARM-build-with-GCC-trunk.patch b/packages/glibc-ports/2.12.1/0000-Fix-ARM-build-with-GCC-trunk.patch new file mode 100644 index 00000000..af8d28af --- /dev/null +++ b/packages/glibc-ports/2.12.1/0000-Fix-ARM-build-with-GCC-trunk.patch @@ -0,0 +1,72 @@ +From 175cef4163dd60f95106cfd5f593b8a4e09d02c9 Mon Sep 17 00:00:00 2001 +From: Joseph Myers +Date: Tue, 20 May 2014 21:27:13 +0000 +Subject: [PATCH] Fix ARM build with GCC trunk. + +sysdeps/unix/sysv/linux/arm/unwind-resume.c and +sysdeps/unix/sysv/linux/arm/unwind-forcedunwind.c have static +variables that are written in C code but only read from toplevel asms. +Current GCC trunk now optimizes away such apparently write-only static +variables, so causing a build failure. This patch marks those +variables with __attribute_used__ to avoid that optimization. + +Tested that this fixes the build for ARM. + + * sysdeps/unix/sysv/linux/arm/unwind-forcedunwind.c + (libgcc_s_resume): Use __attribute_used__. + * sysdeps/unix/sysv/linux/arm/unwind-resume.c (libgcc_s_resume): + Likewise. +--- + sysdeps/unix/sysv/linux/arm/eabi/nptl/unwind-forcedunwind.c | 3 ++- + sysdeps/unix/sysv/linux/arm/eabi/nptl/unwind-resume.c | 3 ++- + sysdeps/unix/sysv/linux/arm/nptl/unwind-forcedunwind.c | 3 ++- + sysdeps/unix/sysv/linux/arm/nptl/unwind-resume.c | 3 ++- + 4 files changed, 8 insertions(+), 4 deletions(-) +--- a/sysdeps/unix/sysv/linux/arm/nptl/unwind-forcedunwind.c ++++ b/sysdeps/unix/sysv/linux/arm/nptl/unwind-forcedunwind.c +@@ -23,7 +23,8 @@ + #include + + static void *libgcc_s_handle; +-static void (*libgcc_s_resume) (struct _Unwind_Exception *exc); ++static void (*libgcc_s_resume) (struct _Unwind_Exception *exc) ++ __attribute_used__; + static _Unwind_Reason_Code (*libgcc_s_personality) + (int, _Unwind_Action, _Unwind_Exception_Class, struct _Unwind_Exception *, + struct _Unwind_Context *); +--- a/sysdeps/unix/sysv/linux/arm/nptl/unwind-resume.c ++++ b/sysdeps/unix/sysv/linux/arm/nptl/unwind-resume.c +@@ -21,7 +21,8 @@ + #include + #include + +-static void (*libgcc_s_resume) (struct _Unwind_Exception *exc); ++static void (*libgcc_s_resume) (struct _Unwind_Exception *exc) ++ __attribute_used__; + static _Unwind_Reason_Code (*libgcc_s_personality) + (int, _Unwind_Action, _Unwind_Exception_Class, struct _Unwind_Exception *, + struct _Unwind_Context *); +--- a/sysdeps/unix/sysv/linux/arm/eabi/nptl/unwind-forcedunwind.c ++++ b/sysdeps/unix/sysv/linux/arm/eabi/nptl/unwind-forcedunwind.c +@@ -23,7 +23,8 @@ + #include + + static void *libgcc_s_handle; +-static void (*libgcc_s_resume) (struct _Unwind_Exception *exc); ++static void (*libgcc_s_resume) (struct _Unwind_Exception *exc) ++ __attribute_used__; + static _Unwind_Reason_Code (*libgcc_s_personality) + (_Unwind_State, struct _Unwind_Exception *, struct _Unwind_Context *); + static _Unwind_Reason_Code (*libgcc_s_forcedunwind) +--- a/sysdeps/unix/sysv/linux/arm/eabi/nptl/unwind-resume.c ++++ b/sysdeps/unix/sysv/linux/arm/eabi/nptl/unwind-resume.c +@@ -21,7 +21,8 @@ + #include + #include + +-static void (*libgcc_s_resume) (struct _Unwind_Exception *exc); ++static void (*libgcc_s_resume) (struct _Unwind_Exception *exc) ++ __attribute_used__; + static _Unwind_Reason_Code (*libgcc_s_personality) + (_Unwind_State, struct _Unwind_Exception *, struct _Unwind_Context *); + -- cgit v1.2.3