From 0fafbd4ddb7e969e9dda6f4670435603ba7d37a6 Mon Sep 17 00:00:00 2001 From: Alexander Borsuk Date: Fri, 17 Dec 2021 12:11:54 +0100 Subject: [PATCH] [3party] Updated ICU to the latest master 70.1 Signed-off-by: Alexander Borsuk --- 3party/icu/CMakeLists.txt | 4 +++ 3party/icu/README.md | 28 +++++++++++++++++++-- 3party/icu/icu | 2 +- android/script/replace_links.bat | 2 +- data/{icudt69l.dat => icudt70l.dat} | Bin 886032 -> 888208 bytes indexer/transliteration_loader.cpp | 2 +- iphone/Maps/Maps.xcodeproj/project.pbxproj | 8 +++--- qt/CMakeLists.txt | 2 +- xcode/icu/icu.xcodeproj/project.pbxproj | 24 ++++++++++++++++++ 9 files changed, 62 insertions(+), 10 deletions(-) rename data/{icudt69l.dat => icudt70l.dat} (83%) diff --git a/3party/icu/CMakeLists.txt b/3party/icu/CMakeLists.txt index 5ea982f43f..9d433a753c 100644 --- a/3party/icu/CMakeLists.txt +++ b/3party/icu/CMakeLists.txt @@ -14,6 +14,7 @@ set(SRC icu/icu4c/source/common/cmemory.cpp icu/icu4c/source/common/cstring.cpp icu/icu4c/source/common/edits.cpp + icu/icu4c/source/common/emojiprops.cpp icu/icu4c/source/common/loadednormalizer2impl.cpp icu/icu4c/source/common/localebuilder.cpp icu/icu4c/source/common/locid.cpp @@ -38,6 +39,8 @@ set(SRC icu/icu4c/source/common/ubidiwrt.cpp icu/icu4c/source/common/ucase.cpp icu/icu4c/source/common/uchar.cpp + icu/icu4c/source/common/ucharstrie.cpp + icu/icu4c/source/common/ucharstrieiterator.cpp icu/icu4c/source/common/ucln_cmn.cpp icu/icu4c/source/common/ucmndata.cpp icu/icu4c/source/common/ucptrie.cpp @@ -85,6 +88,7 @@ set(SRC icu/icu4c/source/common/utrie2.cpp icu/icu4c/source/common/utrie_swap.cpp icu/icu4c/source/common/uvector.cpp + icu/icu4c/source/common/uvectr32.cpp icu/icu4c/source/i18n/anytrans.cpp icu/icu4c/source/i18n/casetrn.cpp icu/icu4c/source/i18n/cpdtrans.cpp diff --git a/3party/icu/README.md b/3party/icu/README.md index 045c0f8ad4..24a7828e50 100644 --- a/3party/icu/README.md +++ b/3party/icu/README.md @@ -9,8 +9,32 @@ To use icu code, define UCONFIG_USE_LOCAL and add 3 include search paths: Only necessary sources are included for bidi and transliteration. Please add other sources if you need more functionality. -## Example how to build filtered data file +# How to build and update icudtXXl.dat file + +After updating ICU submodule, please also update the data/icudtXXl.dat file (XX is an ICU version). + +```bash +mkdir build && cd build +ICU_DATA_FILTER_FILE=../icu_filter.json ../icu/icu4c/source/./configure --disable-shared --enable-static --disable-renaming --disable-extras --disable-icuio --disable-tests --disable-samples --with-data-packaging=archive +make -j$(nproc) +cp data/out/icudt??l.dat ../../../data/ +``` + +Don't forget to delete an old .dat file in the $(OMIM_ROOT)/data and update all references in the code: ``` -ICU_DATA_FILTER_FILE=$(PWD)/icu_filter.json $(PWD)/icu/icu4c/source/./configure --disable-shared --enable-static --disable-renaming --disable-extras --disable-icuio --disable-tests --disable-samples --with-data-packaging=archive +indexer/transliteration_loader.cpp +16: char const kICUDataFile[] = "icudt69l.dat"; + +android/script/replace_links.bat +42:cp -r ../data/icudt69l.dat assets/ + +iphone/Maps/Maps.xcodeproj/project.pbxproj +453: BB7626B61E85599C0031D71C /* icudt69l.dat in Resources */ = {isa = PBXBuildFile; fileRef = BB7626B41E8559980031D71C /* icudt69l.dat */; }; +1316: BB7626B41E8559980031D71C /* icudt69l.dat */ = {isa = PBXFileReference; lastKnownFileType = file; name = icudt69l.dat; path = ../../data/icudt69l.dat; sourceTree = ""; }; +3557: BB7626B41E8559980031D71C /* icudt69l.dat */, +3841: BB7626B61E85599C0031D71C /* icudt69l.dat in Resources */, + +qt/CMakeLists.txt +132: icudt69l.dat ``` diff --git a/3party/icu/icu b/3party/icu/icu index a91cd6736e..904cf62457 160000 --- a/3party/icu/icu +++ b/3party/icu/icu @@ -1 +1 @@ -Subproject commit a91cd6736e5586bd88e62f9b7893ae4550297f14 +Subproject commit 904cf62457de2440e8526deb75c95a3f7296f517 diff --git a/android/script/replace_links.bat b/android/script/replace_links.bat index f146b18cc8..a51ecfcc66 100644 --- a/android/script/replace_links.bat +++ b/android/script/replace_links.bat @@ -39,7 +39,7 @@ cp -r ../data/resources-6plus_clear/ assets/ cp -r ../data/sound-strings/ assets/ cp -r ../data/countries-strings/ assets/ -cp -r ../data/icudt69l.dat assets/ +cp -r ../data/icudt70l.dat assets/ rm -rf flavors/mwm-ttf-assets diff --git a/data/icudt69l.dat b/data/icudt70l.dat similarity index 83% rename from data/icudt69l.dat rename to data/icudt70l.dat index 6deaaf1cdd0b1fd417817e4c1879b38eb9a5c0c1..a424ec96738eeac0eaca6ae9f57662f4f3815c17 100644 GIT binary patch delta 27184 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 Wqy7J@?|@CcIht1A0dAjgp8OwK%whik delta 25377 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