On 11/11/2013 18:13, "Richard Purdie" <[email protected]>
wrote:

>On Mon, 2013-11-11 at 17:54 +0000, Barros Pena, Belen wrote:
>> It's been brought to my attention that we need to find a way to present
>> noexec tasks in Toaster (tasks with [noexec] = "1" set). I am trying to
>> figure out a way to fit them in the Toaster task classification, but I
>> think I am missing some context.
>> 
>> Can someone explain how that [noexec] flag came to be and why was it
>> needed? A bit of history might help me come up with the right solution.
>
>When bitbake executes tasks, it forks off a new process which then sets
>up the environment and executes the task. This has overhead.
>
>We had a number of cases where we had "placeholder" tasks which were
>present for dependency reasons but were otherwise empty and had nothing
>to execute. We therefore decided to mark them "noexec" i.e. they have no
>executable content.
>
>Bitbake now knows that when it sees a noexec task, its there for
>dependency reasons only and it can skip the execution part which is good
>for performance.
>
>To see what I mean about dependency information, think about our
>packaging process. We have points in the build where we need to say
>"everything packaged" but don't care about specific package types.
>We therefore have a noexec do_package_write task which depends on
>do_package_write_{ipk,deb,rpm} depending on which are configured.
>
>There are also cases where we know the task will not do anything (e.g.
>package tasks of -native recipes). Marking them noexec means we can skip
>them faster.
>
>Does that help?

It does help. A lot. It explains why they need to be shown (they are part
of the dependency chain) and confirms that they should not be bundled with
the executed tasks.

Thanks!!

>
>Cheers,
>
>Richard
>

_______________________________________________
toaster mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/toaster

Reply via email to