Browse Source

Fix libgcc_s_resume issue with gcc 5.1

When built with gcc 5.1, uClibc-ng fails to build with the following
issue:

   librt/librt_so.a(rt-unwind-resume.oS): In function `_Unwind_Resume':
   rt-unwind-resume.c:(.text+0x3c): undefined reference to

This commit fixes the code in a way similar to what was done in glibc
in commit:

   https://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=175cef4163dd60f95106cfd5f593b8a4e09d02c9

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Thomas Petazzoni 9 years ago
parent
commit
afad51b5f4

+ 2 - 1
libpthread/nptl/sysdeps/unix/sysv/linux/arm/unwind-forcedunwind.c

@@ -27,7 +27,8 @@
 #define __libc_fatal(x)         {/*write(STDERR_FILENO, x, strlen(x));*/ abort();}
 
 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)

+ 2 - 1
libpthread/nptl/sysdeps/unix/sysv/linux/arm/unwind-resume.c

@@ -25,7 +25,8 @@
 #define __libc_dlclose          dlclose
 #define __libc_fatal(x)         {/*write(STDERR_FILENO, x, strlen(x));*/ abort();}
 
-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 *);