1 /* 2 ******************************************************************************* 3 * Copyright (C) 2000-2014, International Business Machines 4 * Corporation and others. All Rights Reserved. 5 ******************************************************************************* 6 * 7 * file name: uvernum.h 8 * encoding: US-ASCII 9 * tab size: 8 (not used) 10 * indentation:4 11 * 12 * Created by: Vladimir Weinstein 13 * Updated by: Steven R. Loomis 14 * 15 */ 16 17 /** 18 * \file 19 * \brief C API: definitions of ICU version numbers 20 * 21 * This file is included by uversion.h and other files. This file contains only 22 * macros and definitions. The actual version numbers are defined here. 23 */ 24 25 /* 26 * IMPORTANT: When updating version, the following things need to be done: 27 * source/common/unicode/uvernum.h - this file: update major, minor, 28 * patchlevel, suffix, version, short version constants, namespace, 29 * renaming macro, and copyright 30 * 31 * The following files need to be updated as well, which can be done 32 * by running the UNIX makefile target 'update-windows-makefiles' in icu/source. 33 * 34 * 35 * source/common/common.vcproj - update 'Output file name' on the link tab so 36 * that it contains the new major/minor combination 37 * source/i18n/i18n.vcproj - same as for the common.vcproj 38 * source/layout/layout.vcproj - same as for the common.vcproj 39 * source/layoutex/layoutex.vcproj - same 40 * source/stubdata/stubdata.vcproj - same as for the common.vcproj 41 * source/io/io.vcproj - same as for the common.vcproj 42 * source/data/makedata.mak - change U_ICUDATA_NAME so that it contains 43 * the new major/minor combination and the Unicode version. 44 */ 45 46 #ifndef UVERNUM_H 47 #define UVERNUM_H 48 49 /** The standard copyright notice that gets compiled into each library. 50 * This value will change in the subsequent releases of ICU 51 * @stable ICU 2.4 52 */ 53 #define U_COPYRIGHT_STRING \ 54 " Copyright (C) 2014, International Business Machines Corporation and others. All Rights Reserved. " 55 56 /** The current ICU major version as an integer. 57 * This value will change in the subsequent releases of ICU 58 * @stable ICU 2.4 59 */ 60 #define U_ICU_VERSION_MAJOR_NUM 53 61 62 /** The current ICU minor version as an integer. 63 * This value will change in the subsequent releases of ICU 64 * @stable ICU 2.6 65 */ 66 #define U_ICU_VERSION_MINOR_NUM 1 67 68 /** The current ICU patchlevel version as an integer. 69 * This value will change in the subsequent releases of ICU 70 * @stable ICU 2.4 71 */ 72 #define U_ICU_VERSION_PATCHLEVEL_NUM 0 73 74 /** The current ICU build level version as an integer. 75 * This value is for use by ICU clients. It defaults to 0. 76 * @stable ICU 4.0 77 */ 78 #ifndef U_ICU_VERSION_BUILDLEVEL_NUM 79 /* BEGIN Android patch - update for non-trivial change from standard ICU release */ 80 #define U_ICU_VERSION_BUILDLEVEL_NUM 1 81 /* END Android patch */ 82 #endif 83 84 /** Glued version suffix for renamers 85 * This value will change in the subsequent releases of ICU 86 * @stable ICU 2.6 87 */ 88 #define U_ICU_VERSION_SUFFIX _53 89 90 /** 91 * \def U_DEF2_ICU_ENTRY_POINT_RENAME 92 * @internal 93 */ 94 /** 95 * \def U_DEF_ICU_ENTRY_POINT_RENAME 96 * @internal 97 */ 98 /** Glued version suffix function for renamers 99 * This value will change in the subsequent releases of ICU. 100 * If a custom suffix (such as matching library suffixes) is desired, this can be modified. 101 * Note that if present, platform.h may contain an earlier definition of this macro. 102 * \def U_ICU_ENTRY_POINT_RENAME 103 * @stable ICU 4.2 104 */ 105 106 #ifndef U_ICU_ENTRY_POINT_RENAME 107 #ifdef U_HAVE_LIB_SUFFIX 108 #define U_DEF_ICU_ENTRY_POINT_RENAME(x,y,z) x ## y ## z 109 #define U_DEF2_ICU_ENTRY_POINT_RENAME(x,y,z) U_DEF_ICU_ENTRY_POINT_RENAME(x,y,z) 110 #define U_ICU_ENTRY_POINT_RENAME(x) U_DEF2_ICU_ENTRY_POINT_RENAME(x,U_ICU_VERSION_SUFFIX,U_LIB_SUFFIX_C_NAME) 111 #else 112 #define U_DEF_ICU_ENTRY_POINT_RENAME(x,y) x ## y 113 #define U_DEF2_ICU_ENTRY_POINT_RENAME(x,y) U_DEF_ICU_ENTRY_POINT_RENAME(x,y) 114 #define U_ICU_ENTRY_POINT_RENAME(x) U_DEF2_ICU_ENTRY_POINT_RENAME(x,U_ICU_VERSION_SUFFIX) 115 #endif 116 #endif 117 118 /** The current ICU library version as a dotted-decimal string. The patchlevel 119 * only appears in this string if it non-zero. 120 * This value will change in the subsequent releases of ICU 121 * @stable ICU 2.4 122 */ 123 124 /* TODO FIX THIS WHEN BUILD level is updated */ 125 /* BEGIN Android patch */ 126 #define U_ICU_VERSION "53.1.0.1" 127 /* END Android patch */ 128 129 /** The current ICU library major/minor version as a string without dots, for library name suffixes. 130 * This value will change in the subsequent releases of ICU 131 * @stable ICU 2.6 132 */ 133 #define U_ICU_VERSION_SHORT "53" 134 135 #ifndef U_HIDE_INTERNAL_API 136 /** Data version in ICU4C. 137 * @internal ICU 4.4 Internal Use Only 138 **/ 139 #define U_ICU_DATA_VERSION "53.1" 140 #endif /* U_HIDE_INTERNAL_API */ 141 142 /*=========================================================================== 143 * ICU collation framework version information 144 * Version info that can be obtained from a collator is affected by these 145 * numbers in a secret and magic way. Please use collator version as whole 146 *=========================================================================== 147 */ 148 149 /** 150 * Collation runtime version (sort key generator, strcoll). 151 * If the version is different, sort keys for the same string could be different. 152 * This value may change in subsequent releases of ICU. 153 * @stable ICU 2.4 154 */ 155 #define UCOL_RUNTIME_VERSION 8 156 157 /** 158 * Collation builder code version. 159 * When this is different, the same tailoring might result 160 * in assigning different collation elements to code points. 161 * This value may change in subsequent releases of ICU. 162 * @stable ICU 2.4 163 */ 164 #define UCOL_BUILDER_VERSION 9 165 166 /** 167 * This is the version of collation tailorings. 168 * This value may change in subsequent releases of ICU. 169 * @stable ICU 2.4 170 */ 171 #define UCOL_TAILORINGS_VERSION 1 172 173 #endif 174