summaryrefslogtreecommitdiffstats
path: root/meta/recipes-support
diff options
context:
space:
mode:
authorAlexander Kanavin <alex.kanavin@gmail.com>2020-06-23 23:08:37 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-06-25 10:23:37 +0100
commit754866f32bfc1e3986199b353f037536f326ae77 (patch)
tree341e5d2c0e18880e95b90960cb7a6e65f7ff95a2 /meta/recipes-support
parentc1ded5d898cec13afee3aacce3e25b4926b281b6 (diff)
downloadpoky-754866f32bfc1e3986199b353f037536f326ae77.tar.gz
icu: make filtered data generation optional, serial and off by default
icu data generation was found to be racy, and causig AB failures; making it serial and leaving it on is not an option as it regresses to several minutes. The specific bug is that rules.mk has: LD_LIBRARY_PATH=../lib:../stubdata:../tools/ctestfw:$LD_LIBRARY_PATH ../bin/gencnval -s . -d ./out/build/icudt66l mappings/convrtrs.txt which creates a file and numerous rules like LD_LIBRARY_PATH=../lib:../stubdata:../tools/ctestfw:$LD_LIBRARY_PATH  ../bin/genrb -s ./misc -d ./out/build/icudt67l -i ./out/build/icudt67l -k -q numberingSystems.txt which quietly read it. There is no prerequisite for the former to complete first. The race is extra complicated to fix as rules.mk is itself generated through a custom in-tree python tool. (From OE-Core rev: df89e8d1136fd406ba35ae573e2cb0cfc88c6aad) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-support')
-rw-r--r--meta/recipes-support/icu/icu_67.1.bb6
1 files changed, 5 insertions, 1 deletions
diff --git a/meta/recipes-support/icu/icu_67.1.bb b/meta/recipes-support/icu/icu_67.1.bb
index 5814fa41bd..9e8091ba01 100644
--- a/meta/recipes-support/icu/icu_67.1.bb
+++ b/meta/recipes-support/icu/icu_67.1.bb
@@ -120,7 +120,11 @@ UPSTREAM_CHECK_URI = "https://github.com/unicode-org/icu/releases"
120 120
121EXTRA_OECONF_append_libc-musl = " ac_cv_func_strtod_l=no" 121EXTRA_OECONF_append_libc-musl = " ac_cv_func_strtod_l=no"
122 122
123PACKAGECONFIG ?= ""
124PACKAGECONFIG[make-icudata] = ",,,"
125
123do_make_icudata_class-target () { 126do_make_icudata_class-target () {
127 ${@bb.utils.contains('PACKAGECONFIG', 'make-icudata', '', 'exit 0', d)}
124 cd ${S} 128 cd ${S}
125 rm -rf data 129 rm -rf data
126 cp -a ${WORKDIR}/data . 130 cp -a ${WORKDIR}/data .
@@ -135,7 +139,7 @@ do_make_icudata_class-target () {
135 LDFLAGS='${BUILD_LDFLAGS}' \ 139 LDFLAGS='${BUILD_LDFLAGS}' \
136 ICU_DATA_FILTER_FILE=${WORKDIR}/filter.json \ 140 ICU_DATA_FILTER_FILE=${WORKDIR}/filter.json \
137 ./runConfigureICU Linux --with-data-packaging=archive 141 ./runConfigureICU Linux --with-data-packaging=archive
138 oe_runmake ${PARALLEL_MAKE} 142 oe_runmake
139 install -Dm644 ${S}/data/out/icudt${ICU_MAJOR_VER}l.dat ${S}/data/in/icudt${ICU_MAJOR_VER}l.dat 143 install -Dm644 ${S}/data/out/icudt${ICU_MAJOR_VER}l.dat ${S}/data/in/icudt${ICU_MAJOR_VER}l.dat
140} 144}
141 145