util-linux: Improve the package licenses

The default license for util-linux is GPL-2.0-or-later.

Most of the applications and the libraries are also linked with
libcommon.la, which uses these licenses:
LGPL-2.1-or-later & BSD-2-Clause & BSD-3-Clause & MIT

Set the above licenses for all dynamic packages, unless explicitly
specified.

In particular, this avoids setting BSD-4-Clause-UC and EUPL-1.2 on
packages where they do not belong.

License-Update: See above
(From OE-Core rev: 4c3d56ab2caeedb79e493544e864fd8c2f5880cf)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Peter Kjellerstedt 2025-06-05 23:31:21 +02:00 committed by Richard Purdie
parent 0e4ef3bed7
commit cab55df1ce

View File

@ -1,13 +1,44 @@
require util-linux.inc require util-linux.inc
# Most of the applications and the libraries are linked with libcommon.la,
# which uses these licenses
LIBCOMMON_LICENSES = "LGPL-2.1-or-later & BSD-2-Clause & BSD-3-Clause & MIT"
# The default license is GPL-2.0-or-later
DEFAULT_LICENSES = "GPL-2.0-or-later & ${LIBCOMMON_LICENSES}"
LICENSE = "GPL-1.0-or-later & GPL-2.0-only & GPL-2.0-or-later & LGPL-2.1-or-later & BSD-2-Clause & BSD-3-Clause & BSD-4-Clause-UC & MIT & EUPL-1.2" LICENSE = "GPL-1.0-or-later & GPL-2.0-only & GPL-2.0-or-later & LGPL-2.1-or-later & BSD-2-Clause & BSD-3-Clause & BSD-4-Clause-UC & MIT & EUPL-1.2"
LICENSE:${PN}-bash-completion = "GPL-2.0-or-later"
LICENSE:${PN}-dev = "${LIBCOMMON_LICENSES}"
# All dynamic packages use ${DEFAULT_LICENSES} with the following exceptions
LICENSE:${PN}-cal = "BSD-4-Clause-UC & ${LIBCOMMON_LICENSES}"
LICENSE:${PN}-col = "BSD-4-Clause-UC & ${LIBCOMMON_LICENSES}"
LICENSE:${PN}-colcrt = "BSD-4-Clause-UC"
LICENSE:${PN}-colrm = "BSD-4-Clause-UC & ${LIBCOMMON_LICENSES}"
LICENSE:${PN}-column = "BSD-4-Clause-UC & ${LIBCOMMON_LICENSES}"
LICENSE:${PN}-coresched = "EUPL-1.2 & ${LIBCOMMON_LICENSES}"
LICENSE:${PN}-fcntl-lock = "MIT" LICENSE:${PN}-fcntl-lock = "MIT"
LICENSE:${PN}-fdisk = "GPL-1.0-or-later" LICENSE:${PN}-fdisk = "GPL-1.0-or-later & ${DEFAULT_LICENSES}"
LICENSE:${PN}-libblkid = "LGPL-2.1-or-later" LICENSE:${PN}-fsfreeze = "GPL-1.0-or-later"
LICENSE:${PN}-libfdisk = "LGPL-2.1-or-later" LICENSE:${PN}-hexdump = "BSD-4-Clause-UC & ${LIBCOMMON_LICENSES}"
LICENSE:${PN}-libmount = "LGPL-2.1-or-later" LICENSE:${PN}-kill = "BSD-4-Clause-UC & ${LIBCOMMON_LICENSES}"
LICENSE:${PN}-libsmartcols = "LGPL-2.1-or-later" LICENSE:${PN}-libblkid = "${LIBCOMMON_LICENSES}"
LICENSE:${PN}-coresched = "EUPL-1.2" LICENSE:${PN}-libfdisk = "${LIBCOMMON_LICENSES}"
LICENSE:${PN}-libmount = "${LIBCOMMON_LICENSES}"
LICENSE:${PN}-libsmartcols = "${LIBCOMMON_LICENSES}"
LICENSE:${PN}-logger = "BSD-4-Clause-UC & ${LIBCOMMON_LICENSES}"
LICENSE:${PN}-look = "BSD-4-Clause-UC"
LICENSE:${PN}-lscpu = "GPL-2.0-only & ${DEFAULT_LICENSES}"
LICENSE:${PN}-mesg = "BSD-4-Clause-UC & ${LIBCOMMON_LICENSES}"
LICENSE:${PN}-nsenter = "GPL-2.0-only & ${DEFAULT_LICENSES}"
LICENSE:${PN}-renice = "BSD-4-Clause-UC"
LICENSE:${PN}-rev = "BSD-4-Clause-UC"
LICENSE:${PN}-script = "BSD-4-Clause-UC & ${LIBCOMMON_LICENSES}"
LICENSE:${PN}-ul = "BSD-4-Clause-UC"
LICENSE:${PN}-vipw = "BSD-4-Clause-UC & ${DEFAULT_LICENSES}"
LICENSE:${PN}-wall = "BSD-4-Clause-UC & ${LIBCOMMON_LICENSES}"
LICENSE:${PN}-whereis = "BSD-4-Clause-UC & ${LIBCOMMON_LICENSES}"
LICENSE:${PN}-write = "BSD-4-Clause-UC & ${LIBCOMMON_LICENSES}"
LIC_FILES_CHKSUM = "file://README.licensing;md5=55e895a80bdd4ffc65e167a76d2e7569 \ LIC_FILES_CHKSUM = "file://README.licensing;md5=55e895a80bdd4ffc65e167a76d2e7569 \
file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
@ -33,6 +64,9 @@ python util_linux_binpackages () {
pn = d.getVar('PN') pn = d.getVar('PN')
d.appendVar('RRECOMMENDS:%s' % pn, ' %s' % pkg) d.appendVar('RRECOMMENDS:%s' % pn, ' %s' % pkg)
if not d.getVar('LICENSE:' + pkg):
d.setVar('LICENSE:' + pkg, '${DEFAULT_LICENSES}')
if d.getVar('ALTERNATIVE:' + pkg): if d.getVar('ALTERNATIVE:' + pkg):
return return
if d.getVarFlag('ALTERNATIVE_LINK_NAME', modulename): if d.getVarFlag('ALTERNATIVE_LINK_NAME', modulename):