<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/meta/classes/rm_work.bbclass, branch kirkstone</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=kirkstone</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=kirkstone'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2023-01-15T11:05:15+00:00</updated>
<entry>
<title>rm_work.bbclass: use HOSTTOOLS 'rm' binary exclusively</title>
<updated>2023-01-15T11:05:15+00:00</updated>
<author>
<name>Luis</name>
<email>luis.pinto.martins@gmail.com</email>
</author>
<published>2022-12-24T01:49:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=f8187daf0ab7b7ece4750d9b49e9bdf8778dfb25'/>
<id>urn:sha1:f8187daf0ab7b7ece4750d9b49e9bdf8778dfb25</id>
<content type='text'>
The do_rm_work() task is using the first available 'rm' binary
available in PATH to remove files and folders.
However, depending on the PATH setup and RECIPE_SYSROOT_NATIVE
contents, the function can be using the 'rm' binary available
in RECIPE_SYSROOT_NATIVE, a folder that will get removed.
This causes a sporadic race-condition when trying to access the
'rm' binary of a folder already deleted.
Solve this by exclusively using the HOSTTOOLS 'rm' binary, as
this folder will not get removed.

(From OE-Core rev: 7ad7ba54916351f4fe2d0bd1542962539e5eb4bd)

Signed-off-by: Luis Martins &lt;luis.pinto.martins@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
(cherry picked from commit edcd9ad333bc4e504594e8af83e8cb7007d2e35c)
Signed-off-by: Steve Sakoman &lt;steve@sakoman.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rm_work: adjust dependency to make do_rm_work_all depend on do_rm_work</title>
<updated>2022-12-23T23:05:50+00:00</updated>
<author>
<name>Chen Qi</name>
<email>Qi.Chen@windriver.com</email>
</author>
<published>2022-12-05T04:58:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=445a2069cd1075d4501e36325bd393a77ce9b3d1'/>
<id>urn:sha1:445a2069cd1075d4501e36325bd393a77ce9b3d1</id>
<content type='text'>
For now, if we use rm_work and `bitbake core-image-minimal', some
recipes' WORKDIRs are not cleaned up, e.g., makedevs-native.

Adjust the dependency to make do_rm_work_all depend on do_rm_work
to solve this problem.

Below are the detailed explanation of why this would work.

Without this patch, the dependency chain is like:
[other deps] -&gt; [do_rm_work] -+-&gt; [do_build]
                              |
[do_rm_work_all] -------------+

With this patch, the depedency chain is like:
[other deps] -&gt; [do_rm_work] -&gt; [do_rm_work_all] -&gt; [do_build]

Such dependency chain adjustment fixes the issue because do_rm_work_all
now depends on [other deps] and thus the [depends] of these [other deps].
Take core-image-minimal as an example. Before this adjustment,
do_rm_work_all does not have any relationship with do_rootfs, and we have
do_rootfs[depends] += "makedevs-native:do_populate_sysroot ..."
This essentially prevents 'recrdeptask' setting of do_rm_work_all extend
to makedevs-native. With this patch, the do_rm_work_all now depends
on do_rm_work which in turn depends on do_rootfs, and so do_rm_work_all's
recrdeptask could have effect on makedevs-native.

With this patch, all built recipes WORKDIR will be cleaned up with
a few expected exceptions such as kernel and qemu-helper-native.

(From OE-Core rev: 2565fe40514ac17d0c97e847bb9ff0ab90410e53)

Signed-off-by: Chen Qi &lt;Qi.Chen@windriver.com&gt;
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
(cherry picked from commit b25cc45c9b39f79ba0a03c4556cb2e2431677b4e)
Signed-off-by: Steve Sakoman &lt;steve@sakoman.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rm_work: exclude the SSTATETASKS from the rm_work tasks sinature</title>
<updated>2022-12-01T19:35:05+00:00</updated>
<author>
<name>Jose Quaresma</name>
<email>quaresma.jose@gmail.com</email>
</author>
<published>2022-11-11T18:05:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=d97e4658e8f928c540aa122b01e9659763c5aaf1'/>
<id>urn:sha1:d97e4658e8f928c540aa122b01e9659763c5aaf1</id>
<content type='text'>
We can exclude the SSTATETASKS from the rm_work task signature
to avoid running the task when we remove some setscene tasks
from the dependencie chain.

The inject_rm_work handler on the rm_work bbclass triggers the
rm_work task running for any signature change in the dependencie
chain of the task do_build of each recipe.

i.e INHERIT:remove = "create-spdx" will trigger the do_rm_work
when we collect the sstate cache with INHERIT = "create-spdx"

(From OE-Core rev: c06df50b0c7e6ecb138f37c51196c57295649437)

Signed-off-by: Jose Quaresma &lt;jose.quaresma@foundries.io&gt;
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
(cherry picked from commit 77729bea5b17d65dafb604fd1665c612091b28c7)
Signed-off-by: Steve Sakoman &lt;steve@sakoman.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rm_work.bbclass: Fix for files starting with -</title>
<updated>2021-09-28T16:55:04+00:00</updated>
<author>
<name>William A. Kennington III</name>
<email>wak@google.com</email>
</author>
<published>2021-09-27T22:00:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=3af6389ece4492b1fd6ecacc6f3e670f1a2a6dfe'/>
<id>urn:sha1:3af6389ece4492b1fd6ecacc6f3e670f1a2a6dfe</id>
<content type='text'>
This makes it possible to name files starting with a hyphen in the work
directory. Without this change rm will fail due to an unexpected option
being passed.

(From OE-Core rev: 5f1a63e0de4921ef970114a16d0827fcddcdaa0e)

Signed-off-by: William A. Kennington III &lt;wak@google.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>Convert to new override syntax</title>
<updated>2021-08-02T14:44:10+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2021-07-28T22:28:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=bb6ddc3691ab04162ec5fd69a2d5e7876713fd15'/>
<id>urn:sha1:bb6ddc3691ab04162ec5fd69a2d5e7876713fd15</id>
<content type='text'>
This is the result of automated script conversion:

scripts/contrib/convert-overrides.py &lt;oe-core directory&gt;

converting the metadata to use ":" as the override character instead of "_".

(From OE-Core rev: 42344347be29f0997cc2f7636d9603b1fe1875ae)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rm_work: Simplify logic for setscene promotion</title>
<updated>2019-11-10T14:06:10+00:00</updated>
<author>
<name>Jacob Kroon</name>
<email>jacob.kroon@gmail.com</email>
</author>
<published>2019-11-07T15:35:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=381ebd7439ec5acd06b0f322d919299a39623b74'/>
<id>urn:sha1:381ebd7439ec5acd06b0f322d919299a39623b74</id>
<content type='text'>
* Instead of overwriting the stamp name with 'dummy', handle
  setscene promotion in the default case block
* Merge '*do_image_complete_setscene*' and '*do_image_qa_setscene*'
  case handling

(From OE-Core rev: 3fe6574c93a02e2e67d16e66f24be1053af383b7)

Signed-off-by: Jacob Kroon &lt;jacob.kroon@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rm_work: Promote do_image_qa stamps to setscene versions</title>
<updated>2019-11-07T15:12:00+00:00</updated>
<author>
<name>Jacob Kroon</name>
<email>jacob.kroon@gmail.com</email>
</author>
<published>2019-11-06T12:34:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=369ef217ff8a0a765b80cf0bfaaf30dcd2669b13'/>
<id>urn:sha1:369ef217ff8a0a765b80cf0bfaaf30dcd2669b13</id>
<content type='text'>
[ YOCTO #13212 ]

Suggested-by: Romuald Jeanne &lt;romuald.jeanne@st.com&gt;
(From OE-Core rev: 3d3bd7952cf4bf5c94e4d18b45a604b95b69e8c3)

Signed-off-by: Jacob Kroon &lt;jacob.kroon@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rm_work: Remove redundant 'after' in addtask statement</title>
<updated>2019-09-03T08:55:50+00:00</updated>
<author>
<name>Jacob Kroon</name>
<email>jacob.kroon@gmail.com</email>
</author>
<published>2019-09-01T05:53:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=c89b16aa09ce19a2d52cb2a594dcdfe15a335a36'/>
<id>urn:sha1:c89b16aa09ce19a2d52cb2a594dcdfe15a335a36</id>
<content type='text'>
Introduced in commit b3de5d5795767a4b8c331fa5040166e7e410eeec.

(From OE-Core rev: bad3918467cc979f278a70a00e828704ef885fd4)

Signed-off-by: Jacob Kroon &lt;jacob.kroon@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rm_work: sort the value of do_build dependencies</title>
<updated>2019-03-09T14:43:11+00:00</updated>
<author>
<name>Ming Liu</name>
<email>liu.ming50@gmail.com</email>
</author>
<published>2019-03-07T16:56:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=f52f818cf08e26e0b011b9c2bf01e9daa3f2b545'/>
<id>urn:sha1:f52f818cf08e26e0b011b9c2bf01e9daa3f2b545</id>
<content type='text'>
This fixes some 'basehash changed' errors when rm_work is being
inherited.

(From OE-Core rev: e74158b6cc1d683ab14ef5d47ec531f986fc2259)

Signed-off-by: Ming Liu &lt;liu.ming50@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rm_work: Simplify looping code</title>
<updated>2018-06-21T08:34:40+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2018-06-19T10:29:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=52b11deeb921ba201c16641bc10ff71b8ed16164'/>
<id>urn:sha1:52b11deeb921ba201c16641bc10ff71b8ed16164</id>
<content type='text'>
The current looping structure is confusing, simplify it a bit
to improve readability. Should be no functionality changes.

(From OE-Core rev: 498065b51b205b43d7dae1008014eba85a8f138c)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
</feed>
