Contents of /trunk/mkinitrd-magellan/busybox/libbb/ptr_to_globals.c
Parent Directory | Revision Log
Revision 816 -
(show annotations)
(download)
Fri Apr 24 18:33:46 2009 UTC (15 years, 5 months ago) by niro
File MIME type: text/plain
File size: 747 byte(s)
Fri Apr 24 18:33:46 2009 UTC (15 years, 5 months ago) by niro
File MIME type: text/plain
File size: 747 byte(s)
-updated to busybox-1.13.4
1 | /* vi: set sw=4 ts=4: */ |
2 | /* |
3 | * Copyright (C) 2008 by Denys Vlasenko <vda.linux@googlemail.com> |
4 | * |
5 | * Licensed under GPLv2, see file LICENSE in this tarball for details. |
6 | */ |
7 | |
8 | #include <errno.h> |
9 | |
10 | struct globals; |
11 | |
12 | #ifndef GCC_COMBINE |
13 | |
14 | /* We cheat here. It is declared as const ptr in libbb.h, |
15 | * but here we make it live in R/W memory */ |
16 | struct globals *ptr_to_globals; |
17 | |
18 | #ifdef __GLIBC__ |
19 | int *bb_errno; |
20 | #endif |
21 | |
22 | |
23 | #else |
24 | |
25 | |
26 | /* gcc -combine will see through and complain */ |
27 | /* Using alternative method which is more likely to break |
28 | * on weird architectures, compilers, linkers and so on */ |
29 | struct globals *const ptr_to_globals __attribute__ ((section (".data"))); |
30 | |
31 | #ifdef __GLIBC__ |
32 | int *const bb_errno __attribute__ ((section (".data"))); |
33 | #endif |
34 | |
35 | #endif |