app-office/libreoffice: Fix ICU 77 and prepare for ICU 78

Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
This commit is contained in:
Andreas Sturmlechner
2026-01-06 23:58:21 +01:00
parent 1291790c3d
commit 7b7785486e
3 changed files with 216 additions and 2 deletions

View File

@@ -0,0 +1,113 @@
From 5d09908418767a541977acae348654af8239e9db Mon Sep 17 00:00:00 2001
From: Taichi Haradaguchi <20001722@protonmail.com>
Date: Wed, 30 Oct 2024 14:47:03 +0200
Subject: Update ICU to 77.1
* asturm: stripped of all the upstream bundling stuff and fixed their version check ...
---
i18nutil/source/utility/unicode.cxx | 23 +++++++++++++++++++
include/svx/strings.hrc | 10 +++++++++
svx/source/dialog/charmap.cxx | 32 +++++++++++++++++++++++++++
3 files changed, 65 insertions(+)
diff --git a/i18nutil/source/utility/unicode.cxx b/i18nutil/source/utility/unicode.cxx
index c9bfbeeb0a80..e8476dd8bbe6 100644
--- a/i18nutil/source/utility/unicode.cxx
+++ b/i18nutil/source/utility/unicode.cxx
@@ -1005,6 +1005,29 @@ OString unicode::getExemplarLanguageForUScriptCode(UScriptCode eScript)
case USCRIPT_ARABIC_NASTALIQ:
sRet = "fa-Aran"_ostr;
break;
+#endif
+#if (U_ICU_VERSION_MAJOR_NUM >= 77)
+ case USCRIPT_GARAY:
+ sRet = "wo-Gara"_ostr;
+ break;
+ case USCRIPT_GURUNG_KHEMA:
+ sRet = "gvr-Gukh"_ostr;
+ break;
+ case USCRIPT_KIRAT_RAI:
+ sRet = "bap-Krai"_ostr;
+ break;
+ case USCRIPT_OL_ONAL:
+ sRet = "unr-Onao"_ostr;
+ break;
+ case USCRIPT_SUNUWAR:
+ sRet = "suz-Sunu"_ostr;
+ break;
+ case USCRIPT_TODHRI:
+ sRet = "sq-Todr"_ostr;
+ break;
+ case USCRIPT_TULU_TIGALARI:
+ sRet = "sa-Tutg"_ostr;
+ break;
#endif
}
return sRet;
diff --git a/include/svx/strings.hrc b/include/svx/strings.hrc
index 04ce906e7222..90d5f3ebab79 100644
--- a/include/svx/strings.hrc
+++ b/include/svx/strings.hrc
@@ -1801,6 +1801,16 @@
#define RID_SUBSETSTR_KAWI NC_("RID_SUBSETMAP", "Kawi")
#define RID_SUBSETSTR_NAG_MUNDARI NC_("RID_SUBSETMAP", "Nag Mundari")
#define RID_SUBSETSTR_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_I NC_("RID_SUBSETMAP", "CJK Unified Ideographs Extension I")
+#define RID_SUBSETSTR_EGYPTIAN_HIEROGLYPHS_EXTENDED_A NC_("RID_SUBSETMAP", "Egyptian Hieroglyphs Extended-A")
+#define RID_SUBSETSTR_GARAY NC_("RID_SUBSETMAP", "Garay")
+#define RID_SUBSETSTR_GURUNG_KHEMA NC_("RID_SUBSETMAP", "Gurung Khema")
+#define RID_SUBSETSTR_KIRAT_RAI NC_("RID_SUBSETMAP", "Kirat Rai")
+#define RID_SUBSETSTR_MYANMAR_EXTENDED_C NC_("RID_SUBSETMAP", "Myanmar Extended-C")
+#define RID_SUBSETSTR_OL_ONAL NC_("RID_SUBSETMAP", "Ol Onal")
+#define RID_SUBSETSTR_SUNUWAR NC_("RID_SUBSETMAP", "Sunuwar")
+#define RID_SUBSETSTR_SYMBOLS_FOR_LEGACY_COMPUTING_SUPPLEMENT NC_("RID_SUBSETMAP", "Symbols for Legacy Computing Supplement")
+#define RID_SUBSETSTR_TODHRI NC_("RID_SUBSETMAP", "Todhri")
+#define RID_SUBSETSTR_TULU_TIGALARI NC_("RID_SUBSETMAP", "Tulu-Tigalari")
#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 adb2749b11f8..acdfbf9f490f 100644
--- a/svx/source/dialog/charmap.cxx
+++ b/svx/source/dialog/charmap.cxx
@@ -1928,6 +1928,38 @@ void SubsetMap::InitList()
case UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_I:
aAllSubsets.emplace_back( 0x2EBF0, 0x2EE5F, SvxResId(RID_SUBSETSTR_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_I) );
break;
+#endif
+#if (U_ICU_VERSION_MAJOR_NUM >= 77)
+ case UBLOCK_EGYPTIAN_HIEROGLYPHS_EXTENDED_A:
+ aAllSubsets.emplace_back( 0x13460, 0x1355F, SvxResId(RID_SUBSETSTR_EGYPTIAN_HIEROGLYPHS_EXTENDED_A) );
+ break;
+ case UBLOCK_GARAY:
+ aAllSubsets.emplace_back( 0x10D40, 0x10D8F, SvxResId(RID_SUBSETSTR_GARAY) );
+ break;
+ case UBLOCK_GURUNG_KHEMA:
+ aAllSubsets.emplace_back( 0x16100, 0x1613F, SvxResId(RID_SUBSETSTR_GURUNG_KHEMA) );
+ break;
+ case UBLOCK_KIRAT_RAI:
+ aAllSubsets.emplace_back( 0x16D40, 0x16D7F, SvxResId(RID_SUBSETSTR_KIRAT_RAI) );
+ break;
+ case UBLOCK_MYANMAR_EXTENDED_C:
+ aAllSubsets.emplace_back( 0x116D0, 0x116FF, SvxResId(RID_SUBSETSTR_MYANMAR_EXTENDED_C) );
+ break;
+ case UBLOCK_OL_ONAL:
+ aAllSubsets.emplace_back( 0x1E5D0, 0x1E5FF, SvxResId(RID_SUBSETSTR_OL_ONAL) );
+ break;
+ case UBLOCK_SUNUWAR:
+ aAllSubsets.emplace_back( 0x11BC0, 0x11BFF, SvxResId(RID_SUBSETSTR_SUNUWAR) );
+ break;
+ case UBLOCK_SYMBOLS_FOR_LEGACY_COMPUTING_SUPPLEMENT:
+ aAllSubsets.emplace_back( 0x1CC00, 0x1CEBF, SvxResId(RID_SUBSETSTR_SYMBOLS_FOR_LEGACY_COMPUTING_SUPPLEMENT) );
+ break;
+ case UBLOCK_TODHRI:
+ aAllSubsets.emplace_back( 0x105C0, 0x105FF, SvxResId(RID_SUBSETSTR_TODHRI) );
+ break;
+ case UBLOCK_TULU_TIGALARI:
+ aAllSubsets.emplace_back( 0x11380, 0x113FF, SvxResId(RID_SUBSETSTR_TULU_TIGALARI) );
+ break;
#endif
}
--
cgit v1.2.3

View File

@@ -0,0 +1,99 @@
From a02e38567e1d5414a253e04a81b67ccfa25ed8f4 Mon Sep 17 00:00:00 2001
From: Xisco Fauli <xiscofauli@libreoffice.org>
Date: Fri, 31 Oct 2025 14:40:11 +0100
Subject: ICU: upgrade to 78.1
* asturm: stripped of all the upstream bundling stuff ...
---
i18nutil/source/utility/unicode.cxx | 17 +
include/svx/strings.hrc | 8 +
svx/source/dialog/charmap.cxx | 26 +
3 files changed, 51 insertions(+)
diff --git a/i18nutil/source/utility/unicode.cxx b/i18nutil/source/utility/unicode.cxx
index ff7d6a649136..7030e72b331e 100644
--- a/i18nutil/source/utility/unicode.cxx
+++ b/i18nutil/source/utility/unicode.cxx
@@ -1025,6 +1025,23 @@ OString unicode::getExemplarLanguageForUScriptCode(UScriptCode eScript)
case USCRIPT_TULU_TIGALARI:
sRet = "sa-Tutg"_ostr;
break;
+#endif
+#if (U_ICU_VERSION_MAJOR_NUM >= 78)
+ case USCRIPT_BERIA_ERFE:
+ sRet = "zag-Berf"_ostr;
+ break;
+ case USCRIPT_SIDETIC:
+ sRet = "xsd-Sidt"_ostr;
+ break;
+ case USCRIPT_TAI_YO:
+ sRet = "tyj-Tayo"_ostr;
+ break;
+ case USCRIPT_TOLONG_SIKI:
+ sRet = "kru-Tols"_ostr;
+ break;
+ case USCRIPT_TRADITIONAL_HAN_WITH_LATIN:
+ sRet = "zh-Hntl"_ostr;
+ break;
#endif
}
return sRet;
diff --git a/include/svx/strings.hrc b/include/svx/strings.hrc
index 011092678295..48f5b89f0d54 100644
--- a/include/svx/strings.hrc
+++ b/include/svx/strings.hrc
@@ -1818,6 +1818,14 @@
#define RID_SUBSETSTR_SYMBOLS_FOR_LEGACY_COMPUTING_SUPPLEMENT NC_("RID_SUBSETMAP", "Symbols for Legacy Computing Supplement")
#define RID_SUBSETSTR_TODHRI NC_("RID_SUBSETMAP", "Todhri")
#define RID_SUBSETSTR_TULU_TIGALARI NC_("RID_SUBSETMAP", "Tulu-Tigalari")
+#define RID_SUBSETSTR_BERIA_ERFE NC_("RID_SUBSETMAP", "Beria Erfe")
+#define RID_SUBSETSTR_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_J NC_("RID_SUBSETMAP", "CJK Unified Ideographs Extension J")
+#define RID_SUBSETSTR_MISCELLANEOUS_SYMBOLS_SUPPLEMENT NC_("RID_SUBSETMAP", "Miscellaneous Symbols Supplement")
+#define RID_SUBSETSTR_SHARADA_SUPPLEMENT NC_("RID_SUBSETMAP", "Sharada Supplement")
+#define RID_SUBSETSTR_SIDETIC NC_("RID_SUBSETMAP", "Sidetic")
+#define RID_SUBSETSTR_TAI_YO NC_("RID_SUBSETMAP", "Tai Yo")
+#define RID_SUBSETSTR_TANGUT_COMPONENTS_SUPPLEMENT NC_("RID_SUBSETMAP", "Tangut Components Supplement")
+#define RID_SUBSETSTR_TOLONG_SIKI NC_("RID_SUBSETMAP", "Tolong Siki")
#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 71c81261350d..32999d6e63fe 100644
--- a/svx/source/dialog/charmap.cxx
+++ b/svx/source/dialog/charmap.cxx
@@ -1959,6 +1959,32 @@ void SubsetMap::InitList()
case UBLOCK_TULU_TIGALARI:
aAllSubsets.emplace_back( 0x11380, 0x113FF, SvxResId(RID_SUBSETSTR_TULU_TIGALARI) );
break;
+#endif
+#if (U_ICU_VERSION_MAJOR_NUM >= 78)
+ case UBLOCK_BERIA_ERFE:
+ aAllSubsets.emplace_back( 0x16EA0, 0x16EDF, SvxResId(RID_SUBSETSTR_BERIA_ERFE) );
+ break;
+ case UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_J:
+ aAllSubsets.emplace_back( 0x323B0, 0x3347F, SvxResId(RID_SUBSETSTR_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_J) );
+ break;
+ case UBLOCK_MISCELLANEOUS_SYMBOLS_SUPPLEMENT:
+ aAllSubsets.emplace_back( 0x1CEC0, 0x1CEFF, SvxResId(RID_SUBSETSTR_MISCELLANEOUS_SYMBOLS_SUPPLEMENT) );
+ break;
+ case UBLOCK_SHARADA_SUPPLEMENT:
+ aAllSubsets.emplace_back( 0x11B60, 0x11B7F, SvxResId(RID_SUBSETSTR_SHARADA_SUPPLEMENT) );
+ break;
+ case UBLOCK_SIDETIC:
+ aAllSubsets.emplace_back( 0x10940, 0x1095F, SvxResId(RID_SUBSETSTR_SIDETIC) );
+ break;
+ case UBLOCK_TAI_YO:
+ aAllSubsets.emplace_back( 0x1E6C0, 0x1E6FF, SvxResId(RID_SUBSETSTR_TAI_YO) );
+ break;
+ case UBLOCK_TANGUT_COMPONENTS_SUPPLEMENT:
+ aAllSubsets.emplace_back( 0x18D80, 0x18DFF, SvxResId(RID_SUBSETSTR_TANGUT_COMPONENTS_SUPPLEMENT) );
+ break;
+ case UBLOCK_TOLONG_SIKI:
+ aAllSubsets.emplace_back( 0x11DB0, 0x11DEF, SvxResId(RID_SUBSETSTR_TOLONG_SIKI) );
+ break;
#endif
}
--
cgit v1.2.3

View File

@@ -1,4 +1,4 @@
# Copyright 1999-2025 Gentoo Authors
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -296,7 +296,9 @@ PATCHES=(
"${FILESDIR}/${PN}-25.2-unused-qt6network.patch"
"${FILESDIR}/${PN}-25.2.4.3-gcc16.patch"
"${FILESDIR}/${PN}-25.2.6.2-poppler-25.09.patch"
"${FILESDIR}/${PN}-25.2.7.2-poppler-25.10.patch"
"${FILESDIR}/${P}-poppler-25.10.patch"
"${FILESDIR}/${P}-icu-77.1.patch"
"${FILESDIR}/${P}-icu-78.1.patch"
# add qt6 backend as possible fallback for gtk-based desktop environments:
# https://bugs.gentoo.org/950170