From: Joshua Watt <jpewhacker@gmail.com>
To: openembedded-core@lists.openembedded.org
Cc: Joshua Watt <JPEWhacker@gmail.com>
Subject: [OE-core][PATCH v3 0/4] Incompatible Licenses in Dynamic Packages
Date: Thu, 24 Oct 2024 13:03:06 -0600 [thread overview]
Message-ID: <20241024190438.3630946-1-JPEWhacker@gmail.com> (raw)
In-Reply-To: <20241023212013.995247-1-JPEWhacker@gmail.com>
I noticed that INCOMPATIBLE_LICENSE was not applying *-locale-*
packages at packaging time like other packages. This meant that if there
were *-locale-* packages with an incompatible license, they would still
be generated, and then the final image would likely fail when the
packages were added to it. This is actually not just a problem with
*-locale-* packages, but in fact any packages generated dynamically.
To fix this for all cases, the code to detect incompatible licenses in
packages is moved to a library function, and instead of using the
'_exclude-incompatible-' variable to transfer this knowledge from
base.bbclass to do_package, the library function is called a second time
in do_package. While slightly less efficient, this means that do_package
is checking the actual final list of packages for license exclusions,
make it accurate even when dynamic packages are added.
Finally, the last patch makes it possible to set the LICENSE field of
the generated *-locale-* packages, by making them match
LICENSE:${PN}-locale, if set. This provides a means for recipe writes to
affect the license of the split locale packages in the event that it
doesn't match the recipe LICENSE. This makes logical sense to me, but
please let me know if I'm missing some important assumption
v3: Fixed several bugs that were accidentally omitted from the previous
patch series, and feedback.
Joshua Watt (4):
classes-global/license: Move functions to library code
lib: license: Move package license skip to library
lib: package: Check incompatible licenses at packaging time
lib: package: Copy locale license
meta/classes-global/base.bbclass | 42 +----
meta/classes-global/license.bbclass | 165 ------------------
meta/classes-global/package.bbclass | 4 -
meta/classes-recipe/license_image.bbclass | 14 +-
meta/lib/oe/license.py | 202 ++++++++++++++++++++++
meta/lib/oe/package.py | 10 +-
6 files changed, 223 insertions(+), 214 deletions(-)
--
2.46.2
next prev parent reply other threads:[~2024-10-24 19:04 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-18 21:59 [OE-core][PATCH 0/4] Incompatible license handling fixes Joshua Watt
2024-10-18 21:59 ` [OE-core][PATCH 1/4] classes-global/license: Move functions to library code Joshua Watt
2024-10-18 21:59 ` [OE-core][PATCH 2/4] lib: license: Move package license skip to library Joshua Watt
2024-10-18 21:59 ` [OE-core][PATCH 3/4] lib: package: Check for incompatible licenses in locale packages Joshua Watt
2024-10-18 21:59 ` [OE-core][PATCH 4/4] lib: package: Copy locale license Joshua Watt
2024-10-23 21:15 ` [OE-core][PATCH v2 0/4] Incompatible Licenses in Dynamic Packages Joshua Watt
2024-10-23 21:15 ` [OE-core][PATCH v2 1/4] classes-global/license: Move functions to library code Joshua Watt
2024-10-23 21:15 ` [OE-core][PATCH v2 2/4] lib: license: Move package license skip to library Joshua Watt
2024-10-23 23:38 ` Peter Kjellerstedt
[not found] ` <1801394EB093B1DD.16325@lists.openembedded.org>
2024-10-24 2:16 ` Peter Kjellerstedt
2024-10-23 21:15 ` [OE-core][PATCH v2 3/4] lib: package: Check incompatible licenses at packaging time Joshua Watt
2024-10-24 2:24 ` Peter Kjellerstedt
2024-10-24 10:02 ` Peter Kjellerstedt
2024-10-24 15:57 ` Joshua Watt
2024-10-23 21:15 ` [OE-core][PATCH v2 4/4] lib: package: Copy locale license Joshua Watt
2024-10-24 19:03 ` Joshua Watt [this message]
2024-10-24 19:03 ` [OE-core][PATCH v3 1/4] classes-global/license: Move functions to library code Joshua Watt
2024-10-24 19:03 ` [OE-core][PATCH v3 2/4] lib: license: Move package license skip to library Joshua Watt
2024-10-24 19:03 ` [OE-core][PATCH v3 3/4] lib: package: Check incompatible licenses at packaging time Joshua Watt
2024-10-24 19:03 ` [OE-core][PATCH v3 4/4] lib: package: Copy locale license Joshua Watt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20241024190438.3630946-1-JPEWhacker@gmail.com \
--to=jpewhacker@gmail.com \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox