summaryrefslogtreecommitdiff
path: root/libc/misc/internals
diff options
context:
space:
mode:
authorPeter S. Mazinger <ps.m@gmx.net>2006-01-16 18:07:18 +0000
committerPeter S. Mazinger <ps.m@gmx.net>2006-01-16 18:07:18 +0000
commitb25ad630be8b0f362fea44a97efbead83d1dd2ae (patch)
tree6f45eed6bf053c9e105d6b67bc1d765b49b58e61 /libc/misc/internals
parente4a6dbb41c73cf86b95beca2d0e2bb6f0530ef79 (diff)
Last relocs jump and global data, (even locales) that I could remove are gone from libc. The remaining are left as exercise for others ;-)
Diffstat (limited to 'libc/misc/internals')
-rw-r--r--libc/misc/internals/__errno_location.c4
-rw-r--r--libc/misc/internals/__h_errno_location.c2
-rw-r--r--libc/misc/internals/__uClibc_main.c4
-rw-r--r--libc/misc/internals/errno.c9
4 files changed, 15 insertions, 4 deletions
diff --git a/libc/misc/internals/__errno_location.c b/libc/misc/internals/__errno_location.c
index 10b97753f..c0146ce68 100644
--- a/libc/misc/internals/__errno_location.c
+++ b/libc/misc/internals/__errno_location.c
@@ -1,8 +1,10 @@
#include <errno.h>
#undef errno
+libc_hidden_proto(errno)
+/* psm: moved to bits/errno.h: libc_hidden_proto(__errno_location) */
int * weak_const_function __errno_location (void)
{
return &errno;
}
-
+#ifdef IS_IN_libc /* not really need, only to keep in sync w/ libc_hidden_proto */
diff --git a/libc/misc/internals/__h_errno_location.c b/libc/misc/internals/__h_errno_location.c
index a57478ca9..1fae93459 100644
--- a/libc/misc/internals/__h_errno_location.c
+++ b/libc/misc/internals/__h_errno_location.c
@@ -3,6 +3,8 @@
#include <netdb.h>
#undef h_errno
+libc_hidden_proto(h_errno)
+
libc_hidden_proto(__h_errno_location)
int * weak_const_function __h_errno_location (void)
{
diff --git a/libc/misc/internals/__uClibc_main.c b/libc/misc/internals/__uClibc_main.c
index 349c0e5d1..7bfe2ccc4 100644
--- a/libc/misc/internals/__uClibc_main.c
+++ b/libc/misc/internals/__uClibc_main.c
@@ -89,8 +89,10 @@ strong_alias (__progname_full, program_invocation_name)
* Note: Apparently we must initialize __environ to ensure that the weak
* environ symbol is also included.
*/
+libc_hidden_proto(__environ)
char **__environ = 0;
-weak_alias(__environ, environ)
+libc_hidden_def(__environ)
+strong_alias(__environ,environ)
/* TODO: don't export __pagesize; we cant now because libpthread uses it */
extern size_t __pagesize;
diff --git a/libc/misc/internals/errno.c b/libc/misc/internals/errno.c
index b08478d44..ffacc8188 100644
--- a/libc/misc/internals/errno.c
+++ b/libc/misc/internals/errno.c
@@ -4,6 +4,9 @@
extern int errno;
extern int h_errno;
+libc_hidden_proto(errno)
+libc_hidden_proto(h_errno)
+
#if 0
/* Unfortunately, this doesn't work... */
int h_errno __attribute__ ((section (".bss"))) = 0;
@@ -13,5 +16,7 @@ int _errno = 0;
int _h_errno = 0;
#endif
-weak_alias(_errno, errno)
-weak_alias(_h_errno, h_errno)
+strong_alias(_errno,errno)
+libc_hidden_def(errno)
+strong_alias(_h_errno,h_errno)
+libc_hidden_def(h_errno)