author | sl |
Tue, 10 Jun 2014 14:32:02 +0200 | |
changeset 1 | 260cb5ec6c19 |
permissions | -rw-r--r-- |
sl@0 | 1 |
/* |
sl@0 | 2 |
********************************************************************** |
sl@0 | 3 |
* Copyright (C) 2002-2005, International Business Machines |
sl@0 | 4 |
* Corporation and others. All Rights Reserved. |
sl@0 | 5 |
********************************************************************** |
sl@0 | 6 |
* file name: uconfig.h |
sl@0 | 7 |
* encoding: US-ASCII |
sl@0 | 8 |
* tab size: 8 (not used) |
sl@0 | 9 |
* indentation:4 |
sl@0 | 10 |
* |
sl@0 | 11 |
* created on: 2002sep19 |
sl@0 | 12 |
* created by: Markus W. Scherer |
sl@0 | 13 |
*/ |
sl@0 | 14 |
|
sl@0 | 15 |
#ifndef __UCONFIG_H__ |
sl@0 | 16 |
#define __UCONFIG_H__ |
sl@0 | 17 |
|
sl@0 | 18 |
/*! |
sl@0 | 19 |
* \file |
sl@0 | 20 |
* \brief Switches for excluding parts of ICU library code modules. |
sl@0 | 21 |
* |
sl@0 | 22 |
* Allows to build partial, smaller libraries for special purposes. |
sl@0 | 23 |
* By default, all modules are built. |
sl@0 | 24 |
* The switches are fairly coarse, controlling large modules. |
sl@0 | 25 |
* Basic services cannot be turned off. |
sl@0 | 26 |
* |
sl@0 | 27 |
* @stable ICU 2.4 |
sl@0 | 28 |
*/ |
sl@0 | 29 |
|
sl@0 | 30 |
/** |
sl@0 | 31 |
* \def UCONFIG_ONLY_COLLATION |
sl@0 | 32 |
* This switch turns off modules that are not needed for collation. |
sl@0 | 33 |
* |
sl@0 | 34 |
* It does not turn off legacy conversion because that is necessary |
sl@0 | 35 |
* for ICU to work on EBCDIC platforms (for the default converter). |
sl@0 | 36 |
* If you want "only collation" and do not build for EBCDIC, |
sl@0 | 37 |
* then you can define UCONFIG_NO_LEGACY_CONVERSION 1 as well. |
sl@0 | 38 |
* |
sl@0 | 39 |
* @stable ICU 2.4 |
sl@0 | 40 |
*/ |
sl@0 | 41 |
#ifndef UCONFIG_ONLY_COLLATION |
sl@0 | 42 |
# define UCONFIG_ONLY_COLLATION 0 |
sl@0 | 43 |
#endif |
sl@0 | 44 |
|
sl@0 | 45 |
#if UCONFIG_ONLY_COLLATION |
sl@0 | 46 |
/* common library */ |
sl@0 | 47 |
# define UCONFIG_NO_BREAK_ITERATION 1 |
sl@0 | 48 |
# define UCONFIG_NO_IDNA 1 |
sl@0 | 49 |
|
sl@0 | 50 |
/* i18n library */ |
sl@0 | 51 |
# if UCONFIG_NO_COLLATION |
sl@0 | 52 |
# error Contradictory collation switches in uconfig.h. |
sl@0 | 53 |
# endif |
sl@0 | 54 |
# define UCONFIG_NO_FORMATTING 1 |
sl@0 | 55 |
# define UCONFIG_NO_TRANSLITERATION 1 |
sl@0 | 56 |
# define UCONFIG_NO_REGULAR_EXPRESSIONS 1 |
sl@0 | 57 |
#endif |
sl@0 | 58 |
|
sl@0 | 59 |
/* common library switches -------------------------------------------------- */ |
sl@0 | 60 |
|
sl@0 | 61 |
/** |
sl@0 | 62 |
* \def UCONFIG_NO_CONVERSION |
sl@0 | 63 |
* ICU will not completely build with this switch turned on. |
sl@0 | 64 |
* This switch turns off all converters. |
sl@0 | 65 |
* |
sl@0 | 66 |
* @draft ICU 3.2 |
sl@0 | 67 |
*/ |
sl@0 | 68 |
#ifndef UCONFIG_NO_CONVERSION |
sl@0 | 69 |
# define UCONFIG_NO_CONVERSION 0 |
sl@0 | 70 |
#endif |
sl@0 | 71 |
|
sl@0 | 72 |
#if UCONFIG_NO_CONVERSION |
sl@0 | 73 |
# define UCONFIG_NO_LEGACY_CONVERSION 1 |
sl@0 | 74 |
#endif |
sl@0 | 75 |
|
sl@0 | 76 |
/** |
sl@0 | 77 |
* \def UCONFIG_NO_LEGACY_CONVERSION |
sl@0 | 78 |
* This switch turns off all converters except for |
sl@0 | 79 |
* - Unicode charsets (UTF-7/8/16/32, CESU-8, SCSU, BOCU-1) |
sl@0 | 80 |
* - US-ASCII |
sl@0 | 81 |
* - ISO-8859-1 |
sl@0 | 82 |
* |
sl@0 | 83 |
* Turning off legacy conversion is not possible on EBCDIC platforms |
sl@0 | 84 |
* because they need ibm-37 or ibm-1047 default converters. |
sl@0 | 85 |
* |
sl@0 | 86 |
* @stable ICU 2.4 |
sl@0 | 87 |
*/ |
sl@0 | 88 |
#ifndef UCONFIG_NO_LEGACY_CONVERSION |
sl@0 | 89 |
# define UCONFIG_NO_LEGACY_CONVERSION 0 |
sl@0 | 90 |
#endif |
sl@0 | 91 |
|
sl@0 | 92 |
/** |
sl@0 | 93 |
* \def UCONFIG_NO_NORMALIZATION |
sl@0 | 94 |
* This switch turns off normalization. |
sl@0 | 95 |
* It implies turning off several other services as well, for example |
sl@0 | 96 |
* collation and IDNA. |
sl@0 | 97 |
* |
sl@0 | 98 |
* @stable ICU 2.6 |
sl@0 | 99 |
*/ |
sl@0 | 100 |
#ifndef UCONFIG_NO_NORMALIZATION |
sl@0 | 101 |
# define UCONFIG_NO_NORMALIZATION 0 |
sl@0 | 102 |
#elif UCONFIG_NO_NORMALIZATION |
sl@0 | 103 |
/* common library */ |
sl@0 | 104 |
# define UCONFIG_NO_IDNA 1 |
sl@0 | 105 |
|
sl@0 | 106 |
/* i18n library */ |
sl@0 | 107 |
# if UCONFIG_ONLY_COLLATION |
sl@0 | 108 |
# error Contradictory collation switches in uconfig.h. |
sl@0 | 109 |
# endif |
sl@0 | 110 |
# define UCONFIG_NO_COLLATION 1 |
sl@0 | 111 |
# define UCONFIG_NO_TRANSLITERATION 1 |
sl@0 | 112 |
#endif |
sl@0 | 113 |
|
sl@0 | 114 |
/** |
sl@0 | 115 |
* \def UCONFIG_NO_BREAK_ITERATION |
sl@0 | 116 |
* This switch turns off break iteration. |
sl@0 | 117 |
* |
sl@0 | 118 |
* @stable ICU 2.4 |
sl@0 | 119 |
*/ |
sl@0 | 120 |
#ifndef UCONFIG_NO_BREAK_ITERATION |
sl@0 | 121 |
# define UCONFIG_NO_BREAK_ITERATION 0 |
sl@0 | 122 |
#endif |
sl@0 | 123 |
|
sl@0 | 124 |
/** |
sl@0 | 125 |
* \def UCONFIG_NO_IDNA |
sl@0 | 126 |
* This switch turns off IDNA. |
sl@0 | 127 |
* |
sl@0 | 128 |
* @stable ICU 2.6 |
sl@0 | 129 |
*/ |
sl@0 | 130 |
#ifndef UCONFIG_NO_IDNA |
sl@0 | 131 |
# define UCONFIG_NO_IDNA 0 |
sl@0 | 132 |
#endif |
sl@0 | 133 |
|
sl@0 | 134 |
/* i18n library switches ---------------------------------------------------- */ |
sl@0 | 135 |
|
sl@0 | 136 |
/** |
sl@0 | 137 |
* \def UCONFIG_NO_COLLATION |
sl@0 | 138 |
* This switch turns off collation and collation-based string search. |
sl@0 | 139 |
* |
sl@0 | 140 |
* @stable ICU 2.4 |
sl@0 | 141 |
*/ |
sl@0 | 142 |
#ifndef UCONFIG_NO_COLLATION |
sl@0 | 143 |
# define UCONFIG_NO_COLLATION 0 |
sl@0 | 144 |
#endif |
sl@0 | 145 |
|
sl@0 | 146 |
/** |
sl@0 | 147 |
* \def UCONFIG_NO_FORMATTING |
sl@0 | 148 |
* This switch turns off formatting and calendar/timezone services. |
sl@0 | 149 |
* |
sl@0 | 150 |
* @stable ICU 2.4 |
sl@0 | 151 |
*/ |
sl@0 | 152 |
#ifndef UCONFIG_NO_FORMATTING |
sl@0 | 153 |
# define UCONFIG_NO_FORMATTING 0 |
sl@0 | 154 |
#endif |
sl@0 | 155 |
|
sl@0 | 156 |
/** |
sl@0 | 157 |
* \def UCONFIG_NO_TRANSLITERATION |
sl@0 | 158 |
* This switch turns off transliteration. |
sl@0 | 159 |
* |
sl@0 | 160 |
* @stable ICU 2.4 |
sl@0 | 161 |
*/ |
sl@0 | 162 |
#ifndef UCONFIG_NO_TRANSLITERATION |
sl@0 | 163 |
# define UCONFIG_NO_TRANSLITERATION 0 |
sl@0 | 164 |
#endif |
sl@0 | 165 |
|
sl@0 | 166 |
/** |
sl@0 | 167 |
* \def UCONFIG_NO_REGULAR_EXPRESSIONS |
sl@0 | 168 |
* This switch turns off regular expressions. |
sl@0 | 169 |
* |
sl@0 | 170 |
* @stable ICU 2.4 |
sl@0 | 171 |
*/ |
sl@0 | 172 |
#ifndef UCONFIG_NO_REGULAR_EXPRESSIONS |
sl@0 | 173 |
# define UCONFIG_NO_REGULAR_EXPRESSIONS 0 |
sl@0 | 174 |
#endif |
sl@0 | 175 |
|
sl@0 | 176 |
/** |
sl@0 | 177 |
* \def UCONFIG_NO_SERVICE |
sl@0 | 178 |
* This switch turns off service registration. |
sl@0 | 179 |
* |
sl@0 | 180 |
* @draft ICU 3.2 |
sl@0 | 181 |
*/ |
sl@0 | 182 |
#ifndef UCONFIG_NO_SERVICE |
sl@0 | 183 |
# define UCONFIG_NO_SERVICE 0 |
sl@0 | 184 |
#endif |
sl@0 | 185 |
|
sl@0 | 186 |
#endif |