<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/meta/classes/license_image.bbclass, branch uninative-2.10</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=uninative-2.10</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=uninative-2.10'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2021-01-13T23:13:46+00:00</updated>
<entry>
<title>license_image.bbclass: fix missing recipeinfo on self</title>
<updated>2021-01-13T23:13:46+00:00</updated>
<author>
<name>Michael Ho</name>
<email>Michael.Ho@bmw.de</email>
</author>
<published>2021-01-12T08:55:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=19cdf6b35902601b1e30c8cb9a4df7e217d687d4'/>
<id>urn:sha1:19cdf6b35902601b1e30c8cb9a4df7e217d687d4</id>
<content type='text'>
Resolve a build bug where image recipes with a do_deploy task will fail.

If the image recipe inheriting license_image.bbclass has a deploy task, then
the function get_deployed_dependencies will add itself to the list of recipes
to get license information for.

However, image recipes don't generally deploy license info so this results in
an error.

File: '/nvme/poky/meta/classes/license_image.bbclass', lineno: 192, function: license_deployed_manifest
...
Exception: FileNotFoundError: [Errno 2] No such file or directory: '/nvme/poky/build/tmp/deploy/licenses/core-image-minimal/recipeinfo'

Add a corner case to exclude the originating image recipe from the list of
dependencies to check.

(From OE-Core rev: 13fb39e49e55a0bc7c78b0bfdc372163b3f9e70a)

Signed-off-by: Michael Ho &lt;Michael.Ho@bmw.de&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>license_image.bbclass: use canonical name for license files</title>
<updated>2020-11-24T10:27:44+00:00</updated>
<author>
<name>Vyacheslav Yurkov</name>
<email>Vyacheslav.Yurkov@bruker.com</email>
</author>
<published>2020-11-17T14:41:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=34acb2e340807db7ebe3f1ada7fb1ef4627ff5cf'/>
<id>urn:sha1:34acb2e340807db7ebe3f1ada7fb1ef4627ff5cf</id>
<content type='text'>
When copying license files to the image rootfs, i.e to
/usr/share/common-licenses, a canonical name of a license should be
used, otherwise duplicated files end up in common-licenses directory.

For example, GPL-2.0 license according to conf/license.conf can be
referenced in recipes as GPL-2, GPLv2, and GPLv2.0. If a license name is
used directly, we end up with three files in the rootfs with the same
content. If a canonical name used instead, then each license gets copied
only once.

(From OE-Core rev: 670fe71dd18ea675f35581db4a61fda137f8bf00)

Signed-off-by: Vyacheslav Yurkov &lt;Vyacheslav.Yurkov@bruker.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>license_image.bbclass: Fix symlink to the image license manifest dir creation</title>
<updated>2020-09-12T13:49:00+00:00</updated>
<author>
<name>Diego Sueiro</name>
<email>diego.sueiro@arm.com</email>
</author>
<published>2020-09-11T11:30:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=f688eb3f3dbe7bb7fb3fb8180c1dbd0782d66d45'/>
<id>urn:sha1:f688eb3f3dbe7bb7fb3fb8180c1dbd0782d66d45</id>
<content type='text'>
If IMAGE_LINK_NAME is empty don't try to create the symlink.

[YOCTO #14042]

(From OE-Core rev: b54d92235408abdf0ba75a4d46329ec992af6006)

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>license_image.bbclass: Create symlink to the image license manifest dir</title>
<updated>2020-09-02T15:00:46+00:00</updated>
<author>
<name>Diego Sueiro</name>
<email>diego.sueiro@arm.com</email>
</author>
<published>2020-09-01T07:12:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=a6b2d978cb521b603fbfa180fe31552642dddafe'/>
<id>urn:sha1:a6b2d978cb521b603fbfa180fe31552642dddafe</id>
<content type='text'>
In the LICENSE_DIRECTORY each time an image recipe is built a new directory
is created to hold the image license manifests.

By creating a symlink to the most recent created image license manifest
directory, we make things easier for users to collect and pack the data.

(From OE-Core rev: 9c6a114213a80bebc2988ae8d39b296bce7f6982)

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>license_image.bbclass: Report only the licenses that are incompatible</title>
<updated>2019-12-16T23:25:50+00:00</updated>
<author>
<name>Peter Kjellerstedt</name>
<email>peter.kjellerstedt@axis.com</email>
</author>
<published>2019-12-11T16:48:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=29b3cc9655a0530226e0c1ba30ec16ca1750cf03'/>
<id>urn:sha1:29b3cc9655a0530226e0c1ba30ec16ca1750cf03</id>
<content type='text'>
Instead of reporting ${LICENSE} when a package cannot be installed
into an image because it is using an incompatible license, report the
license(s) that are actually incompatible.

(From OE-Core rev: b1863e570d4b169cd2f0ea7b4fe7c2348943cb2c)

Signed-off-by: Peter Kjellerstedt &lt;peter.kjellerstedt@axis.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>license_image.bbclass: check and reject packages which have incompatible licenses</title>
<updated>2019-10-15T13:16:10+00:00</updated>
<author>
<name>Alexander Kanavin</name>
<email>alex.kanavin@gmail.com</email>
</author>
<published>2019-10-10T11:18:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=25df405d4b019ba6444d03598e914ff2efdad4c9'/>
<id>urn:sha1:25df405d4b019ba6444d03598e914ff2efdad4c9</id>
<content type='text'>
The use case is setting INCOMPATIBLE_LICENSE per image,
rather than as an awkward, and too strict global setting.

This for example would allow building development images with gplv3 tools,
but production images without them, and checking that nothing gpl3-licensed
gets into the latter.

Examples are provided via the selftest: four scenarios are tested:

- bash is added to the image, with a default gpl3 license; this is rejected
- bash is added to the image, with a "gpl3 &amp; other" license; this is also rejected
- bash is added to the image, with a "gpl3 | other" license; this is accepted, but
only 'other' is added to the license manifest (this was already handled correctly
previously).
- bash is added to the image with a default gpl3 license, and is additionally
whitelisted for that image; this is accepted.

Eventually, this would allow deprecating the meta-gplv2 layer, while still
enforcing the no-gpl3 rule where possible and needed.

(From OE-Core rev: fd50395bc0783a3cce7b5b0d7398f22783ebbeca)

Signed-off-by: Alexander Kanavin &lt;alex.kanavin@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>license_image.bbclass: drop invalid comments</title>
<updated>2019-08-06T10:24:27+00:00</updated>
<author>
<name>Ming Liu</name>
<email>liu.ming50@gmail.com</email>
</author>
<published>2019-08-04T12:37:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=d6138fe9506f270614670103043a9cbbfd6d84f8'/>
<id>urn:sha1:d6138fe9506f270614670103043a9cbbfd6d84f8</id>
<content type='text'>
These comments are not valid any more, drop them.

(From OE-Core rev: 39f5a3030a97bdf567ee11091dd4e95ef04585d7)

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>meta: license: fix non-SPDX license being removed from INCOMPATIBLE_LICENSE</title>
<updated>2019-06-11T12:26:55+00:00</updated>
<author>
<name>Quentin Schulz</name>
<email>quentin.schulz@streamunlimited.com</email>
</author>
<published>2019-06-11T08:11:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=4b6ce4604cc15e289a48f8586d58a101b7a70b52'/>
<id>urn:sha1:4b6ce4604cc15e289a48f8586d58a101b7a70b52</id>
<content type='text'>
A non-SPDX license (which is not an alias to an SPDX license) cannot
currently be marked as incompatible in INCOMPATIBLE_LICENSE.
In the current state, we take all INCOMPATIBLE_LICENSE and pass them
through expand_wildcard_licenses which is only adding SPDX licenses that
match the glob regexp of what is in INCOMPATIBLE_LICENSE (be it a direct
match to an SPDX license or via an alias).

This does not work well with custom licenses.

E.g.:

foo.bb:
LICENSE = "FooLicense"

conf/local.conf:
INCOMPATIBLE_LICENSE = "FooLicense"

`bitbake foo`

Gives no warning, no error, builds and packages successfully, because
INCOMPATIBLE_LICENSE is basically empty since FooLicense is neither in
SPDXLICENSEMAP nor in SRC_DISTRIBUTE_LICENSES.

Let's add the original licenses to the list returned by
expand_wildcard_licenses to be able to handle the aforementioned case.

INCOMPATIBLE_LICENSE = "FooLicense GPLv2 GPLv3+" used to "resolve" to
"GPLv2 GPLv3". It now resolves to "FooLicense GPLv2 GPLv3 GPLv3+" which
fixes the issue with custom licenses not being in SPDXLICENSEMAP or
SRC_DISTRIBUTE_LICENSES and thus being left out of the blacklisted
licenses.

I needed to pass a list to expand_wildcard_licenses from the
license_image class instead of the current output of map() because the
operator [:] does not work on this kind of type, and list(map()) or
anything that iterates over map() actually moves the iterator and breaks
the forloop right after in expand_wildcard_licenses.

(From OE-Core rev: 2d976587d703462db2b7b78661b05ac22fb93787)

Signed-off-by: Quentin Schulz &lt;quentin.schulz@streamunlimited.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>license_image: Use new oe.path.copyhardlink() helper</title>
<updated>2019-05-07T09:12:53+00:00</updated>
<author>
<name>Paul Barker</name>
<email>paul@betafive.co.uk</email>
</author>
<published>2019-05-03T11:54:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=896b0c576923198fff865f1f3fb111c46fb60a2c'/>
<id>urn:sha1:896b0c576923198fff865f1f3fb111c46fb60a2c</id>
<content type='text'>
This change allows us to support the placement of WORKDIR and DEPLOY_DIR
on different devices.

(From OE-Core rev: f064a581ba31764839459bd667130bccbbedefab)

Signed-off-by: Paul Barker &lt;paul@betafive.co.uk&gt;
Signed-off-by: Ross Burton &lt;ross.burton@intel.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>classes/license_image.bbclass: Fix rootfs license file permissions</title>
<updated>2019-02-15T08:17:49+00:00</updated>
<author>
<name>Joshua Watt</name>
<email>jpewhacker@gmail.com</email>
</author>
<published>2019-02-13T16:58:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=8d47356ad263fee8566c561cb509905e6e19ed59'/>
<id>urn:sha1:8d47356ad263fee8566c561cb509905e6e19ed59</id>
<content type='text'>
Fixes up the permissions on the license files when they are put on the
target file system so that they are readable by everyone. Previously,
they would have inherited whatever permissions the file had in the
recipe, which may not have been appropriate.

[YOCTO #13175]

(From OE-Core rev: 8190d192fceb9b0969385507d3d4bca7be75c810)

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