Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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?

like image 808
Georg P. Avatar asked Aug 01 '16 14:08

Georg P.


People also ask

What is BitBake recipe?

BitBake recipes specify how a particular package is built. Recipes consist of the source URL (http, https, ftp, cvs, svn, git, local file system) of the package, dependencies and compile or install options. They also store the metadata for the package in standard variables.

What does BitBake command do?

The bitbake command builds platform projects, application source, and packages. BitBake is the overall control program, which manages builds of all the packages and of the overall system. It builds platform projects, application source, and packages.

What does BitBake clean do?

This command will clean up your tmp dir for the given package. It is very useful if you work on a new . bb recipe. Without it your changes to the recipe may not work.


1 Answers

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.

like image 165
Ross Burton Avatar answered Sep 30 '22 14:09

Ross Burton