summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libc/misc/internals/errno.c16
-rw-r--r--libc/misc/internals/internal_errno.h2
2 files changed, 1 insertions, 17 deletions
diff --git a/libc/misc/internals/errno.c b/libc/misc/internals/errno.c
index e584f21f8..e1b5d7e84 100644
--- a/libc/misc/internals/errno.c
+++ b/libc/misc/internals/errno.c
@@ -4,30 +4,14 @@
__thread int errno;
__thread int h_errno;
-#ifdef SHARED
-/*
- * FIXME: Add usage of hidden attribute for both of these when used in
- * the shared library. It currently crashes the linker when doing
- * section relocations.
- */
extern __thread int __libc_errno __attribute__ ((alias ("errno")));
extern __thread int __libc_h_errno __attribute__ ((alias ("h_errno")));
-#else
-extern __thread int __libc_errno __attribute__ ((alias ("errno")));
-extern __thread int __libc_h_errno __attribute__ ((alias ("h_errno")));
-#endif
#define h_errno __libc_h_errno
#else
#include "internal_errno.h"
-#if 0
-/* Unfortunately, this doesn't work... */
-int h_errno __attribute__ ((section (".bss"))) = 0;
-int errno __attribute__ ((section (".bss"))) = 0;
-#else
int errno = 0;
int h_errno = 0;
-#endif
#ifdef __UCLIBC_HAS_THREADS__
libc_hidden_def(errno)
diff --git a/libc/misc/internals/internal_errno.h b/libc/misc/internals/internal_errno.h
index d591dec3b..b49198579 100644
--- a/libc/misc/internals/internal_errno.h
+++ b/libc/misc/internals/internal_errno.h
@@ -6,7 +6,7 @@
#include <errno.h>
#include <netdb.h>
-#ifndef __UCLIBC_HAS_THREADS_NATIVE__
+#ifndef __UCLIBC_HAS_TLS__
#undef errno
#undef h_errno