[git commit] libc-symbols.h: fix weak functions handling
Bernhard Reutner-Fischer
rep.dot.nop at gmail.com
Fri Jun 15 12:00:32 UTC 2012
commit: http://git.uclibc.org/uClibc/commit/?id=d2e776750d04e1855fc550c6cefe4031bb9ee6e8
branch: http://git.uclibc.org/uClibc/commit/?id=refs/heads/master
Move weak_function and weak_const_function under HAVE_WEAK_SYMBOLS guard
and provide fallbacks.
Signed-off-by: Peter S. Mazinger <ps.m at gmx.net>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop at gmail.com>
---
include/libc-symbols.h | 11 +++++++----
1 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/include/libc-symbols.h b/include/libc-symbols.h
index db91a38..da9445f 100644
--- a/include/libc-symbols.h
+++ b/include/libc-symbols.h
@@ -196,12 +196,12 @@
# define _strong_alias_untyped(name, aliasname) \
extern __typeof (aliasname) aliasname __attribute__ ((alias (#name)));
+# ifdef HAVE_WEAK_SYMBOLS
+
/* This comes between the return type and function name in
a function definition to make that definition weak. */
-# define weak_function __attribute__ ((weak))
-# define weak_const_function __attribute__ ((weak, __const__))
-
-# ifdef HAVE_WEAK_SYMBOLS
+# define weak_function __attribute__ ((weak))
+# define weak_const_function __attribute__ ((weak, __const__))
/* Define ALIASNAME as a weak alias for NAME.
If weak aliases are not available, this defines a strong alias. */
@@ -215,6 +215,9 @@
# else
+# define weak_function /* empty */
+# define weak_const_function __attribute__ ((__const__))
+
# define weak_alias(name, aliasname) strong_alias(name, aliasname)
# define weak_extern(symbol) /* Nothing. */
More information about the uClibc-cvs
mailing list