diff options
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | download.lst | 8 | ||||
-rw-r--r-- | external/icu/UnpackedTarball_icu.mk | 2 | ||||
-rw-r--r-- | external/icu/c++20-comparison.patch.1 | 30 | ||||
-rw-r--r-- | external/icu/do-not-reset-useful-cache-to-empty-in-populateNear.patch.2 | 37 | ||||
-rw-r--r-- | external/icu/strict_ansi.patch | 15 | ||||
-rw-r--r-- | i18nutil/source/utility/unicode.cxx | 8 | ||||
-rw-r--r-- | include/svx/strings.hrc | 7 | ||||
-rw-r--r-- | svx/source/dialog/charmap.cxx | 24 |
9 files changed, 58 insertions, 75 deletions
diff --git a/configure.ac b/configure.ac index 064e0683637d..bacc245f9396 100644 --- a/configure.ac +++ b/configure.ac @@ -10796,7 +10796,7 @@ fi dnl =================================================================== dnl Check for system icu dnl =================================================================== -ICU_MAJOR=71 +ICU_MAJOR=72 ICU_MINOR=1 ICU_RECLASSIFIED_PREPEND_SET_EMPTY="TRUE" ICU_RECLASSIFIED_CONDITIONAL_JAPANESE_STARTER="TRUE" diff --git a/download.lst b/download.lst index 1b855434d7f9..0db9970fcd5d 100644 --- a/download.lst +++ b/download.lst @@ -106,10 +106,10 @@ export HUNSPELL_SHA256SUM := b2d9c5369c2cc7f321cb5983fda2dbf007dce3d9e1751974684 export HUNSPELL_TARBALL := hunspell-1.7.1.tar.gz export HYPHEN_SHA256SUM := 304636d4eccd81a14b6914d07b84c79ebb815288c76fe027b9ebff6ff24d5705 export HYPHEN_TARBALL := 5ade6ae2a99bc1e9e57031ca88d36dad-hyphen-2.8.8.tar.gz -export ICU_SHA256SUM := 67a7e6e51f61faf1306b6935333e13b2c48abd8da6d2f46ce6adca24b1e21ebf -export ICU_TARBALL := icu4c-71_1-src.tgz -export ICU_DATA_SHA256SUM := e3882b4fece6e5e039f22c3189b7ba224180fd26fdbfa9db284617455b93e804 -export ICU_DATA_TARBALL := icu4c-71_1-data.zip +export ICU_SHA256SUM := a2d2d38217092a7ed56635e34467f92f976b370e20182ad325edea6681a71d68 +export ICU_TARBALL := icu4c-72_1-src.tgz +export ICU_DATA_SHA256SUM := ee19f876507d6c23d9e0a2b631096f6b0eaa6fa61728c33a89efdb55e3385dea +export ICU_DATA_TARBALL := icu4c-72_1-data.zip export JFREEREPORT_FLOW_ENGINE_SHA256SUM := 233f66e8d25c5dd971716d4200203a612a407649686ef3b52075d04b4c9df0dd export JFREEREPORT_FLOW_ENGINE_TARBALL := ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip export JFREEREPORT_FLUTE_SHA256SUM := 1b5b24f7bc543c0362b667692f78db8bab4ed6dafc6172f104d0bd3757d8a133 diff --git a/external/icu/UnpackedTarball_icu.mk b/external/icu/UnpackedTarball_icu.mk index ccb1a1a8b9b2..f58223d5bc5f 100644 --- a/external/icu/UnpackedTarball_icu.mk +++ b/external/icu/UnpackedTarball_icu.mk @@ -36,11 +36,9 @@ $(eval $(call gb_UnpackedTarball_add_patches,icu,\ external/icu/c++20-comparison.patch.1 \ external/icu/ubsan.patch.1 \ external/icu/Wdeprecated-copy-dtor.patch \ - external/icu/strict_ansi.patch \ external/icu/icu4c-windows-cygwin-cross.patch.1 \ external/icu/icu4c-emscripten-cross.patch.1 \ external/icu/icu4c-use-pkgdata-single-ccode-file-mode.patch.1 \ - external/icu/do-not-reset-useful-cache-to-empty-in-populateNear.patch.2 \ external/icu/icu4c-khmerbreakengine.patch.1 \ external/icu/icu4c-$(if $(filter ANDROID,$(OS)),android,rpath).patch.1 \ $(if $(filter-out ANDROID,$(OS)),external/icu/icu4c-icudata-stdlibs.patch.1) \ diff --git a/external/icu/c++20-comparison.patch.1 b/external/icu/c++20-comparison.patch.1 index 3d2d7c042951..fa10b048ce41 100644 --- a/external/icu/c++20-comparison.patch.1 +++ b/external/icu/c++20-comparison.patch.1 @@ -1,6 +1,6 @@ diff -ur icu.org/source/i18n/unicode/rbtz.h icu/source/i18n/unicode/rbtz.h ---- icu.org/source/i18n/unicode/rbtz.h 2021-10-28 18:04:57.000000000 +0200 -+++ icu/source/i18n/unicode/rbtz.h 2021-11-15 18:56:24.364137609 +0100 +--- icu.org/source/i18n/unicode/rbtz.h 2022-10-19 02:53:21.000000000 +0200 ++++ icu/source/i18n/unicode/rbtz.h 2022-10-24 22:20:10.889969185 +0200 @@ -87,6 +87,7 @@ * @stable ICU 3.8 */ @@ -10,8 +10,8 @@ diff -ur icu.org/source/i18n/unicode/rbtz.h icu/source/i18n/unicode/rbtz.h /** * Adds the `TimeZoneRule` which represents time transitions. diff -ur icu.org/source/i18n/unicode/simpletz.h icu/source/i18n/unicode/simpletz.h ---- icu.org/source/i18n/unicode/simpletz.h 2021-10-28 18:04:57.000000000 +0200 -+++ icu/source/i18n/unicode/simpletz.h 2021-11-15 19:01:41.774487719 +0100 +--- icu.org/source/i18n/unicode/simpletz.h 2022-10-19 02:53:21.000000000 +0200 ++++ icu/source/i18n/unicode/simpletz.h 2022-10-24 22:20:10.890969183 +0200 @@ -112,6 +112,7 @@ * @stable ICU 2.0 */ @@ -21,8 +21,8 @@ diff -ur icu.org/source/i18n/unicode/simpletz.h icu/source/i18n/unicode/simpletz /** * Constructs a SimpleTimeZone with the given raw GMT offset and time zone ID, diff -ur icu.org/source/i18n/unicode/smpdtfmt.h icu/source/i18n/unicode/smpdtfmt.h ---- icu.org/source/i18n/unicode/smpdtfmt.h 2021-10-28 18:04:57.000000000 +0200 -+++ icu/source/i18n/unicode/smpdtfmt.h 2021-11-15 19:02:47.382353381 +0100 +--- icu.org/source/i18n/unicode/smpdtfmt.h 2022-10-19 02:53:21.000000000 +0200 ++++ icu/source/i18n/unicode/smpdtfmt.h 2022-10-24 22:20:10.891969181 +0200 @@ -877,6 +877,7 @@ * @stable ICU 2.0 */ @@ -32,8 +32,8 @@ diff -ur icu.org/source/i18n/unicode/smpdtfmt.h icu/source/i18n/unicode/smpdtfmt using DateFormat::format; diff -ur icu.org/source/i18n/unicode/stsearch.h icu/source/i18n/unicode/stsearch.h ---- icu.org/source/i18n/unicode/stsearch.h 2021-10-28 18:04:57.000000000 +0200 -+++ icu/source/i18n/unicode/stsearch.h 2021-11-15 19:03:27.014272230 +0100 +--- icu.org/source/i18n/unicode/stsearch.h 2022-10-19 02:53:21.000000000 +0200 ++++ icu/source/i18n/unicode/stsearch.h 2022-10-24 22:20:10.892969178 +0200 @@ -298,6 +298,7 @@ * @stable ICU 2.0 */ @@ -43,8 +43,8 @@ diff -ur icu.org/source/i18n/unicode/stsearch.h icu/source/i18n/unicode/stsearch // public get and set methods ---------------------------------------- diff -ur icu.org/source/i18n/unicode/tzrule.h icu/source/i18n/unicode/tzrule.h ---- icu.org/source/i18n/unicode/tzrule.h 2021-10-28 18:04:57.000000000 +0200 -+++ icu/source/i18n/unicode/tzrule.h 2021-11-15 19:14:52.191331967 +0100 +--- icu.org/source/i18n/unicode/tzrule.h 2022-10-19 02:53:21.000000000 +0200 ++++ icu/source/i18n/unicode/tzrule.h 2022-10-24 22:30:23.298744116 +0200 @@ -257,6 +257,7 @@ * @stable ICU 3.8 */ @@ -52,8 +52,8 @@ diff -ur icu.org/source/i18n/unicode/tzrule.h icu/source/i18n/unicode/tzrule.h + bool operator!=(const InitialTimeZoneRule& that) const {return !operator==(that);} /** - * Gets the time when this rule takes effect in the given year. -@@ -468,6 +469,7 @@ + * Returns if this rule represents the same rule and offsets as another. +@@ -454,6 +455,7 @@ * @stable ICU 3.8 */ virtual bool operator!=(const TimeZoneRule& that) const override; @@ -61,7 +61,7 @@ diff -ur icu.org/source/i18n/unicode/tzrule.h icu/source/i18n/unicode/tzrule.h /** * Gets the start date/time rule used by this rule. -@@ -684,6 +686,7 @@ +@@ -670,6 +672,7 @@ * @stable ICU 3.8 */ virtual bool operator!=(const TimeZoneRule& that) const override; @@ -70,8 +70,8 @@ diff -ur icu.org/source/i18n/unicode/tzrule.h icu/source/i18n/unicode/tzrule.h /** * Gets the time type of the start times used by this rule. The return value diff -ur icu.org/source/i18n/unicode/vtzone.h icu/source/i18n/unicode/vtzone.h ---- icu.org/source/i18n/unicode/vtzone.h 2021-10-28 18:04:57.000000000 +0200 -+++ icu/source/i18n/unicode/vtzone.h 2021-11-15 19:16:07.461130004 +0100 +--- icu.org/source/i18n/unicode/vtzone.h 2022-10-19 02:53:21.000000000 +0200 ++++ icu/source/i18n/unicode/vtzone.h 2022-10-24 22:20:10.895969172 +0200 @@ -83,6 +83,7 @@ * @stable ICU 3.8 */ diff --git a/external/icu/do-not-reset-useful-cache-to-empty-in-populateNear.patch.2 b/external/icu/do-not-reset-useful-cache-to-empty-in-populateNear.patch.2 deleted file mode 100644 index bd7fe74fb42a..000000000000 --- a/external/icu/do-not-reset-useful-cache-to-empty-in-populateNear.patch.2 +++ /dev/null @@ -1,37 +0,0 @@ -From 34b2f7174ba187d99dfb8704b9cf19d369accc13 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Lubo=C5=A1=20Lu=C5=88=C3=A1k?= <l.lunak@centrum.cz> -Date: Wed, 16 Mar 2022 10:54:03 +0100 -Subject: [PATCH] do not reset useful cache to empty in populateNear() - ---- - icu4c/source/common/rbbi_cache.cpp | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/icu4c/source/common/rbbi_cache.cpp b/icu4c/source/common/rbbi_cache.cpp -index 26d82df781..54a77c97c6 100644 ---- a/icu/source/common/rbbi_cache.cpp -+++ b/icu/source/common/rbbi_cache.cpp -@@ -352,7 +352,7 @@ UBool RuleBasedBreakIterator::BreakCache - if ((position < fBoundaries[fStartBufIdx] - 15) || position > (fBoundaries[fEndBufIdx] + 15)) { - int32_t aBoundary = 0; - int32_t ruleStatusIndex = 0; -- if (position > 20) { -+ if (position > 20 && false) { // handleSafePrevious() is broken and always returns 0 - int32_t backupPos = fBI->handleSafePrevious(position); - - if (backupPos > 0) { -@@ -376,7 +376,10 @@ UBool RuleBasedBreakIterator::BreakCache::populateNear(int32_t position, UErrorC - ruleStatusIndex = fBI->fRuleStatusIndex; - } - } -- reset(aBoundary, ruleStatusIndex); // Reset cache to hold aBoundary as a single starting point. -+ // Reset cache to hold aBoundary as a single starting point. -+ // Do not do so if what's in the cache is still more useful than an empty cache. -+ if (!(aBoundary == 0 && position > fBoundaries[fEndBufIdx])) -+ reset(aBoundary, ruleStatusIndex); - } - - // Fill in boundaries between existing cache content and the new requested position. --- -2.34.1 - diff --git a/external/icu/strict_ansi.patch b/external/icu/strict_ansi.patch deleted file mode 100644 index 972f0e65b1f1..000000000000 --- a/external/icu/strict_ansi.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- source/io/ufile.cpp -+++ source/io/ufile.cpp -@@ -21,12 +21,6 @@ - */ - - #include "unicode/platform.h" --#if defined(__GNUC__) && !defined(__clang__) && defined(__STRICT_ANSI__) --// g++, fileno isn't defined if __STRICT_ANSI__ is defined. --// clang fails to compile the <string> header unless __STRICT_ANSI__ is defined. --// __GNUC__ is set by both gcc and clang. --#undef __STRICT_ANSI__ --#endif - - #include "locmap.h" - #include "unicode/ustdio.h" diff --git a/i18nutil/source/utility/unicode.cxx b/i18nutil/source/utility/unicode.cxx index 33f1ca2f190e..6e002aa69f18 100644 --- a/i18nutil/source/utility/unicode.cxx +++ b/i18nutil/source/utility/unicode.cxx @@ -829,6 +829,14 @@ OString unicode::getExemplarLanguageForUScriptCode(UScriptCode eScript) sRet = "sq-Vith"; // macrolanguage code break; #endif +#if (U_ICU_VERSION_MAJOR_NUM >= 72) + case USCRIPT_KAWI: + sRet = "mis-Kawi"; // Uncoded with script + break; + case USCRIPT_NAG_MUNDARI: + sRet = "unr-Nagm"; + break; +#endif } return sRet; } diff --git a/include/svx/strings.hrc b/include/svx/strings.hrc index e6863c3b2228..d0b66a81f135 100644 --- a/include/svx/strings.hrc +++ b/include/svx/strings.hrc @@ -1786,6 +1786,13 @@ #define RID_SUBSETSTR_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED_A NC_("RID_SUBSETMAP", "Canadian Aboriginal Syllabics Extended-A") #define RID_SUBSETSTR_VITHKUQI NC_("RID_SUBSETMAP", "Vithkuqi") #define RID_SUBSETSTR_ZNAMENNY_MUSICAL_NOTATION NC_("RID_SUBSETMAP", "Znamenny Musical Notation") +#define RID_SUBSETSTR_ARABIC_EXTENDED_C NC_("RID_SUBSETMAP", "Arabic Extended-C") +#define RID_SUBSETSTR_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_H NC_("RID_SUBSETMAP", "CJK Unified Ideographs Extension H") +#define RID_SUBSETSTR_CYRILLIC_EXTENDED_D NC_("RID_SUBSETMAP", "Cyrillic Extended-D") +#define RID_SUBSETSTR_DEVANAGARI_EXTENDED_A NC_("RID_SUBSETMAP", "Devanagari Extended-A") +#define RID_SUBSETSTR_KAKTOVIK_NUMERALS NC_("RID_SUBSETMAP", "Kaktovik Numerals") +#define RID_SUBSETSTR_KAWI NC_("RID_SUBSETMAP", "Kawi") +#define RID_SUBSETSTR_NAG_MUNDARI NC_("RID_SUBSETMAP", "Nag Mundari") #define RID_SVXSTR_FRAMEDIR_LTR NC_("RID_SVXSTR_FRAMEDIR_LTR", "Left-to-right (LTR)") #define RID_SVXSTR_FRAMEDIR_RTL NC_("RID_SVXSTR_FRAMEDIR_RTL", "Right-to-left (RTL)") diff --git a/svx/source/dialog/charmap.cxx b/svx/source/dialog/charmap.cxx index b268fff518d1..bc3950ad2ca6 100644 --- a/svx/source/dialog/charmap.cxx +++ b/svx/source/dialog/charmap.cxx @@ -1894,7 +1894,29 @@ void SubsetMap::InitList() aAllSubsets.emplace_back( 0x1CF00, 0x1CFCF, SvxResId(RID_SUBSETSTR_ZNAMENNY_MUSICAL_NOTATION) ); break; #endif - +#if (U_ICU_VERSION_MAJOR_NUM >= 72) + case UBLOCK_ARABIC_EXTENDED_C: + aAllSubsets.emplace_back( 0x10EC0, 0x10EFF, SvxResId(RID_SUBSETSTR_ARABIC_EXTENDED_C) ); + break; + case UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_H: + aAllSubsets.emplace_back( 0x31350, 0x323AF, SvxResId(RID_SUBSETSTR_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_H) ); + break; + case UBLOCK_CYRILLIC_EXTENDED_D: + aAllSubsets.emplace_back( 0x1E030, 0x1E08F, SvxResId(RID_SUBSETSTR_CYRILLIC_EXTENDED_D) ); + break; + case UBLOCK_DEVANAGARI_EXTENDED_A: + aAllSubsets.emplace_back( 0x11B00, 0x11B5F, SvxResId(RID_SUBSETSTR_DEVANAGARI_EXTENDED_A) ); + break; + case UBLOCK_KAKTOVIK_NUMERALS: + aAllSubsets.emplace_back( 0x1D2C0, 0x1D2DF, SvxResId(RID_SUBSETSTR_KAKTOVIK_NUMERALS) ); + break; + case UBLOCK_KAWI: + aAllSubsets.emplace_back( 0x11F00, 0x11F5F, SvxResId(RID_SUBSETSTR_KAWI) ); + break; + case UBLOCK_NAG_MUNDARI: + aAllSubsets.emplace_back( 0x1E4D0, 0x1E4FF, SvxResId(RID_SUBSETSTR_NAG_MUNDARI) ); + break; +#endif } #if OSL_DEBUG_LEVEL > 0 && !defined NDEBUG |