summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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) ; \