[bitbake-devel] Why does recrdeptask delete a task from the dependency graph?

Masahiro Yamada masahiroy at kernel.org
Wed Jan 8 04:26:52 UTC 2020


Hi.

Forgive another of my recrdeptask questions.


I notice "recrdeptask" deletes a task in some cases.
I am not sure whether it is an intended behavior.


The test code is as follows:

-----------------(classes/base.bbclass  begin)----------
addtask do_build
do_build[nostamp] = "1"
do_build[deptask] = "do_build"
-----------------(classes/base.bbclass  end)------------

-----------------(recipes/foo.bb  begin)----------------
PN = 'foo'

python do_build() {
    bb.plain("foo.do_build");
}

DEPENDS = "bar"

do_build[recrdeptask] = "do_build"
-----------------(recipes/foo.bb  end)----------------


-----------------(recipes/bar.bb  begin)----------------
PN = 'bar'

python do_build() {
    bb.plain("bar.do_build")
}

DEPENDS = "baz"
-----------------(recipes/bar.bb  end)----------------


-----------------(recipes/baz.bb  begin)----------------
PN = 'baz'

python do_build() {
    bb.plain("baz.do_build")
}
-----------------(recipes/baz.bb  end)----------------




When I run "bitbake foo", I see
the expected result:

baz.do_build
bar.do_build
foo.do_build



If I add
  do_build[recrdeptask] = "do_build"
to recipes/bar.bb

"bitbake foo" shows

baz.do_build
foo.do_build


So, bar:do_build is dropped from the dependency.

What is the intent of this behavior?


--
Best Regards
Masahiro Yamada


More information about the bitbake-devel mailing list