epoc32/include/stdapis/stlport/config/stl_epoc.h
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:33:34 +0100
branchSymbian3
changeset 4 837f303aceeb
parent 2 2fe1408b6811
permissions -rw-r--r--
Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
     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  * A list of COMPILER-SPECIFIC portion of STLport settings.
    25  * This file is provided to help in manulal configuration
    26  * of STLport. This file is being included by stlcomp.h 
    27  * when STLport is unable to identify your compiler.
    28  * Please remove the error diagnostic below before adjusting 
    29  * macros.
    30  * 
    31  */
    32 # ifndef _STLP_EPOC_H
    33 #  define  _STLP_EPOC_H
    34 
    35 /*
    36 #ifndef _STLP_NO_IOSTREAMS
    37 #  define _STLP_NO_IOSTREAMS	               1
    38 #endif
    39 
    40 #  undef  _STLP_OWN_IOSTREAMS
    41 #  define _STLP_NO_NATIVE_MBSTATE_T            1
    42 //#  define _NOTHREADS                           1
    43 #  define _STLP_NO_TYPEINFO                    1
    44 */
    45 
    46 //==========================================================
    47 
    48 // the values choosen here as defaults try to give
    49 // maximum functionality on the most conservative settings
    50 
    51 // Mostly correct guess, change it for Alpha (and other environments
    52 // that has 64-bit "long")
    53 #  define _STLP_UINT32_T unsigned long  
    54 
    55 // Disables wchar_t functinality
    56 //#  define _STLP_NO_WCHAR_T  1
    57 
    58 // Define if wchar_t is not a unique type, and is actually a typedef to unsigned short. 
    59 // #  define _STLP_WCHAR_T_IS_USHORT 1
    60 
    61 // Uncomment if long long is available
    62 #  define _STLP_LONG_LONG long long
    63 
    64 // Uncomment if long double is not available
    65 // #  define _STLP_NO_LONG_DOUBLE 1
    66 
    67 // Uncomment this if your compiler does not support namespaces 
    68 //#  define _STLP_HAS_NO_NAMESPACES 1
    69 
    70 // Uncomment if "using" keyword does not work with template types 
    71 // # define _STLP_BROKEN_USING_DIRECTIVE 1
    72 
    73 // Uncomment this if your compiler does not support exceptions
    74 //#  define _STLP_HAS_NO_EXCEPTIONS 1
    75 
    76 // Header <new> that comes with the compiler 
    77 // does not define bad_alloc exception
    78 //#if defined(__WINS__)
    79 // Possibly required ???
    80 #  define _STLP_NO_BAD_ALLOC  1
    81 //#endif
    82 
    83 // Uncomment if member template methods are not available
    84 // #  define _STLP_NO_MEMBER_TEMPLATES   1
    85 
    86 // Uncomment if friend member templates are not available
    87 #if defined(__WINS__)
    88 // Possibly required ???
    89 //#  define _STLP_NO_FRIEND_TEMPLATES   1
    90 #endif
    91 
    92 // Compiler does not accept friend declaration qualified with namespace name.
    93 // #  define _STLP_NO_QUALIFIED_FRIENDS 1
    94 
    95 
    96 // Define if class being partially specialized require full name (template parameters)
    97 // of itself for method declarations
    98 // #  define _STLP_PARTIAL_SPEC_NEEDS_TEMPLATE_ARGS
    99 
   100 // Compiler has problems specializing members of partially 
   101 // specialized class
   102 // #  define _STLP_MEMBER_SPECIALIZATION_BUG
   103 
   104 // Compiler requires typename keyword on outline method definition 
   105 // explicitly taking nested types/typedefs
   106 // #define  _STLP_TYPENAME_ON_RETURN_TYPE
   107 
   108 // * _STLP_STATIC_CONST_INIT_BUG: defined if the compiler can't handle a
   109 //   constant-initializer in the declaration of a static const data member
   110 //   of integer type.  (See section 9.4.2, paragraph 4, of the C++ standard.)
   111 #if defined(__WINS__)
   112 # define _STLP_STATIC_CONST_INIT_BUG
   113 #endif
   114 
   115 // Define if default constructor for builtin integer type fails to initialize it to 0
   116 // #  define _STLP_DEFAULT_CONSTRUCTOR_BUG    1
   117 
   118 // Defined if constructor
   119 // required to explicitly call member's default constructors for const objects
   120 // #  define _STLP_CONST_CONSTRUCTOR_BUG    1
   121 
   122 // Define this if compiler lacks <exception> header
   123 #  define _STLP_NO_EXCEPTION_HEADER 1
   124 
   125 // Uncomment if native new-style C library headers lile <cstddef>, etc are not available.
   126 #   define _STLP_HAS_NO_NEW_C_HEADERS 1
   127 
   128 // uncomment if new-style headers <new> is available
   129 // #  define _STLP_HAS_NEW_NEW_HEADER 1
   130 
   131 // uncomment this if <iostream> and other STD headers put their stuff in ::namespace,
   132 // not std::
   133 // #  define _STLP_VENDOR_GLOBAL_STD
   134 
   135 // uncomment this if <cstdio> and the like put stuff in ::namespace,
   136 // not std::
   137 #  define _STLP_VENDOR_GLOBAL_CSTD
   138 
   139 // Edit relative path below (or put full path) to get native 
   140 // compiler headers included. Default is "../include".
   141 // C headers may reside in different directory, so separate macro is provided.
   142 // Hint : never install STLport in the directory that ends with "include"
   143 
   144 # define _STLP_NATIVE_C_INCLUDE_PATH stdapis/
   145 # define _STLP_NATIVE_INCLUDE_PATH 
   146 #define _STLP_NATIVE_CPP_RUNTIME_INCLUDE_PATH runtime/
   147 
   148 // These are some options that are common across compilers used in Symbian
   149 #   define _STLP_NO_NEW_NEW_HEADER 1
   150 #	define _STLP_NO_NEW_HEADER
   151 #   define _STLP_USE_DECLSPEC
   152 #   undef _STLP_EXPORT_DECLSPEC
   153 #   undef _STLP_IMPORT_DECLSPEC
   154 #	define _STLP_NO_THREADS
   155 #	define _STLP_USE_NEW_IOSTREAMS
   156 #   define _STLP_NO_OWN_IOSTREAMS
   157 #	define _STLP_USE_NEWALLOC
   158 #   define _STLP_NO_LONG_DOUBLE
   159 #   define _STLP_LITTLE_ENDIAN
   160 #   define _STLP_LABS
   161 #   define _STLP_LDIV
   162 #   define _STLP_CONST_CONSTRUCTOR_BUG
   163 #	define _STLP_COMPLEX_SPECIALIZATION_BUG
   164 #	define _STLP_USE_EXCEPTIONS
   165 #	define _STLP_EXTERN_RANGE_ERRORS
   166 // Defined in _site_config.h
   167 //#   define _STLP_NO_OWN_NAMESPACE 
   168 
   169 //==========================================================
   170 # endif