_system.h 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. /*
  2. * Copyright (c) 1997
  3. * Moscow Center for SPARC Technology
  4. *
  5. * Copyright (c) 1999
  6. * Boris Fomitchev
  7. *
  8. * This material is provided "as is", with absolutely no warranty expressed
  9. * or implied. Any use is at your own risk.
  10. *
  11. * Permission to use or copy this software for any purpose is hereby granted
  12. * without fee, provided the above notices are retained on all copies.
  13. * Permission to modify the code and to distribute modified code is granted,
  14. * provided the above notices are retained, and a notice that the code was
  15. * modified is included with the above copyright notice.
  16. *
  17. */
  18. /*
  19. * Purpose of this file :
  20. *
  21. * To hold COMPILER-SPECIFIC portion of STLport settings.
  22. * In general, user should not edit this file unless
  23. * using the compiler not recognized below.
  24. *
  25. * If your compiler is not being recognized yet,
  26. * please look for definitions of macros in stl_mycomp.h,
  27. * copy stl_mycomp.h to stl_YOUR_COMPILER_NAME,
  28. * adjust flags for your compiler, and add <include config/stl_YOUR_COMPILER_NAME>
  29. * to the secton controlled by unique macro defined internaly by your compiler.
  30. *
  31. * To change user-definable settings, please edit <user_config.h>
  32. *
  33. */
  34. #ifndef __stl_config__system_h
  35. #define __stl_config__system_h
  36. #if defined (__sun)
  37. # include <stl/config/_solaris.h>
  38. # if defined (__GNUC__)
  39. # include <stl/config/_gcc.h>
  40. # elif defined (__SUNPRO_CC) || defined (__SUNPRO_C)
  41. # include <stl/config/_sunprocc.h>
  42. /*
  43. # ifdef __KCC
  44. # include <stl/config/_kai.h>
  45. # endif
  46. */
  47. # elif defined (__APOGEE__) /* Apogee 4.x */
  48. # include <stl/config/_apcc.h>
  49. # elif defined (__FCC_VERSION) /* Fujitsu Compiler, v4.0 assumed */
  50. # include <stl/config/_fujitsu.h>
  51. # endif
  52. #elif defined (__hpux)
  53. # include <stl/config/_hpux.h>
  54. # if defined (__GNUC__)
  55. # include <stl/config/_gcc.h>
  56. # elif defined (__HP_aCC)
  57. # include <stl/config/_hpacc.h>
  58. # endif
  59. #elif defined (linux) || defined (__linux__)
  60. # include <stl/config/_linux.h>
  61. # if defined (__BORLANDC__)
  62. # include <stl/config/_bc.h> /* Borland C++ 0x570 */
  63. /* Intel's icc define __GNUC__! */
  64. # elif defined (__INTEL_COMPILER)
  65. # include <stl/config/_icc.h>
  66. # elif defined (__GNUC__)
  67. # include <stl/config/_gcc.h>
  68. # endif
  69. /*
  70. # ifdef __KCC
  71. # include <stl/config/_kai.h>
  72. # endif
  73. */
  74. #elif defined (__FreeBSD__)
  75. # include <stl/config/_freebsd.h>
  76. # if defined (__GNUC__)
  77. # include <stl/config/_gcc.h>
  78. # endif
  79. #elif defined (__OpenBSD__)
  80. # include <stl/config/_openbsd.h>
  81. # if defined (__GNUC__)
  82. # include <stl/config/_gcc.h>
  83. # endif
  84. #elif defined (__sgi) /* IRIX? */
  85. # define _STLP_PLATFORM "SGI Irix"
  86. # if defined (__GNUC__)
  87. # include <stl/config/_gcc.h>
  88. # else
  89. # include <stl/config/_sgi.h>
  90. # endif
  91. #elif defined (__OS400__) /* AS/400 C++ */
  92. # define _STLP_PLATFORM "OS 400"
  93. # if defined (__GNUC__)
  94. # include <stl/config/_gcc.h>
  95. # else
  96. # include <stl/config/_as400.h>
  97. # endif
  98. #elif defined (_AIX)
  99. # include <stl/config/_aix.h>
  100. # if defined (__xlC__) || defined (__IBMC__) || defined ( __IBMCPP__ )
  101. /* AIX xlC, Visual Age C++ , OS-390 C++ */
  102. # include <stl/config/_ibm.h>
  103. # endif
  104. #elif defined (_CRAY) /* Cray C++ 3.4 or 3.5 */
  105. # define _STLP_PLATFORM "Cray"
  106. # include <config/_cray.h>
  107. #elif defined (__DECCXX) || defined (__DECC)
  108. # define _STLP_PLATFORM "DECC"
  109. # ifdef __vms
  110. # include <stl/config/_dec_vms.h>
  111. # else
  112. # include <stl/config/_dec.h>
  113. # endif
  114. #elif defined (macintosh) || defined (_MAC)
  115. # include <stl/config/_mac.h>
  116. # if defined (__MWERKS__)
  117. # include <stl/config/_mwerks.h>
  118. # endif
  119. #elif defined (__APPLE__)
  120. # include <stl/config/_macosx.h>
  121. # ifdef __GNUC__
  122. # include <stl/config/_gcc.h>
  123. # endif
  124. #elif defined (__CYGWIN__)
  125. # include <stl/config/_cygwin.h>
  126. # if defined (__GNUC__)
  127. # include <stl/config/_gcc.h>
  128. # endif
  129. #elif defined (__MINGW32__)
  130. # define _STLP_PLATFORM "MinGW"
  131. # if defined (__GNUC__)
  132. # include <stl/config/_gcc.h>
  133. # endif
  134. # include <stl/config/_windows.h>
  135. #elif defined (_WIN32) || defined (__WIN32) || defined (WIN32) || defined (__WIN32__) || \
  136. defined (__WIN16) || defined (WIN16) || defined (_WIN16)
  137. # if defined ( __BORLANDC__ ) /* Borland C++ / CodeGear C++ */
  138. # include <stl/config/_bc.h>
  139. # elif defined (__WATCOM_CPLUSPLUS__) || defined (__WATCOMC__) /* Watcom C++ */
  140. # include <stl/config/_watcom.h>
  141. # elif defined (__COMO__) || defined (__COMO_VERSION_)
  142. # include <stl/config/_como.h>
  143. # elif defined (__DMC__) /* Digital Mars C++ */
  144. # include <stl/config/_dm.h>
  145. # elif defined (__ICL) /* Intel reference compiler for Win */
  146. # include <stl/config/_intel.h>
  147. # elif defined (__MWERKS__)
  148. # include <stl/config/_mwerks.h>
  149. # elif defined (_MSC_VER) && (_MSC_VER >= 1200) && defined (UNDER_CE)
  150. /* Microsoft eMbedded Visual C++ 3.0, 4.0 (.NET) */
  151. # include <stl/config/_evc.h>
  152. # elif defined (_MSC_VER)
  153. /* Microsoft Visual C++ 6.0, 7.0, 7.1, 8.0 */
  154. # include <stl/config/_msvc.h>
  155. # endif
  156. # include <stl/config/_windows.h>
  157. #else
  158. # error Unknown platform !!
  159. #endif
  160. #if !defined (_STLP_COMPILER)
  161. /* Unable to identify the compiler, issue error diagnostic.
  162. * Edit <config/stl_mycomp.h> to set STLport up for your compiler. */
  163. # include <stl/config/stl_mycomp.h>
  164. #endif
  165. #endif /* __stl_config__system_h */