diff options
author | Peter Breitenlohner <peb@mppmu.mpg.de> | 2014-09-18 09:45:34 +0000 |
---|---|---|
committer | Peter Breitenlohner <peb@mppmu.mpg.de> | 2014-09-18 09:45:34 +0000 |
commit | 4efeaac2183eaaf29d2eaf7274a58d73bf33231f (patch) | |
tree | 7074c1702e572366dfeecf1736ca3aaf6de08a71 /Build/source/libs/icu/icu-54.1-PATCHES | |
parent | 1eef9fd199ea4cccde89a63d40fdedda9802c20e (diff) |
icu 53.1 (release candidate)
git-svn-id: svn://tug.org/texlive/trunk@35191 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/libs/icu/icu-54.1-PATCHES')
8 files changed, 1097 insertions, 0 deletions
diff --git a/Build/source/libs/icu/icu-54.1-PATCHES/ChangeLog b/Build/source/libs/icu/icu-54.1-PATCHES/ChangeLog new file mode 100644 index 00000000000..c7a75f295f6 --- /dev/null +++ b/Build/source/libs/icu/icu-54.1-PATCHES/ChangeLog @@ -0,0 +1,439 @@ +2014-09-18 Peter Breitenlohner <peb@mppmu.mpg.de> + + Imported icu-54.1 source tree (icu4c-54_rc-src.tgz) from: + http://download.icu-project.org/files/icu4c/54rc/ + + * patch-11-cygwin64, patch-15-solaris, + patch-18-solaris-depend (removed): Included upstream. + + * patch-03-gcc-atomic, patch-12-mingw, + patch-13-STATIC_PREFIX, patch-14-xopen, patch-16-putil, + patch-17-cygwin-no-w32api: Adapted. + +2014-05-14 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-18-solaris-depend (new): Minor build fix for solaris, + dependencies for C files require $(CFLAGS), i.e., -std=c99. + +2014-04-03 Peter Breitenlohner <peb@mppmu.mpg.de> + + Updated icu-53.1 source tree (icu4c-53_1-src.tgz) from: + http://download.icu-project.org/files/icu4c/53.1/ + +2014-03-22 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-16-putil (new): Build fix for Cygwin/MinGW with -ansi, + * patch-17-cygwin-no-w32api (new): Use Posix instead of Win32 + API for Cygwin, + from Ken Brown <kbrow1i@gmail.com>. + +2014-03-20 Peter Breitenlohner <peb@mppmu.mpg.de> + + Imported icu-53.1 source tree (icu4c-53_rc-src.tgz) from: + http://download.icu-project.org/files/icu4c/53rc/ + + * patch-04-Windows2000 (removed): Drop Windows2000 support. + * patch-08-avoid-rebuild (removed): Included upstream. + + * patch-03-gcc-atomic, patch-11-cygwin64, patch-12-mingw, + patch-13-STATIC_PREFIX, patch-14-xopen: Adapted. + + * patch-15-solaris (new): Build fix for Solaris, from + http://bugs.icu-project.org/trac/ticket/10580 + +2014-02-21 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-11-cygwin64 (new): Enable Cygwin64 (from Cygwin64 port). + +2013-10-10 Peter Breitenlohner <peb@mppmu.mpg.de> + + Updated icu-52.1 source tree (icu4c-52_1-src.tgz) from: + http://download.icu-project.org/files/icu4c/52.1/ + +2013-09-26 Peter Breitenlohner <peb@mppmu.mpg.de> + + Imported icu-52.1 source tree (icu4c-52_rc2-src.tgz) from: + http://download.icu-project.org/files/icu4c/52rc/ + + * patch-03-gcc-atomic, patch-04-Windows2000, + patch-08-avoid-rebuild, patch-12-mingw, patch-13-STATIC_PREFIX, + patch-14-xopen: Adapted. + +2013-04-02 Karl Berry <karl@tug.org> + + * patch-14-xopen: do not define _XOPEN_SOURCE_EXTENDED on Solaris, + notwithstanding comments in icu source. + From Apostolos, tlbuild 27 Mar 2013 15:52:26 (and Ettore, later). + +2013-03-21 Peter Breitenlohner <peb@mppmu.mpg.de> + + Updated icu-51.1 source tree (icu4c-51_1-src.tgz) from: + http://download.icu-project.org/files/icu4c/51.1/ + +2013-03-14 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-08-avoid-rebuild: Really avoid to run pkgdata again. + +2013-03-07 Peter Breitenlohner <peb@mppmu.mpg.de> + + Imported icu-51.1 source tree (icu4c-51_rc-src.tgz) from: + http://download.icu-project.org/files/icu4c/51rc/ + + * patch-11-CURR_FULL_DIR, patch-14-mingw-cross, + patch-83-zonemeta-bugfix, patch-84-c++11-bugfix (removed): + Now in icu-51.1. + * patch-{40,50,60,70,82}-* (removed): Obsolete, layout not used. + * patch-02-kFreeBSD (removed): Not needed. + + * patch-03-gcc-atomic, patch-04-Windows2000, + patch-08-avoid-rebuild, patch-12-mingw, patch-13-STATIC_PREFIX: + Adapted. + +2012-11-29 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-04-Windows2000 (new): From Akira. + +2012-11-16 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-84-c++11-bugfix (new): Required for gcc-4.7. + From http://bugs.icu-project.org/trac/ticket/9728. + +2012-11-06 Peter Breitenlohner <peb@mppmu.mpg.de> + + Updated icu-50.1 source tree (icu4c-50_1-src.tgz) from: + http://download.icu-project.org/files/icu4c/50.1/ + + * patch-83-zonemeta-bugfix (new): Required for MinGW. + +2012-10-24 Peter Breitenlohner <peb@mppmu.mpg.de> + + Imported icu-50.1 source tree (icu4c-50_rc-src.tgz) from: + http://download.icu-project.org/files/icu4c/50rc/ + + * patch-01-Cygwin, patch-02-FreeBSD (removed): Now in icu-50.1. + * patch-14-GENCCODE_ASSEMBLY (removed): Obsolete. + + * patch-{08,11,12,13,40,50,60,70,82}-*:Adapted. + + * patch-02-kFreeBSD (new): Use Posix conform timezone decl. + * patch-03-gcc-atomic (new): Required for gcc-4.4. + * patch-14-mingw-cross (new): Required for linux->MinGW32 cross. + +2012-06-18 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-82-Indic-bugfix (new): Revert ICU SVN commit 26090. + +2012-06-09 Peter Breitenlohner <peb@mppmu.mpg.de> + + Imported icu-49.1.2 source tree (icu4c-49_1_2-src.tgz) from: + http://download.icu-project.org/files/icu4c/49.1.2/ + + * patch-07-configure-utf16-string, patch-09-generated (removed): + Obsolete. + + * patch-{01,02,08,11,12,13,14,40,50,60,70}-*: Adapted. + +2012-04-24 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-02-FreeBSD (new): Build fix for FreeBSD. + Reported by Nikola Lecic <nikola.lecic@anthesphoria.net> + +2012-04-18 Peter Breitenlohner <peb@mppmu.mpg.de> + + Imported icu-49.1.1 source tree (icu4c-49_1_1-src.tgz) from: + http://download.icu-project.org/files/icu4c/49.1.1/ + + * patch-05-m4-quoting: Removed, now in icu-49.1.1. + + * patch-{01,07,08,09,11,12,13,14,40,50,60,70}-*: Adapted. + +2012-03-23 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-01-Cygwin (new): Build fix for Cygwin. + Reported by Ken Brown <kbrow1i@gmail.com>. + +2012-03-22 Peter Breitenlohner <peb@mppmu.mpg.de> + + Updated icu-49.1 source tree (icu4c-49_1-src.tgz) from: + http://download.icu-project.org/files/icu4c/49.1/ + + * patch-{01,02,03,04}-*: Removed, now in icu-49.1. + + * patch-{05,07,08,09,11,12,13,14,40,50,60,70}-*: Adapted. + +2012-03-21 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-05-m4-quoting (new): Correct m4 quoting in configure.in. + +2012-03-17 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-04-FreeBSD (new): From ICU. + +2012-03-15 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-40-auxParam: Fix a typo (auxillary => auxiliary). + * patch-70-Arabic: Remove useless changes of original code. + +2012-03-12 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-03-U_PF_UNKNOWN (new): Bug fix for the case that + U_PLATFORM == U_PF_UNKNOWN as, e.g., for FreeBSD (why?). + Reported by Hilmar Preusse <hille42@web.de>. + +2012-03-03 Peter Breitenlohner <peb@mppmu.mpg.de> + + Imported icu-49.1 source tree (icu4c-49_rc-src.tgz) from: + http://download.icu-project.org/files/icu4c/49rc/ + + * patch-40-LESwaps, patch-81-Indic: Removed, now in icu-49.1. + + * patch-01-UVoidFunction (new): Bug fix for '--disable-dyload'. + * patch-02-AC_CHECK_TOOL (new): Bug fix for cross compilation. + + * TL-Changes, patch-07-configure-utf16-string, + patch-08-avoid-rebuild, patch-09-generated, + patch-11-CURR_FULL_DIR, patch-12-mingw, patch-13-STATIC_PREFIX, + patch-14-GENCCODE_ASSEMBLY, patch-50-Vertical, patch-60-KernPair, + patch-70-Arabic: Adapted. + * patch-05-auxParam (removed): Renamed ... + * patch-40-auxParam (new): ... to this and adapted. + +2011-08-31 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-40-LESwaps: See ICU Ticket #8657, comment 11. + +2011-08-09 Peter Breitenlohner <peb@mppmu.mpg.de> + + Imported icu-4.8.1 source tree (icu4c-4_8_1-src.tgz) from: + http://download.icu-project.org/files/icu4c/4.8.1/ + + * patch-06-mingw: Removed, included in icu-4.8.1. + + * TL-Changes, patch-05-auxParam, + patch-07-configure-utf16-string, patch-08-avoid-rebuild, + patch-09-generated, patch-11-CURR_FULL_DIR, patch-12-mingw, + patch-13-STATIC_PREFIX, patch-14-GENCCODE_ASSEMBLY, + patch-50-Vertical, patch-60-KernPair, patch-70-Arabic, + patch-81-Indic: Adapted. + + * patch-40-LESwaps: Rewritten, see ICU Ticket #8657, comment 7. + +2011-06-19 Karl Berry <karl@tug.org> + + * patch-40-LESwaps: revert to ICU 4.4, as 4.6 and 4.8 code + is broken on BigEndian machines. + http://bugs.icu-project.org/trac/ticket/8657 + tlbuild mail, 17 Jun 2011 17:10:38 + +2011-05-26 Peter Breitenlohner <peb@mppmu.mpg.de> + + Imported icu-4.8 source tree (icu4c-4_8-src.tgz) from: + http://download.icu-project.org/files/icu4c/4.8/ + + * patch-80-Indic: Removed (not needed). + + * TL-Changes, patch-05-auxParam, patch-06-mingw, + patch-07-configure-utf16-string, patch-08-avoid-rebuild, + patch-09-generated, patch-11-CURR_FULL_DIR, patch-12-mingw, + patch-13-STATIC_PREFIX, patch-14-GENCCODE_ASSEMBLY, + patch-50-Vertical, patch-60-KernPair, patch-70-Arabic, + patch-81-Indic: Adapted. + +2011-05-11 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-14-GENCCODE_ASSEMBLY (new): For amd64-kfreebsd. + +2011-05-09 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-13-STATIC_PREFIX (new): Never use libsicuxxx.a. + +2011-02-22 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-81-Indic (new): IndicReordering.*: Respect array bounds. + + * patch-05-auxParam: Fix a bug introduced when importing icu-4.6. + +2010-12-07 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-11-CURR_FULL_DIR: Correctly handle CURR_FULL_DIR when + cross compiling. + +2010-12-02 Peter Breitenlohner <peb@mppmu.mpg.de> + + Imported icu-4.6 source tree (icu4c-4_6-src.tgz) from: + http://download.icu-project.org/files/icu4c/4.6/ + + * patch-10-cross-TOOLEXEEXT, patch-13-remove-extra-token: + All removed, included in icu-4.6. + + * TL-Changes, patch-05-auxParam, patch-07-configure-utf16-string, + patch-08-avoid-rebuild, patch-11-CURR_FULL_DIR, patch-12-mingw, + patch-50-Vertical, patch-60-KernPair, patch-70-Arabic, + patch-80-Indic: Adapted. + + * patch-06-mingw (new): MinGW32 is Windows, not Cygwin. + * patch-09-generated (new): Regenerate configure. + +2010-04-08 Karl Berry <karl@tug.org> + + * patch-07-configure-utf16-string: new patch so we can disable the + check for UTF16 string literals. See comments in our + libs/icu/configure.ac. + +2010-03-31 Peter Breitenlohner <peb@mppmu.mpg.de> + + Imported icu-4.4 source tree (icu4c-4_4-src.tgz) from: + http://download.icu-project.org/files/icu4c/4.4/ + + * fix-case-insensitive, patch-07-cygwin, patch-09-cross, + patch-20-fix-gt_ge, patch-21-fix-not_aligned, + patch-22-fix-JK-adjust_for_marks, patch-23-fix-JK-GlyphPos: + All removed, included in icu-4.4. + + * TL-Changes, patch-05-auxParam, patch-08-avoid-rebuild, + patch-10-cross-TOOLEXEEXT, patch-11-CURR_FULL_DIR, + patch-12-mingw, patch-50-Vertical, patch-60-KernPair, + patch-70-Arabic, patch-80-Indic: Adapted. + + * patch-13-remove-extra-token (new): Avoid compiler warning. + +2010-02-22 Peter Breitenlohner <peb@mppmu.mpg.de> + + Fixes for Linux => MinGW32 cross compilation. + * patch-10-cross-TOOLEXEEXT (new): Fix a cross compilation typo. + * patch-11-CURR_FULL_DIR (new): Fix for cross compilation on + a Unix like system. Does MinGW32 have pwd? + * patch-12-mingw (new): Changes in config/mh-mingw (libraries + named as for everyone else). + +2009-10-28 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-09-cross (new): Modify AC_CHECK_64BIT_LIBS in aclocal.m4 + to allow cross compilation. + +2009-10-26 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-08-avoid-rebuild (new): Modify data/Makefile.in such + that libsicudata.a is not rebuilt again and again. + +2009-10-25 Peter Breitenlohner <peb@mppmu.mpg.de> + + Imported icu-4.2.1 source tree (icu4c-4_2_1-src.tgz) from: + http://download.icu-project.org/files/icu4c/4.2.1/ + + * patch-02-syntax, patch-40-Shaping (both removed): Obsolete. + + * TL-Changes, patch-80-Indic: Adapted. + +2009-10-24 Peter Breitenlohner <peb@mppmu.mpg.de> + + Imported icu-4.0.1 source tree (icu4c-4_0_1-src.tgz) from: + http://download.icu-project.org/files/icu4c/4.0.1/ + + * patch-01-backport-4.0.1, patch-01-too_much-4.0.1, + patch-06-build-fix, patch-06-partial-4.0.1, + patch-10-backport-4.0.1, patch-11-partial-4.0.1, + patch-99-test (all removed): Obsolete. + + * TL-Changes, patch-40-Shaping, patch-80-Indic: Adapted. + +2009-10-23 Peter Breitenlohner <peb@mppmu.mpg.de> + + Imported icu-3.8.1 source tree (icu4c-3_8_1-src.tgz) from: + http://download.icu-project.org/files/icu4c/3.8.1/ + + * TL-Changes (new): Description of modifications of source tree. + + * fix-case-insensitive (new): Shell script used to rename + source/layout/Features.h => ICUFeatures.h (required for Cygwin) + and modify references to that file accordingly. + + * patch-01-backport-4.0.1 (new): Replace layout/CanonData.cpp, + layout/GlyphPositionAdjustments.cpp, + layout/IndicReordering.{cpp,h}, layout/LELanguages.h, + layout/LESwaps.h, layout/OpenTypeLayoutEngine.cpp, + layout/ScriptAndLanguage.cpp, layout/ThaiLayoutEngine.{cpp,h}, + layoutex/ParagraphLayout.cpp, and test/letest/sfnt.h by their + 4.0.1 versions. + * patch-01-too_much-4.0.1 (new): Undo one change in + layoutex/ParagraphLayout.cpp. + + * patch-02-syntax (new): Fix some dubious syntax in + layoutex/ParagraphLayout.cpp. + + * patch-05-auxParam (new): Handling of extension for XeTeX in + layout/AlternateSubstSubtables.cpp, + layout/GlyphIterator.{cpp,h}, + layout/LEGlyphStorage.{cpp,h}, + and layout/OpenTypeLayoutEngine.{cpp,h}. + + * patch-06-build-fix (new): Build fix in common/ubidi.c. + * patch-06-partial-4.0.1 (new): Partial backport of common/putil.c + from 4.0.1. + * patch-07-cygwin (new): Changes in config/mh-cygwin (libraries + named as for everyone else). + + * patch-10-backport-4.0.1 (new): Replace + layout/ScriptAndLanguageTags.{cpp,h} by their 4.0.1 versions. + * patch-11-partial-4.0.1 (new): Backport of some changes in + layout/LayoutEngine.cpp from 4.0.1. + + Bug fixes originally by: Jonathan Kew <jfkthame@googlemail.com> + * patch-20-fix-gt_ge (new): In layout/ClassDefinitionTables.cpp. + * patch-21-fix-not_aligned (new): In layout/ExtensionSubtables.cpp. + * patch-22-fix-JK-adjust_for_marks (new): In + layout/MarkToBasePosnSubtables.cpp. + * patch-23-fix-JK-GlyphPos (new): In + layout/OpenTypeLayoutEngine.cpp. + + * patch-40-Shaping (new): Update shaping type data in + layout/ShapingTypeData.cpp to Unicode 5.1. + + * patch-50-Vertical (new): Handling vertical writing in + layout/LEFontInstance.h and layout/ValueRecords.cpp. + + * patch-60-KernPair (new): Modified handling of kerns in + layout/LEFontInstance.{cpp,h} and layout/LayoutEngine.cpp. + + * patch-70-Arabic (new): Add Draft Mongolian shaping classes + in layout/ArabicShaping.{cpp,h} and LayoutEngine.cpp. + + * patch-80-Indic (new): Backport of some changes in + layout/IndicClassTables.cpp from 4.0.1 and in + layout/IndicReordering.cpp from 4.2.1. + + * patch-99-test (new): Changes from TeX Live icu-xetex in + test/letest/PortableFontInstance.{cpp,h}, + test/letest/gendata.{cpp,xml}, test/letest/letest.{cpp,xml}. + + These modifications and patches of icu-3.8.1/ reproduce the + previous icu-xetex/ source tree (except for test data). + +2009-10-22 Peter Breitenlohner <peb@mppmu.mpg.de> + + Slightly rearranged the icu-xetex/ source tree. + + * layout/LELanguages.h: Changed some comments, from 4.0.1. + + * layout/LEGlyphStorage.{cpp,h}, + layout/OpenTypeLayoutEngine.cpp: Renamed adoptAuxDataArrays + back to adoptAuxDataArray as it was in 3.8.1. + + * layout/LEGlyphStorage.h: The XeTeX modifications have added + an additional parameter for setAuxData, however, in most cases + the corresponding argument is NULL. Added an inline definition + of the original method. + layout/ArabicShaping.cpp, layout/HanLayoutEngine.cpp, + layout/HangulLayoutEngine.cpp, layout/IndicReordering.cpp, + layout/KhmerReordering.cpp, layout/LayoutEngine.cpp, + layout/TibetanReordering.cpp: Restored the original 3.8.1 use of + setAuxData without the additional argument NULL. + + * data/Makefile.in: Restored 3.8.1 version, Autoconf >=2.61 ensures + a posix shell making, these changes obsolete. + + * layout/ScriptAndLanguageTags.{cpp,h}: Backport from 4.0.1, + additional tags and changed comments. + + * layout/OpenTypeLayoutEngine.cpp: Removed some obsolete code, + surrounded by #if 0...#endif. diff --git a/Build/source/libs/icu/icu-54.1-PATCHES/TL-Changes b/Build/source/libs/icu/icu-54.1-PATCHES/TL-Changes new file mode 100644 index 00000000000..6c311641b4e --- /dev/null +++ b/Build/source/libs/icu/icu-54.1-PATCHES/TL-Changes @@ -0,0 +1,19 @@ +Changes applied to the icu-54.1/ tree as obtained from: + http://download.icu-project.org/files/icu4c/54rc/icu4c-53_rc-src.tgz + +Removed: + as_is/ + packaging/ + +Updated: + source/config.guess + source/config.sub + source/install-sh + +Reduced size of source/data/in/icudt53l.dat + icupkg -r 'curr/*' IN OUT + icupkg -r 'lang/*' IN OUT + icupkg -r 'region/*' IN OUT + icupkg -r 'rfc*.spp' IN OUT + icupkg -r 'zone/*' IN OUT + diff --git a/Build/source/libs/icu/icu-54.1-PATCHES/patch-03-gcc-atomic b/Build/source/libs/icu/icu-54.1-PATCHES/patch-03-gcc-atomic new file mode 100644 index 00000000000..7fd4fb33871 --- /dev/null +++ b/Build/source/libs/icu/icu-54.1-PATCHES/patch-03-gcc-atomic @@ -0,0 +1,14 @@ + It seems gcc-4.4 uses external calls. + +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/common/putilimp.h icu-54.1/source/common/putilimp.h +--- icu-54.1.orig/source/common/putilimp.h 2014-09-17 03:20:36.000000000 +0200 ++++ icu-54.1/source/common/putilimp.h 2014-09-18 09:38:02.000000000 +0200 +@@ -191,7 +191,7 @@ + /* Use the predefined value. */ + #elif U_PLATFORM == U_PF_MINGW + #define U_HAVE_GCC_ATOMICS 0 +-#elif U_GCC_MAJOR_MINOR >= 404 || defined(__clang__) ++#elif U_GCC_MAJOR_MINOR >= 405 || defined(__clang__) + /* TODO: Intel icc and IBM xlc on AIX also support gcc atomics. (Intel originated them.) + * Add them for these compilers. + * Note: Clang sets __GNUC__ defines for version 4.2, so misses the 4.4 test here. diff --git a/Build/source/libs/icu/icu-54.1-PATCHES/patch-12-mingw b/Build/source/libs/icu/icu-54.1-PATCHES/patch-12-mingw new file mode 100644 index 00000000000..6c4dbae66f2 --- /dev/null +++ b/Build/source/libs/icu/icu-54.1-PATCHES/patch-12-mingw @@ -0,0 +1,64 @@ + We don't want this for TeX Live cross compilation. + +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/config/mh-mingw icu-54.1/source/config/mh-mingw +--- icu-54.1.orig/source/config/mh-mingw 2014-09-17 03:21:14.000000000 +0200 ++++ icu-54.1/source/config/mh-mingw 2014-09-18 09:46:36.000000000 +0200 +@@ -59,27 +59,9 @@ + ## Non-shared intermediate object suffix + STATIC_O = ao + +-ifeq ($(ENABLE_SHARED),YES) +-SO_TARGET_VERSION_SUFFIX = $(SO_TARGET_VERSION_MAJOR) +-else +-SO_TARGET_VERSION_SUFFIX = +-endif +- +-# Static library prefix and file extension +-LIBSICU = lib$(LIBPREFIX)$(STATIC_PREFIX)$(ICUPREFIX) +-A = a +- + ## An import library is needed for z/OS and MSVC + IMPORT_LIB_EXT = .dll.a + +-LIBPREFIX= +- +-# Change the stubnames so that poorly working FAT disks and installation programs can work. +-# This is also for backwards compatibility. +-DATA_STUBNAME = dt +-I18N_STUBNAME = in +-LIBICU = $(STATIC_PREFIX_WHEN_USED)$(ICUPREFIX) +- + #SH### copied from Makefile.inc + #SH## for icu-config to test with + #SH#ICULIBS_COMMON_LIB_NAME="${LIBICU}${COMMON_STUBNAME}${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}.${SO}" +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/config/mh-mingw64 icu-54.1/source/config/mh-mingw64 +--- icu-54.1.orig/source/config/mh-mingw64 2014-09-17 03:21:14.000000000 +0200 ++++ icu-54.1/source/config/mh-mingw64 2014-09-18 09:47:57.000000000 +0200 +@@ -59,27 +59,9 @@ + ## Non-shared intermediate object suffix + STATIC_O = ao + +-ifeq ($(ENABLE_SHARED),YES) +-SO_TARGET_VERSION_SUFFIX = $(SO_TARGET_VERSION_MAJOR) +-else +-SO_TARGET_VERSION_SUFFIX = +-endif +- +-# Static library prefix and file extension +-LIBSICU = lib$(LIBPREFIX)$(STATIC_PREFIX)$(ICUPREFIX) +-A = a +- + ## An import library is needed for z/OS and MSVC + IMPORT_LIB_EXT = .dll.a + +-LIBPREFIX= +- +-# Change the stubnames so that poorly working FAT disks and installation programs can work. +-# This is also for backwards compatibility. +-DATA_STUBNAME = dt +-I18N_STUBNAME = in +-LIBICU = $(STATIC_PREFIX_WHEN_USED)$(ICUPREFIX) +- + #SH### copied from Makefile.inc + #SH## for icu-config to test with + #SH#ICULIBS_COMMON_LIB_NAME="${LIBICU}${COMMON_STUBNAME}${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}.${SO}" diff --git a/Build/source/libs/icu/icu-54.1-PATCHES/patch-13-STATIC_PREFIX b/Build/source/libs/icu/icu-54.1-PATCHES/patch-13-STATIC_PREFIX new file mode 100644 index 00000000000..3c463cacfcb --- /dev/null +++ b/Build/source/libs/icu/icu-54.1-PATCHES/patch-13-STATIC_PREFIX @@ -0,0 +1,31 @@ +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/config/Makefile.inc.in icu-54.1/source/config/Makefile.inc.in +--- icu-54.1.orig/source/config/Makefile.inc.in 2014-09-17 03:21:14.000000000 +0200 ++++ icu-54.1/source/config/Makefile.inc.in 2014-09-18 09:50:15.000000000 +0200 +@@ -44,7 +44,7 @@ + LIBICU = lib$(ICUPREFIX) + + # Static library prefix and file extension +-STATIC_PREFIX = s ++STATIC_PREFIX = + LIBSICU = lib$(STATIC_PREFIX)$(ICUPREFIX) + A = a + +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/icudefs.mk.in icu-54.1/source/icudefs.mk.in +--- icu-54.1.orig/source/icudefs.mk.in 2014-09-17 03:29:04.000000000 +0200 ++++ icu-54.1/source/icudefs.mk.in 2014-09-18 09:51:25.000000000 +0200 +@@ -207,13 +207,13 @@ + + ## If we can't use the shared libraries, use the static libraries + ifneq ($(ENABLE_SHARED),YES) +-STATIC_PREFIX_WHEN_USED = s ++STATIC_PREFIX_WHEN_USED = + else + STATIC_PREFIX_WHEN_USED = + endif + + # Static library prefix and file extension +-STATIC_PREFIX = s ++STATIC_PREFIX = + LIBSICU = $(LIBPREFIX)$(STATIC_PREFIX)$(ICUPREFIX) + A = a + SOBJ = $(SO) diff --git a/Build/source/libs/icu/icu-54.1-PATCHES/patch-14-xopen b/Build/source/libs/icu/icu-54.1-PATCHES/patch-14-xopen new file mode 100644 index 00000000000..896c87ac54b --- /dev/null +++ b/Build/source/libs/icu/icu-54.1-PATCHES/patch-14-xopen @@ -0,0 +1,21 @@ + Do not define _XOPEN_SOURCE_EXTENDED on Solaris, + notwithstanding comments in icu source. + +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/common/uposixdefs.h icu-54.1/source/common/uposixdefs.h +--- icu-54.1.orig/source/common/uposixdefs.h 2014-09-17 03:20:34.000000000 +0200 ++++ icu-54.1/source/common/uposixdefs.h 2014-09-18 09:53:21.000000000 +0200 +@@ -49,10 +49,13 @@ + * Make sure things like readlink and such functions work. + * Poorly upgraded Solaris machines can't have this defined. + * Cleanly installed Solaris can use this #define. ++ * [Experience with TeX Live is that it always causes failure. ++ * http://tug.org/pipermail/tlbuild/2013q1/002493.html ++ * http://tug.org/pipermail/tlbuild/2013q1/002536.html ] + * + * z/OS needs this definition for timeval and to get usleep. + */ +-#if !defined(_XOPEN_SOURCE_EXTENDED) ++#if !defined(_XOPEN_SOURCE_EXTENDED) && !defined(__sun) + # define _XOPEN_SOURCE_EXTENDED 1 + #endif + diff --git a/Build/source/libs/icu/icu-54.1-PATCHES/patch-16-putil b/Build/source/libs/icu/icu-54.1-PATCHES/patch-16-putil new file mode 100644 index 00000000000..343b9042a33 --- /dev/null +++ b/Build/source/libs/icu/icu-54.1-PATCHES/patch-16-putil @@ -0,0 +1,45 @@ +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/common/putil.cpp icu-54.1/source/common/putil.cpp +--- icu-54.1.orig/source/common/putil.cpp 2014-09-17 03:20:30.000000000 +0200 ++++ icu-54.1/source/common/putil.cpp 2014-09-18 10:05:08.000000000 +0200 +@@ -41,6 +41,20 @@ + // Must be before any other #includes. + #include "uposixdefs.h" + ++#if (U_PF_MINGW <= U_PLATFORM && U_PLATFORM <= U_PF_CYGWIN) && defined(__STRICT_ANSI__) ++/* tzset isn't defined in strict ANSI on Cygwin and MinGW. */ ++#undef __STRICT_ANSI__ ++#endif ++ ++/* ++ * Cygwin with GCC requires inclusion of time.h after the above disabling strict asci mode statement. ++ */ ++#include <time.h> ++ ++#if !U_PLATFORM_USES_ONLY_WIN32_API ++#include <sys/time.h> ++#endif ++ + /* include ICU headers */ + #include "unicode/utypes.h" + #include "unicode/putil.h" +@@ -102,20 +116,6 @@ + # include <sys/neutrino.h> + #endif + +-#if (U_PF_MINGW <= U_PLATFORM && U_PLATFORM <= U_PF_CYGWIN) && defined(__STRICT_ANSI__) +-/* tzset isn't defined in strict ANSI on Cygwin and MinGW. */ +-#undef __STRICT_ANSI__ +-#endif +- +-/* +- * Cygwin with GCC requires inclusion of time.h after the above disabling strict asci mode statement. +- */ +-#include <time.h> +- +-#if !U_PLATFORM_USES_ONLY_WIN32_API +-#include <sys/time.h> +-#endif +- + /* + * Only include langinfo.h if we have a way to get the codeset. If we later + * depend on more feature, we can test on U_HAVE_NL_LANGINFO. diff --git a/Build/source/libs/icu/icu-54.1-PATCHES/patch-17-cygwin-no-w32api b/Build/source/libs/icu/icu-54.1-PATCHES/patch-17-cygwin-no-w32api new file mode 100644 index 00000000000..0fd3c40e708 --- /dev/null +++ b/Build/source/libs/icu/icu-54.1-PATCHES/patch-17-cygwin-no-w32api @@ -0,0 +1,464 @@ +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/common/putilimp.h icu-54.1/source/common/putilimp.h +--- icu-54.1.orig/source/common/putilimp.h 2014-09-18 09:38:02.000000000 +0200 ++++ icu-54.1/source/common/putilimp.h 2014-09-18 10:16:52.000000000 +0200 +@@ -148,7 +148,7 @@ + + #ifdef U_HAVE_MMAP + /* Use the predefined value. */ +-#elif U_PLATFORM_HAS_WIN32_API ++#elif U_PLATFORM_USES_ONLY_WIN32_API + # define U_HAVE_MMAP 0 + #else + # define U_HAVE_MMAP 1 +@@ -171,7 +171,7 @@ + */ + #ifdef U_HAVE_DIRENT_H + /* Use the predefined value. */ +-#elif U_PLATFORM_HAS_WIN32_API ++#elif U_PLATFORM_USES_ONLY_WIN32_API + # define U_HAVE_DIRENT_H 0 + #else + # define U_HAVE_DIRENT_H 1 +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/common/umutex.cpp icu-54.1/source/common/umutex.cpp +--- icu-54.1.orig/source/common/umutex.cpp 2014-09-17 03:20:32.000000000 +0200 ++++ icu-54.1/source/common/umutex.cpp 2014-09-18 10:16:52.000000000 +0200 +@@ -37,7 +37,7 @@ + // Build time user mutex hook: #include "U_USER_MUTEX_CPP" + #include U_MUTEX_XSTR(U_USER_MUTEX_CPP) + +-#elif U_PLATFORM_HAS_WIN32_API ++#elif U_PLATFORM_USES_ONLY_WIN32_API + + //------------------------------------------------------------------------------------------- + // +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/common/umutex.h icu-54.1/source/common/umutex.h +--- icu-54.1.orig/source/common/umutex.h 2014-09-17 03:20:26.000000000 +0200 ++++ icu-54.1/source/common/umutex.h 2014-09-18 10:16:52.000000000 +0200 +@@ -74,7 +74,7 @@ + } + U_NAMESPACE_END + +-#elif U_PLATFORM_HAS_WIN32_API ++#elif U_PLATFORM_USES_ONLY_WIN32_API + + // MSVC compiler. Reads and writes of volatile variables have + // acquire and release memory semantics, respectively. +@@ -291,7 +291,7 @@ + // #inlcude "U_USER_MUTEX_H" + #include U_MUTEX_XSTR(U_USER_MUTEX_H) + +-#elif U_PLATFORM_HAS_WIN32_API ++#elif U_PLATFORM_USES_ONLY_WIN32_API + + /* Windows Definitions. + * Windows comes first in the platform chain. +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/common/wintz.c icu-54.1/source/common/wintz.c +--- icu-54.1.orig/source/common/wintz.c 2014-09-17 03:20:28.000000000 +0200 ++++ icu-54.1/source/common/wintz.c 2014-09-18 10:16:52.000000000 +0200 +@@ -11,7 +11,7 @@ + + #include "unicode/utypes.h" + +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + + #include "wintz.h" + #include "cmemory.h" +@@ -435,4 +435,4 @@ + return icuid; + } + +-#endif /* U_PLATFORM_HAS_WIN32_API */ ++#endif /* U_PLATFORM_USES_ONLY_WIN32_API */ +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/common/wintz.h icu-54.1/source/common/wintz.h +--- icu-54.1.orig/source/common/wintz.h 2014-09-17 03:20:28.000000000 +0200 ++++ icu-54.1/source/common/wintz.h 2014-09-18 10:16:52.000000000 +0200 +@@ -14,7 +14,7 @@ + + #include "unicode/utypes.h" + +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + + /** + * \file +@@ -29,6 +29,6 @@ + U_CFUNC const char* U_EXPORT2 + uprv_detectWindowsTimeZone(); + +-#endif /* U_PLATFORM_HAS_WIN32_API */ ++#endif /* U_PLATFORM_USES_ONLY_WIN32_API */ + + #endif /* __WINTZ */ +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/i18n/datefmt.cpp icu-54.1/source/i18n/datefmt.cpp +--- icu-54.1.orig/source/i18n/datefmt.cpp 2014-09-17 03:19:56.000000000 +0200 ++++ icu-54.1/source/i18n/datefmt.cpp 2014-09-18 10:16:52.000000000 +0200 +@@ -355,7 +355,7 @@ + DateFormat::create(EStyle timeStyle, EStyle dateStyle, const Locale& locale) + { + UErrorCode status = U_ZERO_ERROR; +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + char buffer[8]; + int32_t count = locale.getKeywordValue("compat", buffer, sizeof(buffer), status); + +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/i18n/windtfmt.cpp icu-54.1/source/i18n/windtfmt.cpp +--- icu-54.1.orig/source/i18n/windtfmt.cpp 2014-09-17 03:19:56.000000000 +0200 ++++ icu-54.1/source/i18n/windtfmt.cpp 2014-09-18 10:16:52.000000000 +0200 +@@ -11,7 +11,7 @@ + + #include "unicode/utypes.h" + +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + + #if !UCONFIG_NO_FORMATTING + +@@ -318,5 +318,5 @@ + + #endif /* #if !UCONFIG_NO_FORMATTING */ + +-#endif // U_PLATFORM_HAS_WIN32_API ++#endif // U_PLATFORM_USES_ONLY_WIN32_API + +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/i18n/windtfmt.h icu-54.1/source/i18n/windtfmt.h +--- icu-54.1.orig/source/i18n/windtfmt.h 2014-09-17 03:19:54.000000000 +0200 ++++ icu-54.1/source/i18n/windtfmt.h 2014-09-18 10:16:52.000000000 +0200 +@@ -14,7 +14,7 @@ + + #include "unicode/utypes.h" + +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + + #if !UCONFIG_NO_FORMATTING + +@@ -135,6 +135,6 @@ + + #endif /* #if !UCONFIG_NO_FORMATTING */ + +-#endif // U_PLATFORM_HAS_WIN32_API ++#endif // U_PLATFORM_USES_ONLY_WIN32_API + + #endif // __WINDTFMT +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/i18n/wintzimpl.cpp icu-54.1/source/i18n/wintzimpl.cpp +--- icu-54.1.orig/source/i18n/wintzimpl.cpp 2014-09-17 03:19:58.000000000 +0200 ++++ icu-54.1/source/i18n/wintzimpl.cpp 2014-09-18 10:16:52.000000000 +0200 +@@ -11,7 +11,7 @@ + + #include "unicode/utypes.h" + +-#if U_PLATFORM_HAS_WIN32_API && !UCONFIG_NO_FORMATTING ++#if U_PLATFORM_USES_ONLY_WIN32_API && !UCONFIG_NO_FORMATTING + + #include "wintzimpl.h" + +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/i18n/wintzimpl.h icu-54.1/source/i18n/wintzimpl.h +--- icu-54.1.orig/source/i18n/wintzimpl.h 2014-09-17 03:19:54.000000000 +0200 ++++ icu-54.1/source/i18n/wintzimpl.h 2014-09-18 10:16:52.000000000 +0200 +@@ -14,7 +14,7 @@ + + #include "unicode/utypes.h" + +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + /** + * \file + * \brief C API: Utilities for dealing w/ Windows time zones. +@@ -32,6 +32,6 @@ + uprv_getWindowsTimeZoneInfo(TIME_ZONE_INFORMATION *zoneInfo, const UChar *icuid, int32_t length); + + +-#endif /* U_PLATFORM_HAS_WIN32_API */ ++#endif /* U_PLATFORM_USES_ONLY_WIN32_API */ + + #endif /* __WINTZIMPL */ +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/test/intltest/dtfmttst.cpp icu-54.1/source/test/intltest/dtfmttst.cpp +--- icu-54.1.orig/source/test/intltest/dtfmttst.cpp 2014-09-17 03:18:48.000000000 +0200 ++++ icu-54.1/source/test/intltest/dtfmttst.cpp 2014-09-18 10:16:52.000000000 +0200 +@@ -23,7 +23,7 @@ + #include "caltest.h" // for fieldName + #include <stdio.h> // for sprintf + +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + #include "windttst.h" + #endif + +@@ -2265,7 +2265,7 @@ + + void DateFormatTest::TestHost(void) + { +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + Win32DateTimeTest::testLocales(this); + #endif + } +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/test/intltest/uobjtest.cpp icu-54.1/source/test/intltest/uobjtest.cpp +--- icu-54.1.orig/source/test/intltest/uobjtest.cpp 2014-09-17 03:18:50.000000000 +0200 ++++ icu-54.1/source/test/intltest/uobjtest.cpp 2014-09-18 10:16:52.000000000 +0200 +@@ -382,13 +382,11 @@ + TESTCLASSID_FACTORY(IndianCalendar, Calendar::createInstance(Locale("@calendar=indian"), status)); + TESTCLASSID_FACTORY(ChineseCalendar, Calendar::createInstance(Locale("@calendar=chinese"), status)); + TESTCLASSID_FACTORY(TaiwanCalendar, Calendar::createInstance(Locale("@calendar=roc"), status)); +-#if U_PLATFORM_HAS_WIN32_API +- TESTCLASSID_FACTORY(Win32DateFormat, DateFormat::createDateInstance(DateFormat::kFull, Locale("@compat=host"))); + #if U_PLATFORM_USES_ONLY_WIN32_API ++ TESTCLASSID_FACTORY(Win32DateFormat, DateFormat::createDateInstance(DateFormat::kFull, Locale("@compat=host"))); + TESTCLASSID_FACTORY(Win32NumberFormat, NumberFormat::createInstance(Locale("@compat=host"), status)); + #endif + #endif +-#endif + + #if !UCONFIG_NO_BREAK_ITERATION && !UCONFIG_NO_FILE_IO + /* TESTCLASSID_ABSTRACT(BreakIterator); No staticID! */ +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/test/intltest/windttst.cpp icu-54.1/source/test/intltest/windttst.cpp +--- icu-54.1.orig/source/test/intltest/windttst.cpp 2014-09-17 03:18:50.000000000 +0200 ++++ icu-54.1/source/test/intltest/windttst.cpp 2014-09-18 10:16:52.000000000 +0200 +@@ -11,7 +11,7 @@ + + #include "unicode/utypes.h" + +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + + #if !UCONFIG_NO_FORMATTING + +@@ -193,4 +193,4 @@ + + #endif /* #if !UCONFIG_NO_FORMATTING */ + +-#endif /* U_PLATFORM_HAS_WIN32_API */ ++#endif /* U_PLATFORM_USES_ONLY_WIN32_API */ +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/test/intltest/windttst.h icu-54.1/source/test/intltest/windttst.h +--- icu-54.1.orig/source/test/intltest/windttst.h 2014-09-17 03:18:42.000000000 +0200 ++++ icu-54.1/source/test/intltest/windttst.h 2014-09-18 10:16:52.000000000 +0200 +@@ -14,7 +14,7 @@ + + #include "unicode/utypes.h" + +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + + #if !UCONFIG_NO_FORMATTING + +@@ -36,6 +36,6 @@ + + #endif /* #if !UCONFIG_NO_FORMATTING */ + +-#endif // U_PLATFORM_HAS_WIN32_API ++#endif // U_PLATFORM_USES_ONLY_WIN32_API + + #endif // __WINDTTST +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/test/intltest/winutil.cpp icu-54.1/source/test/intltest/winutil.cpp +--- icu-54.1.orig/source/test/intltest/winutil.cpp 2014-09-17 03:18:42.000000000 +0200 ++++ icu-54.1/source/test/intltest/winutil.cpp 2014-09-18 10:16:52.000000000 +0200 +@@ -11,7 +11,7 @@ + + #include "unicode/utypes.h" + +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + + #if !UCONFIG_NO_FORMATTING + +@@ -92,4 +92,4 @@ + + #endif /* #if !UCONFIG_NO_FORMATTING */ + +-#endif /* U_PLATFORM_HAS_WIN32_API */ ++#endif /* U_PLATFORM_USES_ONLY_WIN32_API */ +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/test/intltest/winutil.h icu-54.1/source/test/intltest/winutil.h +--- icu-54.1.orig/source/test/intltest/winutil.h 2014-09-17 03:18:42.000000000 +0200 ++++ icu-54.1/source/test/intltest/winutil.h 2014-09-18 10:16:52.000000000 +0200 +@@ -14,7 +14,7 @@ + + #include "unicode/utypes.h" + +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + + #if !UCONFIG_NO_FORMATTING + +@@ -41,6 +41,6 @@ + + #endif /* #if !UCONFIG_NO_FORMATTING */ + +-#endif // U_PLATFORM_HAS_WIN32_API ++#endif // U_PLATFORM_USES_ONLY_WIN32_API + + #endif // __WINUTIL +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/test/perf/collperf/collperf.cpp icu-54.1/source/test/perf/collperf/collperf.cpp +--- icu-54.1.orig/source/test/perf/collperf/collperf.cpp 2014-09-17 03:19:18.000000000 +0200 ++++ icu-54.1/source/test/perf/collperf/collperf.cpp 2014-09-18 10:16:52.000000000 +0200 +@@ -112,7 +112,7 @@ + ucol_getSortKey(col, data[i].icu_data, data[i].icu_data_len, icu_key, MAX_KEY_LENGTH); + } + +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + // pre-generated in CollPerfTest::prepareData(), need not to check error here + void win_key_null(int32_t i){ + //LCMAP_SORTsk 0x00000400 // WC sort sk (normalize) +@@ -294,7 +294,7 @@ + return strcmp((char *) da->icu_key, (char *) db->icu_key); + } + +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + static int win_cmp_null(const void *a, const void *b) { + QCAST(); + //CSTR_LESS_THAN 1 +@@ -329,7 +329,7 @@ + + QFUNC(posix_strcoll_null, strcoll, posix_data) + QFUNC(posix_cmpkey, strcmp, posix_key) +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + QFUNC(win_cmpkey, strcmp, win_key) + QFUNC(win_wcscmp, wcscmp, win_data) + #endif +@@ -449,7 +449,7 @@ + return strcmp( (char *) rnd[i].icu_key, (char *) ord[j].icu_key ); + } + +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + int win_cmp_null(int32_t i, int32_t j) { + int t = CompareStringW(win_langid, 0, rnd[i].win_data, -1, ord[j].win_data, -1); + if (t == 0){ +@@ -586,7 +586,7 @@ + locale = "en_US"; // set default locale + } + +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + if (options[i].doesOccur) { + char *endp; + int tmp = strtol(options[i].value, &endp, 0); +@@ -686,7 +686,7 @@ + TEST_KEYGEN(TestIcu_KeyGen_null, icu_key_null); + TEST_KEYGEN(TestIcu_KeyGen_len, icu_key_len); + TEST_KEYGEN(TestPosix_KeyGen_null, posix_key_null); +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + TEST_KEYGEN(TestWin_KeyGen_null, win_key_null); + TEST_KEYGEN(TestWin_KeyGen_len, win_key_len); + #endif +@@ -712,7 +712,7 @@ + TEST_QSORT(TestIcu_qsort_usekey, icu_cmpkey); + TEST_QSORT(TestPosix_qsort_strcoll_null, posix_strcoll_null); + TEST_QSORT(TestPosix_qsort_usekey, posix_cmpkey); +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + TEST_QSORT(TestWin_qsort_CompareStringW_null, win_cmp_null); + TEST_QSORT(TestWin_qsort_CompareStringW_len, win_cmp_len); + TEST_QSORT(TestWin_qsort_usekey, win_cmpkey); +@@ -727,7 +727,7 @@ + TEST_BIN(TestIcu_BinarySearch_cmpCPO, icu_cmpcpo); + TEST_BIN(TestPosix_BinarySearch_strcoll_null, posix_strcoll_null); + TEST_BIN(TestPosix_BinarySearch_usekey, posix_cmpkey); +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + TEST_BIN(TestWin_BinarySearch_CompareStringW_null, win_cmp_null); + TEST_BIN(TestWin_BinarySearch_CompareStringW_len, win_cmp_len); + #endif +@@ -827,7 +827,7 @@ + t = strxfrm(posix_key->last(), posix_data->dataOf(i), s); + if (t != s) {status = U_INVALID_FORMAT_ERROR;return;} + +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + // Win data + s = icu_data->lengthOf(i) + 1; // plus terminal NULL + win_data->append_one(s); +@@ -850,7 +850,7 @@ + rnd_index[i].posix_key = posix_key->last(); + rnd_index[i].posix_data = posix_data->dataOf(i); + rnd_index[i].posix_data_len = posix_data->lengthOf(i); +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + rnd_index[i].win_key = win_key->dataOf(i); + rnd_index[i].win_data = win_data->dataOf(i); + rnd_index[i].win_data_len = win_data->lengthOf(i); +@@ -869,7 +869,7 @@ + SORT(ord_icu_key, icu_cmpkey); + SORT(ord_posix_data, posix_strcoll_null); + SORT(ord_posix_key, posix_cmpkey); +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + SORT(ord_win_data, win_cmp_len); + SORT(ord_win_key, win_cmpkey); + SORT(ord_win_wcscmp, win_wcscmp); +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/test/perf/normperf/normperf.h icu-54.1/source/test/perf/normperf/normperf.h +--- icu-54.1.orig/source/test/perf/normperf/normperf.h 2014-09-17 03:19:10.000000000 +0200 ++++ icu-54.1/source/test/perf/normperf/normperf.h 2014-09-18 10:16:52.000000000 +0200 +@@ -315,7 +315,7 @@ + } + #endif + +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + + int32_t WinNormNFD(const UChar* src, int32_t srcLen, UChar* dest, int32_t dstLen, int32_t options, UErrorCode* status) { + return FoldStringW(MAP_COMPOSITE,src,srcLen,dest,dstLen); +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/tools/ctestfw/unicode/utimer.h icu-54.1/source/tools/ctestfw/unicode/utimer.h +--- icu-54.1.orig/source/tools/ctestfw/unicode/utimer.h 2014-09-17 03:20:38.000000000 +0200 ++++ icu-54.1/source/tools/ctestfw/unicode/utimer.h 2014-09-18 10:16:52.000000000 +0200 +@@ -10,7 +10,7 @@ + + #include "unicode/utypes.h" + +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + # define VC_EXTRALEAN + # define WIN32_LEAN_AND_MEAN + # include <windows.h> +@@ -160,7 +160,7 @@ + typedef void FuntionToBeTimed(void* param); + + +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + + struct UTimer{ + LARGE_INTEGER start; +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/tools/gendict/gendict.cpp icu-54.1/source/tools/gendict/gendict.cpp +--- icu-54.1.orig/source/tools/gendict/gendict.cpp 2014-09-17 03:20:52.000000000 +0200 ++++ icu-54.1/source/tools/gendict/gendict.cpp 2014-09-18 10:16:52.000000000 +0200 +@@ -43,7 +43,7 @@ + return (int)uprv_floor((uprv_getRawUTCtime()-startTime)/1000.0); + } + +-#if U_PLATFORM_IMPLEMENTS_POSIX && !U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_IMPLEMENTS_POSIX && !U_PLATFORM_USES_ONLY_WIN32_API + + #include <signal.h> + #include <unistd.h> +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/tools/genrb/derb.c icu-54.1/source/tools/genrb/derb.c +--- icu-54.1.orig/source/tools/genrb/derb.c 2014-09-17 03:20:44.000000000 +0200 ++++ icu-54.1/source/tools/genrb/derb.c 2014-09-18 10:16:52.000000000 +0200 +@@ -209,7 +209,7 @@ + + if (!(fromICUData = !uprv_strcmp(inputDir, "-"))) { + UBool absfilename = *arg == U_FILE_SEP_CHAR; +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_HAS_WIN32_API && U_PLATFORM != U_PF_CYGWIN + if (!absfilename) { + absfilename = (uprv_strlen(arg) > 2 && isalpha(arg[0]) + && arg[1] == ':' && arg[2] == U_FILE_SEP_CHAR); +diff -ur -N -x config.guess -x config.sub -x install-sh icu-54.1.orig/source/tools/toolutil/udbgutil.cpp icu-54.1/source/tools/toolutil/udbgutil.cpp +--- icu-54.1.orig/source/tools/toolutil/udbgutil.cpp 2014-09-17 03:20:50.000000000 +0200 ++++ icu-54.1/source/tools/toolutil/udbgutil.cpp 2014-09-18 10:16:52.000000000 +0200 +@@ -340,8 +340,10 @@ + */ + U_CAPI const char *udbg_getPlatform(void) + { +-#if U_PLATFORM_HAS_WIN32_API ++#if U_PLATFORM_USES_ONLY_WIN32_API + return "Windows"; ++#elif U_PLATFORM == U_PF_CYGWIN ++ return "Cygwin"; + #elif U_PLATFORM == U_PF_UNKNOWN + return "unknown"; + #elif U_PLATFORM == U_PF_DARWIN |