mirror of
https://git.yoctoproject.org/poky
synced 2026-04-30 12:32:12 +02:00
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>
This commit is contained in:
committed by
Richard Purdie
parent
c1ded5d898
commit
754866f32b
@@ -120,7 +120,11 @@ UPSTREAM_CHECK_URI = "https://github.com/unicode-org/icu/releases"
|
||||
|
||||
EXTRA_OECONF_append_libc-musl = " ac_cv_func_strtod_l=no"
|
||||
|
||||
PACKAGECONFIG ?= ""
|
||||
PACKAGECONFIG[make-icudata] = ",,,"
|
||||
|
||||
do_make_icudata_class-target () {
|
||||
${@bb.utils.contains('PACKAGECONFIG', 'make-icudata', '', 'exit 0', d)}
|
||||
cd ${S}
|
||||
rm -rf data
|
||||
cp -a ${WORKDIR}/data .
|
||||
@@ -135,7 +139,7 @@ do_make_icudata_class-target () {
|
||||
LDFLAGS='${BUILD_LDFLAGS}' \
|
||||
ICU_DATA_FILTER_FILE=${WORKDIR}/filter.json \
|
||||
./runConfigureICU Linux --with-data-packaging=archive
|
||||
oe_runmake ${PARALLEL_MAKE}
|
||||
oe_runmake
|
||||
install -Dm644 ${S}/data/out/icudt${ICU_MAJOR_VER}l.dat ${S}/data/in/icudt${ICU_MAJOR_VER}l.dat
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user