Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Weekly portage-stable package updates 2023-12-11 #1477

Closed
Changes from 1 commit
Commits
Show all changes
140 commits
Select commit Hold shift + click to select a range
b93f14b
app-alternatives/gzip: Sync with Gentoo
Dec 11, 2023
798ee59
app-arch/libarchive: Sync with Gentoo
Dec 11, 2023
1bcaa22
app-arch/xz-utils: Sync with Gentoo
Dec 11, 2023
bfb45ef
app-containers/docker: Sync with Gentoo
Dec 11, 2023
a28c7d3
app-containers/docker-cli: Sync with Gentoo
Dec 11, 2023
3559a5b
app-crypt/pinentry: Sync with Gentoo
Dec 11, 2023
394b48c
app-editors/vim: Sync with Gentoo
Dec 11, 2023
ea67663
app-editors/vim-core: Sync with Gentoo
Dec 11, 2023
e239786
app-emulation/qemu: Sync with Gentoo
Dec 11, 2023
fe8b0e3
app-misc/pax-utils: Sync with Gentoo
Dec 11, 2023
574e509
app-shells/bash: Sync with Gentoo
Dec 11, 2023
d97e1d5
app-text/asciidoc: Sync with Gentoo
Dec 11, 2023
b787562
dev-db/sqlite: Sync with Gentoo
Dec 11, 2023
2860354
dev-lang/lua: Sync with Gentoo
Dec 11, 2023
8c24969
dev-lang/perl: Sync with Gentoo
Dec 11, 2023
d4a4c08
dev-lang/python: Sync with Gentoo
Dec 11, 2023
fe1c743
dev-libs/elfutils: Sync with Gentoo
Dec 11, 2023
e31a7b5
dev-libs/glib: Sync with Gentoo
Dec 11, 2023
8888726
dev-libs/json-c: Sync with Gentoo
Dec 11, 2023
3f9e368
dev-libs/libgcrypt: Sync with Gentoo
Dec 11, 2023
bf2bce2
dev-libs/libksba: Sync with Gentoo
Dec 11, 2023
061a303
dev-libs/libnl: Sync with Gentoo
Dec 11, 2023
7bb4ed5
dev-libs/libpcre2: Sync with Gentoo
Dec 11, 2023
9d8b4ac
dev-libs/libunistring: Sync with Gentoo
Dec 11, 2023
ba15f81
dev-libs/libusb: Sync with Gentoo
Dec 11, 2023
aed7aaf
dev-libs/libuv: Sync with Gentoo
Dec 11, 2023
623c4e6
dev-libs/libxml2: Sync with Gentoo
Dec 11, 2023
629ecf8
dev-libs/libxslt: Sync with Gentoo
Dec 11, 2023
3878720
dev-libs/mpfr: Sync with Gentoo
Dec 11, 2023
c9e3db3
dev-libs/nettle: Sync with Gentoo
Dec 11, 2023
7c8fcdb
dev-libs/oniguruma: Sync with Gentoo
Dec 11, 2023
88e23ea
dev-libs/protobuf: Sync with Gentoo
Dec 11, 2023
69d0d96
dev-libs/xmlsec: Sync with Gentoo
Dec 11, 2023
80fb1c1
dev-python/certifi: Sync with Gentoo
Dec 11, 2023
4ea58b0
dev-python/cython: Sync with Gentoo
Dec 11, 2023
a827c3a
dev-python/jaraco-functools: Sync with Gentoo
Dec 11, 2023
ce47d8c
dev-python/jaraco-text: Sync with Gentoo
Dec 11, 2023
50fd69f
dev-python/lxml: Sync with Gentoo
Dec 11, 2023
20117d3
dev-python/packaging: Sync with Gentoo
Dec 11, 2023
63017db
dev-python/platformdirs: Sync with Gentoo
Dec 11, 2023
2121442
dev-python/pygments: Sync with Gentoo
Dec 11, 2023
7cfb523
dev-python/pyparsing: Sync with Gentoo
Dec 11, 2023
a8849c8
dev-python/setuptools: Sync with Gentoo
Dec 11, 2023
e4d78ca
dev-python/typing-extensions: Sync with Gentoo
Dec 11, 2023
1cd0fd9
dev-python/wheel: Sync with Gentoo
Dec 11, 2023
4e1196d
dev-util/bpftool: Sync with Gentoo
Dec 11, 2023
292137a
dev-util/cmake: Sync with Gentoo
Dec 11, 2023
7aa665a
dev-util/desktop-file-utils: Sync with Gentoo
Dec 11, 2023
0fc553b
dev-util/gdbus-codegen: Sync with Gentoo
Dec 11, 2023
d07a86e
dev-util/glib-utils: Sync with Gentoo
Dec 11, 2023
70966eb
dev-util/gperf: Sync with Gentoo
Dec 11, 2023
3c8a82f
dev-util/meson: Sync with Gentoo
Dec 11, 2023
b0adf23
dev-util/patchelf: Sync with Gentoo
Dec 11, 2023
22b9418
dev-util/pkgconf: Sync with Gentoo
Dec 11, 2023
8ac33eb
dev-util/strace: Sync with Gentoo
Dec 11, 2023
e977ad1
dev-vcs/git: Sync with Gentoo
Dec 11, 2023
63b73cf
eclass/acct-user: Sync with Gentoo
Dec 11, 2023
14bb39b
eclass/cargo: Sync with Gentoo
Dec 11, 2023
d27719f
eclass/distutils-r1: Sync with Gentoo
Dec 11, 2023
40454d8
eclass/flag-o-matic: Sync with Gentoo
Dec 11, 2023
134d7f0
eclass/git-r3: Sync with Gentoo
Dec 11, 2023
5b465f9
eclass/java-pkg-opt-2: Sync with Gentoo
Dec 11, 2023
0588b48
eclass/java-utils-2: Sync with Gentoo
Dec 11, 2023
017fcb6
eclass/llvm: Sync with Gentoo
Dec 11, 2023
565901e
eclass/meson: Sync with Gentoo
Dec 11, 2023
b10547f
eclass/multibuild: Sync with Gentoo
Dec 11, 2023
dda69c4
eclass/python-utils-r1: Sync with Gentoo
Dec 11, 2023
f9bf008
eclass/toolchain-autoconf: Sync with Gentoo
Dec 11, 2023
1d2cd71
eclass/toolchain-funcs: Sync with Gentoo
Dec 11, 2023
5b64767
eclass/toolchain: Sync with Gentoo
Dec 11, 2023
1b9d767
licenses: Sync with Gentoo
Dec 11, 2023
1833d02
net-analyzer/traceroute: Sync with Gentoo
Dec 11, 2023
d85d475
net-dns/bind-tools: Sync with Gentoo
Dec 11, 2023
fd574c4
net-dns/c-ares: Sync with Gentoo
Dec 11, 2023
2c5dec0
net-firewall/ipset: Sync with Gentoo
Dec 11, 2023
d14892a
net-libs/gnutls: Sync with Gentoo
Dec 11, 2023
42f3cbb
net-libs/libmicrohttpd: Sync with Gentoo
Dec 11, 2023
b5fdc74
net-libs/libnftnl: Sync with Gentoo
Dec 11, 2023
be9710b
net-libs/libpcap: Sync with Gentoo
Dec 11, 2023
123969b
net-libs/libslirp: Sync with Gentoo
Dec 11, 2023
0fa5648
net-libs/libssh2: Sync with Gentoo
Dec 11, 2023
c864cb8
net-libs/nghttp2: Sync with Gentoo
Dec 11, 2023
e2f97a6
net-misc/bridge-utils: Sync with Gentoo
Dec 11, 2023
1b2892b
net-misc/curl: Sync with Gentoo
Dec 11, 2023
c2bf0b0
net-misc/iperf: Sync with Gentoo
Dec 11, 2023
d6b8cad
net-misc/ntp: Sync with Gentoo
Dec 11, 2023
716b011
net-misc/socat: Sync with Gentoo
Dec 11, 2023
b728559
net-misc/whois: Sync with Gentoo
Dec 11, 2023
319fce4
net-nds/openldap: Sync with Gentoo
Dec 11, 2023
25c02bf
profiles: Sync with Gentoo
Dec 11, 2023
cc3381d
sec-policy/selinux-base: Sync with Gentoo
Dec 11, 2023
e836b6e
sec-policy/selinux-base-policy: Sync with Gentoo
Dec 11, 2023
639942f
sec-policy/selinux-container: Sync with Gentoo
Dec 11, 2023
697f3e9
sec-policy/selinux-dbus: Sync with Gentoo
Dec 11, 2023
73e0546
sec-policy/selinux-sssd: Sync with Gentoo
Dec 11, 2023
c1f1fb7
sec-policy/selinux-unconfined: Sync with Gentoo
Dec 11, 2023
61f7f59
sys-apps/debianutils: Sync with Gentoo
Dec 11, 2023
9008d2c
sys-apps/ethtool: Sync with Gentoo
Dec 11, 2023
3bf1e10
sys-apps/file: Sync with Gentoo
Dec 11, 2023
73a1015
sys-apps/gawk: Sync with Gentoo
Dec 11, 2023
c9defa9
sys-apps/gptfdisk: Sync with Gentoo
Dec 11, 2023
21baf8e
sys-apps/groff: Sync with Gentoo
Dec 11, 2023
6e44067
sys-apps/i2c-tools: Sync with Gentoo
Dec 11, 2023
acca6a8
sys-apps/iproute2: Sync with Gentoo
Dec 11, 2023
872b376
sys-apps/kbd: Sync with Gentoo
Dec 11, 2023
d8ac128
sys-apps/less: Sync with Gentoo
Dec 11, 2023
04b2b3f
sys-apps/man-db: Sync with Gentoo
Dec 11, 2023
ecdd878
sys-apps/net-tools: Sync with Gentoo
Dec 11, 2023
a25ab6b
sys-apps/portage: Sync with Gentoo
Dec 11, 2023
3cb7bcf
sys-apps/pv: Sync with Gentoo
Dec 11, 2023
d4ce3bc
sys-apps/smartmontools: Sync with Gentoo
Dec 11, 2023
4d4a3bf
sys-apps/texinfo: Sync with Gentoo
Dec 11, 2023
68625da
sys-apps/usbutils: Sync with Gentoo
Dec 11, 2023
4a53b79
sys-apps/util-linux: Sync with Gentoo
Dec 11, 2023
7e70f37
sys-block/parted: Sync with Gentoo
Dec 11, 2023
27ace03
sys-block/thin-provisioning-tools: Sync with Gentoo
Dec 11, 2023
c199227
sys-boot/gnu-efi: Sync with Gentoo
Dec 11, 2023
d56f9bf
sys-devel/autoconf: Sync with Gentoo
Dec 11, 2023
2847750
sys-devel/automake: Sync with Gentoo
Dec 11, 2023
3571cfe
sys-devel/binutils: Sync with Gentoo
Dec 11, 2023
8114453
sys-devel/crossdev: Sync with Gentoo
Dec 11, 2023
b2f39d9
sys-devel/gcc: Sync with Gentoo
Dec 11, 2023
6e655ff
sys-devel/gdb: Sync with Gentoo
Dec 11, 2023
8b67714
sys-devel/gettext: Sync with Gentoo
Dec 11, 2023
2a6ba93
sys-devel/m4: Sync with Gentoo
Dec 11, 2023
0dfc595
sys-firmware/edk2-ovmf-bin: Sync with Gentoo
Dec 11, 2023
c67b515
sys-firmware/intel-microcode: Sync with Gentoo
Dec 11, 2023
bc596b5
sys-fs/e2fsprogs: Sync with Gentoo
Dec 11, 2023
5248dc0
sys-fs/fuse-common: Sync with Gentoo
Dec 11, 2023
8dc6960
sys-fs/multipath-tools: Sync with Gentoo
Dec 11, 2023
155e220
sys-kernel/installkernel-gentoo: Sync with Gentoo
Dec 11, 2023
1f57ffa
sys-libs/binutils-libs: Sync with Gentoo
Dec 11, 2023
308434b
sys-libs/ldb: Sync with Gentoo
Dec 11, 2023
54bb12a
sys-libs/libnvme: Sync with Gentoo
Dec 11, 2023
09aab7e
sys-libs/libseccomp: Sync with Gentoo
Dec 11, 2023
86233dc
sys-libs/libunwind: Sync with Gentoo
Dec 11, 2023
29509d6
sys-libs/readline: Sync with Gentoo
Dec 11, 2023
0bf9d62
sys-libs/zlib: Sync with Gentoo
Dec 11, 2023
802fa69
sys-process/lsof: Sync with Gentoo
Dec 11, 2023
26f2ffa
sys-process/procps: Sync with Gentoo
Dec 11, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
sys-apps/util-linux: Sync with Gentoo
It's from Gentoo commit a0ff82d513b952a0cd7764ffe8958806499c981d.
Flatcar Buildbot committed Dec 11, 2023
commit 4a53b793dc689918f7381be776ebd0e928fc1d74
Original file line number Diff line number Diff line change
@@ -4,3 +4,5 @@ DIST util-linux-2.39.1.tar.sign 833 BLAKE2B 8c1e7089bcec1f47f5c7b4ba60ca1c35955b
DIST util-linux-2.39.1.tar.xz 8351164 BLAKE2B 1c2f3a77414dc9e99d17c426ca710524f898b6fd13bee120c08ceb375e475044ff6f2668f58bd799d0e3befe36de6cc1e161a1be7102e4590a8e372b6547ec1c SHA512 8fe2c9014f6161330610f7470b870855cecbd3fab9c187b75d8f22e16573c82516050479be39cfb9f7dd6d7ef1cc298d31d839b194dda5ec4daf0d1197ac71e9
DIST util-linux-2.39.2.tar.sign 833 BLAKE2B 7d804e1e1f162c176cd7f826f505590ed5fcefc76ecbaa27b1b96fac6160cf46b696fe1c6a761094a91c05878b2169a1227039a7f82ee3d135e283e7907179a2 SHA512 e6acc5a20251aa7c69f3853271959f80428f1825dda1d1a046663e345af8fb17e5d65ebd78aef3dba21e843de58e4dd1a1639415fa9a22b91080cc6436e9a45a
DIST util-linux-2.39.2.tar.xz 8362220 BLAKE2B 963c257b86f8a025a3452f102656f479382b9e03dd8ce39b9561302b484c595005aa0bbce9b91422d9be038037143772483363c2a1eec569355316fc8d5d5765 SHA512 cebecdd62749d0aeea2c4faf7ad1606426eff03ef3b15cd9c2df1126f216a4ed546d8fc3218c649fa95944eb87a98bb6a7cdd0bea31057c481c5cf608ffc19a3
DIST util-linux-2.39.3.tar.sign 833 BLAKE2B 433b9ad6e97d9e2ffbd516addf8406587d009d9c7661ac126ae89b370f22a39f1f1243e86ef383133d656833d3ad35054397d60e0e0c67bd1e9402939903570b SHA512 d9993d7a77531ca8fe3e58458d65e7d721c38aa53838547479fea169941a69b1c07fb02ac90ed5a0360025814b0999167621dbc4215348810584947a9e67756d
DIST util-linux-2.39.3.tar.xz 8526168 BLAKE2B cd7b2b3c820e920d4a6ecd46fd807e018fc8e54439292f5e62c5f6863dd0f2505df3ec02c470d9be255a437c6ee8e4077908ac78d19a0d1273854d99eb571df0 SHA512 a2de1672f06ca5d2d431db1265a8499808770c3781019ec4a3a40170df4685826d8e3ca120841dcc5df4681ca8c935a993317bd0dc70465b21bf8e0efef65afa
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
https://bugs.gentoo.org/627532
https://github.com/util-linux/util-linux/commit/f5715c117e727d4ff45e0d8568f188753620356e

From f5715c117e727d4ff45e0d8568f188753620356e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Thomas=20Wei=C3=9Fschuh?= <[email protected]>
Date: Mon, 13 Nov 2023 21:05:59 +0100
Subject: [PATCH] fincore: (tests) also use nosize error file
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Link: https://lore.kernel.org/util-linux/b8cafd0d89878949705782312dfe800ec2779035.camel@physik.fu-berlin.de/
Signed-off-by: Thomas Weißschuh <[email protected]>
--- a/tests/ts/fincore/count
+++ b/tests/ts/fincore/count
@@ -107,6 +107,7 @@ if test -f "$TS_EXPECTED.$PAGE_SIZE"; then
OUT_COLUMNS="PAGES,SIZE,FILE"
else
TS_EXPECTED+=".nosize"
+ TS_EXPECTED_ERR+=".nosize"
OUT_COLUMNS="PAGES,FILE"
fi

Original file line number Diff line number Diff line change
@@ -55,8 +55,10 @@ RDEPEND="
rtas? ( sys-libs/librtas )
selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
slang? ( sys-libs/slang )
!build? ( systemd? ( sys-apps/systemd ) )
udev? ( virtual/libudev:= )"
!build? (
systemd? ( sys-apps/systemd )
udev? ( virtual/libudev:= )
)"
BDEPEND="
virtual/pkgconfig
nls? ( sys-devel/gettext )
@@ -207,8 +209,6 @@ multilib_src_configure() {
$(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')
@@ -221,6 +221,18 @@ multilib_src_configure() {
$(use_with selinux)
)

if use build ; then
myeconfargs+=(
--without-systemd
--without-udev
)
else
myeconfargs+=(
$(multilib_native_use_with systemd)
$(multilib_native_use_with udev)
)
fi

if multilib_is_native_abi ; then
myeconfargs+=(
--disable-chfn-chsh
Original file line number Diff line number Diff line change
@@ -0,0 +1,410 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

PYTHON_COMPAT=( python3_{10..11} )

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
EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
inherit autotools git-r3
else
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/karelzak.asc
inherit verify-sig

if [[ ${PV} != *_rc* ]] ; then
KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos"
fi

SRC_URI="https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz"
SRC_URI+=" verify-sig? ( https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.sign )"
fi

S="${WORKDIR}/${MY_P}"

DESCRIPTION="Various useful Linux utilities"
HOMEPAGE="https://www.kernel.org/pub/linux/utils/util-linux/ https://github.com/util-linux/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 rtas selinux slang static-libs +su +suid systemd test tty-helpers udev unicode"

# 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 )
python? ( ${PYTHON_DEPS} )
readline? ( sys-libs/readline:0= )
rtas? ( sys-libs/librtas )
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? (
app-text/po4a
sys-devel/gettext
)
test? ( sys-devel/bc )
"
DEPEND="
${RDEPEND}
virtual/os-headers
acct-group/root
"
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
"

if [[ ${PV} == 9999 ]] ; then
# Required for man-page generation
BDEPEND+=" dev-ruby/asciidoctor"
else
BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-karelzak-20230517 )"
fi

REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) su? ( pam )"
RESTRICT="!test? ( test )"

PATCHES=(
"${FILESDIR}"/${PN}-2.39.2-fincore-test.patch
)

pkg_pretend() {
if use su && ! use suid ; then
elog "su will be installed as suid despite USE=-suid (bug #832092)"
elog "To use su without suid, see e.g. Portage's suidctl feature."
fi
}

src_unpack() {
if [[ ${PV} == 9999 ]] ; then
git-r3_src_unpack
return
fi

if use verify-sig ; then
mkdir "${T}"/verify-sig || die
pushd "${T}"/verify-sig &>/dev/null || die

# Upstream sign the decompressed .tar
# Let's do it separately in ${T} then cleanup to avoid external
# effects on normal unpack.
cp "${DISTDIR}"/${MY_P}.tar.xz . || die
xz -d ${MY_P}.tar.xz || die
verify-sig_verify_detached ${MY_P}.tar "${DISTDIR}"/${MY_P}.tar.sign

popd &>/dev/null || die
rm -r "${T}"/verify-sig || die
fi

default
}

src_prepare() {
default

if use test ; then
# Known-failing tests
# TODO: investigate these
local known_failing_tests=(
# Subtest 'options-maximum-size-8192' fails
hardlink/options

# Fails in sandbox
lsns/ioctl_ns

lsfd/mkfds-symlink
lsfd/mkfds-rw-character-device
# Fails with network-sandbox at least in nspawn
lsfd/option-inet
)

local known_failing_test
for known_failing_test in "${known_failing_tests[@]}" ; do
einfo "Removing known-failing test: ${known_failing_test}"
rm tests/ts/${known_failing_test} || die
done
fi

if [[ ${PV} == 9999 ]] ; then
po/update-potfiles
eautoreconf
else
elibtoolize
fi
}

python_configure() {
local myeconfargs=(
"${commonargs[@]}"
--disable-all-programs
--disable-bash-completion
--without-systemdsystemunitdir
--with-python
--enable-libblkid
--enable-libmount
--enable-pylibmount
)

mkdir "${BUILD_DIR}" || die
pushd "${BUILD_DIR}" >/dev/null || die
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
popd >/dev/null || die
}

multilib_src_configure() {
# 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. bug #531856
tc-is-cross-compiler && export scanf_cv_alloc_modifier=ms

# bug #485486
export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam)
# bug #545042
export ac_cv_header_security_pam_appl_h=$(multilib_native_usex pam)

# Undo bad ncurses handling by upstream. Fall back to pkg-config.
# bug #601530
export NCURSES6_CONFIG=false NCURSES5_CONFIG=false
export NCURSESW6_CONFIG=false NCURSESW5_CONFIG=false

# Avoid automagic dependency on ppc*
export ac_cv_lib_rtas_rtas_get_sysparm=$(usex rtas)

# configure args shared by python and non-python builds
local commonargs=(
--localstatedir="${EPREFIX}/var"
--runstatedir="${EPREFIX}/run"
--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin"

# Temporary workaround until ~2.39.2. 2.39.x introduced a big rewrite.
# https://github.com/util-linux/util-linux/issues/2287#issuecomment-1576640373
--disable-libmount-mountfd-support
)

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_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 nls poman)
$(use_enable unicode widechar)
$(use_enable static-libs static)
$(use_with ncurses tinfo)
$(use_with selinux)
)

if use build ; then
myeconfargs+=(
--without-systemd
--without-udev
)
else
myeconfargs+=(
$(multilib_native_use_with systemd)
$(multilib_native_use_with udev)
)
fi

if multilib_is_native_abi ; then
myeconfargs+=(
--disable-chfn-chsh
--disable-login
--disable-newgrp
--disable-nologin
--disable-pylibmount
--disable-raw
--disable-vipw
--enable-agetty
--enable-bash-completion
--enable-line
--enable-partx
--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
# Upstream is shipping pre-generated man-pages for releases
myeconfargs+=( --disable-asciidoc )
fi
else
myeconfargs+=(
--disable-all-programs
--disable-asciidoc
--disable-bash-completion
--without-systemdsystemunitdir
--disable-poman

# build libraries
--enable-libuuid
--enable-libblkid
--enable-libsmartcols
--enable-libfdisk
--enable-libmount
)
fi

ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"

if multilib_is_native_abi && use python ; then
python_foreach_impl python_configure
fi
}

src_configure() {
append-lfs-flags
multilib-minimal_src_configure
}

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, bug #689190
emake DESTDIR="${D}" install

if multilib_is_native_abi ; 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 didn't install .la files, and .pc work fine
find "${ED}" -name "*.la" -delete || die

if use pam ; then
# See https://github.com/util-linux/util-linux/blob/master/Documentation/PAM-configuration.txt
newpamd "${FILESDIR}/runuser.pamd" runuser
newpamd "${FILESDIR}/runuser-l.pamd" runuser-l

newpamd "${FILESDIR}/su-l.pamd" su-l
fi

if use su && ! use suid ; then
# Always force suid su, even when USE=-suid, as su is useless
# for the overwhelming-majority case without suid.
# Users who wish to truly have a no-suid su can strip it out
# via e.g. Portage's suidctl or some other hook.
# See bug #832092
fperms u+s /bin/su
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.

local ver=$(tools/git-version-gen .tarballversion)
local major=$(ver_cut 1 ${ver})
local minor=$(ver_cut 2 ${ver})
local release=$(ver_cut 3 ${ver})
export QA_PKGCONFIG_VERSION="${major}.${minor}.${release:-0}"
}

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
}
Original file line number Diff line number Diff line change
@@ -55,8 +55,10 @@ RDEPEND="
rtas? ( sys-libs/librtas )
selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
slang? ( sys-libs/slang )
!build? ( systemd? ( sys-apps/systemd ) )
udev? ( virtual/libudev:= )
!build? (
systemd? ( sys-apps/systemd )
udev? ( virtual/libudev:= )
)
"
BDEPEND="
virtual/pkgconfig
@@ -95,6 +97,10 @@ fi
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) su? ( pam )"
RESTRICT="!test? ( test )"

PATCHES=(
"${FILESDIR}"/${PN}-2.39.2-fincore-test.patch
)

pkg_pretend() {
if use su && ! use suid ; then
elog "su will be installed as suid despite USE=-suid (bug #832092)"
@@ -141,6 +147,8 @@ src_prepare() {

lsfd/mkfds-symlink
lsfd/mkfds-rw-character-device
# Fails with network-sandbox at least in nspawn
lsfd/option-inet
)

local known_failing_test
@@ -214,8 +222,6 @@ multilib_src_configure() {
$(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')
@@ -229,6 +235,18 @@ multilib_src_configure() {
$(use_with selinux)
)

if use build ; then
myeconfargs+=(
--without-systemd
--without-udev
)
else
myeconfargs+=(
$(multilib_native_use_with systemd)
$(multilib_native_use_with udev)
)
fi

if multilib_is_native_abi ; then
myeconfargs+=(
--disable-chfn-chsh
Original file line number Diff line number Diff line change
@@ -141,6 +141,8 @@ src_prepare() {

lsfd/mkfds-symlink
lsfd/mkfds-rw-character-device
# Fails with network-sandbox at least in nspawn
lsfd/option-inet
)

local known_failing_test