I don't see how this change (or the previous glibc-locale one) would cause that, but since the oe-core upgrade yesterday I'm seeing following glibc-locale.do_package failure: http://errors.yoctoproject.org/Errors/Details/250557/
DEBUG: Executing shell function do_prep_locale_tree tar: i18n: Cannot stat: No such file or directory tar: Exiting with failure status due to previous errors gzip: TOPDIR/tmp-glibc/work/core2-64-oe-linux/glibc-locale/2.29-r0/locale-tree//usr/share/i18n/charmaps/*gz.gz: No such file or directory WARNING: TOPDIR/tmp-glibc/work/core2-64-oe-linux/glibc-locale/2.29-r0/temp/run.do_prep_locale_tree.23303:1 exit 1 from 'gunzip $i' anyone else seeing this? On Tue, Jul 2, 2019 at 10:16 PM Jason Wessel <jason.wes...@windriver.com> wrote: > The do_stash_locale was not working consistently across the 4 build > configurations and the multilib, usrmerge configuration would fail > entirely with the obscure message: > > | DEBUG: Executing shell function do_prep_locale_tree > | tar: i18n: Cannot stat: No such file or directory > | tar: Exiting with failure status due to previous errors > | gzip: > /poky/build/tmp/work/core2-64-poky-linux/glibc-locale/2.29-r0/locale-tree//usr/share/i18n/charmaps/*gz.gz: > No such file or directory > | WARNING: > /poky/build/tmp/work/core2-64-poky-linux/glibc-locale/2.29-r0/temp/run.do_prep_locale_tree.124690:1 > exit 1 from 'gunzip $i' > > Here is the 4 build configurations without the patch applied: > > A) x86-64 no multilibs, no usrmerge > find ./tmp/work/*/glibc/2.29-r0/stashed-locale -type f |grep -v > nscd.service |wc -l > 909 > B) x86-64 no multilibs, usrmerge > find ./tmp/work/*/glibc/2.29-r0/stashed-locale -type f |grep -v > nscd.service |wc -l > 909 > C) x86-64 multilibs, no usrmerge > find ./tmp/work/*/glibc/2.29-r0/stashed-locale -type f |grep -v > nscd.service |wc -l > 885 > D) x86-64 multilibs, usrmerge > find ./tmp/work/*/glibc/2.29-r0/stashed-locale -type f |grep -v > nscd.service |wc -l > 864 > > The issue here is that all the moves should be processed first, then a > copy should be made of the lib directories, but only in the case they > are different when using the usrmerge feature. Even though the build > worked for the multilib configuration without usrmerge, the content > was not the same. > > After applying the patch the same number of files are in all the > configurations. The list of files was also diffed, after normalizing > the directory names to ensure all the correct files were copied. > > Ultimately there are probably additional files that should be pruned > from what is copied to the stated_locale, but the purpose of this > patch is make it 100% consistent between the build types and fix the > builds. > > Signed-off-by: Jason Wessel <jason.wes...@windriver.com> > --- > meta/recipes-core/glibc/glibc-package.inc | 19 +++++++++++++------ > 1 file changed, 13 insertions(+), 6 deletions(-) > > diff --git a/meta/recipes-core/glibc/glibc-package.inc > b/meta/recipes-core/glibc/glibc-package.inc > index a1d79b3075..ff17a193c3 100644 > --- a/meta/recipes-core/glibc/glibc-package.inc > +++ b/meta/recipes-core/glibc/glibc-package.inc > @@ -162,21 +162,28 @@ bashscripts = "mtrace sotruss xtrace" > do_stash_locale () { > dest=${LOCALESTASH} > install -d ${dest}${base_libdir} ${dest}${bindir} ${dest}${libdir} > ${dest}${datadir} > - if [ "${base_libdir}" != "${libdir}" ]; then > - cp -fpPR ${D}${base_libdir}/* ${dest}${base_libdir} > - fi > + # Hide away the locale data from the deployment > if [ -e ${D}${bindir}/localedef ]; then > mv -f ${D}${bindir}/localedef ${dest}${bindir} > fi > if [ -e ${D}${libdir}/gconv ]; then > mv -f ${D}${libdir}/gconv ${dest}${libdir} > fi > - if [ -e ${D}${exec_prefix}/lib ]; then > - cp -fpPR ${D}${exec_prefix}/lib ${dest}${exec_prefix} > - fi > if [ -e ${D}${datadir}/i18n ]; then > mv ${D}${datadir}/i18n ${dest}${datadir} > fi > + > + # Make a copy of all the libraries into the locale stash > + cp -fpPR ${D}${libdir}/* ${dest}${libdir} > + if [ "${base_libdir}" != "${libdir}" ]; then > + cp -fpPR ${D}${base_libdir}/* ${dest}${base_libdir} > + fi > + if [ -e ${D}${exec_prefix}/lib ]; then > + if [ ${exec_prefix}/lib != ${base_libdir} ] && [ > ${exec_prefix}/lib != ${libdir} ]; then > + cp -fpPR ${D}${exec_prefix}/lib > ${dest}${exec_prefix} > + fi > + fi > + > cp -fpPR ${D}${datadir}/* ${dest}${datadir} > rm -rf ${D}${datadir}/locale/ > cp -fpPR ${WORKDIR}/SUPPORTED ${dest} > -- > 2.21.0 > > -- > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-core >
-- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core