aboutsummaryrefslogtreecommitdiff
path: root/libbb/ptr_to_globals.c
diff options
context:
space:
mode:
authorDenis Vlasenko <vda.linux@googlemail.com>2008-04-22 00:08:27 +0000
committerDenis Vlasenko <vda.linux@googlemail.com>2008-04-22 00:08:27 +0000
commit5d89fbaa2e00a8a26e530306d76b78bf91d12ec8 (patch)
tree44d54f6dfbd0f6270fb0b1aba0195bc53db8bef4 /libbb/ptr_to_globals.c
parent9137341851f3ab89f5c6a54a6baff68f0f4a5e17 (diff)
downloadbusybox-5d89fbaa2e00a8a26e530306d76b78bf91d12ec8.tar.gz
*: remove remaining instances of ".data" hack
Diffstat (limited to 'libbb/ptr_to_globals.c')
-rw-r--r--libbb/ptr_to_globals.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/libbb/ptr_to_globals.c b/libbb/ptr_to_globals.c
index 48cf8d86c..5f30e2a64 100644
--- a/libbb/ptr_to_globals.c
+++ b/libbb/ptr_to_globals.c
@@ -5,6 +5,8 @@
* Licensed under GPLv2, see file LICENSE in this tarball for details.
*/
+#include <errno.h>
+
struct globals;
#ifndef GCC_COMBINE
@@ -13,12 +15,21 @@ struct globals;
* but here we make it live in R/W memory */
struct globals *ptr_to_globals;
+#ifdef __GLIBC__
+int *bb_errno;
+#endif
+
+
#else
+
/* gcc -combine will see through and complain */
/* Using alternative method which is more likely to break
* on weird architectures, compilers, linkers and so on */
struct globals *const ptr_to_globals __attribute__ ((section (".data")));
+#ifdef __GLIBC__
+int *const bb_errno __attribute__ ((section (".data")));
#endif
+#endif