On Wednesday 29 April 2015 16:08:37 Chen Qi wrote: > If we do `bitbake buildtools-tarball' and then after one day do `bitbake > core-image-minimal -c populate_sdk_ext', we would meet errors like below. > > | install: cannot stat > | '/buildarea2/chenqi/poky/build-systemd/tmp/deploy/sdk/ > > poky-glibc-x86_64-buildtools-tarball-core2-64-buildtools-nativesdk-standalon > e -1.8+snapshot-20150429.sh': No such file or directory > > The problem is that the output name for buildtools-tarball has ${DATE} in > it. So if populate_sdk_ext task is executed but buildtools-tarball is not > rebuilt, the above error appears. > > Instead of hardcoding ${DISTRO_VERSION} which consists of ${DATE} in the > install_tools() function, we should find the latest buildtools-tarball based > on the modification time and install it. > > [YOCTO #7674] > > Signed-off-by: Chen Qi <qi.c...@windriver.com> > --- > meta/classes/populate_sdk_ext.bbclass | 12 +++++++++++- > 1 file changed, 11 insertions(+), 1 deletion(-) > > diff --git a/meta/classes/populate_sdk_ext.bbclass > b/meta/classes/populate_sdk_ext.bbclass index 7925ece..0e4ee31 100644 > --- a/meta/classes/populate_sdk_ext.bbclass > +++ b/meta/classes/populate_sdk_ext.bbclass > @@ -188,7 +188,17 @@ install_tools() { > ln -sr ${SDK_OUTPUT}/${SDKPATH}/${scriptrelpath}/recipetool > ${SDK_OUTPUT}/${SDKPATHNATIVE}${bindir_nativesdk}/recipetool touch > ${SDK_OUTPUT}/${SDKPATH}/.devtoolbase > > - install > ${SDK_DEPLOY}/${DISTRO}-${TCLIBC}-${SDK_ARCH}-buildtools-tarball-${TUNE_PKG > ARCH}-buildtools-nativesdk-standalone-${DISTRO_VERSION}.sh > ${SDK_OUTPUT}/${SDKPATH} + # find latest buildtools-tarball and install it > + maxseconds=0 > + buildtools_path="" > + for f in `ls > ${SDK_DEPLOY}/${DISTRO}-${TCLIBC}-${SDK_ARCH}-buildtools-tarball-${TUNE_PKG > ARCH}-buildtools-nativesdk-standalone-*.sh`; do + seconds=`stat > -c "%Y" $f` > + if [ $seconds -gt $maxseconds ]; then > + maxseconds=$seconds > + buildtools_path="$f" > + fi > + done > + install $buildtools_path ${SDK_OUTPUT}/${SDKPATH}
Surely it would be simpler to just `ls -t ... | head -n1` ? Cheers, Paul -- Paul Eggleton Intel Open Source Technology Centre -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core