<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/meta/classes/package.bbclass, branch hardknott</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=hardknott</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=hardknott'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2021-10-29T10:17:20+00:00</updated>
<entry>
<title>package: Ensure pclist files are deterministic and don't use full paths</title>
<updated>2021-10-29T10:17:20+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2021-09-29T12:30:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=a2bc52c955a79f3142d520d0b09bbf0eaba2b9f1'/>
<id>urn:sha1:a2bc52c955a79f3142d520d0b09bbf0eaba2b9f1</id>
<content type='text'>
Currently the pkgconfig pclist files contain full paths which are build
host specific and the order of entries is not deterministic.

Fix both these issues so the files are deterministic.

(From OE-Core rev: 59655c76c395ffaae0342458a6a2ce0494b8e1a6)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
(cherry picked from commit e422e29bca4af3ab4073e04490f38b05cd7c38c0)
Signed-off-by: Anuj Mittal &lt;anuj.mittal@intel.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>package/package_rpm: Disable font_provides configuration for reproducibilty</title>
<updated>2021-02-26T15:21:20+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2021-02-24T21:51:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=61d9c0b77bedf1d6d37437447eb6b154c2d84a78'/>
<id>urn:sha1:61d9c0b77bedf1d6d37437447eb6b154c2d84a78</id>
<content type='text'>
The host may or may not have fc-cache which is used for find provides
information by rpmdeps. This lead to non-deterministic build output.
Disable the font provides code so we have deterministic builds,
we have nothing using/relying on it at this point.

Need to disable this in both the rpmdeps code and in package_rpm
itself although the latter shouldn't be being used.

(From OE-Core rev: 1c0cd8012a96fd4d9caf33c6de5fd39cea6db55d)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>package: Ensure do_packagedata is cleaned correctly</title>
<updated>2021-02-03T21:45:49+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2021-02-03T14:22:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=c2f2963623095e8b11d9179085544075c0a10f17'/>
<id>urn:sha1:c2f2963623095e8b11d9179085544075c0a10f17</id>
<content type='text'>
In an earlier commit, libprocps was split into a separate package leaving
no shlibs in the main package. A bug was seen where igt-gpu-tools wouldn't
build correctly in some cases as it thought the librbary was still in the
main package, throwing qa errors as a result.

The issue was due to an extra file being left in the sstate output of
the do_packagedata task in the shlibs2/ folder which contained the bad
shlibs information.

The reason for this was that the temporary directory used in this
task wasn't being cleaned so files which were deleted were not handled
correctly. Add a missing cleandirs entry to fix this.

(From OE-Core rev: 50f17d0a655a3a2556f9fcad67259101c2814a36)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>staging: Introduce /sysroot-only to SYSROOT_DIRS</title>
<updated>2021-01-16T22:39:35+00:00</updated>
<author>
<name>Diego Sueiro</name>
<email>diego.sueiro@arm.com</email>
</author>
<published>2021-01-15T15:59:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=b0cbfd01f19ae642fc67bf321c2b3ce6ec14e9c8'/>
<id>urn:sha1:b0cbfd01f19ae642fc67bf321c2b3ce6ec14e9c8</id>
<content type='text'>
The '/sysroot-only' in SYSROOT_DIRS is to be used by recipes which
generate artifacts that are not included in the target filesystem.

Also, remove the ${D}/sysroot-only dir before copying D do PKGD to
generate the packages since it is not supposed to be included in
any package.

This will allow recipes to share non-target filesystem artifacts
without needing to use the DEPLOY_DIR and keep it tidy.

(From OE-Core rev: ed1c156cf46c2cdd8038d6bcf7ed58ebe275e3a1)

Signed-off-by: Diego Sueiro &lt;diego.sueiro@arm.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>fs-perms: Ensure /usr/src/debug/ file modes are correct</title>
<updated>2020-11-24T10:27:45+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2020-11-21T14:39:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=670b1be774e19bbc0d4a93f4b7c1c5ba9efa7374'/>
<id>urn:sha1:670b1be774e19bbc0d4a93f4b7c1c5ba9efa7374</id>
<content type='text'>
If files are copied into /usr/src/debug directly from WORKDIR (e.g. makedevs)
we'd get the permissions from the checkout which would depend on the host umask.

Avoid this and be deterministic by setting the file modes consistently. Core
code copies the files in so we're responsible for the permissions.

Unfortunately to force this change to apply we need to invalidate both
the package tasks and the hash equivalance mappings since file mode
'corruption' already made it into the output hashes (both input options
were mapped to the output hashes).

(From OE-Core rev: 1f958bcd6c9cd12ec76d80586cba15f4d6ed17a7)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>package.bbclass: hash equivalency and pr service</title>
<updated>2020-09-03T08:44:30+00:00</updated>
<author>
<name>Mark Hatle</name>
<email>mark.hatle@kernel.crashing.org</email>
</author>
<published>2020-09-02T15:33:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=39c1accf9054e863d543df7584eb48e2b0797cea'/>
<id>urn:sha1:39c1accf9054e863d543df7584eb48e2b0797cea</id>
<content type='text'>
When the PR service is enabled a number of small changes may happen
to variables.  In the do_package step a call to package_get_auto_pr
will end up setting PRAUTO and modifying PKGV (if AUTOINC is there).

PRAUTO is then used by EXTENDPRAUTO, which is then used to generate
PKGR.

Since this behavior typically happens BEFORE the BB_UNIHASH is
calculated for do_package, we need a way to defer the expansion
until after we have the unihash value.

Writing out the pkgdata files w/o AUTOPR and PKGV (AUTOINC) expanded
to placeholder values is the easiest way to deal with this.  All other
variables are expanded as expected.

In the next task, typically do_packagedata, we will then use the
UNIHASH from the do_package to get the PR (AUTOPR) as well as
generate the AUTOINC replacement value (now PRSERV_PV_AUTOINC).

The do_packagedata then translates the placeholders to the final values
when copying the data from pkgdata to pkgdata-pdata-input.

Also update the prservice test case.  With unihash, just changing the
do_package (via a _append) will not change the PR.  So write the date
to a specific file that is incorporated into the unihash to ensure it
is always different for the test.  Various assert messages were also
updated to make it easier to figure out where/why a problem occured.

(From OE-Core rev: 2e32f37b0e4abc438c8f60e673cd18a5cc110768)

Signed-off-by: Mark Hatle &lt;mark.hatle@kernel.crashing.org&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>package.bbclass: explode the RPROVIDES so we don't think the versions are provides</title>
<updated>2020-08-28T06:08:37+00:00</updated>
<author>
<name>Ross Burton</name>
<email>ross.burton@arm.com</email>
</author>
<published>2020-08-27T15:58:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=c278eaf0c5bd5a2fb180f9c4916a6b68b5335356'/>
<id>urn:sha1:c278eaf0c5bd5a2fb180f9c4916a6b68b5335356</id>
<content type='text'>
emit_pkgdata() creates symlinks for each of the RPROVIDES in
pkgdata/MACHINE/runtime-rprovides.  However this string can contain
versions which results in directories called (=2.32), so pass the
RPROVIDES string through bb.utils.explode_deps() to strip the versions
out.

Helps mitigate - but not solve - #13999.

(From OE-Core rev: 6a5395dec34192db233bfb2a060e5ccc99708f03)

Signed-off-by: Ross Burton &lt;ross.burton@arm.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>package.bbclass: Sort shlib2 output for hash equivalency</title>
<updated>2020-08-20T14:30:07+00:00</updated>
<author>
<name>Mark Hatle</name>
<email>mark.hatle@kernel.crashing.org</email>
</author>
<published>2020-08-19T16:16:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=85869d615bb7a01083904af978e220997ef74a6c'/>
<id>urn:sha1:85869d615bb7a01083904af978e220997ef74a6c</id>
<content type='text'>
The output was unsorted, so different versions of python, different input
ordering could have have changed the files, and thus changed the hashes
making the system think the output was different, even when unmodified.

(From OE-Core rev: 23cc846c92219c5cbe3fc6a0024579195d3cbd78)

Signed-off-by: Mark Hatle &lt;mark.hatle@kernel.crashing.org&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>classes/package: Use HOST_OS for runtime dependencies</title>
<updated>2020-07-22T11:45:56+00:00</updated>
<author>
<name>Joshua Watt</name>
<email>JPEWhacker@gmail.com</email>
</author>
<published>2020-07-21T17:52:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=0f5ae7e79b87c6d903ca57cb695d802deb8d61d8'/>
<id>urn:sha1:0f5ae7e79b87c6d903ca57cb695d802deb8d61d8</id>
<content type='text'>
The code was using TARGET_OS to try and detect what type of OS the
packages would be running on, but this is incorrect. TARGET_OS is the OS
for which the package will generate output (e.g. GCC output target or
GDB debugging target). The OS where the package will run is the HOST_OS.
Note that HOST_OS only differs from TARGET_OS when doing a
canadian cross compile, and even then in our case only when doing so for
a non-Linux host (e.g. MinGW).

Fix the code to use HOST_OS instead.

(From OE-Core rev: f284c5b2df220b520b025a59874e04ef4becd829)

Signed-off-by: Joshua Watt &lt;JPEWhacker@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>package.bbclass: add PACKAGE_ADD_METADATA to sstate variables</title>
<updated>2020-05-25T21:25:53+00:00</updated>
<author>
<name>Michael Ho</name>
<email>Michael.Ho@bmw.de</email>
</author>
<published>2020-05-25T08:22:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=1dfd6dad27c0dea1ec6bb20e4bee8f42ae20c525'/>
<id>urn:sha1:1dfd6dad27c0dea1ec6bb20e4bee8f42ae20c525</id>
<content type='text'>
The PACKAGE_ADD_METADATA can be used to define additional metadata for
packages. Changes to this variable should affect the packaging sstate hash
so packages are re-generated when this variable changes.

This variable is added to both PKGDATA_VARS and PACKAGEVARS. It is needed
in PACKAGEVARS to ensure changes invoke do_package to re-run. It is needed
in PKGDATA_VARS to ensure changes are written into the pkgdata so that the
hash equiv reports a change and does not skip over the package_write tasks.

(From OE-Core rev: de871a51cc450e3f90c923c5d80155453e5c241d)

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