summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Jansa <Martin.Jansa@gmail.com>2021-02-07 07:07:39 -0800
committerMartin Jansa <Martin.Jansa@gmail.com>2021-02-16 11:33:20 +0100
commitfa4a4dc92e0fe4bce10c29ca3664427433d550b0 (patch)
treeec3cc7ff7891226da3b7a1b00584dcc530df51c3
parent887b131130676108a752d372e35c4fb9aa5ec8e9 (diff)
downloadopenembedded-core-contrib-fa4a4dc92e0fe4bce10c29ca3664427433d550b0.tar.gz
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 <Martin.Jansa@gmail.com>
-rw-r--r--meta/recipes-support/icu/icu/0002-ICU-21175-Add-cnvalias-as-a-dependency-of-misc_res.patch24
-rw-r--r--meta/recipes-support/icu/icu_66.1.bb4
2 files changed, 26 insertions, 2 deletions
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" <shane@unicode.org>
+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 <Martin.Jansa@gmail.com>
+---
+ 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}' \