Revert "util-linux: upgraded package to upstream"

This reverts commit 1a92a040ae34b69f19f4d25d0f54815f103113ac.

Reason for revert: new fstrim breaks `build_image`

Original change's description:
> util-linux: upgraded package to upstream
>
> Upgraded sys-apps/util-linux to version 2.37.2
>
> BUG=None
> TEST=emerge-trogdor util-linux; cros deploy $DUT util-linux; lscpu,
>      dmesg works
>
> Cq-Depend: chromium:3092576
> Change-Id: I983fde9450262fb42f6fab41943b161371aae924
> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/overlays/portage-stable/+/3092608
> Commit-Queue: Stephen Boyd <swboyd@chromium.org>
> Tested-by: Stephen Boyd <swboyd@chromium.org>
> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>

Bug: None
Cq-Depend: chromium:3119905
Change-Id: I71c89eea9f4946182164aba3cc0970cc05ef473f
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/overlays/portage-stable/+/3119925
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Commit-Queue: Kalvin Lee <kdlee@chromium.org>
Tested-by: Kalvin Lee <kdlee@chromium.org>
diff --git a/metadata/md5-cache/sys-apps/util-linux-2.37.2 b/metadata/md5-cache/sys-apps/util-linux-2.37.2
deleted file mode 100644
index 069c772..0000000
--- a/metadata/md5-cache/sys-apps/util-linux-2.37.2
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=virtual/pkgconfig nls? ( sys-devel/gettext ) test? ( sys-devel/bc ) >=app-portage/elt-patches-20170815 virtual/pkgconfig
-DEFINED_PHASES=compile configure install postinst prepare test
-DEPEND=virtual/libcrypt:= audit? ( >=sys-process/audit-2.6:= ) caps? ( sys-libs/libcap-ng ) cramfs? ( sys-libs/zlib:= ) cryptsetup? ( >=sys-fs/cryptsetup-2.1.0 ) hardlink? ( dev-libs/libpcre2:= ) ncurses? ( sys-libs/ncurses:=[unicode(+)?] magic? ( sys-apps/file:0= ) ) nls? ( virtual/libintl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) pam? ( sys-libs/pam ) ppc? ( sys-libs/librtas ) ppc64? ( sys-libs/librtas ) python? ( python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] ) readline? ( sys-libs/readline:0= ) selinux? ( >=sys-libs/libselinux-2.2.2-r4[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) slang? ( sys-libs/slang ) !build? ( systemd? ( sys-apps/systemd ) ) udev? ( virtual/libudev:= ) virtual/os-headers
-DESCRIPTION=Various useful Linux utilities
-EAPI=7
-HOMEPAGE=https://www.kernel.org/pub/linux/utils/util-linux/ https://github.com/karelzak/util-linux
-IUSE=audit build caps +cramfs cryptsetup fdformat hardlink kill +logger magic ncurses nls pam python +readline selinux slang static-libs su +suid systemd test tty-helpers udev unicode userland_GNU split-usr python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=GPL-2 GPL-3 LGPL-2.1 BSD-4 MIT public-domain
-RDEPEND=virtual/libcrypt:= audit? ( >=sys-process/audit-2.6:= ) caps? ( sys-libs/libcap-ng ) cramfs? ( sys-libs/zlib:= ) cryptsetup? ( >=sys-fs/cryptsetup-2.1.0 ) hardlink? ( dev-libs/libpcre2:= ) ncurses? ( sys-libs/ncurses:=[unicode(+)?] magic? ( sys-apps/file:0= ) ) nls? ( virtual/libintl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) pam? ( sys-libs/pam ) ppc? ( sys-libs/librtas ) ppc64? ( sys-libs/librtas ) python? ( python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] ) readline? ( sys-libs/readline:0= ) selinux? ( >=sys-libs/libselinux-2.2.2-r4[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) slang? ( sys-libs/slang ) !build? ( systemd? ( sys-apps/systemd ) ) udev? ( virtual/libudev:= ) hardlink? ( !app-arch/hardlink ) logger? ( !>=app-admin/sysklogd-2.0[logger] ) kill? ( !sys-apps/coreutils[kill] !sys-process/procps[kill] ) su? ( !<sys-apps/shadow-4.7-r2 !>=sys-apps/shadow-4.7-r2[su] ) !net-wireless/rfkill !<app-shells/bash-completion-2.7-r1
-REQUIRED_USE=python? ( || ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 ) )
-RESTRICT=!test? ( test )
-SLOT=0
-SRC_URI=https://www.kernel.org/pub/linux/utils/util-linux/v2.37/util-linux-2.37.2.tar.xz
-_eclasses_=bash-completion-r1	47a7402d95930413ce25ba8d857339bb	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pam	3f746974e1cc47cabe3bd488c08cdc8e	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	605c126bed8d87e4378d5ff1645330cb	usr-ldscript	766f0a506b45f02361ad1b8ca205b7e1
-_md5_=21fc248cc52cbcce486897e7c7319756
diff --git a/sys-apps/util-linux/Manifest b/sys-apps/util-linux/Manifest
deleted file mode 100644
index c330ae5..0000000
--- a/sys-apps/util-linux/Manifest
+++ /dev/null
@@ -1,3 +0,0 @@
-DIST util-linux-2.36.2.tar.xz 5348032 BLAKE2B 17e49515f8d0430f3ed26b80bf1d6e811d847141020d0dae1340dc92887549b7b711f3db6e3913120871fc912435def73586a7aef09d8d9cc6ff7ca331b2770f SHA512 6ab141f44ca4cb6b600081f10eae17e15d23abd122a37eb3ac6c845513a6a4396dc9dcff30b3032de80116ddde50e27dfbc86f92708c1051f84f0c919194664b
-DIST util-linux-2.37.1.tar.xz 5628360 BLAKE2B 309ea7202f32c0ec750cb01486cf32c3e9dd457d83e5beab8d6b97a5e7f312332ecfcd1ddbb88ae5ec9ee483bb15452b8d58bce1f931f9dfa35be3ce042da3da SHA512 ec300c830869e10a0d7f8c0b99e9bb46e0b88fc51f3c6c6a4d9752a89f035e8d69d81f25fd103ef8d7d253e81440695ef3f5d72dccc94815ec8d5f6f949f7555
-DIST util-linux-2.37.2.tar.xz 5621624 BLAKE2B 40ab80485781dfc58e6d0e98dae115b96f11ee0cc370524e1e13d3c4a4dfed3a5a4a248311f8ca645f6f84bbaf4785412ca8282b840af4e37a01312764885abe SHA512 38f0fe820445e3bfa79550e6581c230f98c7661566ccc4daa51c7208a5f972c61b4e57dfc86bed074fdbc7c40bc79f856be8f6a05a8860c1c0cecc4208e8b81d
diff --git a/sys-apps/util-linux/files/runuser-l.pamd b/sys-apps/util-linux/files/runuser-l.pamd
deleted file mode 100644
index 7641435..0000000
--- a/sys-apps/util-linux/files/runuser-l.pamd
+++ /dev/null
@@ -1,5 +0,0 @@
-auth       include	system-local-login
-account    include	system-local-login
-password   include	system-local-login
-session    optional pam_lastlog.so 
-session    include	system-local-login
diff --git a/sys-apps/util-linux/files/runuser.pamd b/sys-apps/util-linux/files/runuser.pamd
deleted file mode 100644
index 30c2834..0000000
--- a/sys-apps/util-linux/files/runuser.pamd
+++ /dev/null
@@ -1,8 +0,0 @@
-auth       sufficient	pam_rootok.so
-auth       required     pam_wheel.so use_uid
-auth       include		system-auth
-account    include		system-auth
-password   include		system-auth
-session    include		system-auth
-session    required     pam_env.so
-session    optional		pam_xauth.so
diff --git a/sys-apps/util-linux/files/util-linux-2.37.1-agetty_ctrl-c_erase.patch b/sys-apps/util-linux/files/util-linux-2.37.1-agetty_ctrl-c_erase.patch
deleted file mode 100644
index 4828fd4..0000000
--- a/sys-apps/util-linux/files/util-linux-2.37.1-agetty_ctrl-c_erase.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 6eb1c01e9dd25a73100f06db37190c63fd57d4d9 Mon Sep 17 00:00:00 2001
-From: Karel Zak <kzak@redhat.com>
-Date: Fri, 30 Jul 2021 11:50:46 +0200
-Subject: [PATCH] agetty: use CTRL+C to erase username
-
-aggety(8) from the beginning ignores ^C (the small exception was
-between 2.32 and 2.34 when this char has been misinterpreted).
-
-This patch forces agetty to interpret ^C like ^U, it means to
-erase the user's input and wait for a completely new username.
-The small difference is that for ^C it does not set 'kill character'.
-
-This change does not affect serial lines where ^C is still ignored like
-in previous decades. I'd like to avoid any regression as I have
-no clue if any serial lines do not send this control char in some
-context ...
-
-Fixes: https://github.com/karelzak/util-linux/issues/1399
-References: https://github.com/karelzak/util-linux/issues/1046
-Signed-off-by: Karel Zak <kzak@redhat.com>
----
- term-utils/agetty.c | 8 +++++---
- 1 file changed, 5 insertions(+), 3 deletions(-)
-
-diff --git a/term-utils/agetty.c b/term-utils/agetty.c
-index 3b3d5101a..d072d64d3 100644
---- a/term-utils/agetty.c
-+++ b/term-utils/agetty.c
-@@ -2267,6 +2267,11 @@ static char *get_logname(struct issue *ie, struct options *op, struct termios *t
- 				break;
- 			case CTL('U'):
- 				cp->kill = ascval;		/* set kill character */
-+				/* fallthrough */
-+			case CTL('C'):
-+				if (key == CTL('C') && !(op->flags & F_VCONSOLE))
-+					/* Ignore CTRL+C on serial line */
-+					break;
- 				while (bp > logname) {
- 					if ((tp->c_lflag & ECHO) == 0)
- 						write_all(1, erase[cp->parity], 3);
-@@ -2275,9 +2280,6 @@ static char *get_logname(struct issue *ie, struct options *op, struct termios *t
- 				break;
- 			case CTL('D'):
- 				exit(EXIT_SUCCESS);
--			case CTL('C'):
--				/* Ignore */
--				break;
- 			default:
- 				if ((size_t)(bp - logname) >= sizeof(logname) - 1)
- 					log_err(_("%s: input overrun"), op->tty);
diff --git a/sys-apps/util-linux/files/util-linux-2.37.1-ipcutils_calloc_check.patch b/sys-apps/util-linux/files/util-linux-2.37.1-ipcutils_calloc_check.patch
deleted file mode 100644
index 44490ce..0000000
--- a/sys-apps/util-linux/files/util-linux-2.37.1-ipcutils_calloc_check.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 86d5de52d43501711586054e7b601fbc57403085 Mon Sep 17 00:00:00 2001
-From: Karel Zak <kzak@redhat.com>
-Date: Tue, 27 Jul 2021 11:58:31 +0200
-Subject: [PATCH] sys-utils/ipcutils: be careful when call calloc() for uint64
- nmembs
-
-Fix: https://github.com/karelzak/util-linux/issues/1395
-Signed-off-by: Karel Zak <kzak@redhat.com>
----
- sys-utils/ipcutils.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/sys-utils/ipcutils.c b/sys-utils/ipcutils.c
-index e784c4dcb9..18868cfd38 100644
---- a/sys-utils/ipcutils.c
-+++ b/sys-utils/ipcutils.c
-@@ -218,7 +218,7 @@ static void get_sem_elements(struct sem_data *p)
- {
- 	size_t i;
- 
--	if (!p || !p->sem_nsems || p->sem_perm.id < 0)
-+	if (!p || !p->sem_nsems || p->sem_nsems > SIZE_MAX || p->sem_perm.id < 0)
- 		return;
- 
- 	p->elements = xcalloc(p->sem_nsems, sizeof(struct sem_elem));
diff --git a/sys-apps/util-linux/files/util-linux-2.37.1-libmount_setgroups_fix.patch b/sys-apps/util-linux/files/util-linux-2.37.1-libmount_setgroups_fix.patch
deleted file mode 100644
index ebde207..0000000
--- a/sys-apps/util-linux/files/util-linux-2.37.1-libmount_setgroups_fix.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 420e914c4cc4c2ba34fd75790ea194d7f4a47d2c Mon Sep 17 00:00:00 2001
-From: Karel Zak <kzak@redhat.com>
-Date: Thu, 29 Jul 2021 11:50:48 +0200
-Subject: [PATCH] libmount: fix setgroups() use
-
-* keep process in single supplementary group, which is the real group ID for the process
-
-* make sure we have rights to call setgroups(), requires group permissions
-
-Fixes: https://github.com/karelzak/util-linux/issues/1398
-Signed-off-by: Karel Zak <kzak@redhat.com>
----
- include/c.h | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/include/c.h b/include/c.h
-index c1e4c5ffc..a4504e3ba 100644
---- a/include/c.h
-+++ b/include/c.h
-@@ -340,14 +340,16 @@ static inline size_t get_hostname_max(void)
- 
- static inline int drop_permissions(void)
- {
-+	gid_t newgid = getgid();
-+
- 	errno = 0;
- 
- 	/* drop supplementary groups */
--	if (setgroups(0, NULL) != 0)
-+	if (geteuid() == 0 && setgroups(1, &newgid) != 0)
- 		goto fail;
- 
- 	/* drop GID */
--	if (setgid(getgid()) < 0)
-+	if (setgid(newgid) < 0)
- 		goto fail;
- 
- 	/* drop UID */
diff --git a/sys-apps/util-linux/files/util-linux-2.37.1-lscpu_NULL_dereference_fix.patch b/sys-apps/util-linux/files/util-linux-2.37.1-lscpu_NULL_dereference_fix.patch
deleted file mode 100644
index 50322e6..0000000
--- a/sys-apps/util-linux/files/util-linux-2.37.1-lscpu_NULL_dereference_fix.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 0d7cef3ddbd2aacbea8c11e8524a3de68dfb8ff6 Mon Sep 17 00:00:00 2001
-From: Karel Zak <kzak@redhat.com>
-Date: Fri, 30 Jul 2021 14:35:25 +0200
-Subject: [PATCH] lscpu: fix NULL dereference
-
-Fixes: https://github.com/karelzak/util-linux/issues/1401
-Signed-off-by: Karel Zak <kzak@redhat.com>
----
- sys-utils/lscpu-cputype.c | 2 +-
- sys-utils/lscpu.c         | 6 +++---
- 2 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/sys-utils/lscpu-cputype.c b/sys-utils/lscpu-cputype.c
-index 795a4acf5..be16199e0 100644
---- a/sys-utils/lscpu-cputype.c
-+++ b/sys-utils/lscpu-cputype.c
-@@ -569,7 +569,7 @@ int lscpu_read_cpuinfo(struct lscpu_cxt *cxt)
- 	/* Set the default type to CPUs which are missing (or not parsed)
- 	 * in cpuinfo */
- 	ct = lscpu_cputype_get_default(cxt);
--	for (i = 0; i < cxt->npossibles; i++) {
-+	for (i = 0; ct && i < cxt->npossibles; i++) {
- 		struct lscpu_cpu *cpu = cxt->cpus[i];
- 
- 		if (cpu && !cpu->type)
-diff --git a/sys-utils/lscpu.c b/sys-utils/lscpu.c
-index 827e84a6d..e11b2f42f 100644
---- a/sys-utils/lscpu.c
-+++ b/sys-utils/lscpu.c
-@@ -991,7 +991,7 @@ static void print_summary(struct lscpu_cxt *cxt)
- 		*(p - 2) = '\0';
- 		add_summary_s(tb, sec, _("CPU op-mode(s):"), buf);
- 	}
--	if (ct->addrsz)
-+	if (ct && ct->addrsz)
- 		add_summary_s(tb, sec, _("Address sizes:"), ct->addrsz);
- #if !defined(WORDS_BIGENDIAN)
- 	add_summary_s(tb, sec, _("Byte Order:"), "Little Endian");
-@@ -1033,9 +1033,9 @@ static void print_summary(struct lscpu_cxt *cxt)
- 	sec = NULL;
- 
- 	/* Section: cpu type description */
--	if (ct->vendor)
-+	if (ct && ct->vendor)
- 		sec = add_summary_s(tb, NULL, _("Vendor ID:"), ct->vendor);
--	if (ct->bios_vendor)
-+	if (ct && ct->bios_vendor)
- 		add_summary_s(tb, sec, _("BIOS Vendor ID:"), ct->bios_vendor);
- 
- 	for (i = 0; i < cxt->ncputypes; i++)
diff --git a/sys-apps/util-linux/metadata.xml b/sys-apps/util-linux/metadata.xml
deleted file mode 100644
index 121dd51..0000000
--- a/sys-apps/util-linux/metadata.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
-	<email>base-system@gentoo.org</email>
-	<name>Gentoo Base System</name>
-</maintainer>
-<use>
-	<flag name="audit">Use <pkg>sys-process/audit</pkg> to emit audit messages about system changes</flag>
-	<flag name="caps">build setpriv helper (run programs with diff capabilities)</flag>
-	<flag name="cramfs">build mkfs/fsck helpers for cramfs filesystems</flag>
-	<flag name="cryptsetup">Use <pkg>sys-fs/cryptsetup</pkg> to have built-in dm-verity in libmount</flag>
-	<flag name="fdformat">build fdformat (floppy disk format)</flag>
-	<flag name="hardlink">build hardlink program</flag>
-	<flag name="kill">build the kill program</flag>
-	<flag name="logger">build the logger program</flag>
-	<flag name="pam">build runuser helper</flag>
-	<flag name="su">build the su program</flag>
-	<flag name="suid">
-		install mount/umount as setuid so non-root users may mount/umount devices,
-		and wall/write as setgid so non-root users can notify other users
-	</flag>
-	<flag name="tty-helpers">install the mesg/wall/write tools for talking to local users</flag>
-</use>
-<upstream>
-	<remote-id type="cpe">cpe:/a:andries_brouwer:util-linux</remote-id>
-	<remote-id type="github">karelzak/util-linux</remote-id>
-</upstream>
-</pkgmetadata>
diff --git a/sys-apps/util-linux/util-linux-2.37.2.ebuild b/sys-apps/util-linux/util-linux-2.37.2.ebuild
deleted file mode 100644
index c310eed..0000000
--- a/sys-apps/util-linux/util-linux-2.37.2.ebuild
+++ /dev/null
@@ -1,335 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6..9} )
-
-inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 usr-ldscript \
-	pam python-r1 multilib-minimal multiprocessing systemd
-
-MY_PV="${PV/_/-}"
-MY_P="${PN}-${MY_PV}"
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-r3 autotools
-	EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	[[ "${PV}" = *_rc* ]] || \
-	KEYWORDS="*"
-	SRC_URI="https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz"
-fi
-
-DESCRIPTION="Various useful Linux utilities"
-HOMEPAGE="https://www.kernel.org/pub/linux/utils/util-linux/ https://github.com/karelzak/util-linux"
-
-LICENSE="GPL-2 GPL-3 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="audit build caps +cramfs cryptsetup fdformat hardlink kill +logger magic ncurses nls pam python +readline selinux slang static-libs su +suid systemd test tty-helpers udev unicode userland_GNU"
-
-# Most lib deps here are related to programs rather than our libs,
-# so we rarely need to specify ${MULTILIB_USEDEP}.
-RDEPEND="
-	virtual/libcrypt:=
-	audit? ( >=sys-process/audit-2.6:= )
-	caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib:= )
-	cryptsetup? ( >=sys-fs/cryptsetup-2.1.0 )
-	hardlink? ( dev-libs/libpcre2:= )
-	ncurses? (
-		sys-libs/ncurses:=[unicode(+)?]
-		magic? ( sys-apps/file:0= )
-	)
-	nls? ( virtual/libintl[${MULTILIB_USEDEP}] )
-	pam? ( sys-libs/pam )
-	ppc? ( sys-libs/librtas )
-	ppc64? ( sys-libs/librtas )
-	python? ( ${PYTHON_DEPS} )
-	readline? ( sys-libs/readline:0= )
-	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
-	slang? ( sys-libs/slang )
-	!build? ( systemd? ( sys-apps/systemd ) )
-	udev? ( virtual/libudev:= )"
-BDEPEND="
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-"
-DEPEND="
-	${RDEPEND}
-	virtual/os-headers
-"
-RDEPEND+="
-	hardlink? ( !app-arch/hardlink )
-	logger? ( !>=app-admin/sysklogd-2.0[logger] )
-	kill? (
-		!sys-apps/coreutils[kill]
-		!sys-process/procps[kill]
-	)
-	su? (
-		!<sys-apps/shadow-4.7-r2
-		!>=sys-apps/shadow-4.7-r2[su]
-	)
-	!net-wireless/rfkill
-	!<app-shells/bash-completion-2.7-r1
-"
-
-# Required for man-page generation
-if [[ "${PV}" == 9999 ]] ; then
-	BDEPEND+="
-		dev-ruby/asciidoctor
-	"
-fi
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-RESTRICT="!test? ( test )"
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-2.37.1-agetty_ctrl-c_erase.patch #804972
-)
-
-src_prepare() {
-	default
-
-	# Prevent uuidd test failure due to socket path limit. #593304
-	sed -i \
-		-e "s|UUIDD_SOCKET=\"\$(mktemp -u \"\${TS_OUTDIR}/uuiddXXXXXXXXXXXXX\")\"|UUIDD_SOCKET=\"\$(mktemp -u \"${T}/uuiddXXXXXXXXXXXXX.sock\")\"|g" \
-		tests/ts/uuid/uuidd || die "Failed to fix uuidd test"
-
-	if ! use userland_GNU ; then
-		# test runner is using GNU-specific xargs call
-		sed -i -e 's:xargs:gxargs:' tests/run.sh || die
-		# test requires util-linux uuidgen (which we don't build)
-		rm tests/ts/uuid/oids || die
-	fi
-
-	if [[ ${PV} == 9999 ]] ; then
-		po/update-potfiles
-		eautoreconf
-	fi
-
-	elibtoolize
-}
-
-lfs_fallocate_test() {
-	# Make sure we can use fallocate with LFS #300307
-	cat <<-EOF > "${T}"/fallocate.${ABI}.c
-		#define _GNU_SOURCE
-		#include <fcntl.h>
-		main() { return fallocate(0, 0, 0, 0); }
-	EOF
-	append-lfs-flags
-	$(tc-getCC) ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} "${T}"/fallocate.${ABI}.c -o /dev/null >/dev/null 2>&1 \
-		|| export ac_cv_func_fallocate=no
-	rm -f "${T}"/fallocate.${ABI}.c
-}
-
-python_configure() {
-	local myeconfargs=(
-		"${commonargs[@]}"
-		--disable-all-programs
-		--disable-bash-completion
-		--without-systemdsystemunitdir
-		--with-python
-	)
-	if use userland_GNU ; then
-		myeconfargs+=(
-			--enable-libblkid
-			--enable-libmount
-			--enable-pylibmount
-		)
-	fi
-	mkdir "${BUILD_DIR}" || die
-	pushd "${BUILD_DIR}" >/dev/null || die
-	ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-	popd >/dev/null || die
-}
-
-multilib_src_configure() {
-	lfs_fallocate_test
-	# The scanf test in a run-time test which fails while cross-compiling.
-	# Blindly assume a POSIX setup since we require libmount, and libmount
-	# itself fails when the scanf test fails. #531856
-	tc-is-cross-compiler && export scanf_cv_alloc_modifier=ms
-	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
-	export ac_cv_header_security_pam_appl_h=$(multilib_native_usex pam) #545042
-
-	# Undo bad ncurses handling by upstream. Fall back to pkg-config. #601530
-	export NCURSES6_CONFIG=false NCURSES5_CONFIG=false
-	export NCURSESW6_CONFIG=false NCURSESW5_CONFIG=false
-
-	# configure args shared by python and non-python builds
-	local commonargs=(
-		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin"
-	)
-
-	local myeconfargs=(
-		"${commonargs[@]}"
-		--with-bashcompletiondir="$(get_bashcompdir)"
-		--without-python
-		$(multilib_native_use_enable suid makeinstall-chown)
-		$(multilib_native_use_enable suid makeinstall-setuid)
-		$(multilib_native_use_with readline)
-		$(multilib_native_use_with slang)
-		$(multilib_native_use_with systemd)
-		$(multilib_native_use_with udev)
-		$(multilib_native_usex ncurses "$(use_with magic libmagic)" '--without-libmagic')
-		$(multilib_native_usex ncurses "$(use_with unicode ncursesw)" '--without-ncursesw')
-		$(multilib_native_usex ncurses "$(use_with !unicode ncurses)" '--without-ncurses')
-		$(multilib_native_use_with audit)
-		$(tc-has-tls || echo --disable-tls)
-		$(use_enable nls)
-		$(use_enable unicode widechar)
-		$(use_enable static-libs static)
-		$(use_with ncurses tinfo)
-		$(use_with selinux)
-	)
-	# build programs only on GNU, on *BSD we want libraries only
-	if multilib_is_native_abi && use userland_GNU ; then
-		myeconfargs+=(
-			--disable-chfn-chsh
-			--disable-login
-			--disable-newgrp
-			--disable-nologin
-			--disable-pylibmount
-			--disable-vipw
-			--enable-agetty
-			--enable-bash-completion
-			--enable-line
-			--enable-partx
-			--enable-raw
-			--enable-rename
-			--enable-rfkill
-			--enable-schedutils
-			--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
-			$(use_enable caps setpriv)
-			$(use_enable cramfs)
-			$(use_enable fdformat)
-			$(use_enable hardlink)
-			$(use_enable kill)
-			$(use_enable logger)
-			$(use_enable ncurses pg)
-			$(use_enable su)
-			$(use_enable tty-helpers mesg)
-			$(use_enable tty-helpers wall)
-			$(use_enable tty-helpers write)
-			$(use_with cryptsetup)
-		)
-		if [[ ${PV} == *9999 ]] ; then
-			myeconfargs+=( --enable-asciidoc )
-		else
-			# We ship pre-generated man-pages for releases
-			myeconfargs+=( --disable-asciidoc )
-		fi
-	else
-		myeconfargs+=(
-			--disable-all-programs
-			--disable-asciidoc
-			--disable-bash-completion
-			--without-systemdsystemunitdir
-			# build libraries
-			--enable-libuuid
-			--enable-libblkid
-			--enable-libsmartcols
-			--enable-libfdisk
-		)
-		if use userland_GNU ; then
-			# those libraries don't work on *BSD
-			myeconfargs+=(
-				--enable-libmount
-			)
-		fi
-	fi
-	ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-
-	if multilib_is_native_abi && use python ; then
-		python_foreach_impl python_configure
-	fi
-}
-
-python_compile() {
-	pushd "${BUILD_DIR}" >/dev/null || die
-	emake all
-	popd >/dev/null || die
-}
-
-multilib_src_compile() {
-	emake all
-
-	if multilib_is_native_abi && use python ; then
-		python_foreach_impl python_compile
-	fi
-}
-
-python_test() {
-	pushd "${BUILD_DIR}" >/dev/null || die
-	emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
-	popd >/dev/null || die
-}
-
-multilib_src_test() {
-	emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
-	if multilib_is_native_abi && use python ; then
-		python_foreach_impl python_test
-	fi
-}
-
-python_install() {
-	pushd "${BUILD_DIR}" >/dev/null || die
-	emake DESTDIR="${D}" install
-	python_optimize
-	popd >/dev/null || die
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi && use python ; then
-		python_foreach_impl python_install
-	fi
-
-	# This needs to be called AFTER python_install call (#689190)
-	emake DESTDIR="${D}" install
-
-	if multilib_is_native_abi && use userland_GNU ; then
-		# need the libs in /
-		gen_usr_ldscript -a blkid fdisk mount smartcols uuid
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	find "${ED}" -name "*.la" -delete || die
-
-	if ! use userland_GNU ; then
-		# manpage collisions
-		# TODO: figure out a good way to keep them
-		rm "${ED}"/usr/share/man/man3/uuid* || die
-	fi
-
-	if use pam ; then
-		newpamd "${FILESDIR}/runuser.pamd" runuser
-		newpamd "${FILESDIR}/runuser-l.pamd" runuser-l
-	fi
-
-	# Note:
-	# Bash completion for "runuser" command is provided by same file which
-	# would also provide bash completion for "su" command. However, we don't
-	# use "su" command from this package.
-	# This triggers a known QA warning which we ignore for now to magically
-	# keep bash completion for "su" command which shadow package does not
-	# provide.
-}
-
-pkg_postinst() {
-	if ! use tty-helpers ; then
-		elog "The mesg/wall/write tools have been disabled due to USE=-tty-helpers."
-	fi
-
-	if [[ -z ${REPLACING_VERSIONS} ]] ; then
-		elog "The agetty util now clears the terminal by default. You"
-		elog "might want to add --noclear to your /etc/inittab lines."
-	fi
-}