summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter S. Mazinger <ps.m@gmx.net>2005-12-16 17:36:58 +0000
committerPeter S. Mazinger <ps.m@gmx.net>2005-12-16 17:36:58 +0000
commit2f7571c9b6f3b108f1ec27f6c7252a3181efdbca (patch)
tree9c3314ab1f90f0ba4e61067b53abc430c9db434d
parent78c62942f560d0a82ea83e1b65677ad20f890671 (diff)
Correct C_SYMBOL_PREFIX handling for asm, supports only none or _
-rw-r--r--Rules.mak4
-rw-r--r--include/libc-internal.h6
2 files changed, 9 insertions, 1 deletions
diff --git a/Rules.mak b/Rules.mak
index bad4f5f7e..11bb44513 100644
--- a/Rules.mak
+++ b/Rules.mak
@@ -400,6 +400,10 @@ ifneq ($(DOASSERTS),y)
CFLAGS+=-DNDEBUG
endif
+ifneq ($(strip $(C_SYMBOL_PREFIX)),"")
+CFLAGS+=-D__SYMBOL_PREFIX=1
+endif
+
# moved from ldso/{ldso,libdl}
# BEWARE!!! At least mips* will die if -O0 is used!!!
ifeq ($(TARGET_ARCH),mips)
diff --git a/include/libc-internal.h b/include/libc-internal.h
index efab0c102..9b83d1b3f 100644
--- a/include/libc-internal.h
+++ b/include/libc-internal.h
@@ -47,7 +47,11 @@
#else /* __ASSEMBLER__ */
-# define C_SYMBOL_NAME(name) __C_SYMBOL_PREFIX__ ##name
+#ifdef __SYMBOL_PREFIX
+# define C_SYMBOL_NAME(name) _##name
+#else
+# define C_SYMBOL_NAME(name) name
+#endif
# define strong_alias(name, aliasname) \
.global C_SYMBOL_NAME (aliasname) ; \