ossrv_pub/configuration/inc/stdapis/stlport/config/stlcomp.h
changeset 0 e4d67989cc36
equal deleted inserted replaced
-1:000000000000 0:e4d67989cc36
       
     1 /*
       
     2  * © Portions copyright (c) 2006-2007 Nokia Corporation.  All rights reserved.
       
     3  *
       
     4  * Copyright (c) 1997
       
     5  * Moscow Center for SPARC Technology
       
     6  *
       
     7  * Copyright (c) 1999 
       
     8  * Boris Fomitchev
       
     9  *
       
    10  * This material is provided "as is", with absolutely no warranty expressed
       
    11  * or implied. Any use is at your own risk.
       
    12  *
       
    13  * Permission to use or copy this software for any purpose is hereby granted 
       
    14  * without fee, provided the above notices are retained on all copies.
       
    15  * Permission to modify the code and to distribute modified code is granted,
       
    16  * provided the above notices are retained, and a notice that the code was
       
    17  * modified is included with the above copyright notice.
       
    18  *
       
    19  */
       
    20 
       
    21 /*
       
    22  * Purpose of this file :
       
    23  *
       
    24  * To hold COMPILER-SPECIFIC portion of STLport settings.
       
    25  * In general, user should not edit this file unless 
       
    26  * using the compiler not recognized below.
       
    27  *
       
    28  * If your compiler is not being recognized yet, 
       
    29  * please look for definitions of macros in stl_mycomp.h,
       
    30  * copy stl_mycomp.h to stl_YOUR_COMPILER_NAME, 
       
    31  * adjust flags for your compiler, and add  <include config/stl_YOUR_COMPILER_NAME>
       
    32  * to the secton controlled by unique macro defined internaly by your compiler.
       
    33  *
       
    34  * To change user-definable settings, please edit <../stl_user_config.h> 
       
    35  *
       
    36  */
       
    37 
       
    38 #ifndef _STLP_COMP_H
       
    39 # define _STLP_COMP_H
       
    40 
       
    41 #include <_ansi.h>
       
    42 #ifdef __SYMBIAN32__
       
    43 /*
       
    44 #ifndef __NO_THROW
       
    45 #define __NO_THROW throw()
       
    46 #endif //__NO_THROW
       
    47 #ifndef NONSHARABLE_CLASS
       
    48 #define NONSHARABLE_CLASS(x) class x
       
    49 #endif
       
    50 */
       
    51 #else
       
    52 #   define EXPORT_C
       
    53 #   define IMPORT_C
       
    54 #endif
       
    55 
       
    56 
       
    57 
       
    58 #if 0
       
    59 #ifdef __SYMBIAN32__
       
    60 #warning __SYMBIAN32__
       
    61 #endif
       
    62 
       
    63 #ifdef EKA2
       
    64 #warning EKA2
       
    65 #endif
       
    66 
       
    67 #ifdef __WINSCW__
       
    68 #warning __WINSCW__
       
    69 #endif 
       
    70 
       
    71 
       
    72 #ifdef __MWERKS__
       
    73 #warning __MWERKS__
       
    74 #endif
       
    75 
       
    76 #ifdef __CC_ARM
       
    77 #warning __CC_ARM
       
    78 #endif
       
    79 
       
    80 #ifdef __ARMCC__
       
    81 #warning __ARMCC__
       
    82 #endif
       
    83 #endif
       
    84 
       
    85 
       
    86 #  define __GIVE_UP_WITH_STL(message) void give_up() \
       
    87    { upgrade_the_compiler_to_use_STL;}
       
    88 
       
    89 /* distinguish real MSC from Metrowerks and Intel */
       
    90 # if defined(_MSC_VER) && !defined(__MWERKS__) && !defined (__ICL) && !defined (__COMO__)
       
    91 #  define _STLP_MSVC _MSC_VER
       
    92 # endif
       
    93 
       
    94 # if defined (__xlC__)  || defined (__IBMC__) || defined ( __IBMCPP__ ) 
       
    95 /* AIX xlC, Visual Age C++ , OS-390 C++ */
       
    96 #  include <config/stl_ibm.h>
       
    97 # elif defined (__INTEL_COMPILER) && defined(__unix__)
       
    98 /* Check intel before gcc, since newer versions define GNUC */
       
    99 #  include <config/stl_icc.h>
       
   100 # elif !defined(__SYMBIAN32__) && defined (__GNUC__ )
       
   101 #  include <config/stl_gcc.h>
       
   102 # elif defined (__KCC)
       
   103 #  include <config/stl_kai.h>
       
   104 # elif defined(__sgi)
       
   105 #  include <config/stl_sgi.h>
       
   106 # elif (defined(__OS400__))
       
   107 /* AS/400 C++ */
       
   108 #  include <config/stl_as400.h>
       
   109 # elif defined(_STLP_MSVC)
       
   110 /* Microsoft Visual C++ 4.0, 4.1, 4.2, 5.0 */
       
   111 #  include <config/stl_msvc.h>
       
   112 # elif defined ( __BORLANDC__ )
       
   113 /* Borland C++ ( 4.x - 5.x ) */
       
   114 #  include <config/stl_bc.h>
       
   115 # elif defined(__SUNPRO_CC) || defined (__SUNPRO_C)
       
   116 /* SUN CC 4.0.1-5.0  */
       
   117 #  include <config/stl_sunpro.h>
       
   118 # elif defined (__WATCOM_CPLUSPLUS__) || defined (__WATCOMC__)
       
   119 /* Watcom C++ */
       
   120 #  include <config/stl_watcom.h>
       
   121 # elif defined(__COMO__) || defined (__COMO_VERSION_)
       
   122 #  include <config/stl_como.h>
       
   123 # elif defined (__DMC__)
       
   124 /* Digital Mars C++ */
       
   125 #  include <config/stl_dm.h>
       
   126 # elif defined (__SC__) && (__SC__ < 0x800)
       
   127 /* Symantec 7.5 */
       
   128 #  include <config/stl_symantec.h>
       
   129 # elif defined (__MRC__) || (defined (__SC__) && (__SC__ >= 0x882))
       
   130 /* Apple MPW SCpp 8.8.2  
       
   131  * Apple MPW MrCpp 4.1.0 */
       
   132 #  include <config/stl_apple.h>
       
   133 # elif defined(__SYMBIAN32__) && defined(EKA2) && defined (__GCCE__)
       
   134 //#warning ***************USING GCCE COMPILER **************
       
   135 #   include <config/stl_epoc.h>
       
   136 #   include <config/_gcc.h>
       
   137 #   include <config/stl_gcce.h>
       
   138 //#  warning *****************************************
       
   139 # elif defined(__SYMBIAN32__) && defined(EKA2) && defined (__WINSCW__)
       
   140 /* Metrowerks CodeWarrior for Symbian EKA2 */
       
   141 //#  warning ********** USING METROWERKS COMPILER **********
       
   142 # include <config/stl_epoc.h>
       
   143 #  include <config/stl_winscw.h>
       
   144 //#  warning *****************************************
       
   145 #elif defined (__SYMBIAN32__) && defined(EKA2) && defined(__ARMCC__)
       
   146 /* ARM RVCT for Symbian EKA2 */
       
   147 //#  warning ********** USING RVCT COMPILER **********
       
   148 # include <config/stl_epoc.h>
       
   149 #  include <config/stl_rvct.h>
       
   150 //#  warning *****************************************
       
   151 # elif defined(__SYMBIAN32__) && defined(EKA2) && defined (__GCCXML__)
       
   152 //#warning ***************USING GCCXML COMPILER **************
       
   153 #   include <config/stl_epoc.h>
       
   154 #   include <config/_gcc.h>
       
   155 #   include <config/stl_gccxml.h>
       
   156 //#  warning *****************************************
       
   157 #elif defined (__SYMBIAN32__)
       
   158 
       
   159 /* NO-OP: This is just for the Symbian build process, to silence
       
   160    the warning that no compiler config file is available during
       
   161    the include dependency check step.  The warning is generated
       
   162    because the preprocesser is being used to process the files
       
   163    with no compiler flag set.
       
   164 */
       
   165 
       
   166 # elif defined(__hpux)
       
   167 /* HP compilers */
       
   168 #  include <config/stl_hpacc.h>
       
   169 # elif defined(__ICL)
       
   170 /* Intel reference compiler for Win */
       
   171 #  include <config/stl_intel.h>
       
   172 /* SCO UDK 7 compiler (UnixWare 7x, OSR 5, UnixWare 2x) */
       
   173 # elif defined(__USLC__)
       
   174 #  include <config/stl_sco.h>
       
   175 /* Apogee 4.x */
       
   176 # elif defined (__APOGEE__)
       
   177 #  include <config/stl_apcc.h>
       
   178 # elif defined (__DECCXX) || defined (__DECC)
       
   179 #  ifdef __vms
       
   180 #    include <config/stl_dec_vms.h>
       
   181 #  else
       
   182 #    include <config/stl_dec.h>
       
   183 #  endif
       
   184 # elif defined (__ISCPP__)
       
   185 #  include <config/stl_is.h>
       
   186 # elif defined (__FCC_VERSION)
       
   187 /* Fujutsu Compiler, v4.0 assumed */
       
   188 #  include <config/stl_fujitsu.h>
       
   189 # elif defined(_CRAY)
       
   190 /* Cray C++ 3.4 or 3.5 */
       
   191 #  include <config/stl_cray.h>
       
   192 # else
       
   193 /* Unable to identify the compiler, issue error diagnostic.
       
   194  * Edit <config/stl_mycomp.h> to set STLport up for your compiler. */
       
   195 #  include <config/stl_mycomp.h>
       
   196 # endif /* end of compiler choice */
       
   197 # undef __GIVE_UP_WITH_STL
       
   198 #endif
       
   199