From 00af6882a24ca69f9e8147546a220dc73e4d6087 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Wed, 17 Feb 2021 00:01:30 +0100 Subject: icu: backport fix for rare random genrb segmentation fault * sometimes I've seen it also reporting "Bus error" instead of segmentation fault * upstream bug report: https://unicode-org.atlassian.net/browse/ICU-21175 * on 80 core machine it failed 11 times in 1000 rebuilds of icu in various files: icu.019.stderr.compile:make[1]: *** [out/build/icudt66l/windowsZones.res] Segmentation fault icu.035.stderr.compile:make[1]: *** [out/build/icudt66l/supplementalData.res] Segmentation fault icu.095.stderr.compile:make[1]: *** [out/build/icudt66l/plurals.res] Segmentation fault icu.116.stderr.compile:make[1]: *** [out/build/icudt66l/curr/supplementalData.res] Segmentation fault icu.313.stderr.compile:make[1]: *** [out/build/icudt66l/supplementalData.res] Segmentation fault icu.415.stderr.compile:make[1]: *** [out/build/icudt66l/supplementalData.res] Segmentation fault icu.476.stderr.compile:make[1]: *** [out/build/icudt66l/metadata.res] Segmentation fault icu.495.stderr.compile:make[1]: *** [out/build/icudt66l/supplementalData.res] Segmentation fault icu.496.stderr.compile:make[1]: *** [out/build/icudt66l/supplementalData.res] Segmentation fault icu.505.stderr.compile:make[1]: *** [out/build/icudt66l/pluralRanges.res] Segmentation fault icu.756.stderr.compile:make[1]: *** [out/build/icudt66l/numberingSystems.res] Segmentation fault * apply 0001-Fix-big-endian-build.patch in do_patch like this new patch Signed-off-by: Martin Jansa Signed-off-by: Steve Sakoman --- ...-Add-cnvalias-as-a-dependency-of-misc_res.patch | 24 ++++++++++++++++++++++ meta/recipes-support/icu/icu_66.1.bb | 4 ++-- 2 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 meta/recipes-support/icu/icu/0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch diff --git a/meta/recipes-support/icu/icu/0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch b/meta/recipes-support/icu/icu/0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch new file mode 100644 index 0000000000..d7ddf33bce --- /dev/null +++ b/meta/recipes-support/icu/icu/0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch @@ -0,0 +1,24 @@ +From f2bc064e0d70ac068de4539d069bfab6cdccc48d Mon Sep 17 00:00:00 2001 +From: "Shane F. Carr" +Date: Fri, 10 Jul 2020 14:28:22 -0500 +Subject: [PATCH] ICU-21175 Add cnvalias as a dependency of misc_res + +Upstream-Status: Backport [https://github.com/unicode-org/icu/commit/ee2d8b01034c3101de2bd58f9328daa076995e9e] +Signed-off-by: Martin Jansa +--- + data/BUILDRULES.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/data/BUILDRULES.py b/data/BUILDRULES.py +index 2338afd1f7..63b6e09273 100644 +--- a/data/BUILDRULES.py ++++ b/data/BUILDRULES.py +@@ -361,7 +361,7 @@ def generate_misc(config, io, common_vars): + RepeatedExecutionRequest( + name = "misc_res", + category = "misc", +- dep_targets = [], ++ dep_targets = [DepTarget("cnvalias")], # ICU-21175 + input_files = input_files, + output_files = output_files, + tool = IcuTool("genrb"), diff --git a/meta/recipes-support/icu/icu_66.1.bb b/meta/recipes-support/icu/icu_66.1.bb index 08254648e4..6ba88595df 100644 --- a/meta/recipes-support/icu/icu_66.1.bb +++ b/meta/recipes-support/icu/icu_66.1.bb @@ -21,10 +21,11 @@ BASE_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${I DATA_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-data.zip" SRC_URI = "${BASE_SRC_URI};name=code \ ${DATA_SRC_URI};name=data \ + file://0001-Fix-big-endian-build.patch;patchdir=${WORKDIR} \ + file://0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch;patchdir=${WORKDIR} \ file://filter.json \ file://icu-pkgdata-large-cmd.patch \ file://fix-install-manx.patch \ - file://0001-Fix-big-endian-build.patch;apply=no \ file://0001-icu-Added-armeb-support.patch \ file://CVE-2020-10531.patch \ " @@ -47,7 +48,6 @@ do_make_icudata_class-target () { cd ${S} rm -rf data cp -a ${WORKDIR}/data . - patch -p1 < ${WORKDIR}/0001-Fix-big-endian-build.patch ${@bb.utils.contains('PACKAGECONFIG', 'make-icudata', '', 'exit 0', d)} AR='${BUILD_AR}' \ CC='${BUILD_CC}' \ -- cgit 1.2.3-korg