From: Jason Schonberg Date: Tue, 19 Nov 2024 18:44:11 +0000 (-0500) Subject: icu: upgrade 75-1 -> 76-1 X-Git-Tag: uninative-4.7~834 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ef2bd18dd1db7e5f01db76889933bfdbb5415aaf;p=thirdparty%2Fopenembedded%2Fopenembedded-core.git icu: upgrade 75-1 -> 76-1 License-Update: add JSON parsing library under MIT license. Drop backported patches which have been merged into the new version. ICU-22813_rise_buffer_sizes_pkgdata_PR3058.patch - https://github.com/unicode-org/icu/pull/3058/commits/db70adaddcfa8050db6a69cdfef080a7f1423ad7 fix-install-manx.patch Signed-off-by: Jason Schonberg Signed-off-by: Richard Purdie --- diff --git a/meta/recipes-support/icu/icu/ICU-22813_rise_buffer_sizes_pkgdata_PR3058.patch b/meta/recipes-support/icu/icu/ICU-22813_rise_buffer_sizes_pkgdata_PR3058.patch deleted file mode 100644 index 5b97350e6f9..00000000000 --- a/meta/recipes-support/icu/icu/ICU-22813_rise_buffer_sizes_pkgdata_PR3058.patch +++ /dev/null @@ -1,72 +0,0 @@ -From db70adaddcfa8050db6a69cdfef080a7f1423ad7 Mon Sep 17 00:00:00 2001 -From: Carlos Alberto Lopez Perez -Date: Mon, 1 Jul 2024 22:15:18 +0100 -Subject: [PATCH] ICU-22813 Rise the size of the buffers used for the command - strings at pkgdata - -The tool pkgdata uses snprintf() to build the strings of the commands that -will execute later during the install process. But the maximum size of this -buffers is not enough when there is a long path. - -This has caused issues on some CI systems that use very long paths, causing -the install process to produce a wrong result. - -The maximum path on Linux is 4096 (defined as PATH_MAX at ) -So the size of SMALL_BUFFER_MAX_SIZE should be 4096 to avoid errors related -to truncated paths. - -Upstream-Status: Backport [https://github.com/unicode-org/icu/pull/3058] - -Signed-off-by: Carlos Alberto Lopez Perez ---- - tools/pkgdata/pkgdata.cpp | 6 +++--- - tools/toolutil/pkg_genc.h | 5 ++--- - 2 files changed, 5 insertions(+), 6 deletions(-) - -diff --git a/tools/pkgdata/pkgdata.cpp b/tools/pkgdata/pkgdata.cpp -index c2ac112..8d08c85 100644 ---- a/tools/pkgdata/pkgdata.cpp -+++ b/tools/pkgdata/pkgdata.cpp -@@ -1134,7 +1134,7 @@ static int32_t pkg_createSymLinks(const char *targetDir, UBool specialHandling) - - static int32_t pkg_installLibrary(const char *installDir, const char *targetDir, UBool noVersion) { - int32_t result = 0; -- char cmd[SMALL_BUFFER_MAX_SIZE]; -+ char cmd[LARGE_BUFFER_MAX_SIZE]; - - auto ret = snprintf(cmd, - sizeof(cmd), -@@ -1205,7 +1205,7 @@ static int32_t pkg_installLibrary(const char *installDir, const char *targetDir, - - static int32_t pkg_installCommonMode(const char *installDir, const char *fileName) { - int32_t result = 0; -- char cmd[SMALL_BUFFER_MAX_SIZE] = ""; -+ char cmd[LARGE_BUFFER_MAX_SIZE] = ""; - - if (!T_FileStream_file_exists(installDir)) { - UErrorCode status = U_ZERO_ERROR; -@@ -1237,7 +1237,7 @@ static int32_t pkg_installCommonMode(const char *installDir, const char *fileNam - #endif - static int32_t pkg_installFileMode(const char *installDir, const char *srcDir, const char *fileListName) { - int32_t result = 0; -- char cmd[SMALL_BUFFER_MAX_SIZE] = ""; -+ char cmd[LARGE_BUFFER_MAX_SIZE] = ""; - - if (!T_FileStream_file_exists(installDir)) { - UErrorCode status = U_ZERO_ERROR; -diff --git a/tools/toolutil/pkg_genc.h b/tools/toolutil/pkg_genc.h -index 2dd1b45..f811fe5 100644 ---- a/tools/toolutil/pkg_genc.h -+++ b/tools/toolutil/pkg_genc.h -@@ -59,9 +59,8 @@ - #define PKGDATA_FILE_SEP_STRING U_FILE_SEP_STRING - #endif - --#define LARGE_BUFFER_MAX_SIZE 2048 --#define SMALL_BUFFER_MAX_SIZE 512 --#define SMALL_BUFFER_FLAG_NAMES 32 -+#define LARGE_BUFFER_MAX_SIZE 16384 -+#define SMALL_BUFFER_MAX_SIZE 4096 - #define BUFFER_PADDING_SIZE 20 - - /** End platform defines **/ diff --git a/meta/recipes-support/icu/icu/fix-install-manx.patch b/meta/recipes-support/icu/icu/fix-install-manx.patch deleted file mode 100644 index 7b1ca814519..00000000000 --- a/meta/recipes-support/icu/icu/fix-install-manx.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 2d544cac238eccbfc32cafc9502ddf6e00994211 Mon Sep 17 00:00:00 2001 -From: Ross Burton -Date: Fri, 9 Oct 2015 17:50:41 +0100 -Subject: [PATCH] icu: fix install race - -The generic recursive target calls target-local so also adding it to the -dependency list results in races due to install-local being executed twice in -parallel. For example, install-manx can fail if the two install processes race -and one process tries to chown a file that the other process has just deleted. - -Also install-manx should be a phony target, and for clarity use $^ instead of $? -in the install command. - -Upstream-Status: Backport [0f022dca90cfe6bbf6a74f605dcaf1b489d58a9b] -Signed-off-by: Ross Burton ---- - Makefile.in | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/Makefile.in b/Makefile.in -index 8366f01..79b91c9 100644 ---- a/Makefile.in -+++ b/Makefile.in -@@ -77,7 +77,7 @@ EXTRA_DATA = - - ## List of phony targets - .PHONY : all all-local all-recursive install install-local install-udata install-udata-files install-udata-dlls \ --install-recursive clean clean-local clean-recursive distclean \ -+install-recursive install-manx clean clean-local clean-recursive distclean \ - distclean-local distclean-recursive doc dist dist-local dist-recursive \ - check check-local check-recursive clean-recursive-with-twist install-icu \ - doc install-doc tests icu4j-data icu4j-data-install update-windows-makefiles xcheck-local xcheck-recursive xperf xcheck xperf-recursive \ -@@ -88,9 +88,9 @@ check-exhaustive check-exhaustive-local check-exhaustive-recursive releaseDist - - ## List of standard targets - all: all-local all-recursive --install: install-recursive install-local -+install: install-recursive - clean: clean-recursive-with-twist clean-local --distclean : distclean-recursive distclean-local -+distclean : distclean-recursive - dist: dist-recursive - check: all check-recursive - check-recursive: all -@@ -357,7 +357,7 @@ config.status: $(srcdir)/configure $(srcdir)/common/unicode/uvernum.h - install-manx: $(MANX_FILES) - $(MKINSTALLDIRS) $(DESTDIR)$(mandir)/man$(SECTION) - ifneq ($(MANX_FILES),) -- $(INSTALL_DATA) $? $(DESTDIR)$(mandir)/man$(SECTION) -+ $(INSTALL_DATA) $^ $(DESTDIR)$(mandir)/man$(SECTION) - endif - - config/%.$(SECTION): $(srcdir)/config/%.$(SECTION).in diff --git a/meta/recipes-support/icu/icu_75-1.bb b/meta/recipes-support/icu/icu_76-1.bb similarity index 93% rename from meta/recipes-support/icu/icu_75-1.bb rename to meta/recipes-support/icu/icu_76-1.bb index 8f7f5e6cc71..08dabde3ae4 100644 --- a/meta/recipes-support/icu/icu_75-1.bb +++ b/meta/recipes-support/icu/icu_76-1.bb @@ -92,7 +92,7 @@ FILES:libicuio = "${libdir}/libicuio.so.*" BBCLASSEXTEND = "native nativesdk" -LIC_FILES_CHKSUM = "file://../LICENSE;md5=9cf7c317c3f2a0962437465a9022dbe9" +LIC_FILES_CHKSUM = "file://../LICENSE;md5=7c364a0debecf16d5a13de2b7f1aaabd" def icu_download_version(d): pvsplit = d.getVar('PV').split('-') @@ -118,16 +118,14 @@ DATA_SRC_URI = "${GITHUB_BASE_URI}/download/release-${ICU_FOLDER}/icu4c-${ICU_PV SRC_URI = "${BASE_SRC_URI};name=code \ ${DATA_SRC_URI};name=data \ file://filter.json \ - file://fix-install-manx.patch \ file://0001-icu-Added-armeb-support.patch \ - file://ICU-22813_rise_buffer_sizes_pkgdata_PR3058.patch \ " SRC_URI:append:class-target = "\ file://0001-Disable-LDFLAGSICUDT-for-Linux.patch \ " -SRC_URI[code.sha256sum] = "cb968df3e4d2e87e8b11c49a5d01c787bd13b9545280fc6642f826527618caef" -SRC_URI[data.sha256sum] = "a5104212dc317a64f9b035723ea706f2f4fd5a0f37b7923fae7aeb9d1d0061b1" +SRC_URI[code.sha256sum] = "dfacb46bfe4747410472ce3e1144bf28a102feeaa4e3875bac9b4c6cf30f4f3e" +SRC_URI[data.sha256sum] = "133ae58a67d68b46f7296822904cd3c30126a0b4b2f65f0f905e7f47c0ef9e47" UPSTREAM_CHECK_REGEX = "releases/tag/release-(?P(?!.+rc).+)" GITHUB_BASE_URI = "https://github.com/unicode-org/icu/releases"