icu: Update to 59.1

This commit is contained in:
atom.long
2017-05-30 22:44:41 +08:00
parent 8d30ec2d23
commit e23cededd2
6 changed files with 220 additions and 588 deletions

View File

@@ -1,11 +0,0 @@
--- icu/source/tools/toolutil/pkg_genc.c 2014-10-03 12:11:34.000000000 -0400
+++ icu/source/tools/toolutil/pkg_genc.c 2015-02-16 13:49:08.700942400 -0500
@@ -275,7 +275,7 @@ writeAssemblyCode(const char *filename,
uprv_strcpy(outFilePath, bufferStr);
}
-#ifdef WINDOWS_WITH_GNUC
+#if defined WINDOWS_WITH_GNUC && U_PLATFORM != U_PF_CYGWIN
/* Need to fix the file seperator character when using MinGW. */
swapFileSepChar(outFilePath, U_FILE_SEP_CHAR, '/');
#endif

View File

@@ -1,452 +0,0 @@
diff -ur -N -x config.guess -x config.sub -x install-sh icu-56.1.orig/source/common/putilimp.h icu-56.1/source/common/putilimp.h
--- icu-56.1.orig/source/common/putilimp.h 2015-09-27 15:22:44.000000000 +0200
+++ icu-56.1/source/common/putilimp.h 2015-09-27 15:30:01.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-56.1.orig/source/common/umutex.cpp icu-56.1/source/common/umutex.cpp
--- icu-56.1.orig/source/common/umutex.cpp 2015-09-24 00:32:36.000000000 +0200
+++ icu-56.1/source/common/umutex.cpp 2015-09-27 15:30:01.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-56.1.orig/source/common/umutex.h icu-56.1/source/common/umutex.h
--- icu-56.1.orig/source/common/umutex.h 2015-09-24 00:32:30.000000000 +0200
+++ icu-56.1/source/common/umutex.h 2015-09-27 15:30:01.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.
@@ -318,7 +318,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-56.1.orig/source/common/wintz.c icu-56.1/source/common/wintz.c
--- icu-56.1.orig/source/common/wintz.c 2015-09-24 00:32:32.000000000 +0200
+++ icu-56.1/source/common/wintz.c 2015-09-27 15:30:01.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-56.1.orig/source/common/wintz.h icu-56.1/source/common/wintz.h
--- icu-56.1.orig/source/common/wintz.h 2015-09-24 00:32:32.000000000 +0200
+++ icu-56.1/source/common/wintz.h 2015-09-27 15:30:01.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-56.1.orig/source/i18n/datefmt.cpp icu-56.1/source/i18n/datefmt.cpp
--- icu-56.1.orig/source/i18n/datefmt.cpp 2015-09-24 00:32:06.000000000 +0200
+++ icu-56.1/source/i18n/datefmt.cpp 2015-09-27 15:30:01.000000000 +0200
@@ -496,7 +496,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-56.1.orig/source/i18n/windtfmt.cpp icu-56.1/source/i18n/windtfmt.cpp
--- icu-56.1.orig/source/i18n/windtfmt.cpp 2015-09-24 00:32:06.000000000 +0200
+++ icu-56.1/source/i18n/windtfmt.cpp 2015-09-27 15:30:01.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-56.1.orig/source/i18n/windtfmt.h icu-56.1/source/i18n/windtfmt.h
--- icu-56.1.orig/source/i18n/windtfmt.h 2015-09-24 00:32:04.000000000 +0200
+++ icu-56.1/source/i18n/windtfmt.h 2015-09-27 15:30:01.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
@@ -131,6 +131,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-56.1.orig/source/i18n/wintzimpl.cpp icu-56.1/source/i18n/wintzimpl.cpp
--- icu-56.1.orig/source/i18n/wintzimpl.cpp 2015-09-24 00:32:08.000000000 +0200
+++ icu-56.1/source/i18n/wintzimpl.cpp 2015-09-27 15:30:01.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-56.1.orig/source/i18n/wintzimpl.h icu-56.1/source/i18n/wintzimpl.h
--- icu-56.1.orig/source/i18n/wintzimpl.h 2015-09-24 00:32:04.000000000 +0200
+++ icu-56.1/source/i18n/wintzimpl.h 2015-09-27 15:30:01.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-56.1.orig/source/test/intltest/dtfmttst.cpp icu-56.1/source/test/intltest/dtfmttst.cpp
--- icu-56.1.orig/source/test/intltest/dtfmttst.cpp 2015-09-24 00:31:10.000000000 +0200
+++ icu-56.1/source/test/intltest/dtfmttst.cpp 2015-09-27 15:30:01.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
@@ -2361,7 +2361,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-56.1.orig/source/test/intltest/uobjtest.cpp icu-56.1/source/test/intltest/uobjtest.cpp
--- icu-56.1.orig/source/test/intltest/uobjtest.cpp 2015-09-24 00:31:12.000000000 +0200
+++ icu-56.1/source/test/intltest/uobjtest.cpp 2015-09-27 15:30:01.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-56.1.orig/source/test/intltest/windttst.cpp icu-56.1/source/test/intltest/windttst.cpp
--- icu-56.1.orig/source/test/intltest/windttst.cpp 2015-09-24 00:31:14.000000000 +0200
+++ icu-56.1/source/test/intltest/windttst.cpp 2015-09-27 15:30:01.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-56.1.orig/source/test/intltest/windttst.h icu-56.1/source/test/intltest/windttst.h
--- icu-56.1.orig/source/test/intltest/windttst.h 2015-09-24 00:31:06.000000000 +0200
+++ icu-56.1/source/test/intltest/windttst.h 2015-09-27 15:30:01.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-56.1.orig/source/test/intltest/winutil.cpp icu-56.1/source/test/intltest/winutil.cpp
--- icu-56.1.orig/source/test/intltest/winutil.cpp 2015-09-24 00:31:04.000000000 +0200
+++ icu-56.1/source/test/intltest/winutil.cpp 2015-09-27 15:30:01.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-56.1.orig/source/test/intltest/winutil.h icu-56.1/source/test/intltest/winutil.h
--- icu-56.1.orig/source/test/intltest/winutil.h 2015-09-24 00:31:04.000000000 +0200
+++ icu-56.1/source/test/intltest/winutil.h 2015-09-27 15:30:01.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-56.1.orig/source/test/perf/collperf/collperf.cpp icu-56.1/source/test/perf/collperf/collperf.cpp
--- icu-56.1.orig/source/test/perf/collperf/collperf.cpp 2015-09-24 00:31:32.000000000 +0200
+++ icu-56.1/source/test/perf/collperf/collperf.cpp 2015-09-27 15:30:01.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-56.1.orig/source/test/perf/normperf/normperf.h icu-56.1/source/test/perf/normperf/normperf.h
--- icu-56.1.orig/source/test/perf/normperf/normperf.h 2015-09-24 00:31:28.000000000 +0200
+++ icu-56.1/source/test/perf/normperf/normperf.h 2015-09-27 15:30:01.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-56.1.orig/source/tools/ctestfw/unicode/utimer.h icu-56.1/source/tools/ctestfw/unicode/utimer.h
--- icu-56.1.orig/source/tools/ctestfw/unicode/utimer.h 2015-09-24 00:32:42.000000000 +0200
+++ icu-56.1/source/tools/ctestfw/unicode/utimer.h 2015-09-27 15:30:01.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-56.1.orig/source/tools/genrb/derb.cpp icu-56.1/source/tools/genrb/derb.cpp
--- icu-56.1.orig/source/tools/genrb/derb.cpp 2015-09-24 00:32:48.000000000 +0200
+++ icu-56.1/source/tools/genrb/derb.cpp 2015-09-27 15:38:20.000000000 +0200
@@ -204,7 +204,7 @@
UBool fromICUData = !uprv_strcmp(inputDir, "-");
if (!fromICUData) {
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-56.1.orig/source/tools/toolutil/udbgutil.cpp icu-56.1/source/tools/toolutil/udbgutil.cpp
--- icu-56.1.orig/source/tools/toolutil/udbgutil.cpp 2015-09-24 00:32:54.000000000 +0200
+++ icu-56.1/source/tools/toolutil/udbgutil.cpp 2015-09-27 15:30:33.000000000 +0200
@@ -352,8 +352,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

View File

@@ -1,45 +0,0 @@
diff -ur -N -x config.guess -x config.sub -x install-sh icu-56.1.orig/source/common/putil.cpp icu-56.1/source/common/putil.cpp
--- icu-56.1.orig/source/common/putil.cpp 2015-09-24 00:32:32.000000000 +0200
+++ icu-56.1/source/common/putil.cpp 2015-09-27 15:29:05.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.

View File

@@ -2,7 +2,7 @@
pkgbase=icu
pkgname=('icu' 'icu-devel')
pkgver=56.1
pkgver=59.1
pkgrel=1
pkgdesc="International Components for Unicode library"
arch=('i686' 'x86_64')
@@ -10,23 +10,17 @@ url="http://www.icu-project.org/"
license=('custom:"icu"')
depends=('gcc-libs' 'sh')
source=(http://download.icu-project.org/files/${pkgname}4c/${pkgver}/${pkgname}4c-${pkgver//./_}-src.tgz
56.1-cygwin-no-w32api.patch
56.1-putil.patch
54.1-implicit_declaration.patch
icu-56.1-msys2.patch)
sha256sums=('3a64e9105c734dcf631c0b3ed60404531bce6c0f5a64bfe1a6402a4cc2314816'
'275246b89a908da82a1aa58adcbde3967707a1c714328771d6c707ed67a06e2c'
'fca7b3cfe2dd890eecc97c8314d6dd967a526f47f8c06b0791976c557412adf0'
'5b2edd523dffe7e82b7d2f70dec1446297d588d11eb81f76d15e9afd0691221a'
'bb62a6c01158ee37a1236b02263adf3aa40d114347e038046ad52a6253229614')
toolutil-Makefile-ln-force.patch
icu-59.1-msys2.patch)
sha256sums=('7132fdaf9379429d004005217f10e00b7d2319d0fea22bdfddef8991c45b75fe'
'e85928a287a73cb24f4bd8b891bb10636cda27c09bae01fc003d8bee2dda8986'
'e9f6f721ca08a60d7df4fc8b3021b43e8c468604a0e86bb8b729186fbb5ac9d7')
prepare() {
cd ${srcdir}/icu/source
patch -p2 -i ${srcdir}/54.1-implicit_declaration.patch
patch -p2 -i ${srcdir}/56.1-putil.patch
patch -p2 -i ${srcdir}/56.1-cygwin-no-w32api.patch
patch -p2 -i ${srcdir}/icu-56.1-msys2.patch
patch -p2 -i ${srcdir}/toolutil-Makefile-ln-force.patch
patch -p2 -i ${srcdir}/icu-59.1-msys2.patch
libtoolize --force --copy
autoreconf -fi

View File

@@ -1,24 +1,28 @@
diff -Naur icu-cygwin/source/acinclude.m4 icu-msys2/source/acinclude.m4
--- icu-cygwin/source/acinclude.m4 2015-10-08 07:00:26.000000000 +0300
+++ icu-msys2/source/acinclude.m4 2016-01-12 11:08:37.051850400 +0300
@@ -44,6 +44,14 @@
diff -durN icu.orig/source/acinclude.m4 icu/source/acinclude.m4
--- icu.orig/source/acinclude.m4 2016-06-16 02:58:17.000000000 +0800
+++ icu/source/acinclude.m4 2017-05-17 14:14:12.781250000 +0800
@@ -46,6 +46,18 @@
else
icu_cv_host_frag=mh-cygwin-msvc
fi ;;
+i[[34567]]86-*-msys)
+ if test "$GCC" = yes; then
+ icu_cv_host_frag=mh-msys
+ else
+ icu_cv_host_frag=mh-msys-msvc
+ fi ;;
+x86_64-*-msys)
+ if test "$GCC" = yes; then
+ icu_cv_host_frag=mh-msys64
+ else
+ icu_cv_host_frag=mh-msys-msvc
+ fi ;;
*-*-mingw*)
if test "$GCC" = yes; then
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
diff -Naur icu-cygwin/source/config/mh-msys icu-msys2/source/config/mh-msys
--- icu-cygwin/source/config/mh-msys 1970-01-01 03:00:00.000000000 +0300
+++ icu-msys2/source/config/mh-msys 2016-01-12 10:43:31.904456200 +0300
diff -durN icu.orig/source/config/mh-msys icu/source/config/mh-msys
--- icu.orig/source/config/mh-msys 1970-01-01 08:00:00.000000000 +0800
+++ icu/source/config/mh-msys 2017-05-17 14:15:38.703125000 +0800
@@ -0,0 +1,141 @@
+## -*-makefile-*-
+## MSYS2-specific setup
@@ -26,8 +30,8 @@ diff -Naur icu-cygwin/source/config/mh-msys icu-msys2/source/config/mh-msys
+## others. All Rights Reserved.
+
+## Commands to generate dependency files
+GEN_DEPS.c= $(CC) -E -MM $(DEFS) $(CPPFLAGS)
+GEN_DEPS.cc= $(CXX) -E -MM $(DEFS) $(CPPFLAGS)
+GEN_DEPS.c=$(CC) -E -MM $(DEFS) $(CPPFLAGS)
+GEN_DEPS.cc=$(CXX) -E -MM $(DEFS) $(CPPFLAGS)
+
+## Flags to create/use a static library
+ifneq ($(ENABLE_SHARED),YES)
@@ -57,8 +61,8 @@ diff -Naur icu-cygwin/source/config/mh-msys icu-msys2/source/config/mh-msys
+## Commands to make a shared library
+# $(subst) won't work in shell script. #M# at the end omits these
+# lines from the shell script (Make only)
+SHLIB.c= $(CC) $(CFLAGS) $(LDFLAGS) -shared $(LD_SOOPTIONS) -Wl,--enable-auto-import -Wl,--out-implib=$(subst msys-,lib,$@).$(A)#M#
+SHLIB.cc= $(CXX) $(CXXFLAGS) $(LDFLAGS) -shared $(LD_SOOPTIONS) -Wl,--enable-auto-import -Wl,--out-implib=$(subst msys-,lib,$@).$(A)#M#
+SHLIB.c=$(CC) $(CFLAGS) $(LDFLAGS) -shared $(LD_SOOPTIONS) -Wl,--enable-auto-import -Wl,--out-implib=$(subst msys-,lib,$@).$(A)#M#
+SHLIB.cc=$(CXX) $(CXXFLAGS) $(LDFLAGS) -shared $(LD_SOOPTIONS) -Wl,--enable-auto-import -Wl,--out-implib=$(subst msys-,lib,$@).$(A)#M#
+# the #SH# lines don't go through further postprocessing.
+# so, they must be valid shell script starting from column 4
+#SH#SHLIB_c="$(CC) $(CFLAGS) $(LDFLAGS) -shared "
@@ -66,8 +70,8 @@ diff -Naur icu-cygwin/source/config/mh-msys icu-msys2/source/config/mh-msys
+
+
+## Compiler switch to embed a runtime search path
+LD_RPATH=
+LD_RPATH_PRE= -Wl,-rpath,
+LD_RPATH=
+LD_RPATH_PRE=-Wl,-rpath,
+
+## Compiler switch to embed a library name
+LD_SONAME =
@@ -119,7 +123,7 @@ diff -Naur icu-cygwin/source/config/mh-msys icu-msys2/source/config/mh-msys
+
+## Versioned libraries rules
+#%$(SO_TARGET_VERSION_MAJOR).$(SO): %$(SO_TARGET_VERSION).$(SO)
+# $(RM) $@ && cp ${<F} $@
+#$(RM) $@ && cp ${<F} $@
+%.$(SO): %$(SO_TARGET_VERSION_MAJOR).$(SO)
+ $(RM) $(subst msys-,lib,$@).$(A) && ln -s $(subst msys-,lib,${<F}).$(A) $(subst msys-,lib,$@).$(A)
+
@@ -161,9 +165,9 @@ diff -Naur icu-cygwin/source/config/mh-msys icu-msys2/source/config/mh-msys
+
+## End MSYS2-specific setup
+
diff -Naur icu-cygwin/source/config/mh-msys64 icu-msys2/source/config/mh-msys64
--- icu-cygwin/source/config/mh-msys64 1970-01-01 03:00:00.000000000 +0300
+++ icu-msys2/source/config/mh-msys64 2016-01-12 10:43:31.920052400 +0300
diff -durN icu.orig/source/config/mh-msys64 icu/source/config/mh-msys64
--- icu.orig/source/config/mh-msys64 1970-01-01 08:00:00.000000000 +0800
+++ icu/source/config/mh-msys64 2017-05-17 14:14:13.000000000 +0800
@@ -0,0 +1,141 @@
+## -*-makefile-*-
+## MSYS2-specific setup
@@ -171,8 +175,8 @@ diff -Naur icu-cygwin/source/config/mh-msys64 icu-msys2/source/config/mh-msys64
+## others. All Rights Reserved.
+
+## Commands to generate dependency files
+GEN_DEPS.c= $(CC) -E -MM $(DEFS) $(CPPFLAGS)
+GEN_DEPS.cc= $(CXX) -E -MM $(DEFS) $(CPPFLAGS)
+GEN_DEPS.c=$(CC) -E -MM $(DEFS) $(CPPFLAGS)
+GEN_DEPS.cc=$(CXX) -E -MM $(DEFS) $(CPPFLAGS)
+
+## Flags to create/use a static library
+ifneq ($(ENABLE_SHARED),YES)
@@ -202,8 +206,8 @@ diff -Naur icu-cygwin/source/config/mh-msys64 icu-msys2/source/config/mh-msys64
+## Commands to make a shared library
+# $(subst) won't work in shell script. #M# at the end omits these
+# lines from the shell script (Make only)
+SHLIB.c= $(CC) $(CFLAGS) $(LDFLAGS) -shared $(LD_SOOPTIONS) -Wl,--enable-auto-import -Wl,--out-implib=$(subst msys-,lib,$@).$(A)#M#
+SHLIB.cc= $(CXX) $(CXXFLAGS) $(LDFLAGS) -shared $(LD_SOOPTIONS) -Wl,--enable-auto-import -Wl,--out-implib=$(subst msys-,lib,$@).$(A)#M#
+SHLIB.c=$(CC) $(CFLAGS) $(LDFLAGS) -shared $(LD_SOOPTIONS) -Wl,--enable-auto-import -Wl,--out-implib=$(subst msys-,lib,$@).$(A)#M#
+SHLIB.cc=$(CXX) $(CXXFLAGS) $(LDFLAGS) -shared $(LD_SOOPTIONS) -Wl,--enable-auto-import -Wl,--out-implib=$(subst msys-,lib,$@).$(A)#M#
+# the #SH# lines don't go through further postprocessing.
+# so, they must be valid shell script starting from column 4
+#SH#SHLIB_c="$(CC) $(CFLAGS) $(LDFLAGS) -shared "
@@ -211,7 +215,7 @@ diff -Naur icu-cygwin/source/config/mh-msys64 icu-msys2/source/config/mh-msys64
+
+
+## Compiler switch to embed a runtime search path
+LD_RPATH=
+LD_RPATH=
+LD_RPATH_PRE=
+
+## Compiler switch to embed a library name
@@ -227,26 +231,26 @@ diff -Naur icu-cygwin/source/config/mh-msys64 icu-msys2/source/config/mh-msys64
+
+## Compilation rules
+%.$(STATIC_O): $(srcdir)/%.c
+ $(COMPILE.c) $(STATICCPPFLAGS) $(STATICCFLAGS) -o $@ $<
+$(COMPILE.c) $(STATICCPPFLAGS) $(STATICCFLAGS) -o $@ $<
+%.o: $(srcdir)/%.c
+ $(COMPILE.c) $(DYNAMICCPPFLAGS) $(DYNAMICCFLAGS) -o $@ $<
+$(COMPILE.c) $(DYNAMICCPPFLAGS) $(DYNAMICCFLAGS) -o $@ $<
+
+%.$(STATIC_O): $(srcdir)/%.cpp
+ $(COMPILE.cc) $(STATICCPPFLAGS) $(STATICCXXFLAGS) -o $@ $<
+$(COMPILE.cc) $(STATICCPPFLAGS) $(STATICCXXFLAGS) -o $@ $<
+%.o: $(srcdir)/%.cpp
+ $(COMPILE.cc) $(DYNAMICCPPFLAGS) $(DYNAMICCXXFLAGS) -o $@ $<
+$(COMPILE.cc) $(DYNAMICCPPFLAGS) $(DYNAMICCXXFLAGS) -o $@ $<
+
+
+## Dependency rules
+%.d: $(srcdir)/%.c
+ @echo "generating dependency information for $<"
+ @echo -n "$@ " > $@
+ @$(GEN_DEPS.c) $< >> $@ || (rm -f $@ && FALSE)
+@echo "generating dependency information for $<"
+@echo -n "$@ " > $@
+@$(GEN_DEPS.c) $< >> $@ || (rm -f $@ && FALSE)
+
+%.d: $(srcdir)/%.cpp
+ @echo "generating dependency information for $<"
+ @echo -n "$@ " > $@
+ @$(GEN_DEPS.cc) $< >> $@ || (rm -f $@ && FALSE)
+@echo "generating dependency information for $<"
+@echo -n "$@ " > $@
+@$(GEN_DEPS.cc) $< >> $@ || (rm -f $@ && FALSE)
+
+## Versioned target for a shared library.
+## Since symbolic links don't work the same way on Windows,
@@ -264,9 +268,9 @@ diff -Naur icu-cygwin/source/config/mh-msys64 icu-msys2/source/config/mh-msys64
+
+## Versioned libraries rules
+#%$(SO_TARGET_VERSION_MAJOR).$(SO): %$(SO_TARGET_VERSION).$(SO)
+# $(RM) $@ && cp ${<F} $@
+#$(RM) $@ && cp ${<F} $@
+%.$(SO): %$(SO_TARGET_VERSION_MAJOR).$(SO)
+ $(RM) $(subst msys-,lib,$@).$(A) && ln -s $(subst msys-,lib,${<F}).$(A) $(subst msys-,lib,$@).$(A)
+$(RM) $(subst msys-,lib,$@).$(A) && ln -s $(subst msys-,lib,${<F}).$(A) $(subst msys-,lib,$@).$(A)
+
+## Install libraries as executable
+INSTALL-L=$(INSTALL_PROGRAM)
@@ -306,9 +310,9 @@ diff -Naur icu-cygwin/source/config/mh-msys64 icu-msys2/source/config/mh-msys64
+
+## End MSYS2-specific setup
+
diff -Naur icu-cygwin/source/config.guess icu-msys2/source/config.guess
--- icu-cygwin/source/config.guess 2015-10-08 07:00:26.000000000 +0300
+++ icu-msys2/source/config.guess 2016-01-12 10:43:31.951244800 +0300
diff -durN icu.orig/source/config.guess icu/source/config.guess
--- icu.orig/source/config.guess 2017-01-20 02:12:50.000000000 +0800
+++ icu/source/config.guess 2017-05-17 14:14:13.093750000 +0800
@@ -866,6 +866,9 @@
amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
echo x86_64-unknown-cygwin
@@ -319,19 +323,82 @@ diff -Naur icu-cygwin/source/config.guess icu-msys2/source/config.guess
p*:CYGWIN*:*)
echo powerpcle-unknown-cygwin
exit ;;
diff -Naur icu-cygwin/source/configure.ac icu-msys2/source/configure.ac
--- icu-cygwin/source/configure.ac 2015-10-08 07:00:26.000000000 +0300
+++ icu-msys2/source/configure.ac 2016-01-12 10:46:04.720988500 +0300
@@ -223,7 +223,7 @@
# files, which confuses the AC_EXEEXT macro.
AC_MSG_CHECKING(checking for executable suffix)
diff -durN icu.orig/source/configure icu/source/configure
--- icu.orig/source/configure 2017-04-07 15:40:30.000000000 +0800
+++ icu/source/configure 2017-05-17 14:14:13.218750000 +0800
@@ -4293,7 +4293,7 @@
# Check that the linker is usable
case "${host}" in
- *-*-cygwin*|*-*-mingw*)
+ *-*-cygwin*|*-*-msys*|*-*-mingw*)
if test "$GCC" != yes && test -n "`link --version 2>&1 | grep 'GNU coreutils'`"; then
as_fn_error $? "link.exe is not a valid linker. Your PATH is incorrect.
Please follow the directions in ICU's readme." "$LINENO" 5
@@ -4307,7 +4307,7 @@
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking checking for executable suffix" >&5
$as_echo_n "checking checking for executable suffix... " >&6; }
case "${host}" in
- *-*-cygwin*|*-*-mingw*) EXEEXT=.exe ;;
+ *-*-cygwin*|*-*-msys*|*-*-mingw*) EXEEXT=.exe ;;
*) EXEEXT="" ;;
esac
ac_exeext=$EXEEXT
@@ -575,7 +575,7 @@
@@ -4354,7 +4354,7 @@
CFLAGS="$CFLAGS -Wall -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings"
else
case "${host}" in
- *-*-cygwin)
+ *-*-cygwin | *-*-msys)
if test "`$CC /help 2>&1 | head -c9`" = "Microsoft"
then
CFLAGS="$CFLAGS /W4"
@@ -4368,7 +4368,7 @@
CXXFLAGS="$CXXFLAGS -W -Wall -pedantic -Wpointer-arith -Wwrite-strings -Wno-long-long"
else
case "${host}" in
- *-*-cygwin)
+ *-*-cygwin | *-*-msys)
if test "`$CXX /help 2>&1 | head -c9`" = "Microsoft"
then
CXXFLAGS="$CXXFLAGS /W4"
@@ -4898,7 +4898,7 @@
fi
fi
;;
- *-*-cygwin)
+ *-*-cygwin | *-*-msys)
# vcvarsamd64.bat should have been used to enable 64-bit builds.
# We only do this check to display the correct answer.
## TODO: cross compiler problem
@@ -5147,6 +5147,18 @@
else
icu_cv_host_frag=mh-cygwin-msvc
fi ;;
+i[[34567]]86-*-msys)
+ if test "$GCC" = yes; then
+ icu_cv_host_frag=mh-msys
+ else
+ icu_cv_host_frag=mh-msys-msvc
+ fi ;;
+x86_64-*-msys)
+ if test "$GCC" = yes; then
+ icu_cv_host_frag=mh-msys64
+ else
+ icu_cv_host_frag=mh-msys-msvc
+ fi ;;
*-*-mingw*)
if test "$GCC" = yes; then
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -5173,6 +5185,7 @@
case "${host}" in
*-*-mingw*) icu_cv_host_frag=mh-msys-msvc ;;
*-*-cygwin) icu_cv_host_frag=mh-cygwin-msvc ;;
+ *-*-msys) icu_cv_host_frag=mh-msys-msvc ;;
esac
fi ;;
*-*-*bsd*|*-*-dragonfly*) icu_cv_host_frag=mh-bsd-gcc ;;
@@ -6267,7 +6280,7 @@
fi
# Check to see if we are using CygWin with MSVC
case "${host}" in
@@ -340,16 +407,55 @@ diff -Naur icu-cygwin/source/configure.ac icu-msys2/source/configure.ac
# For gcc, the thread options are set by mh-mingw/mh-cygwin
# For msvc, the thread options are set by runConfigureICU
:
@@ -1019,7 +1019,7 @@
@@ -7441,7 +7454,7 @@
CHECK_UTF16_STRING_RESULT="available"
fi
;;
-*-*-cygwin)
+*-*-cygwin|*-*-msys*)
+*-*-cygwin | *-*-msys)
# wchar_t can be used
CHECK_UTF16_STRING_RESULT="available"
;;
@@ -1255,7 +1255,7 @@
@@ -7780,7 +7793,7 @@
*-*-aix*) platform=U_AIX ;;
*-*-hpux*) platform=U_HPUX ;;
*-apple-darwin*|*-apple-rhapsody*) platform=U_DARWIN ;;
- *-*-cygwin*) platform=U_CYGWIN ;;
+ *-*-cygwin* | *-*-msys*) platform=U_CYGWIN ;;
*-*-mingw*) platform=U_MINGW ;;
*-*ibm-openedition*|*-*-os390*) platform=OS390
if test "${ICU_ENABLE_ASCII_STRINGS}" != "1"; then
diff -durN icu.orig/source/configure.ac icu/source/configure.ac
--- icu.orig/source/configure.ac 2017-04-07 15:40:30.000000000 +0800
+++ icu/source/configure.ac 2017-05-17 14:14:13.343750000 +0800
@@ -224,7 +224,7 @@
# files, which confuses the AC_EXEEXT macro.
AC_MSG_CHECKING(checking for executable suffix)
case "${host}" in
- *-*-cygwin*|*-*-mingw*) EXEEXT=.exe ;;
+ *-*-cygwin*|*-*-msys*|*-*-mingw*) EXEEXT=.exe ;;
*) EXEEXT="" ;;
esac
ac_exeext=$EXEEXT
@@ -571,7 +571,7 @@
fi
# Check to see if we are using CygWin with MSVC
case "${host}" in
-*-pc-cygwin*|*-pc-mingw*)
+*-pc-cygwin*|*-pc-msys*|*-pc-mingw*)
# For gcc, the thread options are set by mh-mingw/mh-cygwin
# For msvc, the thread options are set by runConfigureICU
:
@@ -1023,7 +1023,7 @@
CHECK_UTF16_STRING_RESULT="available"
fi
;;
-*-*-cygwin)
+*-*-cygwin | *-*-msys)
# wchar_t can be used
CHECK_UTF16_STRING_RESULT="available"
;;
@@ -1257,7 +1257,7 @@
*-*-aix*) platform=U_AIX ;;
*-*-hpux*) platform=U_HPUX ;;
*-apple-darwin*|*-apple-rhapsody*) platform=U_DARWIN ;;
@@ -358,19 +464,19 @@ diff -Naur icu-cygwin/source/configure.ac icu-msys2/source/configure.ac
*-*-mingw*) platform=U_MINGW ;;
*-*ibm-openedition*|*-*-os390*) platform=OS390
if test "${ICU_ENABLE_ASCII_STRINGS}" != "1"; then
diff -Naur icu-cygwin/source/runConfigureICU icu-msys2/source/runConfigureICU
--- icu-cygwin/source/runConfigureICU 2015-10-08 07:00:26.000000000 +0300
+++ icu-msys2/source/runConfigureICU 2016-01-12 10:48:20.601264200 +0300
@@ -51,6 +51,7 @@
diff -durN icu.orig/source/runConfigureICU icu/source/runConfigureICU
--- icu.orig/source/runConfigureICU 2017-01-23 08:38:28.000000000 +0800
+++ icu/source/runConfigureICU 2017-05-17 14:14:13.421875000 +0800
@@ -53,6 +53,7 @@
MacOSX Use the default compilers on MacOS X (Darwin)
MacOSX/GCC Use the GNU gcc/g++ compilers on MacOSX (Darwin)
MinGW Use the GNU gcc/g++ compilers on MinGW
+ MSYS Use the GNU gcc/g++ compilers on MSYS
+ MSYS Use the GNU gcc/g++ compilers on MSYS
MSYS/MSVC Use the Microsoft Visual C++ computer on MSYS
QNX Use the QNX QCC compiler on QNX/Neutrino
Solaris Use the Sun cc/CC compilers on Solaris
@@ -316,6 +317,12 @@
CXXFLAGS="--std=c++03"
@@ -317,6 +318,12 @@
RELEASE_CXXFLAGS='-O3'
export CXXFLAGS
;;
+ MSYS)
@@ -382,10 +488,24 @@ diff -Naur icu-cygwin/source/runConfigureICU icu-msys2/source/runConfigureICU
MSYS/MSVC)
THE_OS="MSYS"
THE_COMP="Microsoft Visual C++"
diff -Naur icu-cygwin/source/tools/pkgdata/pkgdata.cpp icu-msys2/source/tools/pkgdata/pkgdata.cpp
--- icu-cygwin/source/tools/pkgdata/pkgdata.cpp 2015-10-08 06:54:02.000000000 +0300
+++ icu-msys2/source/tools/pkgdata/pkgdata.cpp 2016-01-12 10:52:10.882390900 +0300
@@ -914,11 +914,19 @@
diff -durN icu.orig/source/tools/Makefile.in icu/source/tools/Makefile.in
--- icu.orig/source/tools/Makefile.in 2017-04-13 17:55:03.000000000 +0800
+++ icu/source/tools/Makefile.in 2017-05-17 14:14:13.484375000 +0800
@@ -23,6 +23,10 @@
SUBDIRS += escapesrc
endif
+ifneq (@platform_make_fragment_name@,mh-msys-msvc)
+SUBDIRS += escapesrc
+endif
+
## List of phony targets
.PHONY : all all-local all-recursive install install-local \
install-recursive clean clean-local clean-recursive distclean \
diff -durN icu.orig/source/tools/pkgdata/pkgdata.cpp icu/source/tools/pkgdata/pkgdata.cpp
--- icu.orig/source/tools/pkgdata/pkgdata.cpp 2017-03-21 09:03:49.000000000 +0800
+++ icu/source/tools/pkgdata/pkgdata.cpp 2017-05-17 14:14:13.578125000 +0800
@@ -922,11 +922,19 @@
// Name the import library lib*.dll.a
sprintf(libFileNames[LIB_FILE_MINGW], "lib%s.dll.a", libName);
#elif U_PLATFORM == U_PF_CYGWIN
@@ -405,10 +525,10 @@ diff -Naur icu-cygwin/source/tools/pkgdata/pkgdata.cpp icu-msys2/source/tools/pk
libName,
version_major,
FILE_EXTENSION_SEP,
diff -Naur icu-cygwin/source/tools/pkgdata/pkgtypes.h icu-msys2/source/tools/pkgdata/pkgtypes.h
--- icu-cygwin/source/tools/pkgdata/pkgtypes.h 2015-10-08 06:54:02.000000000 +0300
+++ icu-msys2/source/tools/pkgdata/pkgtypes.h 2016-01-12 10:49:37.430862700 +0300
@@ -144,7 +144,11 @@
diff -durN icu.orig/source/tools/pkgdata/pkgtypes.h icu/source/tools/pkgdata/pkgtypes.h
--- icu.orig/source/tools/pkgdata/pkgtypes.h 2017-01-20 08:20:31.000000000 +0800
+++ icu/source/tools/pkgdata/pkgtypes.h 2017-05-17 14:14:13.671875000 +0800
@@ -146,7 +146,11 @@
# define UDATA_LIB_SUFFIX ".lib"
#elif U_PLATFORM == U_PF_CYGWIN
@@ -421,10 +541,10 @@ diff -Naur icu-cygwin/source/tools/pkgdata/pkgtypes.h icu-msys2/source/tools/pkg
# define LIB_STATIC_PREFIX "lib"
# define OBJ_SUFFIX ".o"
# define UDATA_LIB_SUFFIX ".a"
diff -Naur icu-cygwin/source/tools/toolutil/udbgutil.cpp icu-msys2/source/tools/toolutil/udbgutil.cpp
--- icu-cygwin/source/tools/toolutil/udbgutil.cpp 2016-01-12 10:42:28.239768000 +0300
+++ icu-msys2/source/tools/toolutil/udbgutil.cpp 2016-01-12 10:56:07.931873500 +0300
@@ -355,7 +355,11 @@
diff -durN icu.orig/source/tools/toolutil/udbgutil.cpp icu/source/tools/toolutil/udbgutil.cpp
--- icu.orig/source/tools/toolutil/udbgutil.cpp 2017-04-10 22:22:16.000000000 +0800
+++ icu/source/tools/toolutil/udbgutil.cpp 2017-05-17 14:14:13.765625000 +0800
@@ -354,7 +354,11 @@
#if U_PLATFORM_USES_ONLY_WIN32_API
return "Windows";
#elif U_PLATFORM == U_PF_CYGWIN

View File

@@ -0,0 +1,26 @@
diff -durN icu.orig/source/tools/toolutil/Makefile.in icu/source/tools/toolutil/Makefile.in
--- icu.orig/source/tools/toolutil/Makefile.in 2017-03-17 03:01:12.000000000 +0800
+++ icu/source/tools/toolutil/Makefile.in 2017-05-17 14:54:15.562500000 +0800
@@ -96,18 +96,18 @@
ifneq ($(ENABLE_SHARED),)
$(INSTALL-L) $(FINAL_SO_TARGET) $(DESTDIR)$(libdir)
ifneq ($(FINAL_SO_TARGET),$(SO_TARGET))
- cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(SO_TARGET)) && ln -s $(notdir $(FINAL_SO_TARGET)) $(notdir $(SO_TARGET))
+ cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(SO_TARGET)) && ln -sf $(notdir $(FINAL_SO_TARGET)) $(notdir $(SO_TARGET))
ifneq ($(FINAL_SO_TARGET),$(MIDDLE_SO_TARGET))
- cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(MIDDLE_SO_TARGET)) && ln -s $(notdir $(FINAL_SO_TARGET)) $(notdir $(MIDDLE_SO_TARGET))
+ cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(MIDDLE_SO_TARGET)) && ln -sf $(notdir $(FINAL_SO_TARGET)) $(notdir $(MIDDLE_SO_TARGET))
endif
endif
ifneq ($(IMPORT_LIB_EXT),)
$(INSTALL-L) $(FINAL_IMPORT_LIB) $(DESTDIR)$(libdir)
ifneq ($(IMPORT_LIB),$(FINAL_IMPORT_LIB))
- cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(IMPORT_LIB)) && ln -s $(notdir $(FINAL_IMPORT_LIB)) $(notdir $(IMPORT_LIB))
+ cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(IMPORT_LIB)) && ln -sf $(notdir $(FINAL_IMPORT_LIB)) $(notdir $(IMPORT_LIB))
endif
ifneq ($(MIDDLE_IMPORT_LIB),$(FINAL_IMPORT_LIB))
- cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(MIDDLE_IMPORT_LIB)) && ln -s $(notdir $(FINAL_IMPORT_LIB)) $(notdir $(MIDDLE_IMPORT_LIB))
+ cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(MIDDLE_IMPORT_LIB)) && ln -sf $(notdir $(FINAL_IMPORT_LIB)) $(notdir $(MIDDLE_IMPORT_LIB))
endif
endif
endif