Commit Graph

186 Commits

Author SHA1 Message Date
Virendra Thakur
aee1d45a83 util-linux: Add fix to isolate test fstab entries using CUSTOM_FSTAB
During ptest execution, util-linux adds mount entries in /etc/fstab
and runs `mount -a`, which mounts all available entries from
/etc/fstab. This can cause unintended mounts that are unrelated to
the test, leading to incorrect test behavior.

To avoid this, upstream util-linux introduced a mechanism using
CUSTOM_FSTAB,which isolates test-specific fstab entries. Only entries
listed in CUSTOM_FSTAB are mounted during test execution, ensuring
tests do not interfere with or depend on the system's /etc/fstab.

This commit backports below upstream changes to use CUSTOM_FSTAB.
ed3d33faff
b1580bd760
6aa8d17b6b

(From OE-Core rev: 94747fb63518bf907eb7c09fc2e146e39e235a7d)

Signed-off-by: Virendra Thakur <virendra.thakur@kpit.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2025-05-28 08:46:32 -07:00
Khem Raj
647bd689e9 util-linux: Define pidfd_* function signatures
glibc 2.36 has added sys/pidfd.h and APIs for
pidfd_send_signal and pidfd_open, therefore check
for this header and include it if it exists

(From OE-Core rev: 2c913a7b66ea756ebc65a573e1b5bb5dba6834d2)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-11-02 06:32:36 -07:00
Soumya Sambu
ec87d3ca28 util-linux: Fix CVE-2024-28085
wall in util-linux through 2.40, often installed with setgid
tty permissions, allows escape sequences to be sent to other
users' terminals through argv. (Specifically, escape sequences
received from stdin are blocked, but escape sequences received
from argv are not blocked.) There may be plausible scenarios
where this leads to account takeover.

CVE-2024-28085-0005 is the CVE fix and CVE-2024-28085-0001,
CVE-2024-28085-0002, CVE-2024-28085-0003, CVE-2024-28085-0004
are dependent commits to fix the CVE.

References:
https://nvd.nist.gov/vuln/detail/CVE-2024-28085

(From OE-Core rev: 28d9f948536dfee2330e4cfd225c932d20d688f1)

Signed-off-by: Soumya Sambu <soumya.sambu@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-01 19:07:52 -07:00
Richard Purdie
b0130fcf91 meta/meta-selftest/meta-skeleton: Update LICENSE variable to use SPDX license identifiers
An automated conversion using scripts/contrib/convert-spdx-licenses.py to
convert to use the standard SPDX license identifiers. Two recipes in meta-selftest
were not converted as they're that way specifically for testing. A change in
linux-firmware was also skipped and may need a more manual tweak.

(From OE-Core rev: ceda3238cdbf1beb216ae9ddb242470d5dfc25e0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-20 16:45:25 +00:00
Alexander Kanavin
fb50e211e2 util-linux: upgrade 2.37.3 -> 2.37.4
(From OE-Core rev: 6a3289c4786c4d278e2bf0ec1a5e04363772d8bc)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-18 11:37:11 +00:00
Alexander Kanavin
c611878ae7 util-linux: update 2.37.2 -> 2.37.3
(From OE-Core rev: e543d4407fdc91559a77d6c5cd41bcb75bc8c73c)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-03 09:05:14 +00:00
Alexander Kanavin
ab1d826a70 util-linux: upgrade 2.37.1 -> 2.37.2
(From OE-Core rev: d469dfa08ae52ca720ef1315994050f956b6ea50)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-08-26 08:07:55 +01:00
Dragos-Marian Panait
b3246ebd87 util-linux: fix CVE-2021-37600
sys-utils/ipcutils: be careful when call calloc() for uint64 nmembs

Fix: #1395
(From OE-Core rev: 9822232b4abd811bb9c8562f98c0aefc748340a0)

Signed-off-by: Karel Zak <kzak@redhat.com>

CVE: CVE-2021-37600
Upstream-Status: Backport [1c9143d0c1f979c3daf10e1c37b5b1e916c22a1c]

Signed-off-by: Dragos-Marian Panait <dragos.panait@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-08-13 14:44:05 +01:00
Alexander Kanavin
0b46f264a4 util-linux: update 2.37 -> 2.37.1
Drop backports.

(From OE-Core rev: d50e8b73c81af52bacc2125c8fe4828ad2da2ef3)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-08-02 15:44:10 +01:00
Richard Purdie
bb6ddc3691 Convert to new override syntax
This is the result of automated script conversion:

scripts/contrib/convert-overrides.py <oe-core directory>

converting the metadata to use ":" as the override character instead of "_".

(From OE-Core rev: 42344347be29f0997cc2f7636d9603b1fe1875ae)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-08-02 15:44:10 +01:00
Khem Raj
b4f9b5b3fa util-linux: Fix signature of close_range()
close_range expects 3 parameters, thus far it was not implemented in
glibc so it was hidden but with glibc 2.34+ it will start to show up

(From OE-Core rev: 0d6f638230a96808e22438d9925aec6383d136a7)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-07-16 21:23:44 +01:00
Ross Burton
c1fea579f0 util-linux: backport test suite fixes
Backport a number of fixes so the test suite passes.

(From OE-Core rev: 398b9dab8675829f3428a4f00bffcf84525e0a46)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-07-07 11:39:42 +01:00
Alexander Kanavin
64ce39210f util-linux: backport a patch to address mkswap hangs
(From OE-Core rev: 4d50d6f708477da0a5314a3749275d87101374d9)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-06-17 13:45:02 +01:00
Alexander Kanavin
6091f104bb util-linux: update 2.36.2 -> 2.37
Drop manpages support, as it requires asciidoctor
(written in ruby, isn't in oe-core).

(From OE-Core rev: 6cb58dd4feae12a064fad3ab30b1d44e159fe7e2)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-06-17 00:07:05 +01:00
Peter Kjellerstedt
0b94e36b5f util-linux.inc: Do not modify BPN
Changing BPN to be "util-linux" regardless if it is the util-linux
recipe or the util-linux-libuuid recipe that is being built was an
easy way to allow ${BPN} and ${BP} to be used in the SRC_URI for both
recipes. However, it causes problems for native.bbclass where there
are expectations that ${BPN} and ${PN} match each other.

Use "util-linux" directly in the SRC_URI instead to avoid the problem.

(From OE-Core rev: 701ef7ff0e1b17150424a64acfafbb83f518f9c9)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-06-01 14:03:49 +01:00
Richard Purdie
bbd6098ef4 util-linux-libuuid: Simplify recipe and rename from util-linux-uuid
Rename the recipe from util-linux-uuid to util-linux-libuuid which means
we can drop the custom PACKAGES and FILES defintions which simplifies
things. Also move the LICENSE setting to the libuuid recipe so that
it is correctly applied to the right packages.

This means the standard definitions from bitbake.conf are used, avoiding
errors from situations where users have customised settings causing
failures.

(From OE-Core rev: 65efd76198ad805060fe28714765cd423fa748dc)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-03-28 22:28:27 +01:00
Luca Boccassi
a31f87a1ff util-linux: backport patch to skip build of unused objects
util-linux-uuid does not need libtcolors.a and libcommon.a but
they get build regardless. Backport a patch from upstream to
skip them and save some compilation time.

c65953d72b

(From OE-Core rev: 9353c4338acd51e1bc4172554fca018c4044829f)

Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-03-20 18:54:55 +00:00
Luca Boccassi
d42487bf52 util-linux: split uuid in separate recipe to allow bootstrapping
Recently util-linux gained an (optional) build dependency on libcryptsetup.
But libcryptsetup build-depends on util-linux for blkid (optional, can be disabled)
and uuid (mandatory).
Split out util-linux-uuid in a different recipe to break the cycle.

https://github.com/karelzak/util-linux/pull/898

(From OE-Core rev: 5f204796e73f37ee67d0a86512ce3ab6f19f9ed0)

Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-03-12 15:35:08 +00:00
Alexander Kanavin
64bc355805 util-linux: merge .inc into .bb
(From OE-Core rev: 06e6a1dcfe5e1ef3767b407d40696ed21e084e9e)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-08-25 16:00:10 +01:00
Christian Eggers
5295524a4c util-linux: Set license for library sub packages
- libblkid is exclusively licensed under LGPL-2.1+ (libblkid/COPYING)
- libfdisk is exclusively licensed under LGPL-2.1+ (libfdisk/COPYING)
- libmount is exclusively licensed under LGPL-2.1+ (libmount/COPYING)
- libsmartcols is exclusively licensed under LGPL-2.1+
(libsmartcols/COPYING)
- libuuid is exclusively licensed under BSD-3-Clause (libuuid/COPYING)

(From OE-Core rev: d5f0b4be44e082a1b05b17403b21f89ad4b1b615)

Signed-off-by: Christian Eggers <ceggers@arri.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-07-12 12:21:48 +01:00
Marco Felsch
d72c12fb53 util-linux: alternatify rtcwake
This tool can be turned on in busybox which lead into a error during
do_rootfs.

(From OE-Core rev: eb22e7a1190a79fd74ae54f23a13ec4932f41b0d)

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-06-04 13:27:29 +01:00
Pierre-Jean Texier
5a8d7be90a util-linux: upgrade 2.34 -> 2.35.1
License-Update: add GPLv3 text in README.licensing

Also:
 - Drop upstreamed patch
 - Backport an upstream patch to fix an issue with 'sfdisk'
 - Use 'disable-hwclock-gplv3' explicitly.

Since commit 7a3000f7ba548cf7d74ac77cc63fe8de228a669e ("hwclock: use parse_date function") hwclock is linked
with parse_date.y from gnullib. This gnulib code is distributed with GPLv3.
So, we have to use '--disable-hwclock-gplv3' to exclude this code.

See full changelog https://lore.kernel.org/util-linux/20200131095846.ogjtqrs7ai774tka@ws.net.home/T/#u

(From OE-Core rev: 324f33ba5a77d498cfff81c6857c78ad13b27125)

Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-03-01 10:40:11 +00:00
Khem Raj
1f1d9c25a7 util-linux: Use PCRE for hardlink
Use PCRE, this enables using posix extended Regexps on cmdline

(From OE-Core rev: 7a0fd80d8a5f2aedcccb5a52acca46dea3feb3d8)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-01-01 10:46:16 +00:00
Khem Raj
634b65b7ff util-linux: Make pam specific logic apply to target recipe alone
This helps with a case where a distro builds one image with systemd and
another with sysvinit, it ends up recompiling almost everything since
python3-native gets rebuilt and tracing dependencies with
bitbake-diffsigs shows that the chain ends at util-linux-native being
recompiled because distro features now does or does not have 'pam'

Hash for dependent task python/python3_3.7.4.bb:do_prepare_recipe_sysroot:virtual:native:/mnt/a/yoe/sources/openembedded-core/meta/recipes-devt
ools/python/python3_3.7.4.bb changed from 8befaac4f995aaff3f95d27c9caaf1006f86e1344b02c1ae82f5d12f885f2240 to 2a45fe0cd0d3640a88c4a5c8b1880c4e9
a089cc7446a91d2a920c1cef6fa916a
    Hash for dependent task util-linux/util-linux_2.34.bb:do_populate_sysroot:virtual:native:/mnt/a/yoe/sources/openembedded-core/meta/recipes-
core/util-linux/util-linux_2.34.bb changed from 0db292cb2e37d5788bdcf51038b2802d748b719d860aca3a26d7a793b0cf3905 to 15d6e165f025f10c2c455df8a87
5cafe021eaed4214c793e708d4827a58ca89d
        Hash for dependent task util-linux/util-linux_2.34.bb:do_install:virtual:native:/mnt/a/yoe/sources/openembedded-core/meta/recipes-core/util-linux/util-linux_2.34.bb changed from 54bb4ee6bdb5c7fc260dabddb4932cb0e554a62cd92aba080a18306291fb470b to e25b1119ce8dd7ca43fbd2db771e04fa
6ff6b9d701fd78ac6c443224b036ed9f                                                                                                                           basehash changed from 8e8687a866689a697001dedc0a43f478e68e6efe270bd77362f24c6000f9e882 to 62df6610eab9c1b1a17d7132943507641c8538690
f26186843c86144d4598e64
            Variable do_install value changed:

rm -f ${D}${bindir}/chkdupexe
-   if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then
+   if [ "${@bb.utils.filter('PACKAGECONFIG', 'pam', d)}" ]; then
        install -d ${D}${sysconfdir}/pam.d
        install -m 0644 ${WORKDIR}/runuser.pamd ${D}${sysconfdir}/pam.d/runuser
        install -m 0644 ${WORKDIR}/runuser-l.pamd ${D}${sysconfdir}/pam.d/runuser-l
@@ -47,5 +47,4 @@
        rm -f ${D}${base_sbindir}/nologin
        rm -f ${D}${base_bindir}/kill

    -DISTRO_FEATURES{pam} = Unset
    PACKAGECONFIG{pam} = Unset

So far it seems this pam conditional code in util-linux is target
specific and would not apply to native or nativesdk recipes

(From OE-Core rev: a57f56576eda4b3ad5496e375b432e06e34ad8b9)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Randy MacLeod
f1a582bd0b util-linux: add setpriv utility
Enable the setpriv utility for targets only. It will be used in
the run-ptest script for bash and perhaps other packages where
the ptest code is expected to run as a user.

setpriv uses libcap-ng which doesn't build natively so disable
it for native* builds. Also, busybox has a setpriv implementation
so ensure that setpriv adheres to the alternatives scheme.

(From OE-Core rev: 587ba5f4bef18e8260fe671bd2e303140369a5e5)

Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-06-18 11:23:48 +01:00
Mariano López
fbee8ff72a util-linux: Stop udevd to run ptests
The util-linux's ptest uses the SCSI_DEBUG kernel module to create
virtual SCSI disks. The automount feature of udevd will try to mount
these disks by default. Because udevd controls the mount of the disks,
the eject/mount tests will fail or be skipped. This change will stop
udevd before executing the util-linux's ptest and start the daemon
again after all the tests.

This is for eudevd only, systemd-udevd doesn't present this problem
because there are no automount rules.

[YOCTO #13301]

(From OE-Core rev: f7becf0b5743dfbee06b354a086dc553db2b1348)

Signed-off-by: Mariano López <just.another.mariano@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-06-14 22:48:22 +01:00
Chen Qi
949cbf198c util-linux: upgrade to 2.33.2
The license files' names are changed, but the contents remain the
same. However, the LICENSE section of the recipe was wrong. This
upgrade change the 'BSD' part to 'BSD-3-Clause & BSD-4-Clause'.

(From OE-Core rev: 9bc68bcc79d9e2464b9b29f6bfde8322b65c09b9)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-06-12 21:08:52 +01:00
Richard Purdie
31305767c3 util-linux: Fix ptest dependencies
We should append to the ptest RDEPENDS and RRECOMMENDS otherwise the bbclass
defaults are overwritten. This leads to ptest-runner not being installed in
minimal images. Also drop the duplicate ${PN} value which is unneeded once
we do this.

(From OE-Core rev: 5054038567744d09e51e50f8c663f18224d6c555)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-30 12:37:02 +01:00
Mariano López
e42d45925d util-linux: Add missing ptest dependencies
There are some missing dependencies for the util-linux-ptest package
that causes inconsistencies in the package tests run in different images.

The kernel module in RRECOMMENDS is not build at this time, it needs
more testing and check if the configuration change can be part of the
yocto-kernel-cache repository.

(From OE-Core rev: 56f09cb4873f9de8efb44c640b6c9f1db8b721b7)

Signed-off-by: Mariano López <just.another.mariano@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-21 12:56:33 +01:00
Mariano Lopez
db9a0dd784 util-linux: Use PTEST binary directory
Some binaries generated by util-linux will be replaced by core-utils
in the final image by update-alternatives, so use a dedicated directory
with symlinks to avoid using a binary generated by another package.

This will solve the issue with the ptest runner timing out when
running the kill ptests for util-linux.

[YOCTO #13238]

(From OE-Core rev: 1a8fd875f0b171e25a5ac8a32cc81ff3887935bd)

Signed-off-by: Mariano Lopez <just.another.mariano@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-04-11 21:12:48 +01:00
Richard Purdie
57933bd958 openssh/util-linux/python*: Ensure ptest output is unbuffered
We need to run sed with the -u option to ensure the output is unbuffered else
ptest-runner may timeout thinkig things were idle. Busybox doesn't have the -u
option so we need to RDEPEND on sed (which is a good thing to do if we use it
anyway).

Alex Kanavin should get credit for discovering the problem.

(From OE-Core rev: d3ffbebf43c23faa43af81c9ecf6fcaef36d675b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-04-09 13:44:39 +01:00
Ross Burton
b7b769f2f8 util-linux: remove spurious lzo-native dependency
This was added with no explanation in 2010 (17f3c548c) and doesn't appear to be
needed.

(From OE-Core rev: 6683a29cfd10c3796943ae8485310521ca55c446)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-04 22:57:05 +00:00
Kai Kang
cd671eae41 util-linux: fix multilib qa issue
Update RCONFLICTS and RREPLACES for util-linux to fix 'multilib' qa issue:

| ERROR: lib32-util-linux-2.32.1-r0 do_package: QA Issue: lib32-util-linux
  package lib32-util-linux-blkid - suspicious values 'e2fsprogs-blkid' in
  RREPLACES [multilib]
| ERROR: lib32-util-linux-2.32.1-r0 do_package: QA Issue: lib32-util-linux
  package lib32-util-linux-blkid - suspicious values 'e2fsprogs-blkid' in
  RCONFLICTS [multilib]

(From OE-Core rev: 069808976de91050e16d01c82a7491d2cabfce1a)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-28 13:21:54 +00:00
Alexander Kanavin
2a727a368c util-linux: add the missing manpages PACKAGECONFIG
(From OE-Core rev: 98d7eb29c52b1a050bdfeec8af8338ea27b4b3ba)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-25 10:43:07 +00:00
André Draszik
9c60ee4656 util-linux: final cleanup
* use ${PN} instead of util-linux
* use PACKAGESPLITFUNCS for creating util-linux-lib* packages
  rather than an _append OVERRIDE
* sort ALTERNATIVE_LINK_NAME alphabetically
* use systemd_system_unitdir instead of open-coding
* inherit manpages so as to benefit from man-db processing (note
  that manpages are not generated here, we just want the
  automatic update of the package index caches
* use EXTRA_OEMAKE instead of duplicating command line arguments

[YOCTO #13058]

(From OE-Core rev: 6b71a118debb841b7507fc7830712197480a8661)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-12 14:04:31 +00:00
André Draszik
9fb14cb924 util-linux: let -ptest package depend on all of util-linux
ptest executes all the binaries, so they really need to be available
in the file system.

[YOCTO #13058]

(From OE-Core rev: 66637b33a8a153d8c1f509e9493bc4bee953f6cb)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-12 14:04:31 +00:00
André Draszik
f6923fcc9c util-linux: move /etc/default/mountall into -mount subpackage
This should probably be there and now the main package is a real
meta-package only.

[YOCTO #13058]

(From OE-Core rev: e38c06db5be8c15c0764e3450d3ef9e43911bf8c)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-12 14:04:31 +00:00
André Draszik
b10556c694 util-linux: simplify meta-package RDEPENDS / RRECOMMENDS
The util-linux meta-package now simply RRECOMMENDS all
subpackages created. There is no distinction between what
it previously recommended or depended on for existing
packages.

This is to streamline the dependencies and to make things
less surprising.
It also stops the -dev package from depending on non-existing
packages like util-linux-losetup-dev etc.

[YOCTO #13058]

(From OE-Core rev: d0d6cc9ee59ed7a017e1b31404603a135a8717e8)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-12 14:04:31 +00:00
André Draszik
d11cbdf149 util-linux: one package per binary (pt 4: bindir)
Similar to the previous patch.

Existing packages (and current dependency by main package):
* ionice <- RRECOMMENDS
* lsblk <- RDEPENDS
* lscpu
* mcookie
* prlimit <- RRECOMMENDS
* unshare
* uuidgen

New packages:
* too many to list

To avoid breaking existing users, all the new packages
are added to the main package as RRECOMMENDS_${PN}, so
they are pulled into existing images etc.

The existing RDEPENDS_${PN} will need some further
clean-up in the future, as it appears a bit random which
packages the main package depends on vs. recommends.

Nevertheless, all existing packages have been added to
RRECOMMENDS this time, even if they weren't in RDEPENDS /
RRECOMMENDS before.

Unfortunately, we need to add explicit ALTERNATIVE_LINK_NAME[]
for a few cases, as previously they were implied using
defaults by being specified in ALTERNATIVE_${PN}. We can't
easily automate that using do_split_packages(), so we
simply add them explicitly.

[YOCTO #13058]

(From OE-Core rev: 7b66185c447453640f26e2563e85b6422a3e6118)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-12 14:04:31 +00:00
André Draszik
9ecdf90675 util-linux: one package per binary (pt 3: sbindir)
Similar to the previous patch.

Existing packages (and current dependency by main package):
* blkdiscard <- RRECOMMENDS
* findfs
* fsck.cramfs
* mkfs <- RRECOMMENDS
* mkfs.cramfs
* partx
* readprofile <- RRECOMMENDS
* rfkill
* runuser <- RDEPENDS
* sfdisk <- RRECOMMENDS
* uuidd

New packages:
* too many to list

To avoid breaking existing users, all the new packages
are added to the main package as RRECOMMENDS_${PN}, so
they are pulled into existing images etc.

The existing RDEPENDS_${PN} will need some further
clean-up in the future, as it appears a bit random which
packages the main package depends on vs. recommends.

Nevertheless, all existing packages have been added to
RRECOMMENDS this time, even if they weren't in RDEPENDS /
RRECOMMENDS before.

[YOCTO #13058]

(From OE-Core rev: 19f63aa911ff9d8bea62102c3f3f54cf6dccd6d8)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-12 14:04:31 +00:00
André Draszik
6b82821f8a util-linux: one package per binary (pt 2: base_bindir)
Similar to the previous patch.

Existing packages (and current dependency by main package):
* mount <- RRECOMMENDS
* umount <- RDEPENDS
* mountpoint <- RRECOMMENDS
* getopt
* su <- RDEPENDS

New packages:
* dmesg
* kill
* more

To avoid breaking existing users, all the new packages
are added to the main package as RRECOMMENDS_${PN}, so
they are pulled into existing images etc.

The existing RDEPENDS_${PN} will need some further
clean-up in the future, as it appears a bit random which
packages the main package depends on vs. recommends.
Existing packages that aren't in RDEPENDS / RRECOMMENDS
haven't been added to RRECOMMENDS for that reason.

[YOCTO #13058]

(From OE-Core rev: aea97fe48de5e983b938718d861dceb9f0084339)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-12 14:04:31 +00:00
André Draszik
c1a24f2421 util-linux: one package per binary (pt 1b: symlinks)
Some of the binaries have symlinks. Add them to the
package owning the binary they are pointing to.

(From OE-Core rev: fc709be54fee06801446774ff1a434294c2eda9b)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-12 14:04:31 +00:00
André Draszik
0548b8f393 util-linux: one package per binary (pt 1: base_sbindir)
Now that we have required infrastructure in place, we
can start creating one package per binary.

To make this process easier to follow, this is done
in steps, starting with binaries from base_sbindir.

Existing packages (and current dependency by main package):
* agetty
* blkid
* cfdisk <- RRECOMMENDS
* fdisk <- RRECOMMENDS
* fsck
* fstrim
* losetup <- RDEPENDS
* hwclock
* sulogin <- RDEPENDS
* swaponoff <- RDEPENDS
* switch-root <- RRECOMMENDS

New packages:
* blockdev
* ctrlaltdel
* mkswap
* nologin
* pivot-root
* swapon
* swapoff

swaponoff is empty now and simply depends on swapon swapoff

To avoid breaking existing users, all the new packages
are added to the main package as RRECOMMENDS_${PN}, so
they are pulled into existing images etc.

The existing RDEPENDS_${PN} will need some further
clean-up in the future, as it appears a bit random which
packages the main package depends on vs. recommends.
Existing packages that aren't in RDEPENDS / RRECOMMENDS
haven't been added to RRECOMMENDS for that reason.

[YOCTO #13058]

(From OE-Core rev: 97554a56f7d9fa82294b1316f143de3f37506fc7)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-12 14:04:31 +00:00
André Draszik
7676025942 util-linux: fix packaging nativesdk-util-linux-lib*
util-linux is configured with --libdir=${base_libdir} for -target builds,
but with the default --libdir=${libdir} for all other builds. Furthermore,
dynamic util-linux-lib* packages are unconditionally being generated from
${base_libdir}, which is the right location for -target builds, only.

IOW, in the nativesdk case, util-linux-lib* packages are empty, and all
the shared libraries implicitly become part of the main package again.

While this surely wasn't intended, this also is going to cause problems as
upcoming changes are explicitly making util-linux an empty meta-package,
which then is going to cause packaging failures.

While fixing this, clean up the existing use of EXTRA_OECONF as it is a
bit confusing, hard to follow, and needlessly duplicates information:
    target: ${SHARED_EXTRA_OECONF} --libdir=${base_libdir}
    native/nativesdk: ${SHARED_EXTRA_OECONF} --disable-use-tty-group
where ${SHARED_EXTRA_OECONF} already contains --disable-use-tty-group.

This can be simplified by completely dropping the duplicated EXTRA_OECONF
assignments and simply using a new variable UTIL_LINUX_LIBDIR with a
_class-target override.

Additionally, this allows to easily fix packaging of the util-linux-lib*
packages, as we can now simply inspect UTIL_LINUX_LIBDIR where and as
needed to get to the right directories.

Lastly, all this can be moved from the .bb file into the .inc file as none
of that appears to actually be version specific, and we can sort the
configure options alphabetically for clarity.

[YOCTO #13058]

(From OE-Core rev: e2a6b316651412054af1dbddfb25ab980249f85d)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-12 14:04:30 +00:00
André Draszik
dff0b49e7f util-linux: fix the su and runuser packages
The packages get an automatic RDEPENDS via shlibs, no
need to explicitly state it, so we can drop those
useless explicit assignments.

su is moved into ${base_bindir} in do_install(), so
because of a mismatched FILES specification su is
actually packaged into the main package at the moment,
not into the -su package as likely originally intended.

runuser needs the pam configuration files, so they should
be in the -runuser package, not in the main package.

While fixing this, we can simplify the update alternatives
processing for su.

[YOCTO #13058]

(From OE-Core rev: d8f4ffdc6db5484de97186586a7f39da32205c7b)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-12 14:04:30 +00:00
André Draszik
e8af5caec2 util-linux: be more explicit about what files go into packages
Just using a wildcard leaves the reader wondering
what is meant here.

By being explicit we can describe exactly what is
intended, i.e. the file name as resulting from
the ALTERNATIVE and ALTERNATIVE_LINK_NAME mechanism.

(From OE-Core rev: 1892acab58884aa3b94b49da2854299a6db22af7)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-12 14:04:30 +00:00
André Draszik
763593e597 util-linux: remove minix remnants
While commit fc66762d7c11 ("util-linux: Disable minix support.")
(or e88cee8cc3 in poky) removed most of the bits, there are
still references to minix remaining.

Remove them.

(From OE-Core rev: 577a3723052c4465a7858cd2de05292e67a93cce)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-02 11:05:59 +00:00
André Draszik
8b0640c4ae util-linux: simplify version upgrades (MAJOR_VERSION)
There doesn't appear to be a need to manually and
explicitly specificy the major version (for the
download URL), it can be deduced easily from PV.

Do so.

(From OE-Core rev: e07272491e9f4d81a4c3797c585958163657bf9c)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-02 11:05:59 +00:00
Richard Purdie
cd4b8a8553 meta: Fix Deprecated warnings from regexs
Fix handling of escape characters in regexs and hence fix python
Deprecation warnings which will be problematic in python 3.8.

Note that some show up as:

"""
meta/classes/package.bbclass:1293: DeprecationWarning: invalid escape sequence \.  

"""

where the problem isn't on 1293 in package.bbclass but in some _prepend to a
package.bbclass function in a different file like mesa.inc, often from
do_package_split() calls.

(From OE-Core rev: 4b1c0c7d5525fc4cea9e0f02ec54e92a6fbc6199)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-16 15:35:07 +00:00
André Draszik
2e7141a785 util-linux: split out blkdiscard into its own package
For systems that don't otherwise depend on the full
util-linux package, blkdiscard is a mere 18k (on
cortexa7t2hf-neon).

(From OE-Core rev: 96bfdea8e0ec891b44fc4b0c69120669954426ad)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-12-05 12:37:02 +00:00