external/hunspell/0001-move-iscii_devanagari_tbl-etc-out-of-.data-section.patch | 375 ++++++++++ external/hunspell/UnpackedTarball_hunspell.mk | 1 external/mariadb-connector-c/0001-const-up-my_uca1400_collation_definitions.patch | 26 external/mariadb-connector-c/UnpackedTarball_mariadb-connector-c.mk | 4 4 files changed, 406 insertions(+)
New commits: commit 04e66ac54169dd2a00d53abec093375bba90fd60 Author: Caolán McNamara <caolan.mcnam...@collabora.com> AuthorDate: Sun Jul 13 20:14:44 2025 +0100 Commit: Caolán McNamara <caolan.mcnam...@collabora.com> CommitDate: Tue Jul 15 09:45:46 2025 +0200 const up mariadb-connector-c Change-Id: I905bb80e1e0f61ac3c1d95fc28643de796098bbe Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187826 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com> diff --git a/external/mariadb-connector-c/0001-const-up-my_uca1400_collation_definitions.patch b/external/mariadb-connector-c/0001-const-up-my_uca1400_collation_definitions.patch new file mode 100644 index 000000000000..535dad041fce --- /dev/null +++ b/external/mariadb-connector-c/0001-const-up-my_uca1400_collation_definitions.patch @@ -0,0 +1,26 @@ +From ce34b9e5fea880c42b431939aed0449d16288d3b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolan.mcnam...@collabora.com> +Date: Sun, 13 Jul 2025 20:11:56 +0100 +Subject: [PATCH] const up my_uca1400_collation_definitions + +move this symbol out of the .data section +--- + libmariadb/ma_charset.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libmariadb/ma_charset.c b/libmariadb/ma_charset.c +index ff4d82f..05fcac9 100644 +--- a/libmariadb/ma_charset.c ++++ b/libmariadb/ma_charset.c +@@ -968,7 +968,7 @@ typedef struct my_uca1400_collation_definition_st + with IDs of their closest UCA1400 counterparts, for character sets + utf8mb3, utf8mb4, ucs2, utf16, utf32. + */ +-static MY_UCA1400_COLLATION_DEFINITION ++static const MY_UCA1400_COLLATION_DEFINITION + my_uca1400_collation_definitions[MY_UCA1400_COLLATION_DEFINITION_COUNT]= + { + #define COLDEF(tl,name,id_utf8mb3,id_utf8mb4,id_ucs2,id_utf16,id_utf32) \ +-- +2.49.0 + diff --git a/external/mariadb-connector-c/UnpackedTarball_mariadb-connector-c.mk b/external/mariadb-connector-c/UnpackedTarball_mariadb-connector-c.mk index bcbbd6f48178..567e8ddad5e9 100644 --- a/external/mariadb-connector-c/UnpackedTarball_mariadb-connector-c.mk +++ b/external/mariadb-connector-c/UnpackedTarball_mariadb-connector-c.mk @@ -23,9 +23,13 @@ $(eval $(call gb_UnpackedTarball_add_file,mariadb-connector-c,include/ma_config. endif endif # $(OS),WNT +# 0001-const-up-my_uca1400_collation_definitions.patch upstreamed as: +# https://github.com/mariadb-corporation/mariadb-connector-c/pull/290 + $(eval $(call gb_UnpackedTarball_add_patches,mariadb-connector-c,\ external/mariadb-connector-c/clang-cl.patch.0 \ external/mariadb-connector-c/c23.patch.0 \ + external/mariadb-connector-c/0001-const-up-my_uca1400_collation_definitions.patch \ )) # TODO are any "plugins" needed? commit eccfd182dfcb9c9ac866b4f9f47ba1d674e3b38c Author: Caolán McNamara <caolan.mcnam...@collabora.com> AuthorDate: Sun Jul 13 19:28:34 2025 +0100 Commit: Caolán McNamara <caolan.mcnam...@collabora.com> CommitDate: Tue Jul 15 09:45:33 2025 +0200 const up hunspell Change-Id: I8d432279aeaadbc18f95df1c9e99237583503353 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187820 Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com> Tested-by: Jenkins diff --git a/external/hunspell/0001-move-iscii_devanagari_tbl-etc-out-of-.data-section.patch b/external/hunspell/0001-move-iscii_devanagari_tbl-etc-out-of-.data-section.patch new file mode 100644 index 000000000000..412eb4d51ff3 --- /dev/null +++ b/external/hunspell/0001-move-iscii_devanagari_tbl-etc-out-of-.data-section.patch @@ -0,0 +1,375 @@ +From f9b326c5fd84ad976eaaa88582bb57d47d22ffb8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolan.mcnam...@collabora.com> +Date: Sun, 13 Jul 2025 19:17:55 +0100 +Subject: [PATCH] move iscii_devanagari_tbl, etc out of .data section + +--- + src/hunspell/affixmgr.hxx | 2 +- + src/hunspell/csutil.cxx | 52 ++++++++++++++++++------------------- + src/hunspell/csutil.hxx | 4 +-- + src/hunspell/hashmgr.hxx | 2 +- + src/hunspell/hunspell.cxx | 8 +++--- + src/hunspell/hunspell.hxx | 2 +- + src/hunspell/suggestmgr.cxx | 8 +++--- + src/hunspell/suggestmgr.hxx | 2 +- + 8 files changed, 40 insertions(+), 40 deletions(-) + +diff --git a/src/hunspell/affixmgr.hxx b/src/hunspell/affixmgr.hxx +index 0fc22a3..84caed1 100644 +--- a/src/hunspell/affixmgr.hxx ++++ b/src/hunspell/affixmgr.hxx +@@ -99,7 +99,7 @@ class AffixMgr { + std::string keystring; + std::string trystring; + std::string encoding; +- struct cs_info* csconv; ++ const struct cs_info* csconv; + int utf8; + int complexprefixes; + FLAG compoundflag; +diff --git a/src/hunspell/csutil.cxx b/src/hunspell/csutil.cxx +index 4589e77..92eb014 100644 +--- a/src/hunspell/csutil.cxx ++++ b/src/hunspell/csutil.cxx +@@ -685,7 +685,7 @@ char* get_stored_pointer(const char* s) { + // encodings supported + // supplying isupper, tolower, and toupper + +-static struct cs_info iso1_tbl[] = { ++const struct cs_info iso1_tbl[] = { + {0x00, 0x00, 0x00}, {0x00, 0x01, 0x01}, {0x00, 0x02, 0x02}, + {0x00, 0x03, 0x03}, {0x00, 0x04, 0x04}, {0x00, 0x05, 0x05}, + {0x00, 0x06, 0x06}, {0x00, 0x07, 0x07}, {0x00, 0x08, 0x08}, +@@ -773,7 +773,7 @@ static struct cs_info iso1_tbl[] = { + {0x00, 0xfc, 0xdc}, {0x00, 0xfd, 0xdd}, {0x00, 0xfe, 0xde}, + {0x00, 0xff, 0xff}}; + +-static struct cs_info iso2_tbl[] = { ++const struct cs_info iso2_tbl[] = { + {0x00, 0x00, 0x00}, {0x00, 0x01, 0x01}, {0x00, 0x02, 0x02}, + {0x00, 0x03, 0x03}, {0x00, 0x04, 0x04}, {0x00, 0x05, 0x05}, + {0x00, 0x06, 0x06}, {0x00, 0x07, 0x07}, {0x00, 0x08, 0x08}, +@@ -861,7 +861,7 @@ static struct cs_info iso2_tbl[] = { + {0x00, 0xfc, 0xdc}, {0x00, 0xfd, 0xdd}, {0x00, 0xfe, 0xde}, + {0x00, 0xff, 0xff}}; + +-static struct cs_info iso3_tbl[] = { ++const struct cs_info iso3_tbl[] = { + {0x00, 0x00, 0x00}, {0x00, 0x01, 0x01}, {0x00, 0x02, 0x02}, + {0x00, 0x03, 0x03}, {0x00, 0x04, 0x04}, {0x00, 0x05, 0x05}, + {0x00, 0x06, 0x06}, {0x00, 0x07, 0x07}, {0x00, 0x08, 0x08}, +@@ -949,7 +949,7 @@ static struct cs_info iso3_tbl[] = { + {0x00, 0xfc, 0xdc}, {0x00, 0xfd, 0xdd}, {0x00, 0xfe, 0xde}, + {0x00, 0xff, 0xff}}; + +-static struct cs_info iso4_tbl[] = { ++const struct cs_info iso4_tbl[] = { + {0x00, 0x00, 0x00}, {0x00, 0x01, 0x01}, {0x00, 0x02, 0x02}, + {0x00, 0x03, 0x03}, {0x00, 0x04, 0x04}, {0x00, 0x05, 0x05}, + {0x00, 0x06, 0x06}, {0x00, 0x07, 0x07}, {0x00, 0x08, 0x08}, +@@ -1037,7 +1037,7 @@ static struct cs_info iso4_tbl[] = { + {0x00, 0xfc, 0xdc}, {0x00, 0xfd, 0xdd}, {0x00, 0xfe, 0xde}, + {0x00, 0xff, 0xff}}; + +-static struct cs_info iso5_tbl[] = { ++const struct cs_info iso5_tbl[] = { + {0x00, 0x00, 0x00}, {0x00, 0x01, 0x01}, {0x00, 0x02, 0x02}, + {0x00, 0x03, 0x03}, {0x00, 0x04, 0x04}, {0x00, 0x05, 0x05}, + {0x00, 0x06, 0x06}, {0x00, 0x07, 0x07}, {0x00, 0x08, 0x08}, +@@ -1125,7 +1125,7 @@ static struct cs_info iso5_tbl[] = { + {0x00, 0xfc, 0xac}, {0x00, 0xfd, 0xfd}, {0x00, 0xfe, 0xae}, + {0x00, 0xff, 0xaf}}; + +-static struct cs_info iso6_tbl[] = { ++const struct cs_info iso6_tbl[] = { + {0x00, 0x00, 0x00}, {0x00, 0x01, 0x01}, {0x00, 0x02, 0x02}, + {0x00, 0x03, 0x03}, {0x00, 0x04, 0x04}, {0x00, 0x05, 0x05}, + {0x00, 0x06, 0x06}, {0x00, 0x07, 0x07}, {0x00, 0x08, 0x08}, +@@ -1213,7 +1213,7 @@ static struct cs_info iso6_tbl[] = { + {0x00, 0xfc, 0xfc}, {0x00, 0xfd, 0xfd}, {0x00, 0xfe, 0xfe}, + {0x00, 0xff, 0xff}}; + +-static struct cs_info iso7_tbl[] = { ++const struct cs_info iso7_tbl[] = { + {0x00, 0x00, 0x00}, {0x00, 0x01, 0x01}, {0x00, 0x02, 0x02}, + {0x00, 0x03, 0x03}, {0x00, 0x04, 0x04}, {0x00, 0x05, 0x05}, + {0x00, 0x06, 0x06}, {0x00, 0x07, 0x07}, {0x00, 0x08, 0x08}, +@@ -1301,7 +1301,7 @@ static struct cs_info iso7_tbl[] = { + {0x00, 0xfc, 0xbc}, {0x00, 0xfd, 0xbe}, {0x00, 0xfe, 0xbf}, + {0x00, 0xff, 0xff}}; + +-static struct cs_info iso8_tbl[] = { ++const struct cs_info iso8_tbl[] = { + {0x00, 0x00, 0x00}, {0x00, 0x01, 0x01}, {0x00, 0x02, 0x02}, + {0x00, 0x03, 0x03}, {0x00, 0x04, 0x04}, {0x00, 0x05, 0x05}, + {0x00, 0x06, 0x06}, {0x00, 0x07, 0x07}, {0x00, 0x08, 0x08}, +@@ -1389,7 +1389,7 @@ static struct cs_info iso8_tbl[] = { + {0x00, 0xfc, 0xfc}, {0x00, 0xfd, 0xfd}, {0x00, 0xfe, 0xfe}, + {0x00, 0xff, 0xff}}; + +-static struct cs_info iso9_tbl[] = { ++const struct cs_info iso9_tbl[] = { + {0x00, 0x00, 0x00}, {0x00, 0x01, 0x01}, {0x00, 0x02, 0x02}, + {0x00, 0x03, 0x03}, {0x00, 0x04, 0x04}, {0x00, 0x05, 0x05}, + {0x00, 0x06, 0x06}, {0x00, 0x07, 0x07}, {0x00, 0x08, 0x08}, +@@ -1477,7 +1477,7 @@ static struct cs_info iso9_tbl[] = { + {0x00, 0xfc, 0xdc}, {0x00, 0xfd, 0x49}, {0x00, 0xfe, 0xde}, + {0x00, 0xff, 0xff}}; + +-static struct cs_info iso10_tbl[] = { ++const struct cs_info iso10_tbl[] = { + {0x00, 0x00, 0x00}, {0x00, 0x01, 0x01}, {0x00, 0x02, 0x02}, + {0x00, 0x03, 0x03}, {0x00, 0x04, 0x04}, {0x00, 0x05, 0x05}, + {0x00, 0x06, 0x06}, {0x00, 0x07, 0x07}, {0x00, 0x08, 0x08}, +@@ -1565,7 +1565,7 @@ static struct cs_info iso10_tbl[] = { + {0x00, 0xfc, 0xfc}, {0x00, 0xfd, 0xfd}, {0x00, 0xfe, 0xfe}, + {0x00, 0xff, 0xff}}; + +-static struct cs_info koi8r_tbl[] = { ++const struct cs_info koi8r_tbl[] = { + {0x00, 0x00, 0x00}, {0x00, 0x01, 0x01}, {0x00, 0x02, 0x02}, + {0x00, 0x03, 0x03}, {0x00, 0x04, 0x04}, {0x00, 0x05, 0x05}, + {0x00, 0x06, 0x06}, {0x00, 0x07, 0x07}, {0x00, 0x08, 0x08}, +@@ -1653,7 +1653,7 @@ static struct cs_info koi8r_tbl[] = { + {0x01, 0xdc, 0xfc}, {0x01, 0xdd, 0xfd}, {0x01, 0xde, 0xfe}, + {0x01, 0xdf, 0xff}}; + +-static struct cs_info koi8u_tbl[] = { ++const struct cs_info koi8u_tbl[] = { + {0x00, 0x00, 0x00}, {0x00, 0x01, 0x01}, {0x00, 0x02, 0x02}, + {0x00, 0x03, 0x03}, {0x00, 0x04, 0x04}, {0x00, 0x05, 0x05}, + {0x00, 0x06, 0x06}, {0x00, 0x07, 0x07}, {0x00, 0x08, 0x08}, +@@ -1743,7 +1743,7 @@ static struct cs_info koi8u_tbl[] = { + {0x01, 0xda, 0xfa}, {0x01, 0xdb, 0xfb}, {0x01, 0xdc, 0xfc}, + {0x01, 0xdd, 0xfd}, {0x01, 0xde, 0xfe}, {0x01, 0xdf, 0xff}}; + +-static struct cs_info cp1251_tbl[] = { ++const struct cs_info cp1251_tbl[] = { + {0x00, 0x00, 0x00}, {0x00, 0x01, 0x01}, {0x00, 0x02, 0x02}, + {0x00, 0x03, 0x03}, {0x00, 0x04, 0x04}, {0x00, 0x05, 0x05}, + {0x00, 0x06, 0x06}, {0x00, 0x07, 0x07}, {0x00, 0x08, 0x08}, +@@ -1831,7 +1831,7 @@ static struct cs_info cp1251_tbl[] = { + {0x00, 0xfc, 0xdc}, {0x00, 0xfd, 0xdd}, {0x00, 0xfe, 0xde}, + {0x00, 0xff, 0xdf}}; + +-static struct cs_info iso13_tbl[] = { ++const struct cs_info iso13_tbl[] = { + {0x00, 0x00, 0x00}, {0x00, 0x01, 0x01}, {0x00, 0x02, 0x02}, + {0x00, 0x03, 0x03}, {0x00, 0x04, 0x04}, {0x00, 0x05, 0x05}, + {0x00, 0x06, 0x06}, {0x00, 0x07, 0x07}, {0x00, 0x08, 0x08}, +@@ -1919,7 +1919,7 @@ static struct cs_info iso13_tbl[] = { + {0x00, 0xFC, 0xDC}, {0x00, 0xFD, 0xDD}, {0x00, 0xFE, 0xDE}, + {0x00, 0xFF, 0xFF}}; + +-static struct cs_info iso14_tbl[] = { ++const struct cs_info iso14_tbl[] = { + {0x00, 0x00, 0x00}, {0x00, 0x01, 0x01}, {0x00, 0x02, 0x02}, + {0x00, 0x03, 0x03}, {0x00, 0x04, 0x04}, {0x00, 0x05, 0x05}, + {0x00, 0x06, 0x06}, {0x00, 0x07, 0x07}, {0x00, 0x08, 0x08}, +@@ -2007,7 +2007,7 @@ static struct cs_info iso14_tbl[] = { + {0x00, 0xfc, 0xdc}, {0x00, 0xfd, 0xdd}, {0x00, 0xfe, 0xde}, + {0x00, 0xff, 0xff}}; + +-static struct cs_info iso15_tbl[] = { ++const struct cs_info iso15_tbl[] = { + {0x00, 0x00, 0x00}, {0x00, 0x01, 0x01}, {0x00, 0x02, 0x02}, + {0x00, 0x03, 0x03}, {0x00, 0x04, 0x04}, {0x00, 0x05, 0x05}, + {0x00, 0x06, 0x06}, {0x00, 0x07, 0x07}, {0x00, 0x08, 0x08}, +@@ -2095,7 +2095,7 @@ static struct cs_info iso15_tbl[] = { + {0x00, 0xfc, 0xdc}, {0x00, 0xfd, 0xdd}, {0x00, 0xfe, 0xde}, + {0x00, 0xff, 0xbe}}; + +-static struct cs_info iscii_devanagari_tbl[] = { ++const struct cs_info iscii_devanagari_tbl[] = { + {0x00, 0x00, 0x00}, {0x00, 0x01, 0x01}, {0x00, 0x02, 0x02}, + {0x00, 0x03, 0x03}, {0x00, 0x04, 0x04}, {0x00, 0x05, 0x05}, + {0x00, 0x06, 0x06}, {0x00, 0x07, 0x07}, {0x00, 0x08, 0x08}, +@@ -2183,7 +2183,7 @@ static struct cs_info iscii_devanagari_tbl[] = { + {0x00, 0xfc, 0xfc}, {0x00, 0xfd, 0xfd}, {0x00, 0xfe, 0xfe}, + {0x00, 0xff, 0xff}}; + +-static struct cs_info tis620_tbl[] = { ++const struct cs_info tis620_tbl[] = { + {0x00, 0x00, 0x00}, {0x00, 0x01, 0x01}, {0x00, 0x02, 0x02}, + {0x00, 0x03, 0x03}, {0x00, 0x04, 0x04}, {0x00, 0x05, 0x05}, + {0x00, 0x06, 0x06}, {0x00, 0x07, 0x07}, {0x00, 0x08, 0x08}, +@@ -2273,10 +2273,10 @@ static struct cs_info tis620_tbl[] = { + + struct enc_entry { + const char* enc_name; +- struct cs_info* cs_table; ++ const struct cs_info* cs_table; + }; + +-static struct enc_entry encds[] = { ++const struct enc_entry encds[] = { + {"iso88591", iso1_tbl}, // ISO-8859-1 + {"iso88592", iso2_tbl}, // ISO-8859-2 + {"iso88593", iso3_tbl}, // ISO-8859-3 +@@ -2323,11 +2323,11 @@ static void toAsciiLowerAndRemoveNonAlphanumeric(const char* pName, + *pBuf = ' + } + +-struct cs_info* get_current_cs(const std::string& es) { ++const struct cs_info* get_current_cs(const std::string& es) { + char* normalized_encoding = new char[es.size() + 1]; + toAsciiLowerAndRemoveNonAlphanumeric(es.c_str(), normalized_encoding); + +- struct cs_info* ccs = NULL; ++ const struct cs_info* ccs = NULL; + for (const auto& encd : encds) { + if (strcmp(normalized_encoding, encd.enc_name) == 0) { + ccs = encd.cs_table; +@@ -2350,7 +2350,7 @@ struct cs_info* get_current_cs(const std::string& es) { + // XXX This function was rewritten for mozilla. Instead of storing the + // conversion tables static in this file, create them when needed + // with help the mozilla backend. +-struct cs_info* get_current_cs(const std::string& es) { ++const struct cs_info* get_current_cs(const std::string& es) { + struct cs_info* ccs = new cs_info[256]; + // Initialze the array with dummy data so that we wouldn't need + // to return null in case of failures. +@@ -2437,7 +2437,7 @@ struct cs_info* get_current_cs(const std::string& es) { + + // primitive isalpha() replacement for tokenization + std::string get_casechars(const char* enc) { +- struct cs_info* csconv = get_current_cs(enc); ++ const struct cs_info* csconv = get_current_cs(enc); + std::string expw; + for (int i = 0; i <= 255; ++i) { + if (cupper(csconv, i) != clower(csconv, i)) { +@@ -2457,7 +2457,7 @@ struct lang_map { + int num; + }; + +-static struct lang_map lang2enc[] = ++const struct lang_map lang2enc[] = + {{"ar", LANG_ar}, {"az", LANG_az}, + {"az_AZ", LANG_az}, // for back-compatibility + {"bg", LANG_bg}, {"ca", LANG_ca}, +@@ -2527,7 +2527,7 @@ int unicodeisalpha(unsigned short c) { + } + + /* get type of capitalization */ +-int get_captype(const std::string& word, cs_info* csconv) { ++int get_captype(const std::string& word, const cs_info* csconv) { + // now determine the capitalization type of the first nl letters + size_t ncap = 0; + size_t nneutral = 0; +diff --git a/src/hunspell/csutil.hxx b/src/hunspell/csutil.hxx +index 808087d..fd11266 100644 +--- a/src/hunspell/csutil.hxx ++++ b/src/hunspell/csutil.hxx +@@ -189,7 +189,7 @@ LIBHUNSPELL_DLL_EXPORTED unsigned short unicodetolower(unsigned short c, + int langnum); + LIBHUNSPELL_DLL_EXPORTED int unicodeisalpha(unsigned short c); + +-LIBHUNSPELL_DLL_EXPORTED struct cs_info* get_current_cs(const std::string& es); ++LIBHUNSPELL_DLL_EXPORTED const struct cs_info* get_current_cs(const std::string& es); + + // get language identifiers of language codes + LIBHUNSPELL_DLL_EXPORTED int get_lang_num(const std::string& lang); +@@ -230,7 +230,7 @@ LIBHUNSPELL_DLL_EXPORTED std::vector<w_char>& + mkallcap_utf(std::vector<w_char>& u, int langnum); + + // get type of capitalization +-LIBHUNSPELL_DLL_EXPORTED int get_captype(const std::string& q, cs_info*); ++LIBHUNSPELL_DLL_EXPORTED int get_captype(const std::string& q, const cs_info*); + + // get type of capitalization (UTF-8) + LIBHUNSPELL_DLL_EXPORTED int get_captype_utf8(const std::vector<w_char>& q, int langnum); +diff --git a/src/hunspell/hashmgr.hxx b/src/hunspell/hashmgr.hxx +index 792b2f1..9e0975a 100644 +--- a/src/hunspell/hashmgr.hxx ++++ b/src/hunspell/hashmgr.hxx +@@ -96,7 +96,7 @@ class HashMgr { + int langnum; + std::string enc; + std::string lang; +- struct cs_info* csconv; ++ const struct cs_info* csconv; + std::string ignorechars; + std::vector<w_char> ignorechars_utf16; + std::vector<unsigned short*> aliasf; // flag vector `compression' with aliases +diff --git a/src/hunspell/hunspell.cxx b/src/hunspell/hunspell.cxx +index 51e0937..2bb1b94 100644 +--- a/src/hunspell/hunspell.cxx ++++ b/src/hunspell/hunspell.cxx +@@ -112,7 +112,7 @@ public: + int add_with_affix(const std::string& word, const std::string& example); + int remove(const std::string& word); + const std::string& get_version_cpp() const; +- struct cs_info* get_csconv(); ++ const struct cs_info* get_csconv() const; + + int spell(const char* word, int* info = NULL, char** root = NULL); + int suggest(char*** slst, const char* word); +@@ -134,7 +134,7 @@ private: + SuggestMgr* pSMgr; + std::string affixpath; + std::string encoding; +- struct cs_info* csconv; ++ const struct cs_info* csconv; + int langnum; + int utf8; + int complexprefixes; +@@ -1505,7 +1505,7 @@ const std::string& HunspellImpl::get_version_cpp() const { + return pAMgr->get_version(); + } + +-struct cs_info* HunspellImpl::get_csconv() { ++const struct cs_info* HunspellImpl::get_csconv() const { + return csconv; + } + +@@ -2186,7 +2186,7 @@ const std::string& Hunspell::get_version_cpp() const { + return m_Impl->get_version_cpp(); + } + +-struct cs_info* Hunspell::get_csconv() { ++const struct cs_info* Hunspell::get_csconv() const { + return m_Impl->get_csconv(); + } + +diff --git a/src/hunspell/hunspell.hxx b/src/hunspell/hunspell.hxx +index 142017f..267a745 100644 +--- a/src/hunspell/hunspell.hxx ++++ b/src/hunspell/hunspell.hxx +@@ -217,7 +217,7 @@ class LIBHUNSPELL_DLL_EXPORTED Hunspell { + const std::string& get_wordchars_cpp() const; + const std::vector<w_char>& get_wordchars_utf16() const; + +- struct cs_info* get_csconv(); ++ const struct cs_info* get_csconv() const; + + const char* get_version() const; + const std::string& get_version_cpp() const; +diff --git a/src/hunspell/suggestmgr.cxx b/src/hunspell/suggestmgr.cxx +index 5f480f9..82b53d2 100644 +--- a/src/hunspell/suggestmgr.cxx ++++ b/src/hunspell/suggestmgr.cxx +@@ -1207,7 +1207,7 @@ void SuggestMgr::ngsuggest(std::vector<std::string>& wlst, + + // set character based ngram suggestion for words with non-BMP Unicode + // characters +- struct cs_info* origconv = csconv; ++ const struct cs_info* origconv = csconv; + if (n == -1) { + utf8 = 0; // XXX not state-free + if (!csconv) +diff --git a/src/hunspell/suggestmgr.hxx b/src/hunspell/suggestmgr.hxx +index 7fa1a6b..0f8bcc5 100644 +--- a/src/hunspell/suggestmgr.hxx ++++ b/src/hunspell/suggestmgr.hxx +@@ -103,7 +103,7 @@ class SuggestMgr { + + AffixMgr* pAMgr; + unsigned int maxSug; +- struct cs_info* csconv; ++ const struct cs_info* csconv; + int utf8; + int langnum; + int nosplitsugs; +-- +2.49.0 + diff --git a/external/hunspell/UnpackedTarball_hunspell.mk b/external/hunspell/UnpackedTarball_hunspell.mk index 72a5d2c94d68..5b3a31ddc739 100644 --- a/external/hunspell/UnpackedTarball_hunspell.mk +++ b/external/hunspell/UnpackedTarball_hunspell.mk @@ -23,6 +23,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,hunspell, \ external/hunspell/0001-fix-LibreOffice-build-problem-with-basic_string-appe.patch \ external/hunspell/0001-Resolves-rhbz-2158548-allow-longer-words-for-hunspel.patch \ external/hunspell/0001-Keep-only-REP-ph-or-2-word-dictionary-phrase-suggest.patch \ + external/hunspell/0001-move-iscii_devanagari_tbl-etc-out-of-.data-section.patch \ external/hunspell/bit_cast.patch.0 \ external/hunspell/clock-monotonic.patch.1 \ ))