Kaydet (Commit) 3e42714c authored tarafından Eike Rathke's avatar Eike Rathke

upgrade to ICU 58

Change-Id: I4a992447df65b337721a2a2627d974172a14cba5
Reviewed-on: https://gerrit.libreoffice.org/30487Reviewed-by: 's avatarEike Rathke <erack@redhat.com>
Tested-by: 's avatarEike Rathke <erack@redhat.com>
üst b68ed302
......@@ -9136,7 +9136,7 @@ SYSTEM_GENBRK=
SYSTEM_GENCCODE=
SYSTEM_GENCMN=
ICU_MAJOR=57
ICU_MAJOR=58
ICU_MINOR=1
ICU_RECLASSIFIED_PREPEND_SET_EMPTY="TRUE"
ICU_RECLASSIFIED_CONDITIONAL_JAPANESE_STARTER="TRUE"
......
......@@ -62,7 +62,7 @@ export HARFBUZZ_TARBALL := harfbuzz-1.3.2.tar.bz2
export HSQLDB_TARBALL := 17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip
export HUNSPELL_TARBALL := 33d370f7fe5a030985e445a5672b2067-hunspell-1.4.1.tar.gz
export HYPHEN_TARBALL := 5ade6ae2a99bc1e9e57031ca88d36dad-hyphen-2.8.8.tar.gz
export ICU_TARBALL := 976734806026a4ef8bdd17937c8898b9-icu4c-57_1-src.tgz
export ICU_TARBALL := 1901302aaff1c1633ef81862663d2917-icu4c-58_1-src.tgz
export JFREEREPORT_FLOW_ENGINE_TARBALL := ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip
export JFREEREPORT_FLUTE_TARBALL := d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip
export JFREEREPORT_LIBBASE_TARBALL := eeb2c7ddf0d302fba4bfc6e97eac9624-libbase-1.1.6.zip
......
......@@ -151,14 +151,3 @@
length(len), next(subNode) {}
virtual UBool operator==(const Node &other) const;
virtual int32_t markRightEdgesFirst(int32_t edgeNumber);
--- source/common/unifiedcache.h
+++ source/common/unifiedcache.h
@@ -139,7 +139,7 @@
: CacheKey<T>(other), fLoc(other.fLoc) { }
virtual ~LocaleCacheKey() { }
virtual int32_t hashCode() const {
- return 37 *CacheKey<T>::hashCode() + fLoc.hashCode();
+ return 37U *CacheKey<T>::hashCode() + fLoc.hashCode();
}
virtual UBool operator == (const CacheKeyBase &other) const {
// reflexive
......@@ -8,15 +8,3 @@
} \
}
--- misc/icu/source/common/unicode/utypes.h
+++ misc/build/icu/source/common/unicode/utypes.h
@@ -399,7 +399,7 @@
* some Linux/Unix compilers have problems with defining global new/delete.
* On Windows, it is _MSC_VER>=1200 for MSVC 6.0 and higher.
*/
-#if defined(__cplusplus) && U_DEBUG && U_OVERRIDE_CXX_ALLOCATION && (_MSC_VER>=1200) && !defined(U_STATIC_IMPLEMENTATION) && (defined(U_COMMON_IMPLEMENTATION) || defined(U_I18N_IMPLEMENTATION) || defined(U_IO_IMPLEMENTATION) || defined(U_LAYOUT_IMPLEMENTATION) || defined(U_LAYOUTEX_IMPLEMENTATION))
+#if defined(__cplusplus) && U_DEBUG && U_OVERRIDE_CXX_ALLOCATION && defined (_MSC_VER) && (_MSC_VER>=1200) && !defined(U_STATIC_IMPLEMENTATION) && (defined(U_COMMON_IMPLEMENTATION) || defined(U_I18N_IMPLEMENTATION) || defined(U_IO_IMPLEMENTATION) || defined(U_LAYOUT_IMPLEMENTATION) || defined(U_LAYOUTEX_IMPLEMENTATION))
#ifndef U_HIDE_INTERNAL_API
/**
......@@ -63,10 +63,13 @@ BreakIterator_Unicode::~BreakIterator_Unicode()
class OOoRuleBasedBreakIterator : public RuleBasedBreakIterator
{
public:
#if (U_ICU_VERSION_MAJOR_NUM < 58)
// RuleBasedBreakIterator::setBreakType() is private as of ICU 58.
inline void publicSetBreakType(int32_t type)
{
setBreakType(type);
};
#endif
OOoRuleBasedBreakIterator(UDataMemory* image,
UErrorCode &status)
: RuleBasedBreakIterator(image, status)
......@@ -142,12 +145,21 @@ void SAL_CALL BreakIterator_Unicode::loadICUBreakIterator(const css::lang::Local
}
}
if (rbi) {
#if (U_ICU_VERSION_MAJOR_NUM < 58)
// ICU 58 made RuleBasedBreakIterator::setBreakType() private
// instead of protected, so the old workaround of
// https://ssl.icu-project.org/trac/ticket/5498
// doesn't work anymore. However, they also claim to have fixed
// the cause that an initial fBreakType==-1 would lead to an
// endless loop under some circumstances.
// Let's see ...
switch (rBreakType) {
case LOAD_CHARACTER_BREAKITERATOR: rbi->publicSetBreakType(UBRK_CHARACTER); break;
case LOAD_WORD_BREAKITERATOR: rbi->publicSetBreakType(UBRK_WORD); break;
case LOAD_SENTENCE_BREAKITERATOR: rbi->publicSetBreakType(UBRK_SENTENCE); break;
case LOAD_LINE_BREAKITERATOR: rbi->publicSetBreakType(UBRK_LINE); break;
}
#endif
icuBI->aBreakIterator = rbi;
}
}
......
......@@ -956,6 +956,32 @@ OString SAL_CALL unicode::getExemplarLanguageForUScriptCode(UScriptCode eScript)
case USCRIPT_SIDDHAM:
sRet = "sa-Sidd";
break;
#endif
#if (U_ICU_VERSION_MAJOR_NUM >= 58)
case USCRIPT_ADLAM:
sRet = "mis"; // Adlm - Adlam for Fulani, no language code
break;
case USCRIPT_BHAIKSUKI:
sRet = "mis"; // Bhks - Bhaiksuki for some Buddhist texts, no language code
break;
case USCRIPT_MARCHEN:
sRet = "bo-Marc";
break;
case USCRIPT_NEWA:
sRet = "new-Newa";
break;
case USCRIPT_OSAGE:
sRet = "osa-Osge";
break;
case USCRIPT_HAN_WITH_BOPOMOFO:
sRet = "mis"; // Hanb - Han with Bopomofo, zh-Hanb ?
break;
case USCRIPT_JAMO:
sRet = "mis"; // Jamo - Jamo subset of Hangul, ko-Jamo ?
break;
case USCRIPT_SYMBOLS_EMOJI:
sRet = "mis"; // Zsye - Emoji variant
break;
#endif
}
return sRet;
......
......@@ -291,6 +291,17 @@
#define RID_SUBSETSTR_OLD_HUNGARIAN (RID_SUBSET_START + 263)
#define RID_SUBSETSTR_SUPPLEMENTAL_SYMBOLS_AND_PICTOGRAPHS (RID_SUBSET_START + 264)
#define RID_SUBSETSTR_SUTTON_SIGNWRITING (RID_SUBSET_START + 265)
#define RID_SUBSETSTR_ADLAM (RID_SUBSET_START + 266)
#define RID_SUBSETSTR_BHAIKSUKI (RID_SUBSET_START + 267)
#define RID_SUBSETSTR_CYRILLIC_EXTENDED_C (RID_SUBSET_START + 268)
#define RID_SUBSETSTR_GLAGOLITIC_SUPPLEMENT (RID_SUBSET_START + 269)
#define RID_SUBSETSTR_IDEOGRAPHIC_SYMBOLS_AND_PUNCTUATION (RID_SUBSET_START + 270)
#define RID_SUBSETSTR_MARCHEN (RID_SUBSET_START + 271)
#define RID_SUBSETSTR_MONGOLIAN_SUPPLEMENT (RID_SUBSET_START + 272)
#define RID_SUBSETSTR_NEWA (RID_SUBSET_START + 273)
#define RID_SUBSETSTR_OSAGE (RID_SUBSET_START + 274)
#define RID_SUBSETSTR_TANGUT (RID_SUBSET_START + 275)
#define RID_SUBSETSTR_TANGUT_COMPONENTS (RID_SUBSET_START + 276)
// RID_SUBSET_END (RID_SUBSET_START + 299)
......
......@@ -1594,6 +1594,41 @@ void SubsetMap::InitList()
aAllSubsets.push_back( Subset( 0x1D800, 0x1DAAF, RID_SUBSETSTR_SUTTON_SIGNWRITING ) );
break;
#endif
#if (U_ICU_VERSION_MAJOR_NUM >= 58)
case UBLOCK_ADLAM:
aAllSubsets.push_back( Subset( 0x1E900, 0x1E95F, RID_SUBSETSTR_ADLAM ) );
break;
case UBLOCK_BHAIKSUKI:
aAllSubsets.push_back( Subset( 0x11C00, 0x11C6F, RID_SUBSETSTR_BHAIKSUKI ) );
break;
case UBLOCK_CYRILLIC_EXTENDED_C:
aAllSubsets.push_back( Subset( 0x1C80, 0x1C8F, RID_SUBSETSTR_CYRILLIC_EXTENDED_C ) );
break;
case UBLOCK_GLAGOLITIC_SUPPLEMENT:
aAllSubsets.push_back( Subset( 0x1E000, 0x1E02F, RID_SUBSETSTR_GLAGOLITIC_SUPPLEMENT ) );
break;
case UBLOCK_IDEOGRAPHIC_SYMBOLS_AND_PUNCTUATION:
aAllSubsets.push_back( Subset( 0x16FE0, 0x16FFF, RID_SUBSETSTR_IDEOGRAPHIC_SYMBOLS_AND_PUNCTUATION ) );
break;
case UBLOCK_MARCHEN:
aAllSubsets.push_back( Subset( 0x11C70, 0x11CBF, RID_SUBSETSTR_MARCHEN ) );
break;
case UBLOCK_MONGOLIAN_SUPPLEMENT:
aAllSubsets.push_back( Subset( 0x11660, 0x1167F, RID_SUBSETSTR_MONGOLIAN_SUPPLEMENT ) );
break;
case UBLOCK_NEWA:
aAllSubsets.push_back( Subset( 0x11400, 0x1147F, RID_SUBSETSTR_NEWA ) );
break;
case UBLOCK_OSAGE:
aAllSubsets.push_back( Subset( 0x104B0, 0x104FF, RID_SUBSETSTR_OSAGE ) );
break;
case UBLOCK_TANGUT:
aAllSubsets.push_back( Subset( 0x17000, 0x187FF, RID_SUBSETSTR_TANGUT ) );
break;
case UBLOCK_TANGUT_COMPONENTS:
aAllSubsets.push_back( Subset( 0x18800, 0x18AFF, RID_SUBSETSTR_TANGUT_COMPONENTS ) );
break;
#endif
}
......
......@@ -1079,6 +1079,50 @@ Resource RID_SUBSETMAP
{
Text [ en-US ] = "Sutton Signwriting";
};
String RID_SUBSETSTR_ADLAM
{
Text [ en-US ] = "Adlam";
};
String RID_SUBSETSTR_BHAIKSUKI
{
Text [ en-US ] = "Bhaiksuki";
};
String RID_SUBSETSTR_CYRILLIC_EXTENDED_C
{
Text [ en-US ] = "Cyrillic Extended-C";
};
String RID_SUBSETSTR_GLAGOLITIC_SUPPLEMENT
{
Text [ en-US ] = "Glagolitic Supplement";
};
String RID_SUBSETSTR_IDEOGRAPHIC_SYMBOLS_AND_PUNCTUATION
{
Text [ en-US ] = "Ideographic Symbols and Punctuation";
};
String RID_SUBSETSTR_MARCHEN
{
Text [ en-US ] = "Marchen";
};
String RID_SUBSETSTR_MONGOLIAN_SUPPLEMENT
{
Text [ en-US ] = "Mongolian Supplement";
};
String RID_SUBSETSTR_NEWA
{
Text [ en-US ] = "Newa";
};
String RID_SUBSETSTR_OSAGE
{
Text [ en-US ] = "Osage";
};
String RID_SUBSETSTR_TANGUT
{
Text [ en-US ] = "Tangut";
};
String RID_SUBSETSTR_TANGUT_COMPONENTS
{
Text [ en-US ] = "Tangut Components";
};
};
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment