Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | RSS feed

  1. #ifndef _FEATURES_H
  2. #define _FEATURES_H     1
  3.  
  4. #undef  __USE_ISOC99
  5. #undef  __USE_POSIX
  6. #undef  __USE_POSIX2
  7. #undef  __USE_POSIX199309
  8. #undef  __USE_POSIX199506
  9. #undef  __USE_XOPEN
  10. #undef  __USE_XOPEN_EXTENDED
  11. #undef  __USE_UNIX98
  12. #undef  __USE_XOPEN2K
  13. #undef  __USE_LARGEFILE
  14. #undef  __USE_LARGEFILE64
  15. #undef  __USE_FILE_OFFSET64
  16. #undef  __USE_BSD
  17. #undef  __USE_SVID
  18. #undef  __USE_MISC
  19. #undef  __USE_GNU
  20. #undef  __USE_REENTRANT
  21. #undef  __FAVOR_BSD
  22. #undef  __KERNEL_STRICT_NAMES
  23.  
  24. #ifndef _LOOSE_KERNEL_NAMES
  25. #define __KERNEL_STRICT_NAMES
  26. #endif
  27.  
  28. #define __USE_ANSI      1
  29.  
  30. #if defined _BSD_SOURCE && \
  31.     !(defined _POSIX_SOURCE || defined _POSIX_C_SOURCE || \
  32.       defined _XOPEN_SOURCE || defined _XOPEN_SOURCE_EXTENDED || \
  33.       defined _GNU_SOURCE || defined _SVID_SOURCE)
  34. # define __FAVOR_BSD    1
  35. #endif
  36.  
  37. #ifdef _GNU_SOURCE
  38. # undef  _ISOC99_SOURCE
  39. # define _ISOC99_SOURCE 1
  40. # undef  _POSIX_SOURCE
  41. # define _POSIX_SOURCE  1
  42. # undef  _POSIX_C_SOURCE
  43. # define _POSIX_C_SOURCE        199506L
  44. # undef  _XOPEN_SOURCE
  45. # define _XOPEN_SOURCE  600
  46. # undef  _XOPEN_SOURCE_EXTENDED
  47. # define _XOPEN_SOURCE_EXTENDED 1
  48. # undef  _LARGEFILE64_SOURCE
  49. # define _LARGEFILE64_SOURCE    1
  50. # undef  _BSD_SOURCE
  51. # define _BSD_SOURCE    1
  52. # undef  _SVID_SOURCE
  53. # define _SVID_SOURCE   1
  54. #endif
  55.  
  56. #if (!defined __STRICT_ANSI__ && !defined _ISOC99_SOURCE && \
  57.      !defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE && \
  58.      !defined _XOPEN_SOURCE && !defined _XOPEN_SOURCE_EXTENDED && \
  59.      !defined _BSD_SOURCE && !defined _SVID_SOURCE)
  60. # define _BSD_SOURCE    1
  61. # define _SVID_SOURCE   1
  62. #endif
  63.  
  64. #if (defined _ISOC99_SOURCE || defined _ISOC9X_SOURCE \
  65.      || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L))
  66. # define __USE_ISOC99   1
  67. #endif
  68.  
  69. #if (!defined __STRICT_ANSI__ && !defined _POSIX_SOURCE && \
  70.      !defined _POSIX_C_SOURCE)
  71. # define _POSIX_SOURCE  1
  72. # if defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) < 500
  73. #  define _POSIX_C_SOURCE       2
  74. # else
  75. #  define _POSIX_C_SOURCE       199506L
  76. # endif
  77. #endif
  78.  
  79. #if defined _POSIX_SOURCE || _POSIX_C_SOURCE >= 1 || defined _XOPEN_SOURCE
  80. # define __USE_POSIX    1
  81. #endif
  82.  
  83. #if defined _POSIX_C_SOURCE && _POSIX_C_SOURCE >= 2 || defined _XOPEN_SOURCE
  84. # define __USE_POSIX2   1
  85. #endif
  86.  
  87. #if (_POSIX_C_SOURCE - 0) >= 199309L
  88. # define __USE_POSIX199309      1
  89. #endif
  90.  
  91. #if (_POSIX_C_SOURCE - 0) >= 199506L
  92. # define __USE_POSIX199506      1
  93. #endif
  94.  
  95. #ifdef  _XOPEN_SOURCE
  96. # define __USE_XOPEN    1
  97. # if (_XOPEN_SOURCE - 0) >= 500
  98. #  define __USE_XOPEN_EXTENDED  1
  99. #  define __USE_UNIX98  1
  100. #  undef _LARGEFILE_SOURCE
  101. #  define _LARGEFILE_SOURCE     1
  102. #  if (_XOPEN_SOURCE - 0) >= 600
  103. #   define __USE_XOPEN2K        1
  104. #   undef __USE_ISOC99
  105. #   define __USE_ISOC99         1
  106. #  endif
  107. # else
  108. #  ifdef _XOPEN_SOURCE_EXTENDED
  109. #   define __USE_XOPEN_EXTENDED 1
  110. #  endif
  111. # endif
  112. #endif
  113.  
  114. #ifdef _LARGEFILE_SOURCE
  115. # define __USE_LARGEFILE        1
  116. #endif
  117.  
  118. #ifdef _LARGEFILE64_SOURCE
  119. # define __USE_LARGEFILE64      1
  120. #endif
  121.  
  122. #if defined _FILE_OFFSET_BITS && _FILE_OFFSET_BITS == 64
  123. # define __USE_FILE_OFFSET64    1
  124. #endif
  125.  
  126. #if defined _BSD_SOURCE || defined _SVID_SOURCE
  127. # define __USE_MISC     1
  128. #endif
  129.  
  130. #ifdef  _BSD_SOURCE
  131. # define __USE_BSD      1
  132. #endif
  133.  
  134. #ifdef  _SVID_SOURCE
  135. # define __USE_SVID     1
  136. #endif
  137.  
  138. #ifdef  _GNU_SOURCE
  139. # define __USE_GNU      1
  140. #endif
  141.  
  142. #if defined _REENTRANT || defined _THREAD_SAFE
  143. # define __USE_REENTRANT        1
  144. #endif
  145.  
  146. #define __STDC_IEC_559__                1
  147. #define __STDC_IEC_559_COMPLEX__        1
  148.  
  149. #define __STDC_ISO_10646__              200009L
  150.  
  151. #undef  __GNU_LIBRARY__
  152. #define __GNU_LIBRARY__ 6
  153.  
  154. #define __GLIBC__       2
  155. #define __GLIBC_MINOR__ 2
  156.  
  157. #if defined __GNUC__ && defined __GNUC_MINOR__
  158. # define __GNUC_PREREQ(maj, min) \
  159.         ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min))
  160. #else
  161. # define __GNUC_PREREQ(maj, min) 0
  162. #endif
  163.  
  164. #define __GLIBC_PREREQ(maj, min) \
  165.         ((__GLIBC__ << 16) + __GLIBC_MINOR__ >= ((maj) << 16) + (min))
  166.  
  167. # if defined __USE_FILE_OFFSET64 && !defined __REDIRECT
  168. #  define __USE_LARGEFILE       1
  169. #  define __USE_LARGEFILE64     1
  170. # endif
  171.  
  172. #if __GNUC_PREREQ (2, 7) && defined __OPTIMIZE__ \
  173.     && !defined __OPTIMIZE_SIZE__ && !defined __NO_INLINE__
  174. # define __USE_EXTERN_INLINES   1
  175. #endif
  176.  
  177. /* This is here only because every header file already includes this one.  */
  178. #ifndef _LIBC
  179. /* Get the definitions of all the appropriate `__stub_FUNCTION' symbols.
  180.    <gnu/stubs.h> contains `#define __stub_FUNCTION' when FUNCTION is a stub
  181.    which will always return failure (and set errno to ENOSYS).
  182.  
  183.    We avoid including <gnu/stubs.h> when compiling the C library itself to
  184.    avoid a dependency loop.  stubs.h depends on every object file.  If
  185.    this #include were done for the library source code, then every object
  186.    file would depend on stubs.h.  */
  187.  
  188. # include <gnu/stubs.h>
  189. #endif
  190.  
  191. #endif  /* features.h  */
  192.