OSDN Git Service

A few cleanups. Fix fflush so it remembers to init stdio.
[uclinux-h8/uClibc.git] / include / features.h
1
2 #ifndef __FEATURES_H
3 #define __FEATURES_H
4
5
6 /* Major and minor version number of the uClibc library package.  Use
7    these macros to test for features in specific releases.  */
8 #define __UCLIBC__              0
9 #define __UCLIBC_MAJOR__        9
10 #define __UCLIBC_MINOR__        1
11
12 /* Make a half-hearted attempt to accomodate non-gcc compilers */
13 #ifndef __GNUC__
14 #define __attribute(foo)  /* Ignore */
15 #endif
16
17 /* __restrict is known in EGCS 1.2 and above. */
18 #if !defined __GNUC__ || __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 92)
19 # define __restrict     /* Ignore */
20 #endif
21
22
23 #ifdef __STDC__
24
25 #define __P(x)      x
26 #define __PMT(x)    x
27 #define __const const
28
29 /* Almost ansi */
30 #if __STDC__ != 1
31 #define const
32 #define volatile
33 #endif
34
35 #else /* K&R */
36
37 #define __P(x) ()
38 #define __const
39 #define const
40 #define volatile
41
42 #endif
43
44 /* No C++ */
45 #define __BEGIN_DECLS
46 #define __END_DECLS
47
48 /* GNUish things */
49 #define __CONSTVALUE
50 #define __CONSTVALUE2
51
52 #define __USE_BSD
53 #define __USE_MISC
54 #define __USE_POSIX
55 #define __USE_POSIX2
56 #define __USE_XOPEN
57
58 #undef  __KERNEL_STRICT_NAMES
59 #ifndef _LOOSE_KERNEL_NAMES
60 # define __KERNEL_STRICT_NAMES
61 #endif
62
63
64 #include <sys/cdefs.h>
65
66
67 #endif
68