os/textandloc/fontservices/textshaperplugin/IcuSource/common/unicode/ppalmos.h
author sl
Tue, 10 Jun 2014 14:32:02 +0200
changeset 1 260cb5ec6c19
permissions -rw-r--r--
Update contrib.
     1 /*
     2 ******************************************************************************
     3 *
     4 *   Copyright (C) 1997-2005, International Business Machines
     5 *   Corporation and others.  All Rights Reserved.
     6 *
     7 ******************************************************************************
     8 *
     9 *  FILE NAME : ppalmos.h
    10 *
    11 *   Date        Name        Description
    12 *   05/10/04    Ken Krugler Creation (copied from pwin32.h & modified).
    13 ******************************************************************************
    14 */
    15 
    16 #ifndef U_PPALMOS_H
    17 #define U_PPALMOS_H
    18 
    19  /**
    20   * \file
    21   * \brief Configuration constants for the Palm OS platform
    22   */
    23   
    24 /* Define the platform we're on. */
    25 #ifndef U_PALMOS
    26 #define U_PALMOS
    27 #endif
    28 
    29 /* _MSC_VER is used to detect the Microsoft compiler. */
    30 #if defined(_MSC_VER)
    31 #define U_INT64_IS_LONG_LONG 0
    32 #else
    33 #define U_INT64_IS_LONG_LONG 1
    34 #endif
    35 
    36 /* Define whether inttypes.h is available */
    37 #ifndef U_HAVE_INTTYPES_H
    38 #define U_HAVE_INTTYPES_H 1
    39 #endif
    40 
    41 /*
    42  * Define what support for C++ streams is available.
    43  *     If U_IOSTREAM_SOURCE is set to 199711, then <iostream> is available
    44  * (1997711 is the date the ISO/IEC C++ FDIS was published), and then
    45  * one should qualify streams using the std namespace in ICU header
    46  * files.
    47  *     If U_IOSTREAM_SOURCE is set to 198506, then <iostream.h> is
    48  * available instead (198506 is the date when Stroustrup published
    49  * "An Extensible I/O Facility for C++" at the summer USENIX conference).
    50  *     If U_IOSTREAM_SOURCE is 0, then C++ streams are not available and
    51  * support for them will be silently suppressed in ICU.
    52  *
    53  */
    54 
    55 #ifndef U_IOSTREAM_SOURCE
    56 #define U_IOSTREAM_SOURCE 199711
    57 #endif
    58 
    59 /* Determines whether specific types are available */
    60 #ifndef U_HAVE_INT8_T
    61 #define U_HAVE_INT8_T U_HAVE_INTTYPES_H
    62 #endif
    63 
    64 #ifndef U_HAVE_UINT8_T
    65 #define U_HAVE_UINT8_T U_HAVE_INTTYPES_H
    66 #endif
    67 
    68 #ifndef U_HAVE_INT16_T
    69 #define U_HAVE_INT16_T U_HAVE_INTTYPES_H
    70 #endif
    71 
    72 #ifndef U_HAVE_UINT16_T
    73 #define U_HAVE_UINT16_T U_HAVE_INTTYPES_H
    74 #endif
    75 
    76 #ifndef U_HAVE_INT32_T
    77 #define U_HAVE_INT32_T U_HAVE_INTTYPES_H
    78 #endif
    79 
    80 #ifndef U_HAVE_UINT32_T
    81 #define U_HAVE_UINT32_T U_HAVE_INTTYPES_H
    82 #endif
    83 
    84 #ifndef U_HAVE_INT64_T
    85 #define U_HAVE_INT64_T U_HAVE_INTTYPES_H
    86 #endif
    87 
    88 #ifndef U_HAVE_UINT64_T
    89 #define U_HAVE_UINT64_T U_HAVE_INTTYPES_H
    90 #endif
    91 
    92 
    93 /*===========================================================================*/
    94 /* Generic data types                                                        */
    95 /*===========================================================================*/
    96 
    97 /* If your platform does not have the <inttypes.h> header, you may
    98    need to edit the typedefs below. */
    99 #if U_HAVE_INTTYPES_H
   100 #include <inttypes.h>
   101 #else /* U_HAVE_INTTYPES_H */
   102 
   103 #if ! U_HAVE_INT8_T
   104 typedef signed char int8_t;
   105 #endif
   106 
   107 #if ! U_HAVE_UINT8_T
   108 typedef unsigned char uint8_t;
   109 #endif
   110 
   111 #if ! U_HAVE_INT16_T
   112 typedef signed short int16_t;
   113 #endif
   114 
   115 #if ! U_HAVE_UINT16_T
   116 typedef unsigned short uint16_t;
   117 #endif
   118 
   119 #if ! U_HAVE_INT32_T
   120 typedef signed int int32_t;
   121 #endif
   122 
   123 #if ! U_HAVE_UINT32_T
   124 typedef unsigned int uint32_t;
   125 #endif
   126 
   127 #if ! U_HAVE_INT64_T
   128 #if U_INT64_IS_LONG_LONG
   129     typedef signed long long int64_t;
   130 #else
   131     typedef signed __int64 int64_t;
   132 #endif
   133 #endif
   134 
   135 #if ! U_HAVE_UINT64_T
   136 #if U_INT64_IS_LONG_LONG
   137     typedef unsigned long long uint64_t;
   138 #else
   139     typedef unsigned __int64 uint64_t;
   140 #endif
   141 #endif
   142 #endif
   143 
   144 /*===========================================================================*/
   145 /* Compiler and environment features                                         */
   146 /*===========================================================================*/
   147 
   148 /* Define whether namespace is supported */
   149 #ifndef U_HAVE_NAMESPACE
   150 #define U_HAVE_NAMESPACE 1
   151 #endif
   152 
   153 /* Determines the endianness of the platform */
   154 #define U_IS_BIG_ENDIAN 0
   155 
   156 /* 1 or 0 to enable or disable threads.  If undefined, default is: enable threads. */
   157 #define ICU_USE_THREADS 1
   158 
   159 #ifndef U_DEBUG
   160 #ifdef _DEBUG
   161 #define U_DEBUG 1
   162 #else
   163 #define U_DEBUG 0
   164 #endif
   165 #endif
   166 
   167 #ifndef U_RELEASE
   168 #ifdef NDEBUG
   169 #define U_RELEASE 1
   170 #else
   171 #define U_RELEASE 0
   172 #endif
   173 #endif
   174 
   175 /* Determine whether to disable renaming or not. This overrides the
   176    setting in umachine.h which is for all platforms. */
   177 #ifndef U_DISABLE_RENAMING
   178 #define U_DISABLE_RENAMING 0
   179 #endif
   180 
   181 /* Determine whether to override new and delete. */
   182 #ifndef U_OVERRIDE_CXX_ALLOCATION
   183 #define U_OVERRIDE_CXX_ALLOCATION 1
   184 #endif
   185 /* Determine whether to override placement new and delete for STL. */
   186 #ifndef U_HAVE_PLACEMENT_NEW
   187 #define U_HAVE_PLACEMENT_NEW 0
   188 #endif
   189 /* Determine whether to override new and delete for MFC. */
   190 #if !defined(U_HAVE_DEBUG_LOCATION_NEW) && defined(_MSC_VER)
   191 #define U_HAVE_DEBUG_LOCATION_NEW 0
   192 #endif
   193 
   194 /* Determine whether to enable tracing. */
   195 #ifndef U_ENABLE_TRACING
   196 #define U_ENABLE_TRACING 1
   197 #endif
   198 
   199 /* Do we allow ICU users to use the draft APIs by default? */
   200 #ifndef U_DEFAULT_SHOW_DRAFT
   201 #define U_DEFAULT_SHOW_DRAFT 1
   202 #endif
   203 
   204 /* Define the library suffix in a C syntax. */
   205 #define U_HAVE_LIB_SUFFIX 0
   206 #define U_LIB_SUFFIX_C_NAME 
   207 #define U_LIB_SUFFIX_C_NAME_STRING ""
   208 
   209 /*===========================================================================*/
   210 /* Information about wchar support                                           */
   211 /*===========================================================================*/
   212 
   213 #define U_HAVE_WCHAR_H 1
   214 #define U_SIZEOF_WCHAR_T 2
   215 
   216 #define U_HAVE_WCSCPY    0
   217 
   218 /*===========================================================================*/
   219 /* Information about POSIX support                                           */
   220 /*===========================================================================*/
   221 
   222 
   223 /* TODO: Fix Palm OS's determination of a timezone */
   224 #if 0
   225 #define U_TZSET         _tzset
   226 #endif
   227 #if 0
   228 #define U_TIMEZONE      _timezone
   229 #endif
   230 #if 0
   231 #define U_TZNAME        _tzname
   232 #endif
   233 
   234 #define U_HAVE_MMAP 0
   235 #define U_HAVE_POPEN 0
   236 
   237 /*===========================================================================*/
   238 /* Symbol import-export control                                              */
   239 /*===========================================================================*/
   240 
   241 #define U_EXPORT
   242 #define U_EXPORT2
   243 #define U_IMPORT
   244 
   245 /*===========================================================================*/
   246 /* Code alignment and C function inlining                                    */
   247 /*===========================================================================*/
   248 
   249 #ifndef U_INLINE
   250 #   ifdef __cplusplus
   251 #       define U_INLINE inline
   252 #   else
   253 #       define U_INLINE __inline
   254 #   endif
   255 #endif
   256 
   257 #if defined(_MSC_VER) && defined(_M_IX86)
   258 #define U_ALIGN_CODE(val)    __asm      align val
   259 #else
   260 #define U_ALIGN_CODE(val)
   261 #endif
   262 
   263 
   264 /*===========================================================================*/
   265 /* Programs used by ICU code                                                 */
   266 /*===========================================================================*/
   267 
   268 #ifndef U_MAKE
   269 #define U_MAKE  "nmake"
   270 #define U_MAKE_IS_NMAKE 1
   271 #endif
   272 
   273 #endif