update dev300-m58
[ooovba.git] / icu / icu-4.0.patch
blob172d6244634c76d05cad955563c4679f2c777881
1 --- misc/icu/source/common/putil.c 2008-07-01 03:41:12.000000000 +0200
2 +++ misc/build/icu/source/common/putil.c 2008-09-02 07:01:29.335795765 +0200
3 @@ -52,7 +52,7 @@
4 Poorly upgraded Solaris machines can't have this defined.
5 Cleanly installed Solaris can use this #define.
6 */
7 -#if !defined(_XOPEN_SOURCE_EXTENDED) && (!defined(__STDC_VERSION__) || __STDC_VERSION__ >= 199901L)
8 +#if !defined(_XOPEN_SOURCE_EXTENDED) && (!defined(__STDC_VERSION__) || __STDC_VERSION__ < 199901L)
9 #define _XOPEN_SOURCE_EXTENDED 1
10 #endif
12 --- misc/icu/source/common/unicode/pwin32.h 2008-07-01 10:41:12.000000000 +0900
13 +++ misc/build/icu/source/common/unicode/pwin32.h 2008-11-05 22:37:21.479250000 +0900
14 @@ -32,6 +32,10 @@
15 #define __STDC_CONSTANT_MACROS
16 #endif
18 +#if defined(__MINGW32__)
19 +#define U_HAVE_INTTYPES_H 1
20 +#endif
22 /* _MSC_VER is used to detect the Microsoft compiler. */
23 #if defined(_MSC_VER)
24 #define U_INT64_IS_LONG_LONG 0
25 --- misc/icu/source/config/mh-darwin Tue Jul 1 03:41:24 2008
26 +++ misc/build/icu/source/config/mh-darwin Tue Jan 20 18:33:16 2009
27 @@ -25,7 +25,7 @@
28 SHLIB.cc= $(CXX) -dynamiclib -dynamic $(CXXFLAGS) $(LDFLAGS)
30 ## Compiler switches to embed a library name and version information
31 -LD_SONAME = -Wl,-compatibility_version -Wl,$(SO_TARGET_VERSION_MAJOR) -Wl,-current_version -Wl,$(SO_TARGET_VERSION) -install_name $(notdir $(MIDDLE_SO_TARGET))
32 +LD_SONAME = -Wl,-compatibility_version -Wl,$(SO_TARGET_VERSION_MAJOR) -Wl,-current_version -Wl,$(SO_TARGET_VERSION) -install_name @executable_path/$(notdir $(FINAL_SO_TARGET))
34 ## Compiler switch to embed a runtime search path
35 LD_RPATH=
36 @@ -41,10 +41,6 @@
37 ## Non-shared intermediate object suffix
38 STATIC_O = ao
40 -## Override Versioned target for a shared library.
41 -FINAL_SO_TARGET= $(basename $(SO_TARGET)).$(SO_TARGET_VERSION).$(SO)
42 -MIDDLE_SO_TARGET= $(basename $(SO_TARGET)).$(SO_TARGET_VERSION_MAJOR).$(SO)
44 ## Compilation rules
45 %.$(STATIC_O): $(srcdir)/%.c
46 $(COMPILE.c) $(STATICCPPFLAGS) $(STATICCFLAGS) -o $@ $<
47 @@ -76,15 +72,9 @@
49 ## Versioned libraries rules
51 -%.$(SO_TARGET_VERSION_MAJOR).$(SO): %.$(SO_TARGET_VERSION).$(SO)
52 +%.$(SO).$(SO_TARGET_VERSION_MAJOR): %.$(SO).$(SO_TARGET_VERSION)
53 $(RM) $@ && ln -s ${<F} $@
54 -%.$(SO): %.$(SO_TARGET_VERSION_MAJOR).$(SO)
55 - $(RM) $@ && ln -s ${*F}.$(SO_TARGET_VERSION).$(SO) $@
57 -# tzcode option
58 -TZORIG_EXTRA_CFLAGS=-DSTD_INSPIRED
60 -# genren opts
61 -GENREN_PL_OPTS=-x Mach-O -n '-g' -p '| c++filt'
62 +%.$(SO): %.$(SO).$(SO_TARGET_VERSION_MAJOR)
63 + $(RM) $@ && ln -s ${*F}.$(SO).$(SO_TARGET_VERSION) $@
65 ## End Darwin-specific setup
66 --- misc/icu/source/config/mh-linux 2007-12-12 19:57:36.000000000 +0100
67 +++ misc/build/icu/source/config/mh-linux 2008-05-21 18:59:13.000000000 +0200
68 @@ -20,6 +20,14 @@
69 LD_RPATH=
70 LD_RPATH_PRE = -Wl,-rpath,
72 +## Force RPATH=$ORIGIN to locate own dependencies w/o need for LD_LIBRARY_PATH
73 +## (incl. the C++ runtime libs potentially found in the URE lib dir):
74 +ENABLE_RPATH=YES
75 +RPATHLDFLAGS=${LD_RPATH_PRE}'$$ORIGIN:$$ORIGIN/../ure-link/lib'
77 +#SH# ENABLE_RPATH=YES
78 +#SH# RPATHLDFLAGS="${LD_RPATH_PRE}'$$ORIGIN:$$ORIGIN/../ure-link/lib'"
80 ## These are the library specific LDFLAGS
81 LDFLAGSICUDT=-nodefaultlibs -nostdlib
83 --- misc/icu/source/config/mh-mingw 2008-07-01 10:41:24.000000000 +0900
84 +++ misc/build/icu/source/config/mh-mingw 2008-11-06 00:18:30.261250000 +0900
85 @@ -72,10 +72,12 @@
86 # The #M# is used to delete lines for icu-config
87 # Current full path directory.
88 #CURR_FULL_DIR=$(shell pwd -W)#M# for MSYS
89 -CURR_FULL_DIR=$(subst \,/,$(shell cmd /c cd | tail --bytes=+3))#M# for Cygwin shell
90 +CURR_FULL_DIR=$(subst \,/,$(shell cmd /c cd))#M# for Cygwin shell
91 # Current full path directory for use in source code in a -D compiler option.
92 #CURR_SRCCODE_FULL_DIR=$(subst /,\\\\,$(shell pwd -W))#M# for MSYS
93 -CURR_SRCCODE_FULL_DIR=$(subst \,/,$(shell cmd /c cd | tail --bytes=+3))#M# for Cygwin shell
94 +CURR_SRCCODE_FULL_DIR=$(subst \,/,$(shell cmd /c cd))#M# for Cygwin shell
95 +SRCDIR_DEPEND=$(shell cd $(SRCDIR) && pwd)
96 +DATAFILEPATHS_DEPEND=$(foreach p,$(DATAFILEPATHS),$(shell cd $(dir $(p)) && pwd)/$(notdir $(p)))
98 ## Compilation rules
99 %.$(STATIC_O): $(srcdir)/%.c
100 --- misc/icu/source/config/mh-solaris 2008-07-01 03:41:26.000000000 +0200
101 +++ misc/build/icu/source/config/mh-solaris 2009-02-17 11:54:45.105890123 +0100
102 @@ -18,17 +18,24 @@
104 ## Commands to link
105 ## For Sun Workshop, use CC to link to bring in C++ runtime
106 -LINK.c= $(CXX) $(CXXFLAGS) $(LDFLAGS)
107 -LINK.cc= $(CXX) $(CXXFLAGS) $(LDFLAGS)
108 +LINK.c= $(CXX) $(CXXFLAGS) $(LDFLAGS) -norunpath
109 +LINK.cc= $(CXX) $(CXXFLAGS) $(LDFLAGS) -norunpath
111 ## Commands to make a shared library
112 SHLIB.c= $(CC) $(CFLAGS) $(LDFLAGS) -G
113 -SHLIB.cc= $(CXX) $(CXXFLAGS) $(LDFLAGS) -G
114 +SHLIB.cc= $(CXX) $(CXXFLAGS) $(LDFLAGS) -G -norunpath
116 ## Compiler switch to embed a runtime search path
117 LD_RPATH= -R
118 LD_RPATH_PRE=
120 +## Force RPATH=$ORIGIN to locate own dependencies w/o need for LD_LIBRARY_PATH
121 +ENABLE_RPATH=YES
122 +RPATHLDFLAGS=${LD_RPATH}'$$ORIGIN'
124 +#SH# ENABLE_RPATH=YES
125 +#SH# RPATHLDFLAGS="${LD_RPATH}'$$ORIGIN'"
127 #LIBRARY_PATH_PREFIX=/usr/lib/lwp:
129 ## Compiler switch to embed a library name
130 --- misc/icu/source/layout/ArabicShaping.cpp 2008-07-01 03:42:04.000000000 +0200
131 +++ misc/build/icu/source/layout/ArabicShaping.cpp 2009-02-17 12:04:34.264869737 +0100
132 @@ -79,7 +79,6 @@
133 #define markFeatureMask 0x00040000UL
134 #define mkmkFeatureMask 0x00020000UL
136 -#define NO_FEATURES 0
137 #define ISOL_FEATURES (isolFeatureMask | ligaFeatureMask | msetFeatureMask | markFeatureMask | ccmpFeatureMask | rligFeatureMask | caltFeatureMask | dligFeatureMask | cswhFeatureMask | cursFeatureMask | kernFeatureMask | mkmkFeatureMask)
139 #define SHAPE_MASK 0xF0000000UL
140 @@ -174,11 +173,7 @@
141 LEUnicode c = chars[in];
142 ShapeType t = getShapeType(c);
144 - if (t == ST_NOSHAPE_NONE) {
145 - glyphStorage.setAuxData(out, NO_FEATURES, success);
146 - } else {
147 - glyphStorage.setAuxData(out, ISOL_FEATURES, success);
149 + glyphStorage.setAuxData(out, ISOL_FEATURES, success);
151 if ((t & MASK_TRANSPARENT) != 0) {
152 continue;
153 --- misc/icu/source/layoutex/ParagraphLayout.cpp 2008-07-01 03:42:02.000000000 +0200
154 +++ misc/build/icu/source/layoutex/ParagraphLayout.cpp 2008-12-01 19:32:58.000000000 +0100
155 @@ -868,7 +868,7 @@
157 return nullLanguageCode;
159 -#elif
160 +#else
162 // TODO - dummy implementation for right now...
163 le_int32 ParagraphLayout::getLanguageCode(const Locale *locale)
164 --- misc/icu/source/tools/pkgdata/cmnmode.c 2008-07-01 10:41:20.000000000 +0900
165 +++ misc/build/icu/source/tools/pkgdata/cmnmode.c 2008-11-07 00:03:32.393500000 +0900
166 @@ -69,7 +69,11 @@
167 sprintf(tmp, "# List file for gencmn:\n"
168 "CMNLIST=%s%s%s_common.lst\n\n",
169 o->tmpDir,
170 +#ifdef __MINGW32__
171 + U_FILE_ALT_SEP_STRING,
172 +#else
173 U_FILE_SEP_STRING,
174 +#endif
175 o->shortName);
176 T_FileStream_writeLine(makefile, tmp);
178 --- misc/icu/source/tools/pkgdata/dllmode.c 2008-07-01 10:41:20.000000000 +0900
179 +++ misc/build/icu/source/tools/pkgdata/dllmode.c 2008-11-07 06:08:36.016750000 +0900
180 @@ -139,7 +139,11 @@
181 sprintf(tmp, "# List file for gencmn:\n"
182 "CMNLIST=%s%s$(NAME)_dll.lst\n\n",
183 o->tmpDir,
184 +#ifdef __MINGW32__
185 + U_FILE_ALT_SEP_STRING);
186 +#else
187 U_FILE_SEP_STRING);
188 +#endif
189 T_FileStream_writeLine(makefile, tmp);
191 if(o->hadStdin == FALSE) { /* shortcut */
192 --- misc/icu/source/tools/pkgdata/make.c 2008-07-01 10:41:20.000000000 +0900
193 +++ misc/build/icu/source/tools/pkgdata/make.c 2008-11-06 23:23:04.096625000 +0900
194 @@ -313,8 +313,13 @@
195 uprv_strcpy(cfile+uprv_strlen(cfile)-uprv_strlen(objSuffix), ".c" ); /* replace .o with .c */
197 /* Make up parents.. */
198 +#ifdef __MINGW32__
199 + parentPath = uprv_malloc(1+uprv_strlen(baseName) + uprv_strlen("$(SRCDIR_DEPEND)/"));
200 + sprintf(parentPath, "$(SRCDIR_DEPEND)/%s", baseName);
201 +#else
202 parentPath = uprv_malloc(1+uprv_strlen(baseName) + uprv_strlen("$(SRCDIR)/"));
203 sprintf(parentPath, "$(SRCDIR)/%s", baseName);
204 +#endif
205 parents = pkg_appendToList(parents, NULL, parentPath);
207 /* make up commands.. */
208 @@ -379,7 +384,11 @@
209 T_FileStream_writeLine(f, "\n");
210 T_FileStream_writeLine(f, "BASE_OBJECTS=$(NAME)_dat.o\n");
211 T_FileStream_writeLine(f, "\n");
212 +#ifdef __MINGW32__
213 + T_FileStream_writeLine(f, "$(TEMP_DIR)/$(NAME).dat: $(CMNLIST) $(DATAFILEPATHS_DEPEND)\n");
214 +#else
215 T_FileStream_writeLine(f, "$(TEMP_DIR)/$(NAME).dat: $(CMNLIST) $(DATAFILEPATHS)\n");
216 +#endif
217 T_FileStream_writeLine(f, "\t$(INVOKE) $(ICUPKG) -t$(ICUDATA_CHAR) -c -s $(SRCDIR) -a $(CMNLIST) new $(TEMP_DIR)/$(CNAME).dat\n");
218 T_FileStream_writeLine(f, "\n");
219 T_FileStream_writeLine(f, "$(TEMP_DIR)/$(NAME)_dat.o : $(TEMP_DIR)/$(NAME).dat\n");
220 --- misc/icu/source/tools/pkgdata/pkgdata.c 2008-07-01 10:41:20.000000000 +0900
221 +++ misc/build/icu/source/tools/pkgdata/pkgdata.c 2008-11-07 05:59:27.110500000 +0900
222 @@ -594,7 +594,11 @@
223 exit(U_ILLEGAL_ARGUMENT_ERROR);
225 uprv_strcpy(tmp, o->srcDir);
226 +#ifdef __MINGW32__
227 + uprv_strcat(tmp, o->srcDir[uprv_strlen(o->srcDir)-1]==U_FILE_SEP_CHAR?"":U_FILE_ALT_SEP_STRING);
228 +#else
229 uprv_strcat(tmp, o->srcDir[uprv_strlen(o->srcDir)-1]==U_FILE_SEP_CHAR?"":U_FILE_SEP_STRING);
230 +#endif
231 uprv_strcat(tmp, s);
232 o->filePaths = pkg_appendToList(o->filePaths, &tail2, uprv_strdup(tmp));
233 linePtr = lineNext;
234 --- misc/icu/source/tools/pkgdata/sttcmode.c 2008-07-01 10:41:20.000000000 +0900
235 +++ misc/build/icu/source/tools/pkgdata/sttcmode.c 2008-11-07 00:30:05.690375000 +0900
236 @@ -172,7 +172,11 @@
237 sprintf(tmp, "# List file for gencmn:\n"
238 "CMNLIST=%s%s$(NAME)_static.lst\n\n",
239 o->tmpDir,
240 +#ifdef __MINGW32__
241 + U_FILE_ALT_SEP_STRING);
242 +#else
243 U_FILE_SEP_STRING);
244 +#endif
245 T_FileStream_writeLine(makefile, tmp);
247 if(o->hadStdin == FALSE) { /* shortcut */