[oe] [meta-qt5][PATCH] qt5-ptest.inc: fix qtxmlpatterns:do_install_ptest out-of-order call

Denys Dmytriyenko denis at denix.org
Wed Oct 18 18:45:03 UTC 2017


v2 posted

On Mon, Oct 16, 2017 at 12:12:49PM +0200, Martin Jansa wrote:
> I have ptest in DISTRO_FEATURES:
> https://github.com/shr-project/jenkins-jobs/blob/master/jenkins-job.sh#L302
> 
> so I believe it was set to 1.
> 
> On Mon, Oct 16, 2017 at 3:48 AM, Denys Dmytriyenko <denis at denix.org> wrote:
> 
> > Do you have PTEST_ENABLED set to 1 or 0?
> >
> >
> > On Mon, Oct 16, 2017 at 03:30:06AM +0200, Martin Jansa wrote:
> > > This seems to cause:
> > >
> > > Initialising tasks...ERROR: 1676 unbuildable tasks were found.
> > > These are usually caused by circular dependencies and any circular
> > > dependency chains found will be printed below. Increase the debug
> > > level to see a list of unbuildable tasks.
> > >
> > > Identifying dependency loops (this may take a short while)...
> > >
> > > ERROR:
> > > Dependency loop #1 found:
> > >   Task /home/jenkins/oe/world/shr-core/meta-qt5/recipes-qt/qt5/
> > qtquick1_git.bb:do_compile_ptest_base
> > > (dependent Tasks ['qtquick1_git.bb:do_populate_sysroot'])
> > >   Task /home/jenkins/oe/world/shr-core/meta-qt5/recipes-qt/qt5/
> > qtquick1_git.bb:do_install_ptest_base
> > > (dependent Tasks ['qtquick1_git.bb:do_compile_ptest_base',
> > > 'qtquick1_git.bb:do_install'])
> > >   Task /home/jenkins/oe/world/shr-core/meta-qt5/recipes-qt/qt5/
> > qtquick1_git.bb:do_populate_sysroot
> > > (dependent Tasks ['qtquick1_git.bb:do_install',
> > > 'qtquick1_git.bb:do_install_ptest_base',
> > > 'binutils-cross_2.29.bb:do_populate_sysroot'])
> > >
> > > Dependency loop #2 found:
> > >   Task /home/jenkins/oe/world/shr-core/meta-qt5/recipes-qt/qt5/
> > qtxmlpatterns_git.bb:do_compile_ptest_base
> > > (dependent Tasks ['qtxmlpatterns_git.bb:do_populate_sysroot'])
> > >   Task /home/jenkins/oe/world/shr-core/meta-qt5/recipes-qt/qt5/
> > qtxmlpatterns_git.bb:do_install_ptest_base
> > > (dependent Tasks ['qtxmlpatterns_git.bb:do_install',
> > > 'qtxmlpatterns_git.bb:do_compile_ptest_base'])
> > >   Task /home/jenkins/oe/world/shr-core/meta-qt5/recipes-qt/qt5/
> > qtxmlpatterns_git.bb:do_populate_sysroot
> > > (dependent Tasks ['qtxmlpatterns_git.bb:do_install',
> > > 'binutils-cross_2.29.bb:do_populate_sysroot',
> > > 'qtxmlpatterns_git.bb:do_install_ptest_base'])
> > >
> > > Dependency loop #3 found:
> > >   Task /home/jenkins/oe/world/shr-core/meta-qt5/recipes-qt/qt5/
> > qtdeclarative_git.bb:do_compile_ptest_base
> > > (dependent Tasks ['qtdeclarative_git.bb:do_populate_sysroot'])
> > >   Task /home/jenkins/oe/world/shr-core/meta-qt5/recipes-qt/qt5/
> > qtdeclarative_git.bb:do_install_ptest_base
> > > (dependent Tasks ['qtdeclarative_git.bb:do_compile_ptest_base',
> > > 'qtdeclarative_git.bb:do_install'])
> > >   Task /home/jenkins/oe/world/shr-core/meta-qt5/recipes-qt/qt5/
> > qtdeclarative_git.bb:do_populate_sysroot
> > > (dependent Tasks ['qtdeclarative_git.bb:do_install_ptest_base',
> > > 'binutils-cross_2.29.bb:do_populate_sysroot',
> > > 'qtdeclarative_git.bb:do_install'])
> > >
> > >
> > >
> > > On Thu, Oct 12, 2017 at 10:44 PM, Denys Dmytriyenko <denis at denix.org>
> > wrote:
> > >
> > > > From: Denys Dmytriyenko <denys at ti.com>
> > > >
> > > > ptest.bbclass provides a set of standard do_*_ptest_base tasks. Each of
> > > > them calls a corresponding regular do_*_ptest task, that components are
> > > > supposed to override for own implementation. When PTEST_ENABLED is not
> > > > set, an anonymous python function removes all do_*_ptest_base tasks
> > from
> > > > the queue. qt5-ptest.inc adds a special case for do_populate_sysroot
> > and
> > > > re-arranges the order or ptest tasks due to that. But, unfortunately,
> > > > do_install_ptest was added directly, not do_install_ptest_base, hence
> > when
> > > > "ptest" is disabled and all other do_*_ptest_base tasks are removed,
> > this
> > > > one do_install_ptest task is left w/o dependencies and gets scheduled
> > for
> > > > execution very early on, even before pseudo-native gets built and
> > stages
> > > > "fakeroot" functionality. The fix is to add do_install_ptest_base task,
> > > > which calls do_install_ptest only when "ptest" is enabled.
> > > >
> > > > Signed-off-by: Denys Dmytriyenko <denys at ti.com>
> > > > ---
> > > >  recipes-qt/qt5/qt5-ptest.inc | 2 +-
> > > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > > >
> > > > diff --git a/recipes-qt/qt5/qt5-ptest.inc
> > b/recipes-qt/qt5/qt5-ptest.inc
> > > > index 4844878..480a06d 100644
> > > > --- a/recipes-qt/qt5/qt5-ptest.inc
> > > > +++ b/recipes-qt/qt5/qt5-ptest.inc
> > > > @@ -5,7 +5,7 @@ inherit ptest
> > > >  addtask do_populate_sysroot after do_install before
> > do_compile_ptest_base
> > > >  deltask do_compile_ptest_base
> > > >  addtask do_compile_ptest_base after do_populate_sysroot before
> > > > do_install_ptest
> > > > -addtask do_install_ptest after do_compile_ptest_base before do_package
> > > > +addtask do_install_ptest_base after do_compile_ptest_base before
> > > > do_package
> > > >
> > > >  do_compile_ptest() {
> > > >      cd ${S}/tests
> > > > --
> > > > 2.7.4
> > > >
> > > > --
> > > > _______________________________________________
> > > > Openembedded-devel mailing list
> > > > Openembedded-devel at lists.openembedded.org
> > > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> > > >
> >



More information about the Openembedded-devel mailing list