ICU 49.1.1  49.1.1
uconfig.h
Go to the documentation of this file.
00001 /*  
00002 **********************************************************************
00003 *   Copyright (C) 2002-2012, International Business Machines
00004 *   Corporation and others.  All Rights Reserved.
00005 **********************************************************************
00006 *   file name:  uconfig.h
00007 *   encoding:   US-ASCII
00008 *   tab size:   8 (not used)
00009 *   indentation:4
00010 *
00011 *   created on: 2002sep19
00012 *   created by: Markus W. Scherer
00013 */
00014 
00015 #ifndef __UCONFIG_H__
00016 #define __UCONFIG_H__
00017 
00018 
00052 #if defined(UCONFIG_USE_LOCAL)
00053 #include "uconfig_local.h"
00054 #endif
00055 
00063 #ifdef U_DEBUG
00064     /* Use the predefined value. */
00065 #elif defined(_DEBUG)
00066     /*
00067      * _DEBUG is defined by Visual Studio debug compilation.
00068      * Do *not* test for its NDEBUG macro: It is an orthogonal macro
00069      * which disables assert().
00070      */
00071 #   define U_DEBUG 1
00072 # else
00073 #   define U_DEBUG 0
00074 #endif
00075 
00080 #ifndef UCLN_NO_AUTO_CLEANUP
00081 #define UCLN_NO_AUTO_CLEANUP 1
00082 #endif
00083 
00094 #ifdef ICU_USE_THREADS
00095     /* Use the predefined value. */
00096 #elif defined(APP_NO_THREADS)
00097     /* APP_NO_THREADS is an old symbol. We'll honour it if present. */
00098 #   define ICU_USE_THREADS 0
00099 #else
00100 #   define ICU_USE_THREADS 1
00101 #endif
00102 
00108 #ifndef U_DISABLE_RENAMING
00109 #define U_DISABLE_RENAMING 0
00110 #endif
00111 
00120 #ifdef U_NO_DEFAULT_INCLUDE_UTF_HEADERS
00121     /* Use the predefined value. */
00122 #elif defined(U_COMBINED_IMPLEMENTATION) || defined(U_COMMON_IMPLEMENTATION) || defined(U_I18N_IMPLEMENTATION) || \
00123       defined(U_IO_IMPLEMENTATION) || defined(U_LAYOUT_IMPLEMENTATION) || defined(U_LAYOUTEX_IMPLEMENTATION) || \
00124       defined(U_TOOLUTIL_IMPLEMENTATION)
00125 #   define U_NO_DEFAULT_INCLUDE_UTF_HEADERS 1
00126 #else
00127 #   define U_NO_DEFAULT_INCLUDE_UTF_HEADERS 0
00128 #endif
00129 
00143 #ifndef U_OVERRIDE_CXX_ALLOCATION
00144 #define U_OVERRIDE_CXX_ALLOCATION 1
00145 #endif
00146 
00152 #ifndef U_ENABLE_TRACING
00153 #define U_ENABLE_TRACING 0
00154 #endif
00155 
00161 #ifndef U_ENABLE_DYLOAD
00162 #define U_ENABLE_DYLOAD 1
00163 #endif
00164 
00170 #ifndef U_CHECK_DYLOAD
00171 #define U_CHECK_DYLOAD 1
00172 #endif
00173 
00174 
00180 #ifndef U_DEFAULT_SHOW_DRAFT
00181 #define U_DEFAULT_SHOW_DRAFT 1
00182 #endif
00183 
00184 /*===========================================================================*/
00185 /* Custom icu entry point renaming                                           */
00186 /*===========================================================================*/
00187 
00193 #ifdef U_HAVE_LIB_SUFFIX
00194     /* Use the predefined value. */
00195 #elif defined(U_LIB_SUFFIX_C_NAME)
00196 #   define U_HAVE_LIB_SUFFIX 1
00197 #endif
00198 
00204 #ifdef U_LIB_SUFFIX_C_NAME_STRING
00205     /* Use the predefined value. */
00206 #elif defined(U_LIB_SUFFIX_C_NAME)
00207 #   define U_LIB_SUFFIX_C_NAME_STRING #U_LIB_SUFFIX_C_NAME
00208 #else
00209 #   define U_LIB_SUFFIX_C_NAME_STRING ""
00210 #endif
00211 
00212 /* common/i18n library switches --------------------------------------------- */
00213 
00225 #ifndef UCONFIG_ONLY_COLLATION
00226 #   define UCONFIG_ONLY_COLLATION 0
00227 #endif
00228 
00229 #if UCONFIG_ONLY_COLLATION
00230     /* common library */
00231 #   define UCONFIG_NO_BREAK_ITERATION 1
00232 #   define UCONFIG_NO_IDNA 1
00233 
00234     /* i18n library */
00235 #   if UCONFIG_NO_COLLATION
00236 #       error Contradictory collation switches in uconfig.h.
00237 #   endif
00238 #   define UCONFIG_NO_FORMATTING 1
00239 #   define UCONFIG_NO_TRANSLITERATION 1
00240 #   define UCONFIG_NO_REGULAR_EXPRESSIONS 1
00241 #endif
00242 
00243 /* common library switches -------------------------------------------------- */
00244 
00263 #ifndef UCONFIG_NO_FILE_IO
00264 #   define UCONFIG_NO_FILE_IO 0
00265 #endif
00266 
00278 #ifndef UCONFIG_NO_CONVERSION
00279 #   define UCONFIG_NO_CONVERSION 0
00280 #endif
00281 
00282 #if UCONFIG_NO_CONVERSION
00283 #   define UCONFIG_NO_LEGACY_CONVERSION 1
00284 #endif
00285 
00298 #ifndef UCONFIG_NO_LEGACY_CONVERSION
00299 #   define UCONFIG_NO_LEGACY_CONVERSION 0
00300 #endif
00301 
00310 #ifndef UCONFIG_NO_NORMALIZATION
00311 #   define UCONFIG_NO_NORMALIZATION 0
00312 #elif UCONFIG_NO_NORMALIZATION
00313     /* common library */
00314 #   define UCONFIG_NO_IDNA 1
00315 
00316     /* i18n library */
00317 #   if UCONFIG_ONLY_COLLATION
00318 #       error Contradictory collation switches in uconfig.h.
00319 #   endif
00320 #   define UCONFIG_NO_COLLATION 1
00321 #   define UCONFIG_NO_TRANSLITERATION 1
00322 #endif
00323 
00330 #ifndef UCONFIG_NO_BREAK_ITERATION
00331 #   define UCONFIG_NO_BREAK_ITERATION 0
00332 #endif
00333 
00340 #ifndef UCONFIG_NO_IDNA
00341 #   define UCONFIG_NO_IDNA 0
00342 #endif
00343 
00351 #ifndef UCONFIG_MSGPAT_DEFAULT_APOSTROPHE_MODE
00352 #   define UCONFIG_MSGPAT_DEFAULT_APOSTROPHE_MODE UMSGPAT_APOS_DOUBLE_OPTIONAL
00353 #endif
00354 
00355 /* i18n library switches ---------------------------------------------------- */
00356 
00363 #ifndef UCONFIG_NO_COLLATION
00364 #   define UCONFIG_NO_COLLATION 0
00365 #endif
00366 
00373 #ifndef UCONFIG_NO_FORMATTING
00374 #   define UCONFIG_NO_FORMATTING 0
00375 #endif
00376 
00383 #ifndef UCONFIG_NO_TRANSLITERATION
00384 #   define UCONFIG_NO_TRANSLITERATION 0
00385 #endif
00386 
00393 #ifndef UCONFIG_NO_REGULAR_EXPRESSIONS
00394 #   define UCONFIG_NO_REGULAR_EXPRESSIONS 0
00395 #endif
00396 
00403 #ifndef UCONFIG_NO_SERVICE
00404 #   define UCONFIG_NO_SERVICE 0
00405 #endif
00406 
00407 #endif