Search code examples
yoctobitbakeopenembedded

Bitbake: force one task of a recipe and all following


I want to force-recompile a package, like that:

bitbake -f -c compile mypackage

However, I also want all following tasks to be executed (like install, package, etc.), just as if I had called bitbake mypackage from a completely clean state. Can this be done in one step, rather than the following two?

bitbake -f -c compile mypackage
bitbake mypackage

Or as an alternative solution, can I somehow "taint" the compile-task, such that executing bitbake mypackage does everything from compilation onwards?


Solution

  • This is exactly what -C is for:

    bitbake -C compile mypackage
    

    This will run mypackage:do_build and force mypackage:do_compile to execute. Strictly speaking, it taints mypackage:do_compile (so that it has to execute) and then executes mypackage:do_build, which is exactly what you wanted.