_cfg.h 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. // Internal header. POSIX-related defines
  2. //
  3. // __VIC_POSIX_TMO__ - POSIX timeouts are enabled
  4. // Issue 6 feature. Derived from IEEE Std 1003.1d-1999
  5. // __VIC_POSIX_BAR__ - POSIX barriers are enabled
  6. // Issue 6 feature. Derived from IEEE Std 1003.1j-2000
  7. // __VIC_POSIX_XSI__ - POSIX XSI extension is enabled
  8. // __VIC_POSIX_RT__ - POSIX Realtime Extension ("POSIX.1")
  9. // IEEE Std 1003.1b-1993/1003.1i-1995/1003.1-2004
  10. //
  11. // $Id$
  12. //
  13. // (c) __vic 2007
  14. #ifndef __VIC_POSIX__CFG_H
  15. #define __VIC_POSIX__CFG_H
  16. #include<__vic/_cfg.h>
  17. #include<unistd.h>
  18. //////////////////////////////////////////////////////////////////////////////
  19. #if defined(__linux__)
  20. #ifdef __USE_XOPEN2K
  21. #define __VIC_POSIX_TMO__ 1
  22. #define __VIC_POSIX_BAR__ 1
  23. #endif
  24. #ifdef __USE_UNIX98
  25. #define __VIC_POSIX_XSI__ 1
  26. #endif
  27. #ifdef __USE_POSIX199309
  28. #define __VIC_POSIX_RT__ 1
  29. #endif
  30. //////////////////////////////////////////////////////////////////////////////
  31. #elif defined(__FreeBSD__)
  32. #define __VIC_POSIX_TMO__ 1
  33. #define __VIC_POSIX_BAR__ 1
  34. #define __VIC_POSIX_XSI__ 1
  35. #if __FreeBSD__ >= 7
  36. #define __VIC_POSIX_RT__ 1
  37. #endif
  38. //////////////////////////////////////////////////////////////////////////////
  39. #elif defined(__hpux)
  40. #ifdef _INCLUDE_POSIX4_SOURCE
  41. #define __VIC_POSIX_RT__ 1
  42. #endif
  43. //////////////////////////////////////////////////////////////////////////////
  44. #elif defined(_AIX)
  45. #if _XOPEN_SOURCE >= 600
  46. #define __VIC_POSIX_TMO__ 1
  47. #define __VIC_POSIX_BAR__ 1
  48. #endif
  49. #ifndef _AIX_PTHREADS_D7
  50. #define __VIC_POSIX_XSI__ 1
  51. #endif
  52. #endif // OS
  53. //////////////////////////////////////////////////////////////////////////////
  54. #endif // header guard