Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Joshua Watt <jpewhacker@gmail.com>
To: openembedded-core@lists.openembedded.org
Cc: Joshua Watt <JPEWhacker@gmail.com>
Subject: [OE-core][PATCH v2 0/4] Incompatible Licenses in Dynamic Packages
Date: Wed, 23 Oct 2024 15:15:18 -0600	[thread overview]
Message-ID: <20241023212013.995247-1-JPEWhacker@gmail.com> (raw)
In-Reply-To: <20241018220818.4042304-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

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-recipe/license_image.bbclass |  14 +-
 meta/lib/oe/license.py                    | 202 ++++++++++++++++++++++
 meta/lib/oe/package.py                    |  10 +-
 5 files changed, 223 insertions(+), 210 deletions(-)

-- 
2.46.2



  parent reply	other threads:[~2024-10-23 21:20 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 ` Joshua Watt [this message]
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   ` [OE-core][PATCH v3 0/4] Incompatible Licenses in Dynamic Packages Joshua Watt
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=20241023212013.995247-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