Hi all,
I am currently working on bug #13425 and I would like to post my wip
script as an RFC to get feedback on it, before going further in the
development.
The script `script/bblock` can be used with the following command:
bblock [list of recipes to lock]
Here is a summary of what is currently implemented:
* can lock several recipes at once
* on first execution bblock will append `require bblock.inc` in
`build/conf/auto.conf` (creates `auto.conf` if it doesn't exist)
* on first execution creates the file `build/conf/bblock.inc` with a
dedicated header and:
- adds SIGGEN_LOCKEDSIGS_TYPES += "t-bblock"
- adds SIGGEN_LOCKEDSIGS_TASKSIG_CHECK = "warn" to display warning but
do not stop the build
* loops over all recipes to lock and adds entry with latest "do_compile"
signature in `conf/bblock.inc`, such as: SIGGEN_LOCKEDSIGS_t-bblock +=
"bc:do_compile:e233cd793137a92dd575a417a2877e324ce526c4dc4a7db652abb9512f406f1f"
Limitations:
* only gets do_compile signature for now as a POC
* `bblock reset [list of recipes]` not yet implemented
* no check if a recipe is already locked
Steps to test the script:
bitbake bc --> generate a signature for bc's tasks
bblock bc
# modify do_compile in bc recipe to force signature change
bitbake bc --> throws the following warning: `WARNING: The bc:do_compile sig is
computed to be
680bd6c291bf88e379e0c405a773cf5f81851e1a52570398cefd0196000ac1ef, but the sig
is locked to e233cd793137a92dd575a417a2877e324ce526c4dc4a7db652abb9512f406f1f
in SIGGEN_LOCKEDSIGS_t-bblock`
I also have a point I would like to discuss: I only get signature for
do_compile for the POC but wondering what should I do here:
* have a set of predefined task to lock, in that case how to choose the
tasks?
* compute the list of all available tasks for a given recipe and get
signature for all? Is there a way to get such list without using
`infoil.build_targets(pn, "listtasks", handle_events=True)` as this
will start bitbake, takes some time and requires some processing of
the output
* add an option for the user to specify the task he wants to lock? (this
may be useful to add anyway)
My branch is available here [1]
Am I going into the right direction?
Cheers
Julien
[1]: https://git.yoctoproject.org/poky-contrib/commit/?h=jstephan/bblock
Julien Stephan (1):
scripts/bblock: add a script to lock/unlock recipes
scripts/bblock | 92 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 92 insertions(+)
create mode 100755 scripts/bblock
--
2.41.0
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184584):
https://lists.openembedded.org/g/openembedded-core/message/184584
Mute This Topic: https://lists.openembedded.org/mt/100236204/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-