summaryrefslogtreecommitdiff
path: root/toolchain/uClibc/patches-0.9.29/005-fix_internal_function_definition.patch
diff options
context:
space:
mode:
Diffstat (limited to 'toolchain/uClibc/patches-0.9.29/005-fix_internal_function_definition.patch')
-rw-r--r--toolchain/uClibc/patches-0.9.29/005-fix_internal_function_definition.patch47
1 files changed, 47 insertions, 0 deletions
diff --git a/toolchain/uClibc/patches-0.9.29/005-fix_internal_function_definition.patch b/toolchain/uClibc/patches-0.9.29/005-fix_internal_function_definition.patch
new file mode 100644
index 0000000..fc66d1e
--- /dev/null
+++ b/toolchain/uClibc/patches-0.9.29/005-fix_internal_function_definition.patch
@@ -0,0 +1,47 @@
+--- a/libc/sysdeps/linux/i386/bits/uClibc_arch_features.h
++++ b/libc/sysdeps/linux/i386/bits/uClibc_arch_features.h
+@@ -42,6 +42,8 @@
+ /* define if target supports IEEE signed zero floats */
+ #define __UCLIBC_HAVE_SIGNED_ZERO__
+
++#if defined _LIBC
+ #define internal_function __attribute__ ((regparm (3), stdcall))
++#endif
+
+ #endif /* _BITS_UCLIBC_ARCH_FEATURES_H */
+--- a/include/libc-symbols.h
++++ b/include/libc-symbols.h
+@@ -22,6 +22,16 @@
+ #ifndef _LIBC_SYMBOLS_H
+ #define _LIBC_SYMBOLS_H 1
+
++/* This is defined for the compilation of all C library code. features.h
++ tests this to avoid inclusion of stubs.h while compiling the library,
++ before stubs.h has been generated. Some library code that is shared
++ with other packages also tests this symbol to see if it is being
++ compiled as part of the C library. We must define this before including
++ config.h, because it makes some definitions conditional on whether libc
++ itself is being compiled, or just some generator program. */
++#define _LIBC 1
++
++
+ /* This file's macros are included implicitly in the compilation of every
+ file in the C library by -imacros.
+
+@@ -40,16 +50,6 @@
+
+ #include <bits/uClibc_arch_features.h>
+
+-
+-/* This is defined for the compilation of all C library code. features.h
+- tests this to avoid inclusion of stubs.h while compiling the library,
+- before stubs.h has been generated. Some library code that is shared
+- with other packages also tests this symbol to see if it is being
+- compiled as part of the C library. We must define this before including
+- config.h, because it makes some definitions conditional on whether libc
+- itself is being compiled, or just some generator program. */
+-#define _LIBC 1
+-
+ /* Enable declarations of GNU extensions, since we are compiling them. */
+ #define _GNU_SOURCE 1
+