public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2021-05-23 12:14 David Seifert
  0 siblings, 0 replies; 32+ messages in thread
From: David Seifert @ 2021-05-23 12:14 UTC (permalink / raw
  To: gentoo-commits

commit:     4250131c3c11b35ca66dd52adad47e9c83a0cc5d
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Sun May 23 12:14:20 2021 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Sun May 23 12:14:20 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4250131c

sys-apps/util-linux: drop 2.35.2

Signed-off-by: David Seifert <soap <AT> gentoo.org>

 sys-apps/util-linux/Manifest                       |   1 -
 .../util-linux-2.35.1-cleanup-pidfd-include.patch  |  36 ---
 sys-apps/util-linux/util-linux-2.35.2.ebuild       | 319 ---------------------
 3 files changed, 356 deletions(-)

diff --git a/sys-apps/util-linux/Manifest b/sys-apps/util-linux/Manifest
index 35bd262712a..d68e70c68f2 100644
--- a/sys-apps/util-linux/Manifest
+++ b/sys-apps/util-linux/Manifest
@@ -1,4 +1,3 @@
-DIST util-linux-2.35.2.tar.xz 5150488 BLAKE2B 93eb90ab33db7795b46425ec4ec87f8a2d3d6e0dad671345375ea02efd654bf72041932d30b41bea494e4b62952e2fd14ea9f9e6c738d4eb4b050bd170b9bb0e SHA512 59e038ba71aa74c9af6f927b357483a965f675ab3ffcd25cf0c1b043656312d2d2d07c55659fd3da69ede165bec313e0ae7e1cd73758e49681ae610604b399a2
 DIST util-linux-2.36.2.tar.xz 5348032 BLAKE2B 17e49515f8d0430f3ed26b80bf1d6e811d847141020d0dae1340dc92887549b7b711f3db6e3913120871fc912435def73586a7aef09d8d9cc6ff7ca331b2770f SHA512 6ab141f44ca4cb6b600081f10eae17e15d23abd122a37eb3ac6c845513a6a4396dc9dcff30b3032de80116ddde50e27dfbc86f92708c1051f84f0c919194664b
 DIST util-linux-2.37-rc2-manpages.tar.xz 160480 BLAKE2B 9d9ad7a74fe8bdd523fa5075c1031c43596c16e7db6bc04e3c8cf0447200ec9c24db9b973a1e47b3aada4ae48f3b82d16105fdc8f98373c1d6cc6aa82bcac454 SHA512 2dd6050dec6732231087cf83c6db6593ed47cc986be9e6b28d57cb3fa03eb31992fd0cb92bd6f0ab971dc33e633c3b27bf7f9d53dee20f011d5461a9af68e23c
 DIST util-linux-2.37-rc2.tar.xz 5437912 BLAKE2B 8fb6183537bc3a6d2831d2f91c7222518dd844e080b86e1f927f8418f7c075e3ae816d2bac2d8d493bf297f30f26a0deaaa0d37e1437f7caf625f92370606970 SHA512 9a7f301604c2ae914b8c33f17a22563ec0128e45d7687bf11142d190bb1f51adeff7f392efc27b87ac088c615097ccc270a886a5c912e363f4748b3ed6f5a6ef

diff --git a/sys-apps/util-linux/files/util-linux-2.35.1-cleanup-pidfd-include.patch b/sys-apps/util-linux/files/util-linux-2.35.1-cleanup-pidfd-include.patch
deleted file mode 100644
index 85e4d705735..00000000000
--- a/sys-apps/util-linux/files/util-linux-2.35.1-cleanup-pidfd-include.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 0a4035ff2e4fd5b5ae0cf8f8665696c2aff53b75 Mon Sep 17 00:00:00 2001
-From: Karel Zak <kzak@redhat.com>
-Date: Tue, 10 Mar 2020 11:43:16 +0100
-Subject: [PATCH] include: cleanup pidfd inckudes
-
-Signed-off-by: Karel Zak <kzak@redhat.com>
----
- include/pidfd-utils.h | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/include/pidfd-utils.h b/include/pidfd-utils.h
-index 0baedd2c9..4a6c3a604 100644
---- a/include/pidfd-utils.h
-+++ b/include/pidfd-utils.h
-@@ -3,10 +3,10 @@
- 
- #if defined(__linux__)
- # include <sys/syscall.h>
--# if defined(SYS_pidfd_send_signal)
-+# if defined(SYS_pidfd_send_signal) && defined(SYS_pidfd_open)
- #  include <sys/types.h>
- 
--#  ifndef HAVE_PIDFD_OPEN
-+#  ifndef HAVE_PIDFD_SEND_SIGNAL
- static inline int pidfd_send_signal(int pidfd, int sig, siginfo_t *info,
- 				    unsigned int flags)
- {
-@@ -14,7 +14,7 @@ static inline int pidfd_send_signal(int pidfd, int sig, siginfo_t *info,
- }
- #  endif
- 
--#  ifndef HAVE_PIDFD_SEND_SIGNAL
-+#  ifndef HAVE_PIDFD_OPEN
- static inline int pidfd_open(pid_t pid, unsigned int flags)
- {
- 	return syscall(SYS_pidfd_open, pid, flags);

diff --git a/sys-apps/util-linux/util-linux-2.35.2.ebuild b/sys-apps/util-linux/util-linux-2.35.2.ebuild
deleted file mode 100644
index 1df44660f8f..00000000000
--- a/sys-apps/util-linux/util-linux-2.35.2.ebuild
+++ /dev/null
@@ -1,319 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8} )
-
-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="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
-	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 )
-	hardlink? ( dev-libs/libpcre2:= )
-	ncurses? (
-		>=sys-libs/ncurses-5.2-r2:0=[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_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-RESTRICT="!test? ( test )"
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=(
-	"${FILESDIR}"/util-linux-2.35.1-cleanup-pidfd-include.patch
-)
-
-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-nologin
-			--disable-pylibmount
-			--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)
-		)
-	else
-		myeconfargs+=(
-			--disable-all-programs
-			--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/*}
-	chmod -x "${ED}"/usr/share/doc/util-linux-${PVR}/getopt/getopt-parse* || die
-
-	# 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
-}


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2024-05-20 15:06 Mike Gilbert
  0 siblings, 0 replies; 32+ messages in thread
From: Mike Gilbert @ 2024-05-20 15:06 UTC (permalink / raw
  To: gentoo-commits

commit:     c41f012f4b8aa5b7fc231a2da8a0dd8a5af72ec1
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Mon May 20 15:03:48 2024 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Mon May 20 15:06:06 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c41f012f

sys-apps/util-linux: uuidd fixes for OpenRC

The build system only installs the tmpfiles.d file when systemd is
enabled. Compensate by calling checkpath in the init script.

Closes: https://bugs.gentoo.org/932276
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-apps/util-linux/files/uuidd.initd                                | 5 +++++
 .../{util-linux-2.40.1-r1.ebuild => util-linux-2.40.1-r2.ebuild}     | 4 ++--
 sys-apps/util-linux/util-linux-9999.ebuild                           | 4 ++--
 3 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/sys-apps/util-linux/files/uuidd.initd b/sys-apps/util-linux/files/uuidd.initd
index 329929e9a9ab..b1e7e563b297 100644
--- a/sys-apps/util-linux/files/uuidd.initd
+++ b/sys-apps/util-linux/files/uuidd.initd
@@ -8,3 +8,8 @@ pidfile=/run/uuidd/uuidd.pid
 depend() {
 	need clock localmount
 }
+
+start_pre() {
+	checkpath -d -m 2755 -o uuidd:uuidd /run/uuidd &&
+	checkpath -d -m 0755 -o uuidd:uuidd /var/lib/libuuid
+}

diff --git a/sys-apps/util-linux/util-linux-2.40.1-r1.ebuild b/sys-apps/util-linux/util-linux-2.40.1-r2.ebuild
similarity index 99%
rename from sys-apps/util-linux/util-linux-2.40.1-r1.ebuild
rename to sys-apps/util-linux/util-linux-2.40.1-r2.ebuild
index c112b4749522..a9980ed89514 100644
--- a/sys-apps/util-linux/util-linux-2.40.1-r1.ebuild
+++ b/sys-apps/util-linux/util-linux-2.40.1-r2.ebuild
@@ -87,7 +87,7 @@ RDEPEND+="
 	)
 	uuidd? (
 		acct-user/uuidd
-		virtual/tmpfiles
+		systemd? ( virtual/tmpfiles )
 	)
 	!net-wireless/rfkill
 "
@@ -426,7 +426,7 @@ pkg_postinst() {
 		elog "might want to add --noclear to your /etc/inittab lines."
 	fi
 
-	if use uuidd; then
+	if use systemd && use uuidd; then
 		tmpfiles_process uuidd-tmpfiles.conf
 	fi
 }

diff --git a/sys-apps/util-linux/util-linux-9999.ebuild b/sys-apps/util-linux/util-linux-9999.ebuild
index 053f45a99077..f3ea42edeeff 100644
--- a/sys-apps/util-linux/util-linux-9999.ebuild
+++ b/sys-apps/util-linux/util-linux-9999.ebuild
@@ -87,7 +87,7 @@ RDEPEND+="
 	)
 	uuidd? (
 		acct-user/uuidd
-		virtual/tmpfiles
+		systemd? ( virtual/tmpfiles )
 	)
 	!net-wireless/rfkill
 "
@@ -425,7 +425,7 @@ pkg_postinst() {
 		elog "might want to add --noclear to your /etc/inittab lines."
 	fi
 
-	if use uuidd; then
+	if use systemd && use uuidd; then
 		tmpfiles_process uuidd-tmpfiles.conf
 	fi
 }


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2024-05-11 17:19 Mike Gilbert
  0 siblings, 0 replies; 32+ messages in thread
From: Mike Gilbert @ 2024-05-11 17:19 UTC (permalink / raw
  To: gentoo-commits

commit:     8bdea3071842b04cc1c183856c7af4ce8a118154
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sat May 11 17:18:07 2024 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sat May 11 17:19:19 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8bdea307

sys-apps/util-linux: wire up uuidd properly

Closes: https://bugs.gentoo.org/470910
Closes: https://bugs.gentoo.org/931303
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-apps/util-linux/files/uuidd.initd               | 10 ++++++++++
 sys-apps/util-linux/metadata.xml                    |  1 +
 ...ux-2.40.1.ebuild => util-linux-2.40.1-r1.ebuild} | 21 +++++++++++++++++++--
 sys-apps/util-linux/util-linux-9999.ebuild          | 21 +++++++++++++++++++--
 4 files changed, 49 insertions(+), 4 deletions(-)

diff --git a/sys-apps/util-linux/files/uuidd.initd b/sys-apps/util-linux/files/uuidd.initd
new file mode 100644
index 000000000000..329929e9a9ab
--- /dev/null
+++ b/sys-apps/util-linux/files/uuidd.initd
@@ -0,0 +1,10 @@
+#!/sbin/openrc-run
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+command=/usr/sbin/uuidd
+pidfile=/run/uuidd/uuidd.pid
+
+depend() {
+	need clock localmount
+}

diff --git a/sys-apps/util-linux/metadata.xml b/sys-apps/util-linux/metadata.xml
index 2d9b8b837fe2..291587be5409 100644
--- a/sys-apps/util-linux/metadata.xml
+++ b/sys-apps/util-linux/metadata.xml
@@ -24,6 +24,7 @@
 		su: non-root users may become root
 		</flag>
 		<flag name="tty-helpers">install the mesg/wall/write tools for talking to local users</flag>
+		<flag name="uuidd">build uuidd daemon</flag>
 	</use>
 	<upstream>
 		<remote-id type="cpe">cpe:/a:andries_brouwer:util-linux</remote-id>

diff --git a/sys-apps/util-linux/util-linux-2.40.1.ebuild b/sys-apps/util-linux/util-linux-2.40.1-r1.ebuild
similarity index 95%
rename from sys-apps/util-linux/util-linux-2.40.1.ebuild
rename to sys-apps/util-linux/util-linux-2.40.1-r1.ebuild
index fefca19af628..c112b4749522 100644
--- a/sys-apps/util-linux/util-linux-2.40.1.ebuild
+++ b/sys-apps/util-linux/util-linux-2.40.1-r1.ebuild
@@ -4,9 +4,10 @@
 EAPI=8
 
 PYTHON_COMPAT=( python3_{10..12} )
+TMPFILES_OPTIONAL=1
 
 inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 \
-	pam python-r1 multilib-minimal multiprocessing systemd
+	pam python-r1 multilib-minimal multiprocessing systemd tmpfiles
 
 MY_PV="${PV/_/-}"
 MY_P="${PN}-${MY_PV}"
@@ -33,7 +34,7 @@ S="${WORKDIR}/${MY_P}"
 
 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"
+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 uuidd"
 
 # Most lib deps here are related to programs rather than our libs,
 # so we rarely need to specify ${MULTILIB_USEDEP}.
@@ -84,6 +85,10 @@ RDEPEND+="
 		!<sys-apps/shadow-4.7-r2
 		!>=sys-apps/shadow-4.7-r2[su]
 	)
+	uuidd? (
+		acct-user/uuidd
+		virtual/tmpfiles
+	)
 	!net-wireless/rfkill
 "
 
@@ -230,6 +235,7 @@ multilib_src_configure() {
 		$(use_enable static-libs static)
 		$(use_with ncurses tinfo)
 		$(use_with selinux)
+		$(multilib_native_use_enable uuidd)
 
 		# TODO: Wire this up (bug #931118)
 		--without-econf
@@ -303,6 +309,9 @@ multilib_src_configure() {
 			--enable-libsmartcols
 			--enable-libfdisk
 			--enable-libmount
+
+			# Support uuidd for non-native libuuid
+			$(use_enable uuidd libuuid-force-uuidd)
 		)
 	fi
 
@@ -388,6 +397,10 @@ multilib_src_install_all() {
 		fperms u+s /bin/su
 	fi
 
+	if use uuidd; then
+		newinitd "${FILESDIR}/uuidd.initd" uuidd
+	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
@@ -412,4 +425,8 @@ pkg_postinst() {
 		elog "The agetty util now clears the terminal by default. You"
 		elog "might want to add --noclear to your /etc/inittab lines."
 	fi
+
+	if use uuidd; then
+		tmpfiles_process uuidd-tmpfiles.conf
+	fi
 }

diff --git a/sys-apps/util-linux/util-linux-9999.ebuild b/sys-apps/util-linux/util-linux-9999.ebuild
index a3c518db9e1d..053f45a99077 100644
--- a/sys-apps/util-linux/util-linux-9999.ebuild
+++ b/sys-apps/util-linux/util-linux-9999.ebuild
@@ -4,9 +4,10 @@
 EAPI=8
 
 PYTHON_COMPAT=( python3_{10..12} )
+TMPFILES_OPTIONAL=1
 
 inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 \
-	pam python-r1 multilib-minimal multiprocessing systemd
+	pam python-r1 multilib-minimal multiprocessing systemd tmpfiles
 
 MY_PV="${PV/_/-}"
 MY_P="${PN}-${MY_PV}"
@@ -33,7 +34,7 @@ S="${WORKDIR}/${MY_P}"
 
 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"
+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 uuidd"
 
 # Most lib deps here are related to programs rather than our libs,
 # so we rarely need to specify ${MULTILIB_USEDEP}.
@@ -84,6 +85,10 @@ RDEPEND+="
 		!<sys-apps/shadow-4.7-r2
 		!>=sys-apps/shadow-4.7-r2[su]
 	)
+	uuidd? (
+		acct-user/uuidd
+		virtual/tmpfiles
+	)
 	!net-wireless/rfkill
 "
 
@@ -230,6 +235,7 @@ multilib_src_configure() {
 		$(use_enable static-libs static)
 		$(use_with ncurses tinfo)
 		$(use_with selinux)
+		$(multilib_native_use_enable uuidd)
 
 		# TODO: Wire this up (bug #931118)
 		--without-econf
@@ -303,6 +309,9 @@ multilib_src_configure() {
 			--enable-libsmartcols
 			--enable-libfdisk
 			--enable-libmount
+
+			# Support uuidd for non-native libuuid
+			$(use_enable uuidd libuuid-force-uuidd)
 		)
 	fi
 
@@ -387,6 +396,10 @@ multilib_src_install_all() {
 		fperms u+s /bin/su
 	fi
 
+	if use uuidd; then
+		newinitd "${FILESDIR}/uuidd.initd" uuidd
+	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
@@ -411,4 +424,8 @@ pkg_postinst() {
 		elog "The agetty util now clears the terminal by default. You"
 		elog "might want to add --noclear to your /etc/inittab lines."
 	fi
+
+	if use uuidd; then
+		tmpfiles_process uuidd-tmpfiles.conf
+	fi
 }


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2024-04-04  1:17 Sam James
  0 siblings, 0 replies; 32+ messages in thread
From: Sam James @ 2024-04-04  1:17 UTC (permalink / raw
  To: gentoo-commits

commit:     172b16c18b35c538e32c120969c7c751bfcd24ad
Author:     Christopher Fore <csfore <AT> posteo <DOT> net>
AuthorDate: Mon Apr  1 22:22:47 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Apr  4 01:08:02 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=172b16c1

sys-apps/util-linux: fix use-after-free in su

This fixes a use-after-free introduced by the musl 1.2.5 patch.

Upstream fix: https://github.com/util-linux/util-linux/commit/4b2e6f5071a4c5beebbd9668d24dc05defc096d7

Closes: https://bugs.gentoo.org/928396
Signed-off-by: Christopher Fore <csfore <AT> posteo.net>
Closes: https://github.com/gentoo/gentoo/pull/36050
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../util-linux-2.39.3-fix-use-after-free.patch     |  49 +++
 sys-apps/util-linux/util-linux-2.39.3-r7.ebuild    | 416 +++++++++++++++++++++
 2 files changed, 465 insertions(+)

diff --git a/sys-apps/util-linux/files/util-linux-2.39.3-fix-use-after-free.patch b/sys-apps/util-linux/files/util-linux-2.39.3-fix-use-after-free.patch
new file mode 100644
index 000000000000..dac2edaf4791
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.39.3-fix-use-after-free.patch
@@ -0,0 +1,49 @@
+From 4b2e6f5071a4c5beebbd9668d24dc05defc096d7 Mon Sep 17 00:00:00 2001
+From: Tanish Yadav <devtany@gmail.com>
+Date: Tue, 5 Mar 2024 00:51:41 +0530
+Subject: [PATCH] su: fix use after free in run_shell
+
+Do not free tmp for non login branch as basename may return a pointer to
+some part of it.
+
+[kzak@redhat.com: - improve coding style of the function]
+
+Signed-off-by: Tanish Yadav <devtany@gmail.com>
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ login-utils/su-common.c | 9 ++++-----
+ 1 file changed, 4 insertions(+), 5 deletions(-)
+
+diff --git a/login-utils/su-common.c b/login-utils/su-common.c
+index 242b6ce4ea..9bc0231961 100644
+--- a/login-utils/su-common.c
++++ b/login-utils/su-common.c
+@@ -835,13 +835,14 @@ static void run_shell(
+ 	size_t n_args = 1 + su->fast_startup + 2 * ! !command + n_additional_args + 1;
+ 	const char **args = xcalloc(n_args, sizeof *args);
+ 	size_t argno = 1;
++	char *tmp;
+ 
+ 	DBG(MISC, ul_debug("starting shell [shell=%s, command=\"%s\"%s%s]",
+ 				shell, command,
+ 				su->simulate_login ? " login" : "",
+ 				su->fast_startup ? " fast-start" : ""));
++	tmp = xstrdup(shell);
+ 
+-  char* tmp = xstrdup(shell);
+ 	if (su->simulate_login) {
+ 		char *arg0;
+ 		char *shell_basename;
+@@ -851,10 +852,8 @@ static void run_shell(
+ 		arg0[0] = '-';
+ 		strcpy(arg0 + 1, shell_basename);
+ 		args[0] = arg0;
+-	} else {
+-    args[0] = basename(tmp);
+-  }
+-  free(tmp);
++	} else
++		args[0] = basename(tmp);
+ 
+ 	if (su->fast_startup)
+ 		args[argno++] = "-f";

diff --git a/sys-apps/util-linux/util-linux-2.39.3-r7.ebuild b/sys-apps/util-linux/util-linux-2.39.3-r7.ebuild
new file mode 100644
index 000000000000..7892f3ad5d47
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.39.3-r7.ebuild
@@ -0,0 +1,416 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 \
+	pam python-r1 multilib-minimal multiprocessing systemd
+
+MY_PV="${PV/_/-}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="Various useful Linux utilities"
+HOMEPAGE="https://www.kernel.org/pub/linux/utils/util-linux/ https://github.com/util-linux/util-linux"
+
+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}"
+
+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? ( app-alternatives/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
+	"${FILESDIR}"/${PN}-2.39.2-backport-pr2251.patch
+	"${FILESDIR}"/${PN}-2.39.2-backport-1d4456d.patch
+	"${FILESDIR}"/${PN}-2.39.3-libblkid-luks.patch
+	"${FILESDIR}"/${PN}-2.39.3-musl-1.2.5-basename.patch
+	"${FILESDIR}"/${PN}-2.39.3-libmount-Fix-export-of-mnt_context_is_lazy-and-mnt_c.patch
+	"${FILESDIR}"/${PN}-2.39.3-CVE-2024-28085.patch
+	"${FILESDIR}"/${PN}-2.39.3-fix-use-after-free.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
+			utmp/last-ipv6
+		)
+
+		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
+}
+
+multilib_src_install_all() {
+	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
+
+	dosym hexdump /usr/bin/hd
+	newman - hd.1 <<< '.so man1/hexdump.1'
+
+	# 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
+}


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2024-03-28  4:55 Sam James
  0 siblings, 0 replies; 32+ messages in thread
From: Sam James @ 2024-03-28  4:55 UTC (permalink / raw
  To: gentoo-commits

commit:     9b14258aec6fde6f24f30c5f722983362ce7f2f1
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Mar 28 04:53:57 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Mar 28 04:54:16 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9b14258a

sys-apps/util-linux: drop 2.38.1-r3, 2.39.2-r1

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/util-linux/Manifest                       |   4 -
 .../util-linux-2.38.1-check-for-sys-pidfd.h.patch  |  52 ---
 .../util-linux-2.38.1-more-posix-exit-on-eof.patch |  32 --
 sys-apps/util-linux/util-linux-2.38.1-r3.ebuild    | 395 --------------------
 sys-apps/util-linux/util-linux-2.39.2-r1.ebuild    | 413 ---------------------
 5 files changed, 896 deletions(-)

diff --git a/sys-apps/util-linux/Manifest b/sys-apps/util-linux/Manifest
index a00b2a507023..3e28df35ce6e 100644
--- a/sys-apps/util-linux/Manifest
+++ b/sys-apps/util-linux/Manifest
@@ -1,6 +1,2 @@
-DIST util-linux-2.38.1.tar.sign 833 BLAKE2B 2468c6b8c881d7a17666aac954edfd421085111937f5d0daada37a679e9bbfe61fc98bb57cca9bf7bea20be483f38e2a758039f9baf5b1a901852e2b5dd014d8 SHA512 d8b3e936065ae1dc105b8ce773c874bb037ebf84ee571676509543f79c39950180e7f252c6b0d4500119568ed4ac3aa7117793de839f983e9287f26649e91dad
-DIST util-linux-2.38.1.tar.xz 7495904 BLAKE2B a0e86ca62f82adaccc01ad6ec5a058dac429b81c310989cbad136f96c2770c60bbd4287067817520e8e0653146a10f13128e0af32122402bab416e1c2d6680b8 SHA512 07f11147f67dfc6c8bc766dfc83266054e6ede776feada0566b447d13276b6882ee85c6fe53e8d94a17c03332106fc0549deca3cf5f2e92dda554e9bc0551957
-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

diff --git a/sys-apps/util-linux/files/util-linux-2.38.1-check-for-sys-pidfd.h.patch b/sys-apps/util-linux/files/util-linux-2.38.1-check-for-sys-pidfd.h.patch
deleted file mode 100644
index 0a1975fff685..000000000000
--- a/sys-apps/util-linux/files/util-linux-2.38.1-check-for-sys-pidfd.h.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-https://github.com/util-linux/util-linux/pull/1769
-https://bugs.gentoo.org/893966
-
-From 84732a8849a08d42a9a95dcbee9005116be78eb8 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 7 Aug 2022 14:39:19 -0700
-Subject: [PATCH] check for sys/pidfd.h
-
-This header in newer glibc defines the signatures of functions
-pidfd_send_signal() and pidfd_open() and when these functions are
-defined by libc then we need to include the relevant header to get
-the definitions. Clang 15+ has started to error out when function
-signatures are missing.
-
-Fixes errors like
-misc-utils/kill.c:402:6: error: call to undeclared function 'pidfd_send_signal'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
-        if (pidfd_send_signal(pfd, ctl->numsig, &info, 0) < 0)
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- configure.ac          | 1 +
- include/pidfd-utils.h | 4 +++-
- 2 files changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 51deeecd4e..daa8f0dca4 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -342,6 +342,7 @@ AC_CHECK_HEADERS([ \
- 	sys/mkdev.h \
- 	sys/mount.h \
- 	sys/param.h \
-+	sys/pidfd.h \
- 	sys/prctl.h \
- 	sys/resource.h \
- 	sys/sendfile.h \
-diff --git a/include/pidfd-utils.h b/include/pidfd-utils.h
-index eddede9767..d9e33cbc57 100644
---- a/include/pidfd-utils.h
-+++ b/include/pidfd-utils.h
-@@ -4,8 +4,10 @@
- #ifdef HAVE_SYS_SYSCALL_H
- # include <sys/syscall.h>
- # if defined(SYS_pidfd_send_signal) && defined(SYS_pidfd_open)
-+#  ifdef HAVE_SYS_PIDFD_H
-+#   include <sys/pidfd.h>
-+#  endif
- #  include <sys/types.h>
--
- #  ifndef HAVE_PIDFD_SEND_SIGNAL
- static inline int pidfd_send_signal(int pidfd, int sig, siginfo_t *info,
- 				    unsigned int flags)

diff --git a/sys-apps/util-linux/files/util-linux-2.38.1-more-posix-exit-on-eof.patch b/sys-apps/util-linux/files/util-linux-2.38.1-more-posix-exit-on-eof.patch
deleted file mode 100644
index 07d158761c26..000000000000
--- a/sys-apps/util-linux/files/util-linux-2.38.1-more-posix-exit-on-eof.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-https://forums.gentoo.org/viewtopic-t-1160959.html
-https://github.com/util-linux/util-linux/issues/1703
-https://github.com/util-linux/util-linux/commit/28b391ce7e58f8327c092b3911c05f526d0ad586
-
-From 28b391ce7e58f8327c092b3911c05f526d0ad586 Mon Sep 17 00:00:00 2001
-From: Karel Zak <kzak@redhat.com>
-Date: Wed, 15 Jun 2022 10:03:44 +0200
-Subject: [PATCH] more: restore exit-on-eof if POSIXLY_CORRECT is not set
-
-In version 2.38, exit-on-eof has been disabled by default. This change
-is annoying for users and forces many users to use 'alias more="more
--e"'. It seems better to force POSIX lovers to use POSIXLY_CORRECT
-env. variable and stay backwardly compatible by default.
-
-Addresses: https://github.com/util-linux/util-linux/issues/1703
-Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2088493
-Signed-off-by: Karel Zak <kzak@redhat.com>
---- a/text-utils/more.c
-+++ b/text-utils/more.c
-@@ -2052,8 +2052,11 @@ int main(int argc, char **argv)
- 	if (!(strcmp(program_invocation_short_name, "page")))
- 		ctl.no_scroll++;
- 
-+	ctl.exit_on_eof = getenv("POSIXLY_CORRECT") ? 0 : 1;
-+
- 	if ((s = getenv("MORE")) != NULL)
- 		env_argscan(&ctl, s);
-+
- 	argscan(&ctl, argc, argv);
- 
- 	/* clear any inherited settings */
-

diff --git a/sys-apps/util-linux/util-linux-2.38.1-r3.ebuild b/sys-apps/util-linux/util-linux-2.38.1-r3.ebuild
deleted file mode 100644
index 68439d236b90..000000000000
--- a/sys-apps/util-linux/util-linux-2.38.1-r3.ebuild
+++ /dev/null
@@ -1,395 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..11} )
-
-inherit toolchain-funcs autotools 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? ( sys-devel/gettext )
-	test? ( app-alternatives/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 )"
-fi
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) su? ( pam )"
-RESTRICT="!test? ( test )"
-
-PATCHES=(
-	"${FILESDIR}"/${P}-more-posix-exit-on-eof.patch
-	"${FILESDIR}"/util-linux-2.38.1-check-for-sys-pidfd.h.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
-		# Prevent uuidd test failure due to socket path limit, bug #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"
-
-		# Known-failing tests
-		# TODO: investigate these
-		local known_failing_tests=(
-			# Subtest 'options-maximum-size-8192' fails
-			hardlink/options
-
-			lsfd/mkfds-symlink
-			lsfd/mkfds-rw-character-device
-		)
-
-		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
-
-	eautoreconf
-}
-
-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=(
-		--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_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)
-	)
-
-	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
-
-			# 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
-}

diff --git a/sys-apps/util-linux/util-linux-2.39.2-r1.ebuild b/sys-apps/util-linux/util-linux-2.39.2-r1.ebuild
deleted file mode 100644
index facafaf1a697..000000000000
--- a/sys-apps/util-linux/util-linux-2.39.2-r1.ebuild
+++ /dev/null
@@ -1,413 +0,0 @@
-# Copyright 1999-2024 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? ( app-alternatives/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
-	"${FILESDIR}"/${PN}-2.39.2-backport-pr2251.patch
-	"${FILESDIR}"/${PN}-2.39.2-backport-1d4456d.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
-			utmp/last-ipv6
-		)
-
-		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
-}


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2024-03-22  0:12 Matt Turner
  0 siblings, 0 replies; 32+ messages in thread
From: Matt Turner @ 2024-03-22  0:12 UTC (permalink / raw
  To: gentoo-commits

commit:     8b47f3e31e88331b75c8108ea827b78118b0fe70
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 22 00:10:11 2024 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Fri Mar 22 00:12:15 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8b47f3e3

sys-apps/util-linux: Fix export of mnt_context_is_lazy

Closes: https://bugs.gentoo.org/927258
Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 ...x-export-of-mnt_context_is_lazy-and-mnt_c.patch |  55 +++
 sys-apps/util-linux/util-linux-2.39.3-r5.ebuild    | 414 +++++++++++++++++++++
 2 files changed, 469 insertions(+)

diff --git a/sys-apps/util-linux/files/util-linux-2.39.3-libmount-Fix-export-of-mnt_context_is_lazy-and-mnt_c.patch b/sys-apps/util-linux/files/util-linux-2.39.3-libmount-Fix-export-of-mnt_context_is_lazy-and-mnt_c.patch
new file mode 100644
index 000000000000..710ca934115f
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.39.3-libmount-Fix-export-of-mnt_context_is_lazy-and-mnt_c.patch
@@ -0,0 +1,55 @@
+https://bugs.gentoo.org/927258
+https://github.com/util-linux/util-linux/pull/2845
+
+From d271589d9536181184fcd19194f879e7c776d43e Mon Sep 17 00:00:00 2001
+From: Matt Turner <mattst88@gmail.com>
+Date: Mon, 18 Mar 2024 21:29:13 -0400
+Subject: [PATCH] libmount: Fix export of mnt_context_is_lazy and
+ mnt_context_is_onlyonce
+
+[kzak@redhat.com: - fix also function docs]
+
+Bug: https://bugs.gentoo.org/927258
+Closes: https://github.com/util-linux/util-linux/issues/2844
+Fixes: 3d1c41c8c ("libmount: add --onlyonce")
+Signed-off-by: Matt Turner <mattst88@gmail.com>
+Signed-off-by: Karel Zak <kzak@redhat.com>
+(cherry picked from commit 6d2917f2eb910fb8bcdc6476be18c34fee152911)
+---
+ libmount/src/context.c    | 4 ++--
+ libmount/src/libmount.sym | 2 +-
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/libmount/src/context.c b/libmount/src/context.c
+index 0cd320190..20f4c64ae 100644
+--- a/libmount/src/context.c
++++ b/libmount/src/context.c
+@@ -549,10 +549,10 @@ int mnt_context_enable_onlyonce(struct libmnt_context *cxt, int enable)
+ }
+ 
+ /**
+- * mnt_context_is_lazy:
++ * mnt_context_is_onlyonce:
+  * @cxt: mount context
+  *
+- * Returns: 1 if lazy umount is enabled or 0
++ * Returns: 1 if only-once mount is enabled or 0
+  */
+ int mnt_context_is_onlyonce(struct libmnt_context *cxt)
+ {
+diff --git a/libmount/src/libmount.sym b/libmount/src/libmount.sym
+index 715bb5c5f..1fa8bce3c 100644
+--- a/libmount/src/libmount.sym
++++ b/libmount/src/libmount.sym
+@@ -370,7 +370,7 @@ MOUNT_2_38 {
+ MOUNT_2_39 {
+ 	mnt_cache_set_sbprobe;
+ 	mnt_context_enable_onlyonce;
+-	mnt_context_is_lazy;
++	mnt_context_is_onlyonce;
+ 	mnt_context_enable_noautofs;
+ 	mnt_table_enable_noautofs;
+ 	mnt_table_is_noautofs;
+-- 
+2.43.2
+

diff --git a/sys-apps/util-linux/util-linux-2.39.3-r5.ebuild b/sys-apps/util-linux/util-linux-2.39.3-r5.ebuild
new file mode 100644
index 000000000000..110e710683a5
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.39.3-r5.ebuild
@@ -0,0 +1,414 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 \
+	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? ( app-alternatives/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
+	"${FILESDIR}"/${PN}-2.39.2-backport-pr2251.patch
+	"${FILESDIR}"/${PN}-2.39.2-backport-1d4456d.patch
+	"${FILESDIR}"/${PN}-2.39.3-libblkid-luks.patch
+	"${FILESDIR}"/${PN}-2.39.3-musl-1.2.5-basename.patch
+	"${FILESDIR}"/${PN}-2.39.3-libmount-Fix-export-of-mnt_context_is_lazy-and-mnt_c.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
+			utmp/last-ipv6
+		)
+
+		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
+}
+
+multilib_src_install_all() {
+	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
+
+	dosym hexdump /usr/bin/hd
+	newman - hd.1 <<< '.so man1/hexdump.1'
+
+	# 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
+}


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2023-12-28  2:57 Sam James
  0 siblings, 0 replies; 32+ messages in thread
From: Sam James @ 2023-12-28  2:57 UTC (permalink / raw
  To: gentoo-commits

commit:     56b452ca8b16e50153617d63350048e8f302dc6d
Author:     Matoro Mahri <matoro_gentoo <AT> matoro <DOT> tk>
AuthorDate: Thu Dec 21 01:01:43 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Dec 28 02:56:59 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=56b452ca

sys-apps/util-linux: backport patch fixing tests with 64k pagesize

See: https://github.com/util-linux/util-linux/issues/2249
See: https://github.com/util-linux/util-linux/pull/2251
Bug: https://bugs.gentoo.org/914791
Signed-off-by: Matoro Mahri <matoro_gentoo <AT> matoro.tk>
Closes: https://github.com/gentoo/gentoo/pull/34386
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/util-linux-2.39.2-backport-pr2251.patch  | 268 +++++++++++++++++++++
 sys-apps/util-linux/util-linux-2.39.2-r1.ebuild    |   1 +
 sys-apps/util-linux/util-linux-2.39.3-r1.ebuild    |   1 +
 3 files changed, 270 insertions(+)

diff --git a/sys-apps/util-linux/files/util-linux-2.39.2-backport-pr2251.patch b/sys-apps/util-linux/files/util-linux-2.39.2-backport-pr2251.patch
new file mode 100644
index 000000000000..b16519bb5142
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.39.2-backport-pr2251.patch
@@ -0,0 +1,268 @@
+https://bugs.gentoo.org/914791
+https://github.com/util-linux/util-linux/issues/2249
+https://github.com/util-linux/util-linux/pull/2251
+
+From 8b36444f447949c3ab477f2c43b45a94c30ee7bf Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Thomas=20Wei=C3=9Fschuh?= <thomas@t-8ch.de>
+Date: Sun, 21 May 2023 21:42:14 +0200
+Subject: [PATCH 1/4] fadvise: (test) dynamically calculate expected test
+ values
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
+---
+ tests/ts/fadvise/drop | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/tests/ts/fadvise/drop b/tests/ts/fadvise/drop
+index 7c7eee5dc2..86c0d5b0a3 100755
+--- a/tests/ts/fadvise/drop
++++ b/tests/ts/fadvise/drop
+@@ -16,7 +16,7 @@ ts_check_prog "sleep"
+ ts_cd "$TS_OUTDIR"
+ 
+ FILE="ddtest"
+-BS=4k
++BS=4096
+ COUNT=8
+ 
+ FILE_FS="$("$TS_CMD_FINDMNT" -nr -o FSTYPE -T "$PWD")"
+@@ -41,22 +41,22 @@ create_file() {
+     echo
+ 
+     create_file
+-    echo "offset: 8192"
+-    "$TS_CMD_FADVISE" -o 8192 "$FILE"
++    echo "offset: $(( 2 * $BS ))"
++    "$TS_CMD_FADVISE" -o $(( 2 * $BS )) "$FILE"
+     echo status: $?
+     "$TS_CMD_FINCORE" "$FILE"
+     echo
+ 
+     create_file
+-    echo "length: 16384"
+-    "$TS_CMD_FADVISE" -l 16384 "$FILE"
++    echo "length: $(( 4 * $BS ))"
++    "$TS_CMD_FADVISE" -l $(( 4 * $BS )) "$FILE"
+     echo status: $?
+     "$TS_CMD_FINCORE" "$FILE"
+     echo
+ 
+     create_file
+-    echo "offset: 8192, length: 16384 fd: 42"
+-    "$TS_CMD_FADVISE" -o 8192 -l 16384 --fd 42 42<"$FILE"
++    echo "offset: $(( 2 * $BS )), length: $(( 4 * $BS )) fd: 42"
++    "$TS_CMD_FADVISE" -o $(( 2 * $BS )) -l $(( 4 * $BS )) --fd 42 42<"$FILE"
+     echo status: $?
+     "$TS_CMD_FINCORE" "$FILE"
+     echo
+
+From e5009e773fc801eca887dd43b721cd1b1aa327be Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Thomas=20Wei=C3=9Fschuh?= <thomas@t-8ch.de>
+Date: Sun, 21 May 2023 21:43:38 +0200
+Subject: [PATCH 2/4] fadvise: (tests) factor out calls to "fincore"
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This will make it easier to pass argument later.
+
+Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
+---
+ tests/ts/fadvise/drop | 14 +++++++++-----
+ 1 file changed, 9 insertions(+), 5 deletions(-)
+
+diff --git a/tests/ts/fadvise/drop b/tests/ts/fadvise/drop
+index 86c0d5b0a3..8869b7da4d 100755
+--- a/tests/ts/fadvise/drop
++++ b/tests/ts/fadvise/drop
+@@ -28,37 +28,41 @@ create_file() {
+     dd if=/dev/zero of="$FILE" bs=$BS count=$COUNT conv=fsync >& /dev/null
+ }
+ 
++do_fincore() {
++    "$TS_CMD_FINCORE" "$FILE"
++}
++
+ {
+     create_file
+-    "$TS_CMD_FINCORE" "$FILE"
++    do_fincore
+     echo
+ 
+     create_file
+     echo "whole file"
+     "$TS_CMD_FADVISE" "$FILE"
+     echo status: $?
+-    "$TS_CMD_FINCORE" "$FILE"
++    do_fincore
+     echo
+ 
+     create_file
+     echo "offset: $(( 2 * $BS ))"
+     "$TS_CMD_FADVISE" -o $(( 2 * $BS )) "$FILE"
+     echo status: $?
+-    "$TS_CMD_FINCORE" "$FILE"
++    do_fincore
+     echo
+ 
+     create_file
+     echo "length: $(( 4 * $BS ))"
+     "$TS_CMD_FADVISE" -l $(( 4 * $BS )) "$FILE"
+     echo status: $?
+-    "$TS_CMD_FINCORE" "$FILE"
++    do_fincore
+     echo
+ 
+     create_file
+     echo "offset: $(( 2 * $BS )), length: $(( 4 * $BS )) fd: 42"
+     "$TS_CMD_FADVISE" -o $(( 2 * $BS )) -l $(( 4 * $BS )) --fd 42 42<"$FILE"
+     echo status: $?
+-    "$TS_CMD_FINCORE" "$FILE"
++    do_fincore
+     echo
+ 
+     rm "$FILE"
+
+From 33980996d0b429fc59c40f8352633c0a21a0f96a Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Thomas=20Wei=C3=9Fschuh?= <thomas@t-8ch.de>
+Date: Sun, 21 May 2023 21:44:20 +0200
+Subject: [PATCH 3/4] fadvise: (test) don't compare fincore page counts
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+These depend on the machines pagesize and are therefore not a good
+comparision.
+
+Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
+---
+ tests/expected/fadvise/drop | 20 ++++++++++----------
+ tests/ts/fadvise/drop       |  2 +-
+ 2 files changed, 11 insertions(+), 11 deletions(-)
+
+diff --git a/tests/expected/fadvise/drop b/tests/expected/fadvise/drop
+index f2360b56fb..25f23e050a 100644
+--- a/tests/expected/fadvise/drop
++++ b/tests/expected/fadvise/drop
+@@ -1,23 +1,23 @@
+-  RES PAGES SIZE FILE
+-  32K     8  32K ddtest
++  RES SIZE FILE
++  32K  32K ddtest
+ 
+ whole file
+ status: 0
+-RES PAGES SIZE FILE
+- 0B     0  32K ddtest
++RES SIZE FILE
++ 0B  32K ddtest
+ 
+ offset: 8192
+ status: 0
+-RES PAGES SIZE FILE
+- 8K     2  32K ddtest
++RES SIZE FILE
++ 8K  32K ddtest
+ 
+ length: 16384
+ status: 0
+-  RES PAGES SIZE FILE
+-  16K     4  32K ddtest
++  RES SIZE FILE
++  16K  32K ddtest
+ 
+ offset: 8192, length: 16384 fd: 42
+ status: 0
+-  RES PAGES SIZE FILE
+-  16K     4  32K ddtest
++  RES SIZE FILE
++  16K  32K ddtest
+ 
+diff --git a/tests/ts/fadvise/drop b/tests/ts/fadvise/drop
+index 8869b7da4d..6c4298e872 100755
+--- a/tests/ts/fadvise/drop
++++ b/tests/ts/fadvise/drop
+@@ -29,7 +29,7 @@ create_file() {
+ }
+ 
+ do_fincore() {
+-    "$TS_CMD_FINCORE" "$FILE"
++    "$TS_CMD_FINCORE" -o RES,SIZE,FILE "$FILE"
+ }
+ 
+ {
+
+From c0f31b79f5d1c665cdc057fb32f4d161d28aa5b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Thomas=20Wei=C3=9Fschuh?= <thomas@t-8ch.de>
+Date: Sun, 21 May 2023 21:45:10 +0200
+Subject: [PATCH 4/4] fadvise: (test) test with 64k blocks
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This will allow the tests to also pass on systems with 64k pagesizes.
+
+Closes #2249
+Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
+---
+ tests/expected/fadvise/drop | 26 +++++++++++++-------------
+ tests/ts/fadvise/drop       |  2 +-
+ 2 files changed, 14 insertions(+), 14 deletions(-)
+
+diff --git a/tests/expected/fadvise/drop b/tests/expected/fadvise/drop
+index 25f23e050a..e7bb26b6e2 100644
+--- a/tests/expected/fadvise/drop
++++ b/tests/expected/fadvise/drop
+@@ -1,23 +1,23 @@
+-  RES SIZE FILE
+-  32K  32K ddtest
++  RES  SIZE FILE
++ 512K  512K ddtest
+ 
+ whole file
+ status: 0
+-RES SIZE FILE
+- 0B  32K ddtest
++RES  SIZE FILE
++ 0B  512K ddtest
+ 
+-offset: 8192
++offset: 131072
+ status: 0
+-RES SIZE FILE
+- 8K  32K ddtest
++  RES  SIZE FILE
++ 128K  512K ddtest
+ 
+-length: 16384
++length: 262144
+ status: 0
+-  RES SIZE FILE
+-  16K  32K ddtest
++  RES  SIZE FILE
++ 256K  512K ddtest
+ 
+-offset: 8192, length: 16384 fd: 42
++offset: 131072, length: 262144 fd: 42
+ status: 0
+-  RES SIZE FILE
+-  16K  32K ddtest
++  RES  SIZE FILE
++ 256K  512K ddtest
+ 
+diff --git a/tests/ts/fadvise/drop b/tests/ts/fadvise/drop
+index 6c4298e872..45dcb9110b 100755
+--- a/tests/ts/fadvise/drop
++++ b/tests/ts/fadvise/drop
+@@ -16,7 +16,7 @@ ts_check_prog "sleep"
+ ts_cd "$TS_OUTDIR"
+ 
+ FILE="ddtest"
+-BS=4096
++BS=65536
+ COUNT=8
+ 
+ FILE_FS="$("$TS_CMD_FINDMNT" -nr -o FSTYPE -T "$PWD")"

diff --git a/sys-apps/util-linux/util-linux-2.39.2-r1.ebuild b/sys-apps/util-linux/util-linux-2.39.2-r1.ebuild
index dfe02624672b..2218c522f5d8 100644
--- a/sys-apps/util-linux/util-linux-2.39.2-r1.ebuild
+++ b/sys-apps/util-linux/util-linux-2.39.2-r1.ebuild
@@ -99,6 +99,7 @@ RESTRICT="!test? ( test )"
 
 PATCHES=(
 	"${FILESDIR}"/${PN}-2.39.2-fincore-test.patch
+	"${FILESDIR}"/${PN}-2.39.2-backport-pr2251.patch
 )
 
 pkg_pretend() {

diff --git a/sys-apps/util-linux/util-linux-2.39.3-r1.ebuild b/sys-apps/util-linux/util-linux-2.39.3-r1.ebuild
index 8c83d7e9c777..dd2902dbc1f1 100644
--- a/sys-apps/util-linux/util-linux-2.39.3-r1.ebuild
+++ b/sys-apps/util-linux/util-linux-2.39.3-r1.ebuild
@@ -99,6 +99,7 @@ RESTRICT="!test? ( test )"
 
 PATCHES=(
 	"${FILESDIR}"/${PN}-2.39.2-fincore-test.patch
+	"${FILESDIR}"/${PN}-2.39.2-backport-pr2251.patch
 )
 
 pkg_pretend() {


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2023-05-26  7:24 Sam James
  0 siblings, 0 replies; 32+ messages in thread
From: Sam James @ 2023-05-26  7:24 UTC (permalink / raw
  To: gentoo-commits

commit:     d89394c9345cc488d5ed7b7c40aac61c6a86dcd4
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri May 26 07:24:26 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri May 26 07:24:41 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d89394c9

sys-apps/util-linux: backport another mount regression fix (still masked)

util-linux-2.39.1 is coming next week.

Bug: https://bugs.gentoo.org/906797
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../util-linux-2.39-mount-dont-call-hooks.patch    |  79 +++++
 sys-apps/util-linux/util-linux-2.39-r1.ebuild      | 393 ---------------------
 ...ux-2.39-r3.ebuild => util-linux-2.39-r4.ebuild} |   7 +-
 3 files changed, 83 insertions(+), 396 deletions(-)

diff --git a/sys-apps/util-linux/files/util-linux-2.39-mount-dont-call-hooks.patch b/sys-apps/util-linux/files/util-linux-2.39-mount-dont-call-hooks.patch
new file mode 100644
index 000000000000..96dfb1f2c234
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.39-mount-dont-call-hooks.patch
@@ -0,0 +1,79 @@
+https://github.com/util-linux/util-linux/issues/2267
+https://github.com/storaged-project/libblockdev/pull/889
+https://bugzilla.redhat.com/show_bug.cgi?id=2189241
+https://github.com/util-linux/util-linux/commit/f94a7760ed7ce81389a6059f020238981627a70d
+
+From f94a7760ed7ce81389a6059f020238981627a70d Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Thu, 25 May 2023 11:48:24 +0200
+Subject: [PATCH] libmount: don't call hooks after mount.<type> helper
+
+In case more filesystems are specified (or when libmount follows
+/{etc,proc}/filesystems) then the library may try to use and
+initialize the new API because for some filesystems, we need
+exec(/sbin/mount.<type>) and for another fsopen().
+
+The hooks that use the API have to smart and detect that the mount
+operation was done in external /sbin/mount.<type> helper. And in this
+case, the new API file descriptors must be ignored.
+
+The exception is propagation flags, mount(8) can set the flags after
+exec(/sbin/mount.<type>), for example, "mount -t ntfs --make-private".
+
+Fixes: https://github.com/util-linux/util-linux/issues/2267
+Signed-off-by: Karel Zak <kzak@redhat.com>
+--- a/libmount/src/context_mount.c
++++ b/libmount/src/context_mount.c
+@@ -508,6 +508,8 @@ static int do_mount(struct libmnt_context *cxt, const char *try_type)
+ 	assert(cxt->fs);
+ 	assert((cxt->flags & MNT_FL_MOUNTFLAGS_MERGED));
+ 
++	mnt_context_reset_status(cxt);
++
+ 	if (try_type) {
+ 		rc = mnt_context_prepare_helper(cxt, "mount", try_type);
+ 		if (rc)
+--- a/libmount/src/hook_mount.c
++++ b/libmount/src/hook_mount.c
+@@ -239,6 +239,10 @@ static int hook_create_mount(struct libmnt_context *cxt,
+ 	int rc = 0;
+ 
+ 	assert(cxt);
++
++	if (mnt_context_helper_executed(cxt))
++		return 0;
++
+ 	assert(cxt->fs);
+ 
+ 	api = get_sysapi(cxt);
+@@ -309,6 +313,9 @@ static int hook_reconfigure_mount(struct libmnt_context *cxt,
+ 
+ 	assert(cxt);
+ 
++	if (mnt_context_helper_executed(cxt))
++		return 0;
++
+ 	api = get_sysapi(cxt);
+ 	assert(api);
+ 	assert(api->fd_tree >= 0);
+@@ -379,6 +386,9 @@ static int hook_set_vfsflags(struct libmnt_context *cxt,
+ 	uint64_t set = 0, clr = 0;
+ 	int rc = 0;
+ 
++	if (mnt_context_helper_executed(cxt))
++		return 0;
++
+ 	DBG(HOOK, ul_debugobj(hs, "setting VFS flags"));
+ 
+ 	ol = mnt_context_get_optlist(cxt);
+@@ -471,6 +481,9 @@ static int hook_attach_target(struct libmnt_context *cxt,
+ 	const char *target;
+ 	int rc = 0;
+ 
++	if (mnt_context_helper_executed(cxt))
++		return 0;
++
+ 	target = mnt_fs_get_target(cxt->fs);
+ 	if (!target)
+ 		return -EINVAL;
+

diff --git a/sys-apps/util-linux/util-linux-2.39-r1.ebuild b/sys-apps/util-linux/util-linux-2.39-r1.ebuild
deleted file mode 100644
index f58e55eaff9f..000000000000
--- a/sys-apps/util-linux/util-linux-2.39-r1.ebuild
+++ /dev/null
@@ -1,393 +0,0 @@
-# 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="${BROOT}"/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 )"
-
-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
-		# Prevent uuidd test failure due to socket path limit, bug #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"
-
-		# 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
-		)
-
-		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"
-	)
-
-	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 nls poman)
-		$(use_enable unicode widechar)
-		$(use_enable static-libs static)
-		$(use_with ncurses tinfo)
-		$(use_with selinux)
-	)
-
-	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
-}

diff --git a/sys-apps/util-linux/util-linux-2.39-r3.ebuild b/sys-apps/util-linux/util-linux-2.39-r4.ebuild
similarity index 98%
rename from sys-apps/util-linux/util-linux-2.39-r3.ebuild
rename to sys-apps/util-linux/util-linux-2.39-r4.ebuild
index edd0dd68e804..ee28e8b217dd 100644
--- a/sys-apps/util-linux/util-linux-2.39-r3.ebuild
+++ b/sys-apps/util-linux/util-linux-2.39-r4.ebuild
@@ -95,9 +95,10 @@ REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) su? ( pam )"
 RESTRICT="!test? ( test )"
 
 PATCHES=(
-	"${FILESDIR}/${PN}-2.39-check-for-mount_setattr.patch"
-	"${FILESDIR}/${PN}-2.39-tests-for-mount_setattr.patch"
-	"${FILESDIR}/${PN}-2.39-mount-parse-options-user.patch"
+	"${FILESDIR}/${P}-check-for-mount_setattr.patch"
+	"${FILESDIR}/${P}-tests-for-mount_setattr.patch"
+	"${FILESDIR}/${P}-mount-parse-options-user.patch"
+	"${FILESDIR}/${P}-mount-dont-call-hooks.patch"
 )
 
 pkg_pretend() {


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2023-05-23  4:20 Sam James
  0 siblings, 0 replies; 32+ messages in thread
From: Sam James @ 2023-05-23  4:20 UTC (permalink / raw
  To: gentoo-commits

commit:     981f36533f7d0930bcb794d305e392678e83da5b
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue May 23 04:20:10 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue May 23 04:20:16 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=981f3653

sys-apps/util-linux: update mount_setattr patch to new upstream version

The PR got updated slightly.

Closes: https://bugs.gentoo.org/906797
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/util-linux-2.39-check-for-mount_setattr.patch    | 14 +++++++++-----
 ...util-linux-2.39-r2.ebuild => util-linux-2.39-r3.ebuild} |  0
 2 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/sys-apps/util-linux/files/util-linux-2.39-check-for-mount_setattr.patch b/sys-apps/util-linux/files/util-linux-2.39-check-for-mount_setattr.patch
index 538f33b30ffe..c1eb3748f782 100644
--- a/sys-apps/util-linux/files/util-linux-2.39-check-for-mount_setattr.patch
+++ b/sys-apps/util-linux/files/util-linux-2.39-check-for-mount_setattr.patch
@@ -1,7 +1,7 @@
 https://bugs.gentoo.org/906797
 https://github.com/util-linux/util-linux/pull/2248
 
-From 9b68f614c8d02ca41f077ba064e0a83d2ae7b1fe Mon Sep 17 00:00:00 2001
+From 1bd85b64632280d6bf0e86b4ff29da8b19321c5f Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Thomas=20Wei=C3=9Fschuh?= <thomas@t-8ch.de>
 Date: Sat, 20 May 2023 06:38:20 +0200
 Subject: [PATCH] libmount: check for availability of mount_setattr
@@ -33,28 +33,32 @@ Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
  /*
   * open_tree() and fsopen()
   */
-@@ -675,9 +684,12 @@ static int hook_prepare(struct libmnt_context *cxt,
+@@ -675,9 +684,14 @@ static int hook_prepare(struct libmnt_context *cxt,
  	/* call mount_setattr() */
  	if (!rc
  	    && cxt->helper == NULL
 -	    && (set != 0 || clr != 0 || (flags & MS_REMOUNT)))
 +	    && (set != 0 || clr != 0 || (flags & MS_REMOUNT))) {
-+		if (!mount_setattr_is_supported())
++		if (!mount_setattr_is_supported()) {
++			hookset_deinit(cxt, hs);
 +			return 1;
++		}
  		rc = mnt_context_append_hook(cxt, hs, MNT_STAGE_MOUNT, NULL,
  					hook_set_vfsflags);
 +	}
  
  	/* call move_mount() to attach target */
  	if (!rc
-@@ -688,9 +700,12 @@ static int hook_prepare(struct libmnt_context *cxt,
+@@ -688,9 +702,14 @@ static int hook_prepare(struct libmnt_context *cxt,
  					hook_attach_target);
  
  	/* set propagation (has to be attached to VFS) */
 -	if (!rc && mnt_optlist_get_propagation(ol))
 +	if (!rc && mnt_optlist_get_propagation(ol)) {
-+		if (!mount_setattr_is_supported())
++		if (!mount_setattr_is_supported()) {
++			hookset_deinit(cxt, hs);
 +			return 1;
++		}
  		rc = mnt_context_append_hook(cxt, hs, MNT_STAGE_MOUNT_POST, NULL,
  					hook_set_propagation);
 +	}

diff --git a/sys-apps/util-linux/util-linux-2.39-r2.ebuild b/sys-apps/util-linux/util-linux-2.39-r3.ebuild
similarity index 100%
rename from sys-apps/util-linux/util-linux-2.39-r2.ebuild
rename to sys-apps/util-linux/util-linux-2.39-r3.ebuild


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2023-05-23  3:14 Sam James
  0 siblings, 0 replies; 32+ messages in thread
From: Sam James @ 2023-05-23  3:14 UTC (permalink / raw
  To: gentoo-commits

commit:     5ef0405e6d22915b93da87d5eb77ff132ca6da14
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue May 23 03:13:09 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue May 23 03:13:20 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5ef0405e

sys-apps/util-linux: backport another mount regression fix (user option parsing)

Closes: https://bugs.gentoo.org/906859
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../util-linux-2.39-mount-parse-options-user.patch | 46 ++++++++++++++++++++++
 sys-apps/util-linux/util-linux-2.39-r2.ebuild      |  1 +
 2 files changed, 47 insertions(+)

diff --git a/sys-apps/util-linux/files/util-linux-2.39-mount-parse-options-user.patch b/sys-apps/util-linux/files/util-linux-2.39-mount-parse-options-user.patch
new file mode 100644
index 000000000000..e02d02c7f503
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.39-mount-parse-options-user.patch
@@ -0,0 +1,46 @@
+https://bugs.gentoo.org/906797#c4
+https://bugs.gentoo.org/906859
+https://github.com/util-linux/util-linux/issues/2238
+https://github.com/util-linux/util-linux/commit/c0267687fd7b41b00d523d1985182d7eb574effd
+
+From c0267687fd7b41b00d523d1985182d7eb574effd Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Mon, 22 May 2023 15:00:25 +0200
+Subject: [PATCH] libmount: fix options prepend/insert and merging
+
+ * the order of the new options should not be changed
+   (for example prepend "a,b,c" to list with "d" has to generate "a,b,c,d", not "c,b,a,d")
+
+ * make sure that  options map is defined when merging options
+
+Fixes: https://github.com/util-linux/util-linux/issues/2238
+Signed-off-by: Karel Zak <kzak@redhat.com>
+--- a/libmount/src/optlist.c
++++ b/libmount/src/optlist.c
+@@ -338,6 +338,7 @@ int mnt_optlist_merge_opts(struct libmnt_optlist *ls)
+ 
+ 			/* remove inverted option */
+ 			else if (opt->ent && x->ent
++			    && opt->map == x->map
+ 			    && opt->ent->id == x->ent->id
+ 			    && (opt->ent->mask & MNT_INVERT
+ 				    || x->ent->mask & MNT_INVERT))
+@@ -520,6 +521,8 @@ static int optlist_add_optstr(struct libmnt_optlist *ls, const char *optstr,
+ 		if (!opt)
+ 			return -ENOMEM;
+ 		opt->src = MNT_OPTSRC_STRING;
++		if (where)
++			where = &opt->opts;
+ 	}
+ 
+ 	optlist_cleanup_cache(ls);
+@@ -622,6 +625,8 @@ static int optlist_add_flags(struct libmnt_optlist *ls, unsigned long flags,
+ 		if (!opt)
+ 			return -ENOMEM;
+ 		opt->src = MNT_OPTSRC_FLAG;
++		if (where)
++			where = &opt->opts;
+ 	}
+ 
+ 	optlist_cleanup_cache(ls);
+

diff --git a/sys-apps/util-linux/util-linux-2.39-r2.ebuild b/sys-apps/util-linux/util-linux-2.39-r2.ebuild
index 43dd41681342..edd0dd68e804 100644
--- a/sys-apps/util-linux/util-linux-2.39-r2.ebuild
+++ b/sys-apps/util-linux/util-linux-2.39-r2.ebuild
@@ -97,6 +97,7 @@ RESTRICT="!test? ( test )"
 PATCHES=(
 	"${FILESDIR}/${PN}-2.39-check-for-mount_setattr.patch"
 	"${FILESDIR}/${PN}-2.39-tests-for-mount_setattr.patch"
+	"${FILESDIR}/${PN}-2.39-mount-parse-options-user.patch"
 )
 
 pkg_pretend() {


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2023-03-19  6:07 Sam James
  0 siblings, 0 replies; 32+ messages in thread
From: Sam James @ 2023-03-19  6:07 UTC (permalink / raw
  To: gentoo-commits

commit:     5c2b7ece52f33330db0658d46932834381a8bf29
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Mar 19 05:37:38 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Mar 19 05:37:38 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5c2b7ece

sys-apps/util-linux: add 2.39_rc1 (unkeyworded)

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/util-linux/Manifest                       |   3 +
 .../files/util-linux-2.39_rc1-test-build.patch     |  33 ++
 sys-apps/util-linux/util-linux-2.39_rc1.ebuild     | 391 +++++++++++++++++++++
 3 files changed, 427 insertions(+)

diff --git a/sys-apps/util-linux/Manifest b/sys-apps/util-linux/Manifest
index 0748d8f9a93e..8026f61fcccc 100644
--- a/sys-apps/util-linux/Manifest
+++ b/sys-apps/util-linux/Manifest
@@ -1,3 +1,6 @@
 DIST util-linux-2.37.4.tar.xz 6114232 BLAKE2B 7f6cd12ec9bc68a6db787be78c1ee19fdfbb37710df36d4278d869676ba531afd414097e57e5287efed6c7c80d6b6ef36d5812ff2bea611080d3ce5bf5ad4ac5 SHA512 ada2629b0a8e83ea83513e04f7b1ccceb3b8ab82acd119c5d8389d1abc48c92d0b591f39fb34b1fd65db3ab630f03a672a9f3dacf1a6e4f124bdb083fc1be6d7
 DIST util-linux-2.38.1.tar.sign 833 BLAKE2B 2468c6b8c881d7a17666aac954edfd421085111937f5d0daada37a679e9bbfe61fc98bb57cca9bf7bea20be483f38e2a758039f9baf5b1a901852e2b5dd014d8 SHA512 d8b3e936065ae1dc105b8ce773c874bb037ebf84ee571676509543f79c39950180e7f252c6b0d4500119568ed4ac3aa7117793de839f983e9287f26649e91dad
 DIST util-linux-2.38.1.tar.xz 7495904 BLAKE2B a0e86ca62f82adaccc01ad6ec5a058dac429b81c310989cbad136f96c2770c60bbd4287067817520e8e0653146a10f13128e0af32122402bab416e1c2d6680b8 SHA512 07f11147f67dfc6c8bc766dfc83266054e6ede776feada0566b447d13276b6882ee85c6fe53e8d94a17c03332106fc0549deca3cf5f2e92dda554e9bc0551957
+DIST util-linux-2.39-rc1.tar.sign 833 BLAKE2B d540ee98c09879b26a1175b00145872b518d30edc91a1d4c625da502d8fffa8a5fb7ec7f36151e5da4a0c215cc1e53acf6134d5d5842e73f43a7ad8d05d5c0c3 SHA512 00c4e573513941fcf7f254b31bdc0747df24bcfee071f27b66ebd8b30680b098ea63c0590a139bf2b29ac02033c3b1cfae126d9ac0d5829c4e85acb348a643b7
+DIST util-linux-2.39-rc1.tar.xz 8083996 BLAKE2B a74d3b40540cd31c34c37caca20a2cd6691cfdf664da0a4a5b6c04201204d2cd6d357861f15dd41532aceb1adf3def7422f2c987ea79875330ca7c09039f03e8 SHA512 e9981d7c65eed7cd3f96f590e2190c7c804b1767464c821cd9277c72aaf38b8407f324cf9e8f3b96eb96359a0746f21a01dfb6baa504f49c8c7e1aff2dc956b3
+DIST util-linux-2.39_rc1-autotools-regenerate.patch.xz 17616 BLAKE2B 8bf56506f915b7c24bb47c6591b93bc132c3a4bbee9bd8bb78df03b08723cd1103b7ea34b6e53042aa38a1822007628c26f97e8aa8efae170765cbf9e710276b SHA512 e73e5b11a52a0e8ad0bda83fa5a5b41c06f452d6f34a42ad8714968261e0990ba2afda04f9bb3389c61a5fc67182701b9d44c4ead69cae6d268083f94191a977

diff --git a/sys-apps/util-linux/files/util-linux-2.39_rc1-test-build.patch b/sys-apps/util-linux/files/util-linux-2.39_rc1-test-build.patch
new file mode 100644
index 000000000000..5fdb5a51bb9e
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.39_rc1-test-build.patch
@@ -0,0 +1,33 @@
+https://github.com/util-linux/util-linux/issues/2119
+https://github.com/util-linux/util-linux/commit/bccae5d85831c4cfa6b5d147acec739bd3c148b9
+
+From bccae5d85831c4cfa6b5d147acec739bd3c148b9 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Fri, 17 Mar 2023 13:11:50 +0100
+Subject: [PATCH] build-sys: fix libblkid fuzz sample test if-endif
+
+All tests have to be covered by BUILD_LIBBLKID_TESTS otherwise
+proper CFLAGS ($blkid_tests_cflags) are undefined.
+
+Fixes: https://github.com/util-linux/util-linux/issues/2119
+Signed-off-by: Karel Zak <kzak@redhat.com>
+--- a/libblkid/src/Makemodule.am
++++ b/libblkid/src/Makemodule.am
+@@ -224,8 +224,6 @@ test_blkid_fuzz_LDFLAGS = $(blkid_tests_ldflags) -lpthread
+ test_blkid_fuzz_LDADD = $(blkid_tests_ldadd) $(LIB_FUZZING_ENGINE)
+ endif
+ 
+-endif # BUILD_LIBBLKID_TESTS
+-
+ check_PROGRAMS += test_blkid_fuzz_sample
+ 
+ test_blkid_fuzz_sample_SOURCES = libblkid/src/fuzz.c
+@@ -234,6 +232,7 @@ test_blkid_fuzz_sample_CFLAGS = $(blkid_tests_cflags)
+ test_blkid_fuzz_sample_LDFLAGS = $(blkid_tests_ldflags)
+ test_blkid_fuzz_sample_LDADD = $(blkid_tests_ldadd)
+ 
++endif # BUILD_LIBBLKID_TESTS
+ 
+ # move lib from $(usrlib_execdir) to $(libdir) if needed
+ install-exec-hook-libblkid:
+

diff --git a/sys-apps/util-linux/util-linux-2.39_rc1.ebuild b/sys-apps/util-linux/util-linux-2.39_rc1.ebuild
new file mode 100644
index 000000000000..0e42fe563e2b
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.39_rc1.ebuild
@@ -0,0 +1,391 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..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="${BROOT}"/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"
+	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 )"
+
+	# Drop on next release, it's just here for ${P}-test-build.patch
+	SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-autotools-regenerate.patch.xz"
+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? ( 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 )"
+fi
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) su? ( pam )"
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+	"${FILESDIR}"/${P}-test-build.patch
+	"${WORKDIR}"/${P}-autotools-regenerate.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
+		# Prevent uuidd test failure due to socket path limit, bug #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"
+
+		# Known-failing tests
+		# TODO: investigate these
+		local known_failing_tests=(
+			# Subtest 'options-maximum-size-8192' fails
+			hardlink/options
+
+			lsfd/mkfds-symlink
+			lsfd/mkfds-rw-character-device
+		)
+
+		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=(
+		--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)
+	)
+
+	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
+
+			# 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
+}


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2023-02-09  3:54 Sam James
  0 siblings, 0 replies; 32+ messages in thread
From: Sam James @ 2023-02-09  3:54 UTC (permalink / raw
  To: gentoo-commits

commit:     795576427d6297dd5b813c65261965e190766e22
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Feb  9 03:54:01 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Feb  9 03:54:10 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79557642

sys-apps/util-linux: backport fix for 'more' exit

Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../util-linux-2.38.1-more-posix-exit-on-eof.patch |  32 ++
 sys-apps/util-linux/util-linux-2.38.1-r1.ebuild    | 399 +++++++++++++++++++++
 2 files changed, 431 insertions(+)

diff --git a/sys-apps/util-linux/files/util-linux-2.38.1-more-posix-exit-on-eof.patch b/sys-apps/util-linux/files/util-linux-2.38.1-more-posix-exit-on-eof.patch
new file mode 100644
index 000000000000..07d158761c26
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.38.1-more-posix-exit-on-eof.patch
@@ -0,0 +1,32 @@
+https://forums.gentoo.org/viewtopic-t-1160959.html
+https://github.com/util-linux/util-linux/issues/1703
+https://github.com/util-linux/util-linux/commit/28b391ce7e58f8327c092b3911c05f526d0ad586
+
+From 28b391ce7e58f8327c092b3911c05f526d0ad586 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Wed, 15 Jun 2022 10:03:44 +0200
+Subject: [PATCH] more: restore exit-on-eof if POSIXLY_CORRECT is not set
+
+In version 2.38, exit-on-eof has been disabled by default. This change
+is annoying for users and forces many users to use 'alias more="more
+-e"'. It seems better to force POSIX lovers to use POSIXLY_CORRECT
+env. variable and stay backwardly compatible by default.
+
+Addresses: https://github.com/util-linux/util-linux/issues/1703
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2088493
+Signed-off-by: Karel Zak <kzak@redhat.com>
+--- a/text-utils/more.c
++++ b/text-utils/more.c
+@@ -2052,8 +2052,11 @@ int main(int argc, char **argv)
+ 	if (!(strcmp(program_invocation_short_name, "page")))
+ 		ctl.no_scroll++;
+ 
++	ctl.exit_on_eof = getenv("POSIXLY_CORRECT") ? 0 : 1;
++
+ 	if ((s = getenv("MORE")) != NULL)
+ 		env_argscan(&ctl, s);
++
+ 	argscan(&ctl, argc, argv);
+ 
+ 	/* clear any inherited settings */
+

diff --git a/sys-apps/util-linux/util-linux-2.38.1-r1.ebuild b/sys-apps/util-linux/util-linux-2.38.1-r1.ebuild
new file mode 100644
index 000000000000..746b411e2e6e
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.38.1-r1.ebuild
@@ -0,0 +1,399 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..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="${BROOT}"/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"
+	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? ( 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 )"
+fi
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) su? ( pam )"
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+	"${FILESDIR}"/${P}-more-posix-exit-on-eof.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
+		# Prevent uuidd test failure due to socket path limit, bug #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"
+
+		# Known-failing tests
+		# TODO: investigate these
+		local known_failing_tests=(
+			# Subtest 'options-maximum-size-8192' fails
+			hardlink/options
+
+			lsfd/mkfds-symlink
+			lsfd/mkfds-rw-character-device
+		)
+
+		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
+}
+
+lfs_fallocate_test() {
+	# Make sure we can use fallocate with LFS, bug #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
+		--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() {
+	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. 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=(
+		--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)
+	)
+
+	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
+
+			# 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
+}
+
+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
+}


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2022-01-24 16:02 Sam James
  0 siblings, 0 replies; 32+ messages in thread
From: Sam James @ 2022-01-24 16:02 UTC (permalink / raw
  To: gentoo-commits

commit:     d5f5f2e564e448f86dee8c0271152c0dc47754d4
Author:     Mathieu Tortuyaux <mtortuyaux <AT> microsoft <DOT> com>
AuthorDate: Mon Jan 24 15:50:45 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jan 24 15:58:29 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d5f5f2e5

sys-apps/util-linux: bump to version 2.37.3

Bug: https://bugs.gentoo.org/831978
Package-Manager: Portage-3.0.28, Repoman-3.0.3
Signed-off-by: Mathieu Tortuyaux <mtortuyaux <AT> microsoft.com>
Closes: https://github.com/gentoo/gentoo/pull/23940
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/util-linux/Manifest                       |   1 +
 .../util-linux-2.37.3-ioctl_ns-test-hang.patch     |  37 +++
 sys-apps/util-linux/util-linux-2.37.3.ebuild       | 317 +++++++++++++++++++++
 3 files changed, 355 insertions(+)

diff --git a/sys-apps/util-linux/Manifest b/sys-apps/util-linux/Manifest
index 89d96ed01375..827106be8db1 100644
--- a/sys-apps/util-linux/Manifest
+++ b/sys-apps/util-linux/Manifest
@@ -1 +1,2 @@
 DIST util-linux-2.37.2.tar.xz 5621624 BLAKE2B 40ab80485781dfc58e6d0e98dae115b96f11ee0cc370524e1e13d3c4a4dfed3a5a4a248311f8ca645f6f84bbaf4785412ca8282b840af4e37a01312764885abe SHA512 38f0fe820445e3bfa79550e6581c230f98c7661566ccc4daa51c7208a5f972c61b4e57dfc86bed074fdbc7c40bc79f856be8f6a05a8860c1c0cecc4208e8b81d
+DIST util-linux-2.37.3.tar.xz 6126260 BLAKE2B 6a541dd1f243f0fc303cd813b50be3e0edd8dc7377734aed90fe0af03321bf03fd727285e406b95a1db176572742245220f2e6e7f4d35e508e948816ec4b6345 SHA512 2303b5c55b1fd932c73b0a079d37e56e10b6a20270b72d0b7e81ec7a6b715b42ebaa336714c3e1722d05e5aa4499f8be17ceaf61bb1341532bf9697c9a2174e9

diff --git a/sys-apps/util-linux/files/util-linux-2.37.3-ioctl_ns-test-hang.patch b/sys-apps/util-linux/files/util-linux-2.37.3-ioctl_ns-test-hang.patch
new file mode 100644
index 000000000000..73dc0b40a049
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.37.3-ioctl_ns-test-hang.patch
@@ -0,0 +1,37 @@
+https://github.com/karelzak/util-linux/commit/597ccb7bf564f65bb059bfe420224cab0fba46ac.patch
+
+From 597ccb7bf564f65bb059bfe420224cab0fba46ac Mon Sep 17 00:00:00 2001
+From: Chris Hofstaedtler <zeha@debian.org>
+Date: Fri, 20 Aug 2021 10:30:50 +0000
+Subject: [PATCH] tests: Skip lsns/ioctl_ns test if unshare fails
+
+Some parts of the Debian build infrastructure uses unshare to run the
+package build, and that appears to cause a "nested" unshare in the
+lsns/ioctl_ns test to fail. Unfortunately the tests then hang at this
+point.
+
+Try running unshare before the actual test, and skip the test if unshare
+already fails.
+
+[kzak@redhat.com: - add --fork to the test
+                  - don't write to stdout/err]
+
+Signed-off-by: Chris Hofstaedtler <zeha@debian.org>
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ tests/ts/lsns/ioctl_ns | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/tests/ts/lsns/ioctl_ns b/tests/ts/lsns/ioctl_ns
+index ef6360607..fa626bfda 100755
+--- a/tests/ts/lsns/ioctl_ns
++++ b/tests/ts/lsns/ioctl_ns
+@@ -34,6 +34,8 @@ ts_check_prog "mkfifo"
+ ts_check_prog "touch"
+ ts_check_prog "uniq"
+ 
++$TS_CMD_UNSHARE --user --pid --mount-proc --fork true &> /dev/null || ts_skip "no namespace support"
++
+ ts_cd "$TS_OUTDIR"
+ 
+ # The parent process receives namespaces ids via FIFO_DATA from bash

diff --git a/sys-apps/util-linux/util-linux-2.37.3.ebuild b/sys-apps/util-linux/util-linux-2.37.3.ebuild
new file mode 100644
index 000000000000..29ca2387ed7a
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.37.3.ebuild
@@ -0,0 +1,317 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8,9,10} )
+
+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="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+	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 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? ( 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
+"
+
+# Required for man-page generation
+if [[ "${PV}" == 9999 ]] ; then
+	BDEPEND+="
+		dev-ruby/asciidoctor
+	"
+fi
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) su? ( pam )"
+RESTRICT="!test? ( test )"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-2.37.1-agetty_ctrl-c_erase.patch #804972
+	"${FILESDIR}"/${P}-ioctl_ns-test-hang.patch # upstream test hang patch
+)
+
+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 [[ ${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
+		--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() {
+	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
+
+	# 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=(
+		--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)
+	)
+	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
+			# 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
+}
+
+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 ; 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 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
+
+	# 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
+}


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2021-10-03 11:28 David Seifert
  0 siblings, 0 replies; 32+ messages in thread
From: David Seifert @ 2021-10-03 11:28 UTC (permalink / raw
  To: gentoo-commits

commit:     a210ae9d88fbde5434dc594023d5f56f1cba5978
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Sun Oct  3 11:27:57 2021 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Sun Oct  3 11:27:57 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a210ae9d

sys-apps/util-linux: drop 2.36.2-r1, 2.37.1-r1

Signed-off-by: David Seifert <soap <AT> gentoo.org>

 sys-apps/util-linux/Manifest                       |   2 -
 .../util-linux-2.37.1-ipcutils_calloc_check.patch  |  25 --
 .../util-linux-2.37.1-libmount_setgroups_fix.patch |  38 ---
 ...l-linux-2.37.1-lscpu_NULL_dereference_fix.patch |  50 ---
 sys-apps/util-linux/util-linux-2.36.2-r1.ebuild    | 315 -------------------
 sys-apps/util-linux/util-linux-2.37.1-r1.ebuild    | 338 ---------------------
 6 files changed, 768 deletions(-)

diff --git a/sys-apps/util-linux/Manifest b/sys-apps/util-linux/Manifest
index c330ae5648b..89d96ed0137 100644
--- a/sys-apps/util-linux/Manifest
+++ b/sys-apps/util-linux/Manifest
@@ -1,3 +1 @@
-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/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 44490ce1bd0..00000000000
--- 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 ebde207986b..00000000000
--- 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 50322e63a8e..00000000000
--- 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/util-linux-2.36.2-r1.ebuild b/sys-apps/util-linux/util-linux-2.36.2-r1.ebuild
deleted file mode 100644
index 92191cf91ea..00000000000
--- a/sys-apps/util-linux/util-linux-2.36.2-r1.ebuild
+++ /dev/null
@@ -1,315 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,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="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
-	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_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-RESTRICT="!test? ( test )"
-
-S="${WORKDIR}/${MY_P}"
-
-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-nologin
-			--disable-pylibmount
-			--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)
-		)
-	else
-		myeconfargs+=(
-			--disable-all-programs
-			--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/*}
-	chmod -x "${ED}"/usr/share/doc/util-linux-${PVR}/getopt/getopt-parse* || die
-
-	# 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
-}

diff --git a/sys-apps/util-linux/util-linux-2.37.1-r1.ebuild b/sys-apps/util-linux/util-linux-2.37.1-r1.ebuild
deleted file mode 100644
index fa2c51c57e1..00000000000
--- a/sys-apps/util-linux/util-linux-2.37.1-r1.ebuild
+++ /dev/null
@@ -1,338 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..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="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-	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-ipcutils_calloc_check.patch #806070
-	"${FILESDIR}"/${PN}-2.37.1-libmount_setgroups_fix.patch #805218
-	"${FILESDIR}"/${PN}-2.37.1-agetty_ctrl-c_erase.patch #804972
-	"${FILESDIR}"/${PN}-2.37.1-lscpu_NULL_dereference_fix.patch #802606
-)
-
-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
-			# 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
-			# 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
-}


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2021-08-16 14:02 Lars Wendler
  0 siblings, 0 replies; 32+ messages in thread
From: Lars Wendler @ 2021-08-16 14:02 UTC (permalink / raw
  To: gentoo-commits

commit:     a2a0a0c753b1b5420ad97cb9a55396c8110cd01f
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 16 14:01:48 2021 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Aug 16 14:02:03 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a2a0a0c7

sys-apps/util-linux: Removed old

Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 sys-apps/util-linux/Manifest                       |   2 -
 .../files/util-linux-2.37-avoid_autoreconf.patch   | 136 --------
 .../files/util-linux-2.37-lcrypt_link_fix.patch    |  50 ---
 .../files/util-linux-2.37-lcrypt_use_LIBS.patch    |  91 ------
 .../files/util-linux-2.37-ppc-nortas.patch         |  36 --
 .../files/util-linux-2.37.1-lscpu_nullptr.patch    |  26 --
 sys-apps/util-linux/util-linux-2.37-r1.ebuild      | 362 ---------------------
 sys-apps/util-linux/util-linux-2.37.1.ebuild       | 335 -------------------
 8 files changed, 1038 deletions(-)

diff --git a/sys-apps/util-linux/Manifest b/sys-apps/util-linux/Manifest
index a810445d61a..c330ae5648b 100644
--- a/sys-apps/util-linux/Manifest
+++ b/sys-apps/util-linux/Manifest
@@ -1,5 +1,3 @@
 DIST util-linux-2.36.2.tar.xz 5348032 BLAKE2B 17e49515f8d0430f3ed26b80bf1d6e811d847141020d0dae1340dc92887549b7b711f3db6e3913120871fc912435def73586a7aef09d8d9cc6ff7ca331b2770f SHA512 6ab141f44ca4cb6b600081f10eae17e15d23abd122a37eb3ac6c845513a6a4396dc9dcff30b3032de80116ddde50e27dfbc86f92708c1051f84f0c919194664b
-DIST util-linux-2.37-manpages.tar.xz 160156 BLAKE2B 39572332cfe4cac2313941ae922a01f5f4fe34cceb2ca3c806e87ec55187053dfce044790ad497d04adafc2abc513ae1429a1686e71b3b4e0e7907d17c9b6548 SHA512 2f3f1da3eae10b90daa672690ec90de303d87e9b0390f795daf80927a7c42f6aac9d3516b63051a6237a5609b5fda1dec92a1b8adc172115f3478b7edfa04918
 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
-DIST util-linux-2.37.tar.xz 5519268 BLAKE2B 37d4f260d636539c60b7196545c7c542c7e08a24cf3395be0c14054b5f05765c9f8234ded1c8fed60855e76bf0cfedc557d45e99b37d1e6b4a0244897fe06860 SHA512 84cf1df46165f286caa1a1204b335dc1fc826a8e1d52a817c28eb80ef19734eccd6efdfb078e87ade9e4381a9102e59d4df83e9bb100e4c73aff2aa4bfb85615

diff --git a/sys-apps/util-linux/files/util-linux-2.37-avoid_autoreconf.patch b/sys-apps/util-linux/files/util-linux-2.37-avoid_autoreconf.patch
deleted file mode 100644
index 44ea6e5c2be..00000000000
--- a/sys-apps/util-linux/files/util-linux-2.37-avoid_autoreconf.patch
+++ /dev/null
@@ -1,136 +0,0 @@
---- util-linux-2.37/config.h.in
-+++ util-linux-2.37/config.h.in
-@@ -216,9 +216,6 @@
- /* Define to 1 if you have the `cap-ng' library (-lcap-ng). */
- #undef HAVE_LIBCAP_NG
- 
--/* Do we need -lcrypt? */
--#undef HAVE_LIBCRYPT
--
- /* Define if libeconf is available */
- #undef HAVE_LIBECONF
- 
---- util-linux-2.37/configure
-+++ util-linux-2.37/configure
-@@ -4965,12 +4965,7 @@
- program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
- 
- if test x"${MISSING+set}" != xset; then
--  case $am_aux_dir in
--  *\ * | *\	*)
--    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
--  *)
--    MISSING="\${SHELL} $am_aux_dir/missing" ;;
--  esac
-+  MISSING="\${SHELL} '$am_aux_dir/missing'"
- fi
- # Use eval to expand $SHELL
- if eval "$MISSING --is-lightweight"; then
-@@ -25591,7 +25586,10 @@
- 
- else
- 
-+
-+  old_LIBS="$LIBS"
-   LIBS="$LIBS -lcrypt"
-+
-   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
- /* end confdefs.h.  */
- 
-@@ -25612,10 +25610,7 @@
-   return 0;
- }
- _ACEOF
--if ac_fn_c_try_compile "$LINENO"; then :
--
--
--$as_echo "#define HAVE_LIBCRYPT 1" >>confdefs.h
-+if ac_fn_c_try_link "$LINENO"; then :
- 
-   have_libcrypt=yes
-   have_crypt=yes
-@@ -25626,7 +25621,11 @@
- $as_echo "$as_me: WARNING: crypt() is not available" >&2;}
- 
- fi
--rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-+rm -f core conftest.err conftest.$ac_objext \
-+    conftest$ac_exeext conftest.$ac_ext
-+
-+  LIBS="$old_LIBS"
-+
- 
- fi
- rm -f core conftest.err conftest.$ac_objext \
-@@ -25768,12 +25767,8 @@
- 
- 
- 
--  old_CFLAGS="$CFLAGS"
--  old_CPPFLAGS="$CPPFLAGS"
--  old_LDFLAGS="$LDFLAGS"
--  CFLAGS="$CFLAGS "
--  CPPFLAGS="$CPPFLAGS "
--  LDFLAGS="$LDFLAGS $SELINUX_LIBS"
-+  old_LIBS="$LIBS"
-+  LIBS="$LIBS $SELINUX_LIBS"
- 
-     # This function is missing in old libselinux 1.xx versions
-     for ac_func in security_get_initial_context
-@@ -25788,9 +25783,7 @@
- done
- 
- 
--  CFLAGS="$old_CFLAGS"
--  CPPFLAGS="$old_CPPFLAGS"
--  LDFLAGS="$old_LDFLAGS"
-+  LIBS="$old_LIBS"
- 
- 
- fi
---- util-linux-2.37/Makefile.in
-+++ util-linux-2.37/Makefile.in
-@@ -1,4 +1,4 @@
--# Makefile.in generated by automake 1.16.2 from Makefile.am.
-+# Makefile.in generated by automake 1.16.3 from Makefile.am.
- # @configure_input@
- 
- # Copyright (C) 1994-2020 Free Software Foundation, Inc.
-@@ -4649,6 +4649,8 @@
- GZIP_ENV = --best
- DIST_ARCHIVES = $(distdir).tar.xz
- DIST_TARGETS = dist-xz
-+# Exists only to be overridden by the user if desired.
-+AM_DISTCHECK_DVI_TARGET = dvi
- distuninstallcheck_listfiles = find . -type f -print
- am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
-   | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
-@@ -14854,7 +14856,7 @@
- 	    $(DISTCHECK_CONFIGURE_FLAGS) \
- 	    --srcdir=../.. --prefix="$$dc_install_base" \
- 	  && $(MAKE) $(AM_MAKEFLAGS) \
--	  && $(MAKE) $(AM_MAKEFLAGS) dvi \
-+	  && $(MAKE) $(AM_MAKEFLAGS) $(AM_DISTCHECK_DVI_TARGET) \
- 	  && $(MAKE) $(AM_MAKEFLAGS) check \
- 	  && $(MAKE) $(AM_MAKEFLAGS) install \
- 	  && $(MAKE) $(AM_MAKEFLAGS) installcheck \
-@@ -14920,7 +14922,8 @@
- 	done
- install: $(BUILT_SOURCES)
- 	$(MAKE) $(AM_MAKEFLAGS) install-recursive
--install-exec: install-exec-recursive
-+install-exec: $(BUILT_SOURCES)
-+	$(MAKE) $(AM_MAKEFLAGS) install-exec-recursive
- install-data: install-data-recursive
- uninstall: uninstall-recursive
- 
-@@ -16157,7 +16160,8 @@
- 	uninstall-man8
- 
- .MAKE: $(am__recursive_targets) all check check-am install install-am \
--	install-data-am install-exec-am install-strip uninstall-am
-+	install-data-am install-exec install-exec-am install-strip \
-+	uninstall-am
- 
- .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
- 	am--depfiles am--refresh check check-am check-local clean \

diff --git a/sys-apps/util-linux/files/util-linux-2.37-lcrypt_link_fix.patch b/sys-apps/util-linux/files/util-linux-2.37-lcrypt_link_fix.patch
deleted file mode 100644
index 2da99b2841d..00000000000
--- a/sys-apps/util-linux/files/util-linux-2.37-lcrypt_link_fix.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 637cc045ee464909c261d6fa16c71ed15cd455e3 Mon Sep 17 00:00:00 2001
-From: Alex Xu <351006+Hello71@users.noreply.github.com>
-Date: Wed, 16 Jun 2021 13:58:25 +0000
-Subject: [PATCH] build-sys: Update configure.ac
-
-1. the test incorrectly used AC_COMPILE_IFELSE instead of
-   AC_LINK_IFELSE, defeating the purpose of checking -lcrypt.
-2. the test did not properly restore LIBS, causing later checks to all
-   fail if libcrypt wasn't found.
-3. HAVE_LIBCRYPT only controls whether to use -lcrypt, it is not
-   needed or used in any source files.
-
-[kzak@redhat.com: - improve commit message
-                  - use UL_{SET,RESTORE}_FLAGS() rather than directly
-		    modify $LIBS]
-
-Signed-off-by: Karel Zak <kzak@redhat.com>
----
- configure.ac | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 5181d524c..939c6d2d3 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -845,8 +845,8 @@ char *c = crypt("abc","pw");
-   have_libcrypt=no
-   have_crypt=yes
- ],[
--  LIBS="$LIBS -lcrypt"
--  AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-+  UL_SET_FLAGS([], [], [-lcrypt])
-+  AC_LINK_IFELSE([AC_LANG_PROGRAM([[
-   #ifdef HAVE_CRYPT_H
-   #include <crypt.h>
-   #else
-@@ -856,12 +856,12 @@ char *c = crypt("abc","pw");
-   ]], [[
-   char *c = crypt("abc","pw");
-   ]])],[
--  AC_DEFINE([HAVE_LIBCRYPT], [1], [Do we need -lcrypt?])
-   have_libcrypt=yes
-   have_crypt=yes
-   ],[
-   AC_MSG_WARN([crypt() is not available])
-   ])
-+  UL_RESTORE_FLAGS
- ])
- AM_CONDITIONAL([HAVE_LIBCRYPT], [test "x$have_libcrypt" = xyes])
- 

diff --git a/sys-apps/util-linux/files/util-linux-2.37-lcrypt_use_LIBS.patch b/sys-apps/util-linux/files/util-linux-2.37-lcrypt_use_LIBS.patch
deleted file mode 100644
index 2173195be61..00000000000
--- a/sys-apps/util-linux/files/util-linux-2.37-lcrypt_use_LIBS.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-From 75cba8d5cdb2a0e84c23de26007feac977837a6f Mon Sep 17 00:00:00 2001
-From: Karel Zak <kzak@redhat.com>
-Date: Fri, 18 Jun 2021 17:21:13 +0200
-Subject: [PATCH] build-sys: use $LIBS rather than LDFLAGS
-
-Fixes: https://github.com/karelzak/util-linux/pull/1349
-Signed-off-by: Karel Zak <kzak@redhat.com>
----
- configure.ac |  8 ++++----
- m4/ul.m4     | 29 +++++++++++------------------
- 2 files changed, 15 insertions(+), 22 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 939c6d2d3..234cebc68 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -845,7 +845,7 @@ char *c = crypt("abc","pw");
-   have_libcrypt=no
-   have_crypt=yes
- ],[
--  UL_SET_FLAGS([], [], [-lcrypt])
-+  UL_SET_LIBS([-lcrypt])
-   AC_LINK_IFELSE([AC_LANG_PROGRAM([[
-   #ifdef HAVE_CRYPT_H
-   #include <crypt.h>
-@@ -861,7 +861,7 @@ char *c = crypt("abc","pw");
-   ],[
-   AC_MSG_WARN([crypt() is not available])
-   ])
--  UL_RESTORE_FLAGS
-+  UL_RESTORE_LIBS
- ])
- AM_CONDITIONAL([HAVE_LIBCRYPT], [test "x$have_libcrypt" = xyes])
- 
-@@ -883,10 +883,10 @@ AS_IF([test "x$with_selinux" = xno], [
-     UL_PKG_STATIC([SELINUX_LIBS_STATIC], [libselinux])
-     AM_CONDITIONAL([HAVE_SELINUX], [true])
- 
--    UL_SET_FLAGS([], [], [$SELINUX_LIBS])
-+    UL_SET_LIBS([$SELINUX_LIBS])
-     # This function is missing in old libselinux 1.xx versions
-     AC_CHECK_FUNCS([security_get_initial_context])
--    UL_RESTORE_FLAGS
-+    UL_RESTORE_LIBS
-   ])
- ])
- AC_SUBST([SELINUX_LIBS])
-diff --git a/m4/ul.m4 b/m4/ul.m4
-index 951db7371..724579462 100644
---- a/m4/ul.m4
-+++ b/m4/ul.m4
-@@ -67,28 +67,21 @@ AC_DEFUN([UL_SET_ARCH], [
- ])
- 
- 
--dnl UL_SET_FLAGS(CFLAGS, CPPFLAGS, LDFLAGS)
--dnl
--dnl Sets new global CFLAGS, CPPFLAGS and LDFLAG, the original
--dnl setting could be restored by UL_RESTORE_FLAGS()
--dnl
--AC_DEFUN([UL_SET_FLAGS], [
--  old_CFLAGS="$CFLAGS"
--  old_CPPFLAGS="$CPPFLAGS"
--  old_LDFLAGS="$LDFLAGS"
--  CFLAGS="$CFLAGS $1"
--  CPPFLAGS="$CPPFLAGS $2"
--  LDFLAGS="$LDFLAGS $3"
-+dnl UL_SET_LIBS(LIBS)
-+dnl
-+dnl Sets new global LIBS, the original setting could be restored by UL_RESTORE_LIBS()
-+dnl
-+AC_DEFUN([UL_SET_LIBS], [
-+  old_LIBS="$LIBS"
-+  LIBS="$LIBS $1"
- ])
- 
--dnl UL_RESTORE_FLAGS()
-+dnl UL_RESTORE_LIBS()
- dnl
--dnl Restores CFLAGS, CPPFLAGS and LDFLAG previously saved by UL_SET_FLAGS()
-+dnl Restores LIBS previously saved by UL_SET_LIBS()
- dnl
--AC_DEFUN([UL_RESTORE_FLAGS], [
--  CFLAGS="$old_CFLAGS"
--  CPPFLAGS="$old_CPPFLAGS"
--  LDFLAGS="$old_LDFLAGS"
-+AC_DEFUN([UL_RESTORE_LIBS], [
-+  LIBS="$old_LIBS"
- ])
- 
- 

diff --git a/sys-apps/util-linux/files/util-linux-2.37-ppc-nortas.patch b/sys-apps/util-linux/files/util-linux-2.37-ppc-nortas.patch
deleted file mode 100644
index b3ac4716323..00000000000
--- a/sys-apps/util-linux/files/util-linux-2.37-ppc-nortas.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 45cd3aa4ded6df54dde85e6939b48bb273c8b6c3 Mon Sep 17 00:00:00 2001
-From: Georgy Yakovlev <gyakovlev@gentoo.org>
-Date: Wed, 2 Jun 2021 13:59:26 -0700
-Subject: [PATCH] lscpu: fix build on powerpc
-
-fails with error: label at end of compound statement
-and fix typo as bonus.
-
-Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>
----
- sys-utils/lscpu-cputype.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/sys-utils/lscpu-cputype.c b/sys-utils/lscpu-cputype.c
-index cf7af361c..d5ca8e1f1 100644
---- a/sys-utils/lscpu-cputype.c
-+++ b/sys-utils/lscpu-cputype.c
-@@ -724,7 +724,7 @@ int lscpu_read_archext(struct lscpu_cxt *cxt)
- 	}
- 
- #if defined(HAVE_LIBRTAS)
--	/* Get PowerPC speficic info */
-+	/* Get PowerPC specific info */
- 	if (!cxt->noalive) {
- 		int rc, len, ntypes;
- 
-@@ -745,8 +745,8 @@ int lscpu_read_archext(struct lscpu_cxt *cxt)
- 		ct->physsockets = strbe16toh(buf, 4);
- 		ct->physchips = strbe16toh(buf, 6);
- 		ct->physcoresperchip = strbe16toh(buf, 8);
--nortas:
- 	}
-+nortas:
- #endif
- 	return 0;
- }

diff --git a/sys-apps/util-linux/files/util-linux-2.37.1-lscpu_nullptr.patch b/sys-apps/util-linux/files/util-linux-2.37.1-lscpu_nullptr.patch
deleted file mode 100644
index bfb528cf1f1..00000000000
--- a/sys-apps/util-linux/files/util-linux-2.37.1-lscpu_nullptr.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-If you call a function which can return a null pointer you probably want
-to check the return value before attempting to dereference it. </sarcasm>
-
---- a/sys-utils/lscpu.c
-+++ b/sys-utils/lscpu.c
-@@ -966,7 +966,7 @@
- 		*(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");
-@@ -1008,9 +1008,9 @@
- 	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/util-linux-2.37-r1.ebuild b/sys-apps/util-linux/util-linux-2.37-r1.ebuild
deleted file mode 100644
index 5aa4349db6e..00000000000
--- a/sys-apps/util-linux/util-linux-2.37-r1.ebuild
+++ /dev/null
@@ -1,362 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..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="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-	SRC_URI="https://www.kernel.org/pub/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz
-		https://dev.gentoo.org/~polynomial-c/${MY_P}-manpages.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=(
-	# https://github.com/karelzak/util-linux/pull/1329
-	"${FILESDIR}/${P}-ppc-nortas.patch"
-
-	"${FILESDIR}/${P}-lcrypt_link_fix.patch" # 801403
-	"${FILESDIR}/${P}-lcrypt_use_LIBS.patch" # 801403
-	"${FILESDIR}/${P}-avoid_autoreconf.patch" # 801403
-)
-
-rm_man() {
-	[[ -n $1 ]] || die
-	local el
-	for el in $1 ; do
-		find "${WORKDIR}/man" -type f -name "${el}.?" -delete \
-			|| die
-	done
-}
-
-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
-	else
-		# Conditionally remove some man-pages
-		use hardlink 	|| rm_man "hardlink"
-		use kill 	|| rm_man "kill"
-		use logger 	|| rm_man "logger"
-		use ncurses 	|| rm_man "pg"
-		use su 		|| rm_man "su"
-		use tty-helpers	|| rm_man "mesg wall write"
-	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 [[ ${PV} != 9999 ]] ; then
-		doman "${WORKDIR}"/man/man*/*
-	fi
-
-	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
-}

diff --git a/sys-apps/util-linux/util-linux-2.37.1.ebuild b/sys-apps/util-linux/util-linux-2.37.1.ebuild
deleted file mode 100644
index c0b9a494a98..00000000000
--- a/sys-apps/util-linux/util-linux-2.37.1.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_{7..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="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-	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-lscpu_nullptr.patch
-)
-
-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
-}


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2021-08-11 12:30 Lars Wendler
  0 siblings, 0 replies; 32+ messages in thread
From: Lars Wendler @ 2021-08-11 12:30 UTC (permalink / raw
  To: gentoo-commits

commit:     da60551412d12ea1b7b0fe27a7603fb7873d63c2
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 11 12:25:48 2021 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Aug 11 12:30:42 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=da605514

sys-apps/util-linux: Revbump to add various upstream fixes

* Erase names in agetty by pressing CTRL-C (#804972)
* Fixed user mount of davfs2 filesystems (#805218)
* Fixed lscpu segfault on riscv plattform with upstream patch (#802606)
+ Fixed potential buffer overflow in ipcutils (#806070) (CVE-2021-37600)

Bug: https://bugs.gentoo.org/806070
Closes: https://bugs.gentoo.org/804972
Closes: https://bugs.gentoo.org/805218
Closes: https://bugs.gentoo.org/802606
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 .../util-linux-2.37.1-agetty_ctrl-c_erase.patch    |  50 +++
 .../util-linux-2.37.1-ipcutils_calloc_check.patch  |  25 ++
 .../util-linux-2.37.1-libmount_setgroups_fix.patch |  38 +++
 ...l-linux-2.37.1-lscpu_NULL_dereference_fix.patch |  50 +++
 sys-apps/util-linux/util-linux-2.37.1-r1.ebuild    | 338 +++++++++++++++++++++
 5 files changed, 501 insertions(+)

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
new file mode 100644
index 00000000000..4828fd449f9
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.37.1-agetty_ctrl-c_erase.patch
@@ -0,0 +1,50 @@
+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
new file mode 100644
index 00000000000..44490ce1bd0
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.37.1-ipcutils_calloc_check.patch
@@ -0,0 +1,25 @@
+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
new file mode 100644
index 00000000000..ebde207986b
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.37.1-libmount_setgroups_fix.patch
@@ -0,0 +1,38 @@
+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
new file mode 100644
index 00000000000..50322e63a8e
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.37.1-lscpu_NULL_dereference_fix.patch
@@ -0,0 +1,50 @@
+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/util-linux-2.37.1-r1.ebuild b/sys-apps/util-linux/util-linux-2.37.1-r1.ebuild
new file mode 100644
index 00000000000..74d874455d9
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.37.1-r1.ebuild
@@ -0,0 +1,338 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7..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="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+	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-ipcutils_calloc_check.patch #806070
+	"${FILESDIR}"/${PN}-2.37.1-libmount_setgroups_fix.patch #805218
+	"${FILESDIR}"/${PN}-2.37.1-agetty_ctrl-c_erase.patch #804972
+	"${FILESDIR}"/${PN}-2.37.1-lscpu_NULL_dereference_fix.patch #802606
+)
+
+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
+}


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2021-07-30 12:21 Marek Szuba
  0 siblings, 0 replies; 32+ messages in thread
From: Marek Szuba @ 2021-07-30 12:21 UTC (permalink / raw
  To: gentoo-commits

commit:     a8c8e0a371b8b48481ff8d79c0841e20a8ce78d8
Author:     Marek Szuba <marecki <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 30 12:16:59 2021 +0000
Commit:     Marek Szuba <marecki <AT> gentoo <DOT> org>
CommitDate: Fri Jul 30 12:20:58 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a8c8e0a3

sys-apps/util-linux-2.37.1: fix lscpu segfault on some arches

Observed on rv64 but could in princple happen elsewhere too.

Bug: https://bugs.gentoo.org/802606
Signed-off-by: Marek Szuba <marecki <AT> gentoo.org>

 .../files/util-linux-2.37.1-lscpu_nullptr.patch    | 26 ++++++++++++++++++++++
 sys-apps/util-linux/util-linux-2.37.1.ebuild       |  4 ++++
 2 files changed, 30 insertions(+)

diff --git a/sys-apps/util-linux/files/util-linux-2.37.1-lscpu_nullptr.patch b/sys-apps/util-linux/files/util-linux-2.37.1-lscpu_nullptr.patch
new file mode 100644
index 00000000000..bfb528cf1f1
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.37.1-lscpu_nullptr.patch
@@ -0,0 +1,26 @@
+If you call a function which can return a null pointer you probably want
+to check the return value before attempting to dereference it. </sarcasm>
+
+--- a/sys-utils/lscpu.c
++++ b/sys-utils/lscpu.c
+@@ -966,7 +966,7 @@
+ 		*(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");
+@@ -1008,9 +1008,9 @@
+ 	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/util-linux-2.37.1.ebuild b/sys-apps/util-linux/util-linux-2.37.1.ebuild
index 141bdf409cb..c12359853f4 100644
--- a/sys-apps/util-linux/util-linux-2.37.1.ebuild
+++ b/sys-apps/util-linux/util-linux-2.37.1.ebuild
@@ -86,6 +86,10 @@ RESTRICT="!test? ( test )"
 
 S="${WORKDIR}/${MY_P}"
 
+PATCHES=(
+	"${FILESDIR}"/${PN}-2.37.1-lscpu_nullptr.patch
+)
+
 src_prepare() {
 	default
 


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2021-07-10 21:31 Lars Wendler
  0 siblings, 0 replies; 32+ messages in thread
From: Lars Wendler @ 2021-07-10 21:31 UTC (permalink / raw
  To: gentoo-commits

commit:     f97eb250b55904388c542a546ec048f239f89b5c
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 10 21:24:33 2021 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sat Jul 10 21:31:41 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f97eb250

sys-apps/util-linux: Attempt fix build with sys-libs/libxcrypt[-abi_x86_32]

Bug: https://bugs.gentoo.org/801403
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 .../files/util-linux-2.37-avoid_autoreconf.patch   | 136 +++++++++++++++++++++
 .../files/util-linux-2.37-lcrypt_link_fix.patch    |  50 ++++++++
 .../files/util-linux-2.37-lcrypt_use_LIBS.patch    |  91 ++++++++++++++
 sys-apps/util-linux/util-linux-2.37.ebuild         |   4 +
 4 files changed, 281 insertions(+)

diff --git a/sys-apps/util-linux/files/util-linux-2.37-avoid_autoreconf.patch b/sys-apps/util-linux/files/util-linux-2.37-avoid_autoreconf.patch
new file mode 100644
index 00000000000..44ea6e5c2be
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.37-avoid_autoreconf.patch
@@ -0,0 +1,136 @@
+--- util-linux-2.37/config.h.in
++++ util-linux-2.37/config.h.in
+@@ -216,9 +216,6 @@
+ /* Define to 1 if you have the `cap-ng' library (-lcap-ng). */
+ #undef HAVE_LIBCAP_NG
+ 
+-/* Do we need -lcrypt? */
+-#undef HAVE_LIBCRYPT
+-
+ /* Define if libeconf is available */
+ #undef HAVE_LIBECONF
+ 
+--- util-linux-2.37/configure
++++ util-linux-2.37/configure
+@@ -4965,12 +4965,7 @@
+ program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
+ 
+ if test x"${MISSING+set}" != xset; then
+-  case $am_aux_dir in
+-  *\ * | *\	*)
+-    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
+-  *)
+-    MISSING="\${SHELL} $am_aux_dir/missing" ;;
+-  esac
++  MISSING="\${SHELL} '$am_aux_dir/missing'"
+ fi
+ # Use eval to expand $SHELL
+ if eval "$MISSING --is-lightweight"; then
+@@ -25591,7 +25586,10 @@
+ 
+ else
+ 
++
++  old_LIBS="$LIBS"
+   LIBS="$LIBS -lcrypt"
++
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ 
+@@ -25612,10 +25610,7 @@
+   return 0;
+ }
+ _ACEOF
+-if ac_fn_c_try_compile "$LINENO"; then :
+-
+-
+-$as_echo "#define HAVE_LIBCRYPT 1" >>confdefs.h
++if ac_fn_c_try_link "$LINENO"; then :
+ 
+   have_libcrypt=yes
+   have_crypt=yes
+@@ -25626,7 +25621,11 @@
+ $as_echo "$as_me: WARNING: crypt() is not available" >&2;}
+ 
+ fi
+-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
++rm -f core conftest.err conftest.$ac_objext \
++    conftest$ac_exeext conftest.$ac_ext
++
++  LIBS="$old_LIBS"
++
+ 
+ fi
+ rm -f core conftest.err conftest.$ac_objext \
+@@ -25768,12 +25767,8 @@
+ 
+ 
+ 
+-  old_CFLAGS="$CFLAGS"
+-  old_CPPFLAGS="$CPPFLAGS"
+-  old_LDFLAGS="$LDFLAGS"
+-  CFLAGS="$CFLAGS "
+-  CPPFLAGS="$CPPFLAGS "
+-  LDFLAGS="$LDFLAGS $SELINUX_LIBS"
++  old_LIBS="$LIBS"
++  LIBS="$LIBS $SELINUX_LIBS"
+ 
+     # This function is missing in old libselinux 1.xx versions
+     for ac_func in security_get_initial_context
+@@ -25788,9 +25783,7 @@
+ done
+ 
+ 
+-  CFLAGS="$old_CFLAGS"
+-  CPPFLAGS="$old_CPPFLAGS"
+-  LDFLAGS="$old_LDFLAGS"
++  LIBS="$old_LIBS"
+ 
+ 
+ fi
+--- util-linux-2.37/Makefile.in
++++ util-linux-2.37/Makefile.in
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.16.2 from Makefile.am.
++# Makefile.in generated by automake 1.16.3 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994-2020 Free Software Foundation, Inc.
+@@ -4649,6 +4649,8 @@
+ GZIP_ENV = --best
+ DIST_ARCHIVES = $(distdir).tar.xz
+ DIST_TARGETS = dist-xz
++# Exists only to be overridden by the user if desired.
++AM_DISTCHECK_DVI_TARGET = dvi
+ distuninstallcheck_listfiles = find . -type f -print
+ am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
+   | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
+@@ -14854,7 +14856,7 @@
+ 	    $(DISTCHECK_CONFIGURE_FLAGS) \
+ 	    --srcdir=../.. --prefix="$$dc_install_base" \
+ 	  && $(MAKE) $(AM_MAKEFLAGS) \
+-	  && $(MAKE) $(AM_MAKEFLAGS) dvi \
++	  && $(MAKE) $(AM_MAKEFLAGS) $(AM_DISTCHECK_DVI_TARGET) \
+ 	  && $(MAKE) $(AM_MAKEFLAGS) check \
+ 	  && $(MAKE) $(AM_MAKEFLAGS) install \
+ 	  && $(MAKE) $(AM_MAKEFLAGS) installcheck \
+@@ -14920,7 +14922,8 @@
+ 	done
+ install: $(BUILT_SOURCES)
+ 	$(MAKE) $(AM_MAKEFLAGS) install-recursive
+-install-exec: install-exec-recursive
++install-exec: $(BUILT_SOURCES)
++	$(MAKE) $(AM_MAKEFLAGS) install-exec-recursive
+ install-data: install-data-recursive
+ uninstall: uninstall-recursive
+ 
+@@ -16157,7 +16160,8 @@
+ 	uninstall-man8
+ 
+ .MAKE: $(am__recursive_targets) all check check-am install install-am \
+-	install-data-am install-exec-am install-strip uninstall-am
++	install-data-am install-exec install-exec-am install-strip \
++	uninstall-am
+ 
+ .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
+ 	am--depfiles am--refresh check check-am check-local clean \

diff --git a/sys-apps/util-linux/files/util-linux-2.37-lcrypt_link_fix.patch b/sys-apps/util-linux/files/util-linux-2.37-lcrypt_link_fix.patch
new file mode 100644
index 00000000000..2da99b2841d
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.37-lcrypt_link_fix.patch
@@ -0,0 +1,50 @@
+From 637cc045ee464909c261d6fa16c71ed15cd455e3 Mon Sep 17 00:00:00 2001
+From: Alex Xu <351006+Hello71@users.noreply.github.com>
+Date: Wed, 16 Jun 2021 13:58:25 +0000
+Subject: [PATCH] build-sys: Update configure.ac
+
+1. the test incorrectly used AC_COMPILE_IFELSE instead of
+   AC_LINK_IFELSE, defeating the purpose of checking -lcrypt.
+2. the test did not properly restore LIBS, causing later checks to all
+   fail if libcrypt wasn't found.
+3. HAVE_LIBCRYPT only controls whether to use -lcrypt, it is not
+   needed or used in any source files.
+
+[kzak@redhat.com: - improve commit message
+                  - use UL_{SET,RESTORE}_FLAGS() rather than directly
+		    modify $LIBS]
+
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ configure.ac | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 5181d524c..939c6d2d3 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -845,8 +845,8 @@ char *c = crypt("abc","pw");
+   have_libcrypt=no
+   have_crypt=yes
+ ],[
+-  LIBS="$LIBS -lcrypt"
+-  AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
++  UL_SET_FLAGS([], [], [-lcrypt])
++  AC_LINK_IFELSE([AC_LANG_PROGRAM([[
+   #ifdef HAVE_CRYPT_H
+   #include <crypt.h>
+   #else
+@@ -856,12 +856,12 @@ char *c = crypt("abc","pw");
+   ]], [[
+   char *c = crypt("abc","pw");
+   ]])],[
+-  AC_DEFINE([HAVE_LIBCRYPT], [1], [Do we need -lcrypt?])
+   have_libcrypt=yes
+   have_crypt=yes
+   ],[
+   AC_MSG_WARN([crypt() is not available])
+   ])
++  UL_RESTORE_FLAGS
+ ])
+ AM_CONDITIONAL([HAVE_LIBCRYPT], [test "x$have_libcrypt" = xyes])
+ 

diff --git a/sys-apps/util-linux/files/util-linux-2.37-lcrypt_use_LIBS.patch b/sys-apps/util-linux/files/util-linux-2.37-lcrypt_use_LIBS.patch
new file mode 100644
index 00000000000..2173195be61
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.37-lcrypt_use_LIBS.patch
@@ -0,0 +1,91 @@
+From 75cba8d5cdb2a0e84c23de26007feac977837a6f Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Fri, 18 Jun 2021 17:21:13 +0200
+Subject: [PATCH] build-sys: use $LIBS rather than LDFLAGS
+
+Fixes: https://github.com/karelzak/util-linux/pull/1349
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ configure.ac |  8 ++++----
+ m4/ul.m4     | 29 +++++++++++------------------
+ 2 files changed, 15 insertions(+), 22 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 939c6d2d3..234cebc68 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -845,7 +845,7 @@ char *c = crypt("abc","pw");
+   have_libcrypt=no
+   have_crypt=yes
+ ],[
+-  UL_SET_FLAGS([], [], [-lcrypt])
++  UL_SET_LIBS([-lcrypt])
+   AC_LINK_IFELSE([AC_LANG_PROGRAM([[
+   #ifdef HAVE_CRYPT_H
+   #include <crypt.h>
+@@ -861,7 +861,7 @@ char *c = crypt("abc","pw");
+   ],[
+   AC_MSG_WARN([crypt() is not available])
+   ])
+-  UL_RESTORE_FLAGS
++  UL_RESTORE_LIBS
+ ])
+ AM_CONDITIONAL([HAVE_LIBCRYPT], [test "x$have_libcrypt" = xyes])
+ 
+@@ -883,10 +883,10 @@ AS_IF([test "x$with_selinux" = xno], [
+     UL_PKG_STATIC([SELINUX_LIBS_STATIC], [libselinux])
+     AM_CONDITIONAL([HAVE_SELINUX], [true])
+ 
+-    UL_SET_FLAGS([], [], [$SELINUX_LIBS])
++    UL_SET_LIBS([$SELINUX_LIBS])
+     # This function is missing in old libselinux 1.xx versions
+     AC_CHECK_FUNCS([security_get_initial_context])
+-    UL_RESTORE_FLAGS
++    UL_RESTORE_LIBS
+   ])
+ ])
+ AC_SUBST([SELINUX_LIBS])
+diff --git a/m4/ul.m4 b/m4/ul.m4
+index 951db7371..724579462 100644
+--- a/m4/ul.m4
++++ b/m4/ul.m4
+@@ -67,28 +67,21 @@ AC_DEFUN([UL_SET_ARCH], [
+ ])
+ 
+ 
+-dnl UL_SET_FLAGS(CFLAGS, CPPFLAGS, LDFLAGS)
+-dnl
+-dnl Sets new global CFLAGS, CPPFLAGS and LDFLAG, the original
+-dnl setting could be restored by UL_RESTORE_FLAGS()
+-dnl
+-AC_DEFUN([UL_SET_FLAGS], [
+-  old_CFLAGS="$CFLAGS"
+-  old_CPPFLAGS="$CPPFLAGS"
+-  old_LDFLAGS="$LDFLAGS"
+-  CFLAGS="$CFLAGS $1"
+-  CPPFLAGS="$CPPFLAGS $2"
+-  LDFLAGS="$LDFLAGS $3"
++dnl UL_SET_LIBS(LIBS)
++dnl
++dnl Sets new global LIBS, the original setting could be restored by UL_RESTORE_LIBS()
++dnl
++AC_DEFUN([UL_SET_LIBS], [
++  old_LIBS="$LIBS"
++  LIBS="$LIBS $1"
+ ])
+ 
+-dnl UL_RESTORE_FLAGS()
++dnl UL_RESTORE_LIBS()
+ dnl
+-dnl Restores CFLAGS, CPPFLAGS and LDFLAG previously saved by UL_SET_FLAGS()
++dnl Restores LIBS previously saved by UL_SET_LIBS()
+ dnl
+-AC_DEFUN([UL_RESTORE_FLAGS], [
+-  CFLAGS="$old_CFLAGS"
+-  CPPFLAGS="$old_CPPFLAGS"
+-  LDFLAGS="$old_LDFLAGS"
++AC_DEFUN([UL_RESTORE_LIBS], [
++  LIBS="$old_LIBS"
+ ])
+ 
+ 

diff --git a/sys-apps/util-linux/util-linux-2.37.ebuild b/sys-apps/util-linux/util-linux-2.37.ebuild
index 2b3ff76f988..e12e9483062 100644
--- a/sys-apps/util-linux/util-linux-2.37.ebuild
+++ b/sys-apps/util-linux/util-linux-2.37.ebuild
@@ -90,6 +90,10 @@ S="${WORKDIR}/${MY_P}"
 PATCHES=(
 	# https://github.com/karelzak/util-linux/pull/1329
 	"${FILESDIR}/${P}-ppc-nortas.patch"
+
+	"${FILESDIR}/${P}-lcrypt_link_fix.patch" # 801403
+	"${FILESDIR}/${P}-lcrypt_use_LIBS.patch" # 801403
+	"${FILESDIR}/${P}-avoid_autoreconf.patch" # 801403
 )
 
 rm_man() {


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2021-06-02 21:14 Georgy Yakovlev
  0 siblings, 0 replies; 32+ messages in thread
From: Georgy Yakovlev @ 2021-06-02 21:14 UTC (permalink / raw
  To: gentoo-commits

commit:     9433975dc4e373168c535e1d65d0b1a7c8429ac9
Author:     Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
AuthorDate: Wed Jun  2 21:08:15 2021 +0000
Commit:     Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
CommitDate: Wed Jun  2 21:12:12 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9433975d

sys-apps/util-linux: fix build on powerpc

Package-Manager: Portage-3.0.19, Repoman-3.0.3
Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org>

 .../files/util-linux-2.37-ppc-nortas.patch         | 36 ++++++++++++++++++++++
 sys-apps/util-linux/util-linux-2.37.ebuild         |  2 ++
 2 files changed, 38 insertions(+)

diff --git a/sys-apps/util-linux/files/util-linux-2.37-ppc-nortas.patch b/sys-apps/util-linux/files/util-linux-2.37-ppc-nortas.patch
new file mode 100644
index 00000000000..b3ac4716323
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.37-ppc-nortas.patch
@@ -0,0 +1,36 @@
+From 45cd3aa4ded6df54dde85e6939b48bb273c8b6c3 Mon Sep 17 00:00:00 2001
+From: Georgy Yakovlev <gyakovlev@gentoo.org>
+Date: Wed, 2 Jun 2021 13:59:26 -0700
+Subject: [PATCH] lscpu: fix build on powerpc
+
+fails with error: label at end of compound statement
+and fix typo as bonus.
+
+Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>
+---
+ sys-utils/lscpu-cputype.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/sys-utils/lscpu-cputype.c b/sys-utils/lscpu-cputype.c
+index cf7af361c..d5ca8e1f1 100644
+--- a/sys-utils/lscpu-cputype.c
++++ b/sys-utils/lscpu-cputype.c
+@@ -724,7 +724,7 @@ int lscpu_read_archext(struct lscpu_cxt *cxt)
+ 	}
+ 
+ #if defined(HAVE_LIBRTAS)
+-	/* Get PowerPC speficic info */
++	/* Get PowerPC specific info */
+ 	if (!cxt->noalive) {
+ 		int rc, len, ntypes;
+ 
+@@ -745,8 +745,8 @@ int lscpu_read_archext(struct lscpu_cxt *cxt)
+ 		ct->physsockets = strbe16toh(buf, 4);
+ 		ct->physchips = strbe16toh(buf, 6);
+ 		ct->physcoresperchip = strbe16toh(buf, 8);
+-nortas:
+ 	}
++nortas:
+ #endif
+ 	return 0;
+ }

diff --git a/sys-apps/util-linux/util-linux-2.37.ebuild b/sys-apps/util-linux/util-linux-2.37.ebuild
index 66a36a6cd0c..2b3ff76f988 100644
--- a/sys-apps/util-linux/util-linux-2.37.ebuild
+++ b/sys-apps/util-linux/util-linux-2.37.ebuild
@@ -88,6 +88,8 @@ RESTRICT="!test? ( test )"
 S="${WORKDIR}/${MY_P}"
 
 PATCHES=(
+	# https://github.com/karelzak/util-linux/pull/1329
+	"${FILESDIR}/${P}-ppc-nortas.patch"
 )
 
 rm_man() {


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2020-12-22 14:43 Andreas K. Hüttel
  0 siblings, 0 replies; 32+ messages in thread
From: Andreas K. Hüttel @ 2020-12-22 14:43 UTC (permalink / raw
  To: gentoo-commits

commit:     e03739738c852415ce57e1d996f6e915b3272d82
Author:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 22 14:42:39 2020 +0000
Commit:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue Dec 22 14:42:58 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e0373973

sys-apps/util-linux: Fix build on riscv32

Patch is backport from upstream master

Package-Manager: Portage-3.0.9, Repoman-3.0.2
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>

 .../files/util-linux-2.36.1-riscv32.patch          | 29 ++++++++++++++++++++++
 sys-apps/util-linux/util-linux-2.36.1-r1.ebuild    |  1 +
 2 files changed, 30 insertions(+)

diff --git a/sys-apps/util-linux/files/util-linux-2.36.1-riscv32.patch b/sys-apps/util-linux/files/util-linux-2.36.1-riscv32.patch
new file mode 100644
index 00000000000..b18a01906eb
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.36.1-riscv32.patch
@@ -0,0 +1,29 @@
+From 367972fae13d170675768d63678577cae1890143 Mon Sep 17 00:00:00 2001
+From: Pino Toscano <toscano.pino@tiscali.it>
+Date: Tue, 17 Nov 2020 11:32:45 +0100
+Subject: [PATCH] hwclock: do not assume __NR_settimeofday_time32
+
+Check that __NR_settimeofday_time32 exists before trying to use it as
+syscall number.
+
+Signed-off-by: Pino Toscano <toscano.pino@tiscali.it>
+---
+ sys-utils/hwclock.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/sys-utils/hwclock.c b/sys-utils/hwclock.c
+index 1f7ef3317..db448687d 100644
+--- a/sys-utils/hwclock.c
++++ b/sys-utils/hwclock.c
+@@ -678,7 +678,7 @@ display_time(struct timeval hwctime)
+ #ifndef SYS_settimeofday
+ # ifdef __NR_settimeofday
+ #  define SYS_settimeofday	__NR_settimeofday
+-# else
++# elif defined(__NR_settimeofday_time32)
+ #  define SYS_settimeofday	__NR_settimeofday_time32
+ # endif
+ #endif
+-- 
+2.26.2
+

diff --git a/sys-apps/util-linux/util-linux-2.36.1-r1.ebuild b/sys-apps/util-linux/util-linux-2.36.1-r1.ebuild
index f7acbfdb151..8008e211b8d 100644
--- a/sys-apps/util-linux/util-linux-2.36.1-r1.ebuild
+++ b/sys-apps/util-linux/util-linux-2.36.1-r1.ebuild
@@ -77,6 +77,7 @@ S="${WORKDIR}/${MY_P}"
 
 PATCHES=(
 	"${FILESDIR}/${P}-libmount_dont_use_symfollow.patch" #755878
+	"${FILESDIR}/${P}-riscv32.patch"
 )
 
 src_prepare() {


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2020-11-16 17:36 Lars Wendler
  0 siblings, 0 replies; 32+ messages in thread
From: Lars Wendler @ 2020-11-16 17:36 UTC (permalink / raw
  To: gentoo-commits

commit:     4fa98909b99fbf08d15c0b33e29dcfb7983baae3
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Mon Nov 16 17:35:43 2020 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Nov 16 17:35:58 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4fa98909

sys-apps/util-linux: Removed old

Package-Manager: Portage-3.0.9, Repoman-3.0.2
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 sys-apps/util-linux/Manifest                       |   1 -
 .../util-linux-2.35.1-hwclock-glibc-2.31.patch     | 165 -----------
 ...til-linux-2.35.1-include_sys_types-header.patch |  58 ----
 sys-apps/util-linux/util-linux-2.35.1-r2.ebuild    | 317 ---------------------
 4 files changed, 541 deletions(-)

diff --git a/sys-apps/util-linux/Manifest b/sys-apps/util-linux/Manifest
index 416b9d35a2a..ad836f18647 100644
--- a/sys-apps/util-linux/Manifest
+++ b/sys-apps/util-linux/Manifest
@@ -1,6 +1,5 @@
 DIST util-linux-2.33.2.tar.xz 4707024 BLAKE2B fdeed0a236edd26d268bccca8cde2cf1b7ecbff521ede9fa26ea22c8e5cdfc380a416a168789504b303f1b569d163e41f6630ee28829be7f2b2129fa14c4fffa SHA512 ac88790a0272366b384b54df19cb28318014d98819d5d96aa05528ff17ab57a8c66d012a2f1b59caca4c5d4ea669e8c041e1123517c1f1c2d9960ef701aaf749
 DIST util-linux-2.34.tar.xz 4974812 BLAKE2B d26b2f74d490eaee0a40d4c75a1a351ba165b4a52f9bbf6cf9d1afd7ae1382a3a3dfe41180584e97e9aaad6950f604cad928f30747590e3e1e669c8797689758 SHA512 2d0b76f63d32e7afb7acf61a83fabbfd58baa34ab78b3a331ce87f9c676a5fd71c56a493ded95039540d2c46b6048caaa38d7fb4491eb3d52d7b09dc54655cd7
-DIST util-linux-2.35.1.tar.xz 5138360 BLAKE2B 08c16d4d9fd670b62c2d664feda2cfa53d0cecc36bbaa2c3ed5960bf70f905f11caa7a904c63f36e12b472f10b8e781351cca0cf2f858c2b66e4fd0204b1c456 SHA512 6e27e08bfc02378970f015decfea5a52d6c342c4c8f4ac48dd07d248485eb797e506d91d290dbbca344c3e5cfe1fc150db80a23d510367427232f5abeabe591a
 DIST util-linux-2.35.2.tar.xz 5150488 BLAKE2B 93eb90ab33db7795b46425ec4ec87f8a2d3d6e0dad671345375ea02efd654bf72041932d30b41bea494e4b62952e2fd14ea9f9e6c738d4eb4b050bd170b9bb0e SHA512 59e038ba71aa74c9af6f927b357483a965f675ab3ffcd25cf0c1b043656312d2d2d07c55659fd3da69ede165bec313e0ae7e1cd73758e49681ae610604b399a2
 DIST util-linux-2.36.1.tar.xz 5231880 BLAKE2B 52d867aa0b722a84828c37958d80b0bdcc1ceaae4e46fa6550ad0f2f152c52e4aaf2c8bc5fdf4f27b522037a870ff2554382abac0eaa50a6791d8b8016e3d74c SHA512 9dfd01ae4c16fa35015dafd222d555988b72e4d1d2fbadd140791b9ef78f84fa8254d4d08dc67cabf41e873338867f19e786b989d708ccfe5161c4f7679bba7a
 DIST util-linux-2.36.tar.xz 5242420 BLAKE2B a03b626a376815f37a17b3808d1d421c7ec27a133edf857116603de38f7e13f527687691d0c8aa68f4f6868be6f3bcc64573d759308d74731107e02067449ce6 SHA512 cbb4975da8d99a1edd45514171d59ea7b019ce0f77a81e88b447a733f725e91c53540d9dc78bc626dc011dca129b8b150aaf9e64ccf62a4202ae816581acf4fd

diff --git a/sys-apps/util-linux/files/util-linux-2.35.1-hwclock-glibc-2.31.patch b/sys-apps/util-linux/files/util-linux-2.35.1-hwclock-glibc-2.31.patch
deleted file mode 100644
index c8b5cf76a23..00000000000
--- a/sys-apps/util-linux/files/util-linux-2.35.1-hwclock-glibc-2.31.patch
+++ /dev/null
@@ -1,165 +0,0 @@
-From cd781c405be82540484da3bfe3d3f17a39b8eb5c Mon Sep 17 00:00:00 2001
-From: J William Piggott <elseifthen@gmx.com>
-Date: Fri, 21 Feb 2020 20:03:47 -0500
-Subject: hwclock: make glibc 2.31 compatible
-
-______________________________________________________
-GNU C Library NEWS -- history of user-visible changes.
-Version 2.31
-Deprecated and removed features, and other changes affecting compatibility:
-
-* The settimeofday function can still be used to set a system-wide time
-  zone when the operating system supports it.  This is because the Linux
-  kernel reused the API, on some architectures, to describe a system-wide
-  time-zone-like offset between the software clock maintained by the kernel,
-  and the "RTC" clock that keeps time when the system is shut down.
-
-  However, to reduce the odds of this offset being set by accident,
-  settimeofday can no longer be used to set the time and the offset
-  simultaneously.  If both of its two arguments are non-null, the call
-  will fail (setting errno to EINVAL).
-
-  Callers attempting to set this offset should also be prepared for the call
-  to fail and set errno to ENOSYS; this already happens on the Hurd and on
-  some Linux architectures.  The Linux kernel maintainers are discussing a
-  more principled replacement for the reused API.  After a replacement
-  becomes available, we will change settimeofday to fail with ENOSYS on all
-  platforms when its 'tzp' argument is not a null pointer.
-
-  settimeofday itself is obsolescent according to POSIX.  Programs that set
-  the system time should use clock_settime and/or the adjtime family of
-  functions instead.  We may cease to make settimeofday available to newly
-  linked binaries after there is a replacement for Linux's time-zone-like
-  offset API.
-______________________________________________________
-
-hwclock(8) had one settimeofday(2) call where both args were set for
---hctosys when the RTC was ticking UTC. This allowed setting the system
-time, timezone, and locking the warp_clock function with a single call.
-That operation now takes 3 calls of settimeofday(2).
-
-Although this common operation now takes three calls, the overall logic
-for the set_system_clock() function was simplified.
-
-Co-Author: Karel Zak <kzak@redhat.com>
-Signed-off-by: J William Piggott <elseifthen@gmx.com>
----
- sys-utils/hwclock.c | 71 ++++++++++++++++++++++++++++-------------------------
- 1 file changed, 37 insertions(+), 34 deletions(-)
-
-diff --git a/sys-utils/hwclock.c b/sys-utils/hwclock.c
-index e736da717..1191a8571 100644
---- a/sys-utils/hwclock.c
-+++ b/sys-utils/hwclock.c
-@@ -643,28 +643,28 @@ display_time(struct timeval hwctime)
-  * tz.tz_minuteswest argument and sets PCIL (see below). At boot settimeofday(2)
-  * has one-shot access to this function as shown in the table below.
-  *
-- * +-------------------------------------------------------------------+
-- * |                       settimeofday(tv, tz)                        |
-- * |-------------------------------------------------------------------|
-- * |     Arguments     |  System Time  | PCIL |           | warp_clock |
-- * |   tv    |   tz    | set  | warped | set  | firsttime |   locked   |
-- * |---------|---------|---------------|------|-----------|------------|
-- * | pointer | NULL    |  yes |   no   |  no  |     1     |    no      |
-- * | pointer | pointer |  yes |   no   |  no  |     0     |    yes     |
-- * | NULL    | ptr2utc |  no  |   no   |  no  |     0     |    yes     |
-- * | NULL    | pointer |  no  |   yes  |  yes |     0     |    yes     |
-- * +-------------------------------------------------------------------+
-+ * +-------------------------------------------------------------------------+
-+ * |                           settimeofday(tv, tz)                          |
-+ * |-------------------------------------------------------------------------|
-+ * |     Arguments     |  System Time  | TZ  | PCIL |           | warp_clock |
-+ * |   tv    |   tz    | set  | warped | set | set  | firsttime |   locked   |
-+ * |---------|---------|---------------|-----|------|-----------|------------|
-+ * | pointer | NULL    |  yes |   no   | no  |  no  |     1     |    no      |
-+ * | NULL    | ptr2utc |  no  |   no   | yes |  no  |     0     |    yes     |
-+ * | NULL    | pointer |  no  |   yes  | yes |  yes |     0     |    yes     |
-+ * +-------------------------------------------------------------------------+
-  * ptr2utc: tz.tz_minuteswest is zero (UTC).
-  * PCIL: persistent_clock_is_local, sets the "11 minute mode" timescale.
-  * firsttime: locks the warp_clock function (initialized to 1 at boot).
-+ * Since glibc v2.31 settimeofday() will fail if both args are non NULL
-  *
-  * +---------------------------------------------------------------------------+
-  * |  op     | RTC scale | settimeofday calls                                  |
-  * |---------|-----------|-----------------------------------------------------|
-  * | systz   |   Local   | 1) warps system time*, sets PCIL* and kernel tz     |
-  * | systz   |   UTC     | 1st) locks warp_clock* 2nd) sets kernel tz          |
-- * | hctosys |   Local   | 1st) sets PCIL* 2nd) sets system time and kernel tz |
-- * | hctosys |   UTC     | 1) sets system time and kernel tz                   |
-+ * | hctosys |   Local   | 1st) sets PCIL* & kernel tz   2nd) sets system time |
-+ * | hctosys |   UTC     | 1st) locks warp* 2nd) sets tz 3rd) sets system time |
-  * +---------------------------------------------------------------------------+
-  *                         * only on first call after boot
-  */
-@@ -675,42 +675,45 @@ set_system_clock(const struct hwclock_control *ctl,
- 	struct tm broken;
- 	int minuteswest;
- 	int rc = 0;
--	const struct timezone tz_utc = { 0 };
- 
- 	localtime_r(&newtime.tv_sec, &broken);
- 	minuteswest = -get_gmtoff(&broken) / 60;
- 
- 	if (ctl->verbose) {
--		if (ctl->hctosys && !ctl->universal)
--			printf(_("Calling settimeofday(NULL, %d) to set "
--				 "persistent_clock_is_local.\n"), minuteswest);
--		if (ctl->systz && ctl->universal)
-+		if (ctl->universal) {
- 			puts(_("Calling settimeofday(NULL, 0) "
--				"to lock the warp function."));
-+			       "to lock the warp_clock function."));
-+			if (!( ctl->universal && !minuteswest ))
-+				printf(_("Calling settimeofday(NULL, %d) "
-+					 "to set the kernel timezone.\n"),
-+				       minuteswest);
-+		} else
-+			printf(_("Calling settimeofday(NULL, %d) to warp "
-+				 "System time, set PCIL and the kernel tz.\n"),
-+			       minuteswest);
-+
- 		if (ctl->hctosys)
--			printf(_("Calling settimeofday(%ld.%06ld, %d)\n"),
--			       newtime.tv_sec, newtime.tv_usec, minuteswest);
--		else {
--			printf(_("Calling settimeofday(NULL, %d) "), minuteswest);
--			if (ctl->universal)
--				 puts(_("to set the kernel timezone."));
--			else
--				 puts(_("to warp System time."));
--		}
-+			printf(_("Calling settimeofday(%ld.%06ld, NULL) "
-+				 "to set the System time.\n"),
-+			       newtime.tv_sec, newtime.tv_usec);
- 	}
- 
- 	if (!ctl->testing) {
-+		const struct timezone tz_utc = { 0 };
- 		const struct timezone tz = { minuteswest };
- 
--		if (ctl->hctosys && !ctl->universal)	/* set PCIL */
--			rc = settimeofday(NULL, &tz);
--		if (ctl->systz && ctl->universal)	/* lock warp_clock */
-+		/* If UTC RTC: lock warp_clock and PCIL */
-+		if (ctl->universal)
- 			rc = settimeofday(NULL, &tz_utc);
--		if (!rc && ctl->hctosys)
--			rc = settimeofday(&newtime, &tz);
--		else if (!rc)
-+
-+		/* Set kernel tz; if localtime RTC: warp_clock and set PCIL */
-+		if (!rc && !( ctl->universal && !minuteswest ))
- 			rc = settimeofday(NULL, &tz);
- 
-+		/* Set the System Clock */
-+		if ((!rc || errno == ENOSYS) && ctl->hctosys)
-+			rc = settimeofday(&newtime, NULL);
-+
- 		if (rc) {
- 			warn(_("settimeofday() failed"));
- 			return  EXIT_FAILURE;
--- 
-cgit 1.2-0.3.lf.el7
-

diff --git a/sys-apps/util-linux/files/util-linux-2.35.1-include_sys_types-header.patch b/sys-apps/util-linux/files/util-linux-2.35.1-include_sys_types-header.patch
deleted file mode 100644
index 8c646ee73a9..00000000000
--- a/sys-apps/util-linux/files/util-linux-2.35.1-include_sys_types-header.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From 3cfde0370d3a8949df0c5bcf447cec6692910ed2 Mon Sep 17 00:00:00 2001
-From: Sami Kerola <kerolasa@iki.fi>
-Date: Sat, 15 Feb 2020 21:12:50 +0000
-Subject: [PATCH] kill: include sys/types.h before checking
- SYS_pidfd_send_signal
-
-Including sys/types.h must happen before SYS_pidfd_send_signal is checked,
-because that header defines variable in normal conditions.  When sys/types.h
-does not have SYS_pidfd_send_signal then fallback is defined in config.h
-that is included by default, and has therefore worked fine before and after
-this change.
-
-Signed-off-by: Sami Kerola <kerolasa@iki.fi>
----
- include/pidfd-utils.h | 18 ++++++++++--------
- 1 file changed, 10 insertions(+), 8 deletions(-)
-
-diff --git a/include/pidfd-utils.h b/include/pidfd-utils.h
-index 593346576..0baedd2c9 100644
---- a/include/pidfd-utils.h
-+++ b/include/pidfd-utils.h
-@@ -1,26 +1,28 @@
- #ifndef UTIL_LINUX_PIDFD_UTILS
- #define UTIL_LINUX_PIDFD_UTILS
- 
--#if defined(__linux__) && defined(SYS_pidfd_send_signal)
--# include <sys/types.h>
-+#if defined(__linux__)
- # include <sys/syscall.h>
-+# if defined(SYS_pidfd_send_signal)
-+#  include <sys/types.h>
- 
--# ifndef HAVE_PIDFD_OPEN
-+#  ifndef HAVE_PIDFD_OPEN
- static inline int pidfd_send_signal(int pidfd, int sig, siginfo_t *info,
- 				    unsigned int flags)
- {
- 	return syscall(SYS_pidfd_send_signal, pidfd, sig, info, flags);
- }
--# endif
-+#  endif
- 
--# ifndef HAVE_PIDFD_SEND_SIGNAL
-+#  ifndef HAVE_PIDFD_SEND_SIGNAL
- static inline int pidfd_open(pid_t pid, unsigned int flags)
- {
- 	return syscall(SYS_pidfd_open, pid, flags);
- }
--# endif
-+#  endif
- 
--# define UL_HAVE_PIDFD 1
-+#  define UL_HAVE_PIDFD 1
- 
--#endif /* __linux__ && SYS_pidfd_send_signal */
-+# endif	/* SYS_pidfd_send_signal */
-+#endif /* __linux__ */
- #endif /* UTIL_LINUX_PIDFD_UTILS */

diff --git a/sys-apps/util-linux/util-linux-2.35.1-r2.ebuild b/sys-apps/util-linux/util-linux-2.35.1-r2.ebuild
deleted file mode 100644
index 293433d1724..00000000000
--- a/sys-apps/util-linux/util-linux-2.35.1-r2.ebuild
+++ /dev/null
@@ -1,317 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8} )
-
-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="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux"
-	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 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 )
-	hardlink? ( dev-libs/libpcre2:= )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2:0=[unicode?] )
-	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_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-RESTRICT="!test? ( test )"
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=(
-	"${FILESDIR}"/util-linux-2.35.1-include_sys_types-header.patch
-	"${FILESDIR}"/util-linux-2.35.1-cleanup-pidfd-include.patch
-	"${FILESDIR}"/util-linux-2.35.1-hwclock-glibc-2.31.patch
-)
-
-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 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-nologin
-			--disable-pylibmount
-			--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)
-		)
-	else
-		myeconfargs+=(
-			--disable-all-programs
-			--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/*}
-	chmod -x "${ED}"/usr/share/doc/util-linux-${PVR}/getopt/getopt-parse* || die
-
-	# 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
-}


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2020-03-25 14:14 Thomas Deutschmann
  0 siblings, 0 replies; 32+ messages in thread
From: Thomas Deutschmann @ 2020-03-25 14:14 UTC (permalink / raw
  To: gentoo-commits

commit:     935c99eeed01166ca391aed5711ad63b566661e5
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Wed Mar 25 14:09:40 2020 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Wed Mar 25 14:10:40 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=935c99ee

sys-apps/util-linux: fix compile error caused by undefined SYS_pidfd_send_signal

Closes: https://bugs.gentoo.org/714100
Package-Manager: Portage-2.3.94, Repoman-2.3.21
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 .../util-linux-2.35.1-cleanup-pidfd-include.patch  | 36 ++++++++++++++
 ...til-linux-2.35.1-include_sys_types-header.patch | 58 ++++++++++++++++++++++
 sys-apps/util-linux/util-linux-2.35.1.ebuild       |  5 ++
 3 files changed, 99 insertions(+)

diff --git a/sys-apps/util-linux/files/util-linux-2.35.1-cleanup-pidfd-include.patch b/sys-apps/util-linux/files/util-linux-2.35.1-cleanup-pidfd-include.patch
new file mode 100644
index 00000000000..85e4d705735
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.35.1-cleanup-pidfd-include.patch
@@ -0,0 +1,36 @@
+From 0a4035ff2e4fd5b5ae0cf8f8665696c2aff53b75 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Tue, 10 Mar 2020 11:43:16 +0100
+Subject: [PATCH] include: cleanup pidfd inckudes
+
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ include/pidfd-utils.h | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/include/pidfd-utils.h b/include/pidfd-utils.h
+index 0baedd2c9..4a6c3a604 100644
+--- a/include/pidfd-utils.h
++++ b/include/pidfd-utils.h
+@@ -3,10 +3,10 @@
+ 
+ #if defined(__linux__)
+ # include <sys/syscall.h>
+-# if defined(SYS_pidfd_send_signal)
++# if defined(SYS_pidfd_send_signal) && defined(SYS_pidfd_open)
+ #  include <sys/types.h>
+ 
+-#  ifndef HAVE_PIDFD_OPEN
++#  ifndef HAVE_PIDFD_SEND_SIGNAL
+ static inline int pidfd_send_signal(int pidfd, int sig, siginfo_t *info,
+ 				    unsigned int flags)
+ {
+@@ -14,7 +14,7 @@ static inline int pidfd_send_signal(int pidfd, int sig, siginfo_t *info,
+ }
+ #  endif
+ 
+-#  ifndef HAVE_PIDFD_SEND_SIGNAL
++#  ifndef HAVE_PIDFD_OPEN
+ static inline int pidfd_open(pid_t pid, unsigned int flags)
+ {
+ 	return syscall(SYS_pidfd_open, pid, flags);

diff --git a/sys-apps/util-linux/files/util-linux-2.35.1-include_sys_types-header.patch b/sys-apps/util-linux/files/util-linux-2.35.1-include_sys_types-header.patch
new file mode 100644
index 00000000000..8c646ee73a9
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.35.1-include_sys_types-header.patch
@@ -0,0 +1,58 @@
+From 3cfde0370d3a8949df0c5bcf447cec6692910ed2 Mon Sep 17 00:00:00 2001
+From: Sami Kerola <kerolasa@iki.fi>
+Date: Sat, 15 Feb 2020 21:12:50 +0000
+Subject: [PATCH] kill: include sys/types.h before checking
+ SYS_pidfd_send_signal
+
+Including sys/types.h must happen before SYS_pidfd_send_signal is checked,
+because that header defines variable in normal conditions.  When sys/types.h
+does not have SYS_pidfd_send_signal then fallback is defined in config.h
+that is included by default, and has therefore worked fine before and after
+this change.
+
+Signed-off-by: Sami Kerola <kerolasa@iki.fi>
+---
+ include/pidfd-utils.h | 18 ++++++++++--------
+ 1 file changed, 10 insertions(+), 8 deletions(-)
+
+diff --git a/include/pidfd-utils.h b/include/pidfd-utils.h
+index 593346576..0baedd2c9 100644
+--- a/include/pidfd-utils.h
++++ b/include/pidfd-utils.h
+@@ -1,26 +1,28 @@
+ #ifndef UTIL_LINUX_PIDFD_UTILS
+ #define UTIL_LINUX_PIDFD_UTILS
+ 
+-#if defined(__linux__) && defined(SYS_pidfd_send_signal)
+-# include <sys/types.h>
++#if defined(__linux__)
+ # include <sys/syscall.h>
++# if defined(SYS_pidfd_send_signal)
++#  include <sys/types.h>
+ 
+-# ifndef HAVE_PIDFD_OPEN
++#  ifndef HAVE_PIDFD_OPEN
+ static inline int pidfd_send_signal(int pidfd, int sig, siginfo_t *info,
+ 				    unsigned int flags)
+ {
+ 	return syscall(SYS_pidfd_send_signal, pidfd, sig, info, flags);
+ }
+-# endif
++#  endif
+ 
+-# ifndef HAVE_PIDFD_SEND_SIGNAL
++#  ifndef HAVE_PIDFD_SEND_SIGNAL
+ static inline int pidfd_open(pid_t pid, unsigned int flags)
+ {
+ 	return syscall(SYS_pidfd_open, pid, flags);
+ }
+-# endif
++#  endif
+ 
+-# define UL_HAVE_PIDFD 1
++#  define UL_HAVE_PIDFD 1
+ 
+-#endif /* __linux__ && SYS_pidfd_send_signal */
++# endif	/* SYS_pidfd_send_signal */
++#endif /* __linux__ */
+ #endif /* UTIL_LINUX_PIDFD_UTILS */

diff --git a/sys-apps/util-linux/util-linux-2.35.1.ebuild b/sys-apps/util-linux/util-linux-2.35.1.ebuild
index c3759ac85c7..6c0d78321cc 100644
--- a/sys-apps/util-linux/util-linux-2.35.1.ebuild
+++ b/sys-apps/util-linux/util-linux-2.35.1.ebuild
@@ -76,6 +76,11 @@ RESTRICT="!test? ( test )"
 
 S="${WORKDIR}/${MY_P}"
 
+PATCHES=(
+	"${FILESDIR}"/util-linux-2.35.1-include_sys_types-header.patch
+	"${FILESDIR}"/util-linux-2.35.1-cleanup-pidfd-include.patch
+)
+
 src_prepare() {
 	default
 


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2019-05-31  0:58 Lars Wendler
  0 siblings, 0 replies; 32+ messages in thread
From: Lars Wendler @ 2019-05-31  0:58 UTC (permalink / raw
  To: gentoo-commits

commit:     b4ba1268f4634f68b331b3210ae548e7dbbb246a
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu May 30 23:27:36 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri May 31 00:58:09 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b4ba1268

sys-apps/util-linux: Bump to version 2.34_rc2. Removed old.

Package-Manager: Portage-2.3.67, Repoman-2.3.13
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 sys-apps/util-linux/Manifest                       |  2 +-
 ...ux-2.34_rc1-lsblk_fix_heap_use_after_free.patch | 23 ------------------
 ...34_rc1-lscpu_floating_point_exception_fix.patch | 28 ----------------------
 ...-2.34_rc1.ebuild => util-linux-2.34_rc2.ebuild} | 19 +++++++--------
 4 files changed, 9 insertions(+), 63 deletions(-)

diff --git a/sys-apps/util-linux/Manifest b/sys-apps/util-linux/Manifest
index d1e17410555..6ef615f749a 100644
--- a/sys-apps/util-linux/Manifest
+++ b/sys-apps/util-linux/Manifest
@@ -1,4 +1,4 @@
 DIST util-linux-2.33.1.tar.xz 4650936 BLAKE2B 9ee6bc1a1b800e8537f5552c28cf608f32e89c8ab716434a2de6b4b5e257c53065b9c11cd355f2ef759f69069071ef930790ecd55806deef300ce77f31e38e98 SHA512 94ada47e472b62a612c26fd5a5b7423e09366690a8a96f777191a5d920981eb0f224474bc2f128e827299bf60062770011332757e1551a8cd3764b5c70ae4ba2
 DIST util-linux-2.33.2.tar.xz 4707024 BLAKE2B fdeed0a236edd26d268bccca8cde2cf1b7ecbff521ede9fa26ea22c8e5cdfc380a416a168789504b303f1b569d163e41f6630ee28829be7f2b2129fa14c4fffa SHA512 ac88790a0272366b384b54df19cb28318014d98819d5d96aa05528ff17ab57a8c66d012a2f1b59caca4c5d4ea669e8c041e1123517c1f1c2d9960ef701aaf749
 DIST util-linux-2.33.tar.xz 4663072 BLAKE2B df601f6aa6dd1e77c722d5e7350a3b14c6099057487384eb8cd7adee8693711c1d24663f76682c958884559fddf61cc4b6d987bdca70f88e6cb14109e328e8a9 SHA512 5eb419607c5a2634117a604d425d6413763d1e48910acabc7e19d574a4c3fb0ceb34a68671a8e4fe396a4c6d611932082f77cd669d009e218bf64095da0d5689
-DIST util-linux-2.34-rc1.tar.xz 4930092 BLAKE2B 742322c85c2b92ff16cc95e98da40522350d84c9e72b929d763da882f54ff88e4ff38d1622a2642b88fcb124e9221ff32e26403e5d76cc06bcfeb6c92e450d91 SHA512 4f968f04394f6beaafd60a84daf1db808ec486dbfa82d2f58b0678f93adc37477395a1b22c0c2af33f9652c5fa82f8bb3c1ce8b62146c983bce270fe45c1419b
+DIST util-linux-2.34-rc2.tar.xz 4990080 BLAKE2B 63c7bc91d04e8cde2f67e2fad5a6a4b6ffe7b392d284c29b01b5a89eea26b42436656f8c4544555545b3718a739674c795c13a41e3a1e1cb2a98e952d02f9283 SHA512 54ae5ab146a2f8185dd1e46b363d3f83fd6791eb95f83522307ea59dcf23be93a9496fd1ca10bb09788ebd429c62db8fcde8747ed793c7826340289efb4e77d0

diff --git a/sys-apps/util-linux/files/util-linux-2.34_rc1-lsblk_fix_heap_use_after_free.patch b/sys-apps/util-linux/files/util-linux-2.34_rc1-lsblk_fix_heap_use_after_free.patch
deleted file mode 100644
index 41291205c5a..00000000000
--- a/sys-apps/util-linux/files/util-linux-2.34_rc1-lsblk_fix_heap_use_after_free.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From f6f8a671a9a45125b6261c08b849833bce0f39a8 Mon Sep 17 00:00:00 2001
-From: Karel Zak <kzak@redhat.com>
-Date: Mon, 6 May 2019 12:39:07 +0200
-Subject: [PATCH] lsblk: fix heap-use-after-free
-
-Addresses: https://github.com/karelzak/util-linux/issues/787
-Signed-off-by: Karel Zak <kzak@redhat.com>
----
- misc-utils/lsblk.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/misc-utils/lsblk.c b/misc-utils/lsblk.c
-index 34a6cd9ca..30d5d9b4e 100644
---- a/misc-utils/lsblk.c
-+++ b/misc-utils/lsblk.c
-@@ -1560,6 +1560,7 @@ static int process_all_devices(struct lsblk_devtree *tr)
- 		if (is_maj_excluded(dev->maj) || !is_maj_included(dev->maj)) {
- 			DBG(DEV, ul_debug(" %s: ignore (by filter)", d->d_name));
- 			lsblk_devtree_remove_device(tr, dev);
-+			dev = NULL;
- 			goto next;
- 		}
- 

diff --git a/sys-apps/util-linux/files/util-linux-2.34_rc1-lscpu_floating_point_exception_fix.patch b/sys-apps/util-linux/files/util-linux-2.34_rc1-lscpu_floating_point_exception_fix.patch
deleted file mode 100644
index b1314e0e44c..00000000000
--- a/sys-apps/util-linux/files/util-linux-2.34_rc1-lscpu_floating_point_exception_fix.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 836455917879333e94d4a535aa22f1235b5d4885 Mon Sep 17 00:00:00 2001
-From: Sami Kerola <kerolasa@iki.fi>
-Date: Sat, 18 May 2019 10:19:35 +0100
-Subject: [PATCH] lscpu: fix floating point exception
-
-FIXME: this commit should include vmware_fpe regression test inclusion.
-
-Caused-by: e5f721132ec8b8c933a396d8dcb3efcb67854f13
-Addresses: https://github.com/karelzak/util-linux/issues/788
-Reported-by: Lars Wendler <polynomial-c@gentoo.org>
-Signed-off-by: Sami Kerola <kerolasa@iki.fi>
----
- sys-utils/lscpu.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/sys-utils/lscpu.c b/sys-utils/lscpu.c
-index ca7f6a037..7f6277f00 100644
---- a/sys-utils/lscpu.c
-+++ b/sys-utils/lscpu.c
-@@ -1925,6 +1925,8 @@ static int get_cache_full_size(struct lscpu_desc *desc,
- 	/* Correction for CPU threads */
- 	if (desc->nthreads > desc->ncores)
- 		nshares /= (desc->nthreads / desc->ncores);
-+	if (nshares < 1)
-+		nshares = 1;
- 
- 	*res = (desc->ncores / nshares) * ca->size;
- 	return 0;

diff --git a/sys-apps/util-linux/util-linux-2.34_rc1.ebuild b/sys-apps/util-linux/util-linux-2.34_rc2.ebuild
similarity index 96%
rename from sys-apps/util-linux/util-linux-2.34_rc1.ebuild
rename to sys-apps/util-linux/util-linux-2.34_rc2.ebuild
index e45b41732ad..9aefa220794 100644
--- a/sys-apps/util-linux/util-linux-2.34_rc1.ebuild
+++ b/sys-apps/util-linux/util-linux-2.34_rc2.ebuild
@@ -2,7 +2,7 @@
 # Copyright 2018 Sony Interactive Entertainment Inc.
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=6
+EAPI=7
 
 PYTHON_COMPAT=( python2_7 python3_{5,6,7} )
 
@@ -30,7 +30,9 @@ IUSE="build caps +cramfs fdformat kill ncurses nls pam python +readline selinux
 
 # Most lib deps here are related to programs rather than our libs,
 # so we rarely need to specify ${MULTILIB_USEDEP}.
-RDEPEND="caps? ( sys-libs/libcap-ng )
+DEPEND="
+	virtual/os-headers
+	caps? ( sys-libs/libcap-ng )
 	cramfs? ( sys-libs/zlib:= )
 	ncurses? ( >=sys-libs/ncurses-5.2-r2:0=[unicode?] )
 	nls? ( virtual/libintl[${MULTILIB_USEDEP}] )
@@ -41,12 +43,12 @@ RDEPEND="caps? ( sys-libs/libcap-ng )
 	slang? ( sys-libs/slang )
 	!build? ( systemd? ( sys-apps/systemd ) )
 	udev? ( virtual/libudev:= )"
-DEPEND="${RDEPEND}
+BDEPEND="
 	virtual/pkgconfig
 	nls? ( sys-devel/gettext )
 	test? ( sys-devel/bc )
-	virtual/os-headers"
-RDEPEND+="
+"
+RDEPEND="${DEPEND}
 	kill? (
 		!sys-apps/coreutils[kill]
 		!sys-process/procps[kill]
@@ -63,11 +65,6 @@ REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
 
 S="${WORKDIR}/${MY_P}"
 
-PATCHES=(
-	"${FILESDIR}"/${P}-lsblk_fix_heap_use_after_free.patch
-	"${FILESDIR}"/${P}-lscpu_floating_point_exception_fix.patch
-)
-
 src_prepare() {
 	default
 
@@ -264,7 +261,7 @@ multilib_src_install_all() {
 	if ! use userland_GNU; then
 		# manpage collisions
 		# TODO: figure out a good way to keep them
-		rm "${ED%/}"/usr/share/man/man3/uuid* || die
+		rm "${ED}"/usr/share/man/man3/uuid* || die
 	fi
 
 	if use pam; then


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2018-12-29 17:45 Mikle Kolyada
  0 siblings, 0 replies; 32+ messages in thread
From: Mikle Kolyada @ 2018-12-29 17:45 UTC (permalink / raw
  To: gentoo-commits

commit:     b3fc94e26e94fdd3db193a8e77a4f0977d1591a4
Author:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 29 17:45:26 2018 +0000
Commit:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sat Dec 29 17:45:47 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b3fc94e2

sys-apps/util-linux: fix set_arch detection for sparc

Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.51, Repoman-2.3.11

 .../files/util-linux-2.33-sparc-setarch.patch      | 80 ++++++++++++++++++++++
 sys-apps/util-linux/util-linux-2.33.ebuild         |  3 +-
 2 files changed, 82 insertions(+), 1 deletion(-)

diff --git a/sys-apps/util-linux/files/util-linux-2.33-sparc-setarch.patch b/sys-apps/util-linux/files/util-linux-2.33-sparc-setarch.patch
new file mode 100644
index 00000000000..cbae6c0f263
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.33-sparc-setarch.patch
@@ -0,0 +1,80 @@
+From 3fa06e049012218d883d0e1251df86bafbc446bf Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Thu, 22 Nov 2018 11:03:35 +0100
+Subject: [PATCH] setarch: fix obscure sparc32bash use-case
+
+Reported-by: Carlos Santos <casantos@datacom.com.br>
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ sys-utils/setarch.c | 28 ++++++++++++++++++----------
+ 1 file changed, 18 insertions(+), 10 deletions(-)
+
+diff --git a/sys-utils/setarch.c b/sys-utils/setarch.c
+index a733f7b3c..7c0a63fbb 100644
+--- a/sys-utils/setarch.c
++++ b/sys-utils/setarch.c
+@@ -268,6 +268,7 @@ int main(int argc, char *argv[])
+ 	int c;
+ 	struct arch_domain *doms, *target;
+ 	unsigned long pers_value = 0;
++	char *shell = NULL, *shell_arg = NULL;
+ 
+ 	/* Options without equivalent short options */
+ 	enum {
+@@ -310,14 +311,14 @@ int main(int argc, char *argv[])
+ 	archwrapper = strcmp(program_invocation_short_name, "setarch") != 0;
+ 	if (archwrapper) {
+ 		arch = program_invocation_short_name;	/* symlinks to setarch */
+-#if defined(__sparc64__) || defined(__sparc__)
++
++		/* Don't use ifdef sparc here, we get "Unrecognized architecture"
++		 * error message later if necessary */
+ 		if (strcmp(arch, "sparc32bash") == 0) {
+-			if (set_arch(arch, 0L, 0))
+-				err(EXIT_FAILURE, _("Failed to set personality to %s"), arch);
+-			execl("/bin/bash", "", NULL);
+-			errexec("/bin/bash");
++			shell = "/bin/bash";
++			shell_arg = "";
++			goto set_arch;
+ 		}
+-#endif
+ 	} else {
+ 		if (1 < argc && *argv[1] != '-') {
+ 			arch = argv[1];
+@@ -391,6 +392,7 @@ int main(int argc, char *argv[])
+ 	argc -= optind;
+ 	argv += optind;
+ 
++set_arch:
+ 	/* get execution domain (architecture) */
+ 	if (arch) {
+ 		doms = init_arch_domains();
+@@ -422,17 +424,23 @@ int main(int argc, char *argv[])
+ 	if (arch)
+ 		verify_arch_domain(target, arch);
+ 
++	if (!argc) {
++		shell = "/bin/sh";
++		shell_arg = "-sh";
++	}
+ 	if (verbose) {
+-		printf(_("Execute command `%s'.\n"), argc ? argv[0] : "/bin/sh");
++		printf(_("Execute command `%s'.\n"), shell ? shell : argv[0]);
+ 		/* flush all output streams before exec */
+ 		fflush(NULL);
+ 	}
+ 
+-	if (!argc) {
+-		execl("/bin/sh", "-sh", NULL);
+-		errexec("/bin/sh");
++	/* Execute shell */
++	if (shell) {
++		execl(shell, shell_arg, NULL);
++		errexec(shell);
+ 	}
+ 
++	/* Execute on command line specified command */
+ 	execvp(argv[0], argv);
+ 	errexec(argv[0]);
+ }

diff --git a/sys-apps/util-linux/util-linux-2.33.ebuild b/sys-apps/util-linux/util-linux-2.33.ebuild
index c95e045cc20..cf66f3c521b 100644
--- a/sys-apps/util-linux/util-linux-2.33.ebuild
+++ b/sys-apps/util-linux/util-linux-2.33.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation and others
+# Copyright 1999-2018 Gentoo Authors and others
 # Copyright 2018 Sony Interactive Entertainment Inc.
 # Distributed under the terms of the GNU General Public License v2
 
@@ -65,6 +65,7 @@ S="${WORKDIR}/${MY_P}"
 
 PATCHES=(
 	"${FILESDIR}/util-linux-2.32.1-skip-oids-test-when-uuidgen-is-not-available.patch"
+	"${FILESDIR}/${P}-sparc-setarch.patch"
 )
 
 src_prepare() {


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2018-07-13 16:41 Patrick McLean
  0 siblings, 0 replies; 32+ messages in thread
From: Patrick McLean @ 2018-07-13 16:41 UTC (permalink / raw
  To: gentoo-commits

commit:     94c60fe1a9fe3baeff8163e7197c4ce93ef199f8
Author:     Patrick McLean <chutzpah <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 13 16:41:31 2018 +0000
Commit:     Patrick McLean <chutzpah <AT> gentoo <DOT> org>
CommitDate: Fri Jul 13 16:41:31 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=94c60fe1

sys-apps/util-linux: Revbump to 2.32-r5, fix tests with py3 #624132

Revert back to unstable since we are adding a patch from upstream git.
Patch is from here: https://github.com/karelzak/util-linux/pull/664

Bug: https://bugs.gentoo.org/624132
Package-Manager: Portage-2.3.42, Repoman-2.3.9

 .../files/util-linux-2.32-python3-tests.patch      | 105 +++++++++
 sys-apps/util-linux/util-linux-2.32-r5.ebuild      | 242 +++++++++++++++++++++
 2 files changed, 347 insertions(+)

diff --git a/sys-apps/util-linux/files/util-linux-2.32-python3-tests.patch b/sys-apps/util-linux/files/util-linux-2.32-python3-tests.patch
new file mode 100644
index 00000000000..7b8867ba034
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.32-python3-tests.patch
@@ -0,0 +1,105 @@
+From 8a12ab57755afc36546834f175ef0b9e9376ba59 Mon Sep 17 00:00:00 2001
+From: Frank Schaefer <kelledin@gmail.com>
+Date: Tue, 10 Jul 2018 20:21:02 -0500
+Subject: [PATCH] * break up large strings for PySys_WriteStdout()
+
+---
+ libmount/python/fs.c | 56 ++++++++++++++++++++++++++++++++++++++++------------
+ 1 file changed, 43 insertions(+), 13 deletions(-)
+
+diff --git a/libmount/python/fs.c b/libmount/python/fs.c
+index d6490d248..634a914ef 100644
+--- a/libmount/python/fs.c
++++ b/libmount/python/fs.c
+@@ -63,32 +63,62 @@ static PyObject *Fs_get_devno(FsObject *self)
+ 	return PyObjectResultInt(mnt_fs_get_devno(self->fs));
+ }
+ 
++static void _dump_debug_string(const char *lead, const char *s, char quote)
++{
++	/* PySys_WriteStdout() will automatically truncate any '%s' token
++	 * longer than a certain length (documented as 1000 bytes, but we
++	 * give ourselves some margin here just in case).  The only way I
++	 * know to get around this is to print such strings in bite-sized
++	 * chunks.
++	 */
++	static const unsigned int _PY_MAX_LEN = 900;
++	static const char *_PY_MAX_LEN_FMT = "%.900s";
++	unsigned int len;
++
++	if (lead != NULL)
++		PySys_WriteStdout("%s", lead);
++
++	if (quote != 0)
++		PySys_WriteStdout("%c", quote);
++
++	for (len = strlen(s); len > _PY_MAX_LEN; len -= _PY_MAX_LEN, s += _PY_MAX_LEN) 
++		PySys_WriteStdout(_PY_MAX_LEN_FMT, s);
++
++	if (len > 0)
++		PySys_WriteStdout(_PY_MAX_LEN_FMT, s);
++
++	if (quote != 0)
++		PySys_WriteStdout("%c\n", quote);
++	else
++		PySys_WriteStdout("\n");
++}
++
+ #define Fs_print_debug_HELP "print_debug()\n\n"
+ static PyObject *Fs_print_debug(FsObject *self)
+ {
+ 	PySys_WriteStdout("------ fs: %p\n", self->fs);
+-	PySys_WriteStdout("source: %s\n", mnt_fs_get_source(self->fs));
+-	PySys_WriteStdout("target: %s\n", mnt_fs_get_target(self->fs));
+-	PySys_WriteStdout("fstype: %s\n", mnt_fs_get_fstype(self->fs));
++	_dump_debug_string("source: ", mnt_fs_get_source(self->fs), 0);
++	_dump_debug_string("target: ", mnt_fs_get_target(self->fs), 0);
++	_dump_debug_string("fstype: ", mnt_fs_get_fstype(self->fs), 0);
+ 
+ 	if (mnt_fs_get_options(self->fs))
+-		PySys_WriteStdout("optstr: %s\n", mnt_fs_get_options(self->fs));
++		_dump_debug_string("optstr: ", mnt_fs_get_options(self->fs), 0);
+ 	if (mnt_fs_get_vfs_options(self->fs))
+-		PySys_WriteStdout("VFS-optstr: %s\n", mnt_fs_get_vfs_options(self->fs));
++		_dump_debug_string("VFS-optstr: ", mnt_fs_get_vfs_options(self->fs), 0);
+ 	if (mnt_fs_get_fs_options(self->fs))
+-		PySys_WriteStdout("FS-opstr: %s\n", mnt_fs_get_fs_options(self->fs));
++		_dump_debug_string("FS-opstr: ", mnt_fs_get_fs_options(self->fs), 0);
+ 	if (mnt_fs_get_user_options(self->fs))
+-		PySys_WriteStdout("user-optstr: %s\n", mnt_fs_get_user_options(self->fs));
++		_dump_debug_string("user-optstr: ", mnt_fs_get_user_options(self->fs), 0);
+ 	if (mnt_fs_get_optional_fields(self->fs))
+-		PySys_WriteStdout("optional-fields: '%s'\n", mnt_fs_get_optional_fields(self->fs));
++		_dump_debug_string("optional-fields: ", mnt_fs_get_optional_fields(self->fs), '\'');
+ 	if (mnt_fs_get_attributes(self->fs))
+-		PySys_WriteStdout("attributes: %s\n", mnt_fs_get_attributes(self->fs));
++		_dump_debug_string("attributes: ", mnt_fs_get_attributes(self->fs), 0);
+ 
+ 	if (mnt_fs_get_root(self->fs))
+-		PySys_WriteStdout("root:   %s\n", mnt_fs_get_root(self->fs));
++		_dump_debug_string("root:   ", mnt_fs_get_root(self->fs), 0);
+ 
+ 	if (mnt_fs_get_swaptype(self->fs))
+-		PySys_WriteStdout("swaptype: %s\n", mnt_fs_get_swaptype(self->fs));
++		_dump_debug_string("swaptype: ", mnt_fs_get_swaptype(self->fs), 0);
+ 	if (mnt_fs_get_size(self->fs))
+ 		PySys_WriteStdout("size: %jd\n", mnt_fs_get_size(self->fs));
+ 	if (mnt_fs_get_usedsize(self->fs))
+@@ -97,7 +127,7 @@ static PyObject *Fs_print_debug(FsObject *self)
+ 		PySys_WriteStdout("priority: %d\n", mnt_fs_get_priority(self->fs));
+ 
+ 	if (mnt_fs_get_bindsrc(self->fs))
+-		PySys_WriteStdout("bindsrc: %s\n", mnt_fs_get_bindsrc(self->fs));
++		_dump_debug_string("bindsrc: ", mnt_fs_get_bindsrc(self->fs), 0);
+ 	if (mnt_fs_get_freq(self->fs))
+ 		PySys_WriteStdout("freq:   %d\n", mnt_fs_get_freq(self->fs));
+ 	if (mnt_fs_get_passno(self->fs))
+@@ -112,7 +142,7 @@ static PyObject *Fs_print_debug(FsObject *self)
+ 	if (mnt_fs_get_tid(self->fs))
+ 		PySys_WriteStdout("tid:    %d\n", mnt_fs_get_tid(self->fs));
+ 	if (mnt_fs_get_comment(self->fs))
+-		PySys_WriteStdout("comment: '%s'\n", mnt_fs_get_comment(self->fs));
++		_dump_debug_string("comment: ", mnt_fs_get_comment(self->fs), '\'');
+ 	return UL_IncRef(self);
+ }
+ /*

diff --git a/sys-apps/util-linux/util-linux-2.32-r5.ebuild b/sys-apps/util-linux/util-linux-2.32-r5.ebuild
new file mode 100644
index 00000000000..1bce9daa5a9
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.32-r5.ebuild
@@ -0,0 +1,242 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
+
+inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 \
+	pam python-single-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="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~amd64-linux ~arm-linux ~x86-linux"
+	SRC_URI="mirror://kernel/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 LGPL-2.1 BSD-4 MIT public-domain"
+SLOT="0"
+IUSE="build caps +cramfs fdformat kill ncurses nls pam python +readline selinux slang static-libs +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="caps? ( sys-libs/libcap-ng )
+	cramfs? ( sys-libs/zlib:= )
+	ncurses? ( >=sys-libs/ncurses-5.2-r2:0=[unicode?] )
+	nls? ( virtual/libintl[${MULTILIB_USEDEP}] )
+	pam? ( sys-libs/pam )
+	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:= )"
+DEPEND="${RDEPEND}
+	virtual/pkgconfig
+	nls? ( sys-devel/gettext )
+	test? ( sys-devel/bc )
+	virtual/os-headers"
+RDEPEND+="
+	kill? (
+		!sys-apps/coreutils[kill]
+		!sys-process/procps[kill]
+	)
+	!net-wireless/rfkill
+	!sys-process/schedutils
+	!sys-apps/setarch
+	!<sys-apps/sysvinit-2.88-r7
+	!<sys-libs/e2fsprogs-libs-1.41.8
+	!<sys-fs/e2fsprogs-1.41.8
+	!<app-shells/bash-completion-2.7-r1"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+	"${FILESDIR}/util-linux-2.32-python3-tests.patch"
+)
+
+pkg_setup() {
+	use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+	default
+
+	eapply "${FILESDIR}"/${P}-add-missing-lintl.patch
+	touch -r "${S}"/configure "${S}"/libsmartcols/src/Makemodule.am || die
+	touch -r "${S}"/configure "${S}"/libuuid/src/Makemodule.am || die
+
+	# 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
+
+	# Undo bad ncurses handling by upstream. #601530
+	sed -i -E \
+		-e '/NCURSES_/s:(ncursesw?)[56]-config:$PKG_CONFIG \1:' \
+		-e 's:(ncursesw?)[56]-config --version:$PKG_CONFIG --exists --print-errors \1:' \
+		configure || die
+
+	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
+}
+
+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
+
+	local myeconfargs=(
+		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin"
+		--with-bashcompletiondir="$(get_bashcompdir)"
+		$(multilib_native_use_enable suid makeinstall-chown)
+		$(multilib_native_use_enable suid makeinstall-setuid)
+		$(multilib_native_use_with python)
+		$(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 unicode ncursesw)" '--without-ncursesw')
+		$(multilib_native_usex ncurses "$(use_with !unicode ncurses)" '--without-ncurses')
+		$(tc-has-tls || echo --disable-tls)
+		$(use_enable nls)
+		$(use_enable unicode widechar)
+		$(use_enable static-libs static)
+		$(use_with selinux)
+		$(usex ncurses '' '--without-tinfo')
+	)
+	# 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-nologin
+			--disable-su
+			--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 tty-helpers mesg)
+			$(use_enable tty-helpers wall)
+			$(use_enable tty-helpers write)
+			$(use_enable kill)
+		)
+	else
+		myeconfargs+=(
+			--disable-all-programs
+			--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[@]}"
+}
+
+multilib_src_test() {
+	emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
+}
+
+multilib_src_install() {
+	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
+
+		use python && python_optimize
+	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
+}


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2018-04-10 19:29 Thomas Deutschmann
  0 siblings, 0 replies; 32+ messages in thread
From: Thomas Deutschmann @ 2018-04-10 19:29 UTC (permalink / raw
  To: gentoo-commits

commit:     92895a39a8deb689e5e8d663dddcb257d97a7bb7
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 10 19:13:10 2018 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Tue Apr 10 19:29:11 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92895a39

sys-apps/util-linux: Rev bump to add missing -lintl

Bugs: https://bugs.gentoo.org/652674
Package-Manager: Portage-2.3.28, Repoman-2.3.9

 .../files/util-linux-2.32-add-missing-lintl.patch  | 38 ++++++++++++++++++++++
 ...ux-2.32-r1.ebuild => util-linux-2.32-r2.ebuild} |  4 +++
 2 files changed, 42 insertions(+)

diff --git a/sys-apps/util-linux/files/util-linux-2.32-add-missing-lintl.patch b/sys-apps/util-linux/files/util-linux-2.32-add-missing-lintl.patch
new file mode 100644
index 00000000000..8cca093d7cb
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.32-add-missing-lintl.patch
@@ -0,0 +1,38 @@
+From 3188ea9a9292604e537f06f11adddf474fc9e52d Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Mon, 9 Apr 2018 12:11:36 +0200
+Subject: [PATCH] build: Add missing -lintl linkage to lib{smartcols,uuid}
+
+Addresses: https://github.com/karelzak/util-linux/pull/615
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ libsmartcols/src/Makemodule.am | 2 +-
+ libuuid/src/Makemodule.am      | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/libsmartcols/src/Makemodule.am b/libsmartcols/src/Makemodule.am
+index 664aca30b..665b2aa7f 100644
+--- a/libsmartcols/src/Makemodule.am
++++ b/libsmartcols/src/Makemodule.am
+@@ -19,7 +19,7 @@ libsmartcols_la_SOURCES= \
+ 	libsmartcols/src/version.c \
+ 	libsmartcols/src/init.c
+ 
+-libsmartcols_la_LIBADD = libcommon.la
++libsmartcols_la_LIBADD = $(LDADD) libcommon.la
+ 
+ libsmartcols_la_CFLAGS = \
+ 	$(AM_CFLAGS) \
+diff --git a/libuuid/src/Makemodule.am b/libuuid/src/Makemodule.am
+index 5122622a5..e58fa261c 100644
+--- a/libuuid/src/Makemodule.am
++++ b/libuuid/src/Makemodule.am
+@@ -31,7 +31,7 @@ libuuid_la_SOURCES = \
+ EXTRA_libuuid_la_DEPENDENCIES = \
+ 	libuuid/src/libuuid.sym
+ 
+-libuuid_la_LIBADD       = $(SOCKET_LIBS)
++libuuid_la_LIBADD       = $(LDADD) $(SOCKET_LIBS)
+ 
+ libuuid_la_CFLAGS = \
+ 	$(AM_CFLAGS) \

diff --git a/sys-apps/util-linux/util-linux-2.32-r1.ebuild b/sys-apps/util-linux/util-linux-2.32-r2.ebuild
similarity index 97%
rename from sys-apps/util-linux/util-linux-2.32-r1.ebuild
rename to sys-apps/util-linux/util-linux-2.32-r2.ebuild
index 6d113163470..b616055b934 100644
--- a/sys-apps/util-linux/util-linux-2.32-r1.ebuild
+++ b/sys-apps/util-linux/util-linux-2.32-r2.ebuild
@@ -68,6 +68,10 @@ pkg_setup() {
 src_prepare() {
 	default
 
+	eapply "${FILESDIR}"/${P}-add-missing-lintl.patch
+	touch -r "${S}"/configure "${S}"/libsmartcols/src/Makemodule.am || die
+	touch -r "${S}"/configure "${S}"/libuuid/src/Makemodule.am || die
+
 	# 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" \


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2017-12-17 15:48 Lars Wendler
  0 siblings, 0 replies; 32+ messages in thread
From: Lars Wendler @ 2017-12-17 15:48 UTC (permalink / raw
  To: gentoo-commits

commit:     0c2433fca87fbcb2c38b69deb3267605de4c5e33
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 17 15:41:40 2017 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sun Dec 17 15:48:28 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0c2433fc

sys-apps/util-linux: Fixed too generic symbols with USE="static".

Bug: https://bugs.gentoo.org/641226
Package-Manager: Portage-2.3.19, Repoman-2.3.6

 .../util-linux-2.31-too_generic_symbols_pt1.patch  | 207 ++++++++++++
 .../util-linux-2.31-too_generic_symbols_pt2.patch  | 355 +++++++++++++++++++++
 .../util-linux-2.31-too_generic_symbols_pt3.patch  |  43 +++
 sys-apps/util-linux/util-linux-2.31-r1.ebuild      | 206 ++++++++++++
 4 files changed, 811 insertions(+)

diff --git a/sys-apps/util-linux/files/util-linux-2.31-too_generic_symbols_pt1.patch b/sys-apps/util-linux/files/util-linux-2.31-too_generic_symbols_pt1.patch
new file mode 100644
index 00000000000..aa296d2bf2f
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.31-too_generic_symbols_pt1.patch
@@ -0,0 +1,207 @@
+From ff5feb96ec70e8a3fde41bd591b28c9855dab3fc Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Tue, 12 Dec 2017 11:29:02 +0100
+Subject: [PATCH] lib/sha1: use ul_/UL_prefix for symbols
+
+Unfortunately, the symbols are visible in statically compiled libuuid
+and the names are too generic.
+
+Addresses: https://github.com/karelzak/util-linux/issues/548
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ include/sha1.h         | 49 +++++++++++++++----------------------------------
+ lib/sha1.c             | 34 +++++++++++++++++-----------------
+ libuuid/src/gen_uuid.c | 12 ++++++------
+ 3 files changed, 38 insertions(+), 57 deletions(-)
+
+diff --git a/include/sha1.h b/include/sha1.h
+index 5c28bce92..62af1da6f 100644
+--- a/include/sha1.h
++++ b/include/sha1.h
+@@ -1,5 +1,5 @@
+-#ifndef SHA1_H
+-#define SHA1_H
++#ifndef UTIL_LINUX_SHA1_H
++#define UTIL_LINUX_SHA1_H
+ 
+ /*
+    SHA-1 in C
+@@ -9,38 +9,19 @@
+ 
+ #include "stdint.h"
+ 
+-#define SHA1LENGTH		20
++#define UL_SHA1LENGTH		20
+ 
+ typedef struct
+ {
+-    uint32_t state[5];
+-    uint32_t count[2];
+-    unsigned char buffer[64];
+-} SHA1_CTX;
+-
+-void SHA1Transform(
+-    uint32_t state[5],
+-    const unsigned char buffer[64]
+-    );
+-
+-void SHA1Init(
+-    SHA1_CTX * context
+-    );
+-
+-void SHA1Update(
+-    SHA1_CTX * context,
+-    const unsigned char *data,
+-    uint32_t len
+-    );
+-
+-void SHA1Final(
+-    unsigned char digest[SHA1LENGTH],
+-    SHA1_CTX * context
+-    );
+-
+-void SHA1(
+-    char *hash_out,
+-    const char *str,
+-    unsigned len);
+-
+-#endif /* SHA1_H */
++    uint32_t	state[5];
++    uint32_t	count[2];
++    unsigned	char buffer[64];
++} UL_SHA1_CTX;
++
++void ul_SHA1Transform(uint32_t state[5], const unsigned char buffer[64]);
++void ul_SHA1Init(UL_SHA1_CTX *context);
++void ul_SHA1Update(UL_SHA1_CTX *context, const unsigned char *data, uint32_t len);
++void ul_SHA1Final(unsigned char digest[UL_SHA1LENGTH], UL_SHA1_CTX *context);
++void ul_SHA1(char *hash_out, const char *str, unsigned len);
++
++#endif /* UTIL_LINUX_SHA1_H */
+diff --git a/lib/sha1.c b/lib/sha1.c
+index a2ac7f8ef..62c036774 100644
+--- a/lib/sha1.c
++++ b/lib/sha1.c
+@@ -51,7 +51,7 @@ A million repetitions of "a"
+ 
+ /* Hash a single 512-bit block. This is the core of the algorithm. */
+ 
+-void SHA1Transform(
++void ul_SHA1Transform(
+     uint32_t state[5],
+     const unsigned char buffer[64]
+ )
+@@ -179,8 +179,8 @@ void SHA1Transform(
+ 
+ /* SHA1Init - Initialize new context */
+ 
+-void SHA1Init(
+-    SHA1_CTX * context
++void ul_SHA1Init(
++    UL_SHA1_CTX * context
+ )
+ {
+     /* SHA1 initialization constants */
+@@ -195,8 +195,8 @@ void SHA1Init(
+ 
+ /* Run your data through this. */
+ 
+-void SHA1Update(
+-    SHA1_CTX * context,
++void ul_SHA1Update(
++    UL_SHA1_CTX * context,
+     const unsigned char *data,
+     uint32_t len
+ )
+@@ -213,10 +213,10 @@ void SHA1Update(
+     if ((j + len) > 63)
+     {
+         memcpy(&context->buffer[j], data, (i = 64 - j));
+-        SHA1Transform(context->state, context->buffer);
++        ul_SHA1Transform(context->state, context->buffer);
+         for (; i + 63 < len; i += 64)
+         {
+-            SHA1Transform(context->state, &data[i]);
++            ul_SHA1Transform(context->state, &data[i]);
+         }
+         j = 0;
+     }
+@@ -228,9 +228,9 @@ void SHA1Update(
+ 
+ /* Add padding and return the message digest. */
+ 
+-void SHA1Final(
++void ul_SHA1Final(
+     unsigned char digest[20],
+-    SHA1_CTX * context
++    UL_SHA1_CTX * context
+ )
+ {
+     unsigned i;
+@@ -262,13 +262,13 @@ void SHA1Final(
+     }
+ #endif
+     c = 0200;
+-    SHA1Update(context, &c, 1);
++    ul_SHA1Update(context, &c, 1);
+     while ((context->count[0] & 504) != 448)
+     {
+         c = 0000;
+-        SHA1Update(context, &c, 1);
++        ul_SHA1Update(context, &c, 1);
+     }
+-    SHA1Update(context, finalcount, 8); /* Should cause a SHA1Transform() */
++    ul_SHA1Update(context, finalcount, 8); /* Should cause a SHA1Transform() */
+     for (i = 0; i < 20; i++)
+     {
+         digest[i] = (unsigned char)
+@@ -279,18 +279,18 @@ void SHA1Final(
+     memset(&finalcount, '\0', sizeof(finalcount));
+ }
+ 
+-void SHA1(
++void ul_SHA1(
+     char *hash_out,
+     const char *str,
+     unsigned len)
+ {
+-    SHA1_CTX ctx;
++    UL_SHA1_CTX ctx;
+     unsigned int ii;
+ 
+-    SHA1Init(&ctx);
++    ul_SHA1Init(&ctx);
+     for (ii=0; ii<len; ii+=1)
+-        SHA1Update(&ctx, (const unsigned char*)str + ii, 1);
+-    SHA1Final((unsigned char *)hash_out, &ctx);
++        ul_SHA1Update(&ctx, (const unsigned char*)str + ii, 1);
++    ul_SHA1Final((unsigned char *)hash_out, &ctx);
+     hash_out[20] = '\0';
+ }
+ 
+diff --git a/libuuid/src/gen_uuid.c b/libuuid/src/gen_uuid.c
+index cf7cacd55..431bf2064 100644
+--- a/libuuid/src/gen_uuid.c
++++ b/libuuid/src/gen_uuid.c
+@@ -589,15 +589,15 @@ void uuid_generate_md5(uuid_t out, const uuid_t ns, const char *name, size_t len
+  */
+ void uuid_generate_sha1(uuid_t out, const uuid_t ns, const char *name, size_t len)
+ {
+-	SHA1_CTX ctx;
+-	char hash[SHA1LENGTH];
++	UL_SHA1_CTX ctx;
++	char hash[UL_SHA1LENGTH];
+ 
+-	SHA1Init(&ctx);
++	ul_SHA1Init(&ctx);
+ 	/* hash concatenation of well-known UUID with name */
+-	SHA1Update(&ctx, ns, sizeof(uuid_t));
+-	SHA1Update(&ctx, (const unsigned char *)name, len);
++	ul_SHA1Update(&ctx, ns, sizeof(uuid_t));
++	ul_SHA1Update(&ctx, (const unsigned char *)name, len);
+ 
+-	SHA1Final((unsigned char *)hash, &ctx);
++	ul_SHA1Final((unsigned char *)hash, &ctx);
+ 
+ 	memcpy(out, hash, sizeof(uuid_t));
+ 

diff --git a/sys-apps/util-linux/files/util-linux-2.31-too_generic_symbols_pt2.patch b/sys-apps/util-linux/files/util-linux-2.31-too_generic_symbols_pt2.patch
new file mode 100644
index 00000000000..f8276ec391c
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.31-too_generic_symbols_pt2.patch
@@ -0,0 +1,355 @@
+From 09a69dfc7720d5e0b7a646978a00a7c7a4411c37 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Tue, 12 Dec 2017 11:54:08 +0100
+Subject: [PATCH] lib/md5: use ul_/UL_ prefix
+
+The symbols names are too generic.
+
+Addresses: https://github.com/karelzak/util-linux/issues/548
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ disk-utils/mkfs.cramfs.c       | 13 +++++++------
+ include/md5.h                  | 25 ++++++++++---------------
+ lib/md5.c                      | 26 +++++++++++++-------------
+ libblkid/src/superblocks/hfs.c | 16 +++++++++-------
+ libuuid/src/gen_uuid.c         | 12 ++++++------
+ misc-utils/mcookie.c           | 14 +++++++-------
+ tests/helpers/test_md5.c       | 12 ++++++------
+ 7 files changed, 58 insertions(+), 60 deletions(-)
+
+diff --git a/disk-utils/mkfs.cramfs.c b/disk-utils/mkfs.cramfs.c
+index a3e9aa48c..729765078 100644
+--- a/disk-utils/mkfs.cramfs.c
++++ b/disk-utils/mkfs.cramfs.c
+@@ -98,7 +98,7 @@ struct entry {
+ 	/* stats */
+ 	unsigned char *name;
+ 	unsigned int mode, size, uid, gid;
+-	unsigned char md5sum[MD5LENGTH];
++	unsigned char md5sum[UL_MD5LENGTH];
+ 	unsigned char flags;	   /* CRAMFS_EFLAG_* */
+ 
+ 	/* FS data */
+@@ -194,16 +194,17 @@ do_munmap(char *start, unsigned int size, unsigned int mode){
+ /* compute md5sums, so that we do not have to compare every pair of files */
+ static void
+ mdfile(struct entry *e) {
+-	MD5_CTX ctx;
+ 	char *start;
+ 
+ 	start = do_mmap(e->path, e->size, e->mode);
+ 	if (start == NULL) {
+ 		e->flags |= CRAMFS_EFLAG_INVALID;
+ 	} else {
+-		MD5Init(&ctx);
+-		MD5Update(&ctx, (unsigned char *) start, e->size);
+-		MD5Final(e->md5sum, &ctx);
++		UL_MD5_CTX ctx;
++
++		ul_MD5Init(&ctx);
++		ul_MD5Update(&ctx, (unsigned char *) start, e->size);
++		ul_MD5Final(e->md5sum, &ctx);
+ 
+ 		do_munmap(start, e->size, e->mode);
+ 
+@@ -255,7 +256,7 @@ static int find_identical_file(struct entry *orig, struct entry *new, loff_t *fs
+ 
+ 		if ((orig->flags & CRAMFS_EFLAG_MD5) &&
+ 		    (new->flags & CRAMFS_EFLAG_MD5) &&
+-		    !memcmp(orig->md5sum, new->md5sum, MD5LENGTH) &&
++		    !memcmp(orig->md5sum, new->md5sum, UL_MD5LENGTH) &&
+ 		    identical_file(orig, new)) {
+ 			new->same = orig;
+ 			*fslen_ub -= new->size;
+diff --git a/include/md5.h b/include/md5.h
+index d997e379d..d6991e1fd 100644
+--- a/include/md5.h
++++ b/include/md5.h
+@@ -1,29 +1,24 @@
+-#ifndef MD5_H
+-#define MD5_H
++#ifndef UTIL_LINUX_MD5_H
++#define UTIL_LINUX_MD5_H
+ 
+-#ifdef HAVE_STDINT_H
+ #include <stdint.h>
+-#else
+-typedef unsigned int uint32_t;
+-#endif
+ 
+-#define MD5LENGTH 16
++#define UL_MD5LENGTH 16
+ 
+-struct MD5Context {
++struct UL_MD5Context {
+ 	uint32_t buf[4];
+ 	uint32_t bits[2];
+ 	unsigned char in[64];
+ };
+ 
+-void MD5Init(struct MD5Context *context);
+-void MD5Update(struct MD5Context *context, unsigned char const *buf,
+-	       unsigned len);
+-void MD5Final(unsigned char digest[MD5LENGTH], struct MD5Context *context);
+-void MD5Transform(uint32_t buf[4], uint32_t const in[16]);
++void ul_MD5Init(struct UL_MD5Context *context);
++void ul_MD5Update(struct UL_MD5Context *context, unsigned char const *buf, unsigned len);
++void ul_MD5Final(unsigned char digest[UL_MD5LENGTH], struct UL_MD5Context *context);
++void ul_MD5Transform(uint32_t buf[4], uint32_t const in[16]);
+ 
+ /*
+  * This is needed to make RSAREF happy on some MS-DOS compilers.
+  */
+-typedef struct MD5Context MD5_CTX;
++typedef struct UL_MD5Context UL_MD5_CTX;
+ 
+-#endif /* !MD5_H */
++#endif /* !UTIL_LINUX_MD5_H */
+diff --git a/lib/md5.c b/lib/md5.c
+index 282e2d22a..3765ab93e 100644
+--- a/lib/md5.c
++++ b/lib/md5.c
+@@ -19,7 +19,7 @@
+ #include "md5.h"
+ 
+ #if !defined(WORDS_BIGENDIAN)
+-#define byteReverse(buf, len)	/* Nothing */
++# define byteReverse(buf, len)	/* Nothing */
+ #else
+ static void byteReverse(unsigned char *buf, unsigned longs);
+ 
+@@ -37,14 +37,14 @@ static void byteReverse(unsigned char *buf, unsigned longs)
+ 	buf += 4;
+     } while (--longs);
+ }
+-#endif
+-#endif
++#endif /* !ASM_MD5 */
++#endif /* !WORDS_BIGENDIAN */
+ 
+ /*
+  * Start MD5 accumulation.  Set bit count to 0 and buffer to mysterious
+  * initialization constants.
+  */
+-void MD5Init(struct MD5Context *ctx)
++void ul_MD5Init(struct UL_MD5Context *ctx)
+ {
+     ctx->buf[0] = 0x67452301;
+     ctx->buf[1] = 0xefcdab89;
+@@ -59,7 +59,7 @@ void MD5Init(struct MD5Context *ctx)
+  * Update context to reflect the concatenation of another buffer full
+  * of bytes.
+  */
+-void MD5Update(struct MD5Context *ctx, unsigned char const *buf, unsigned len)
++void ul_MD5Update(struct UL_MD5Context *ctx, unsigned char const *buf, unsigned len)
+ {
+     uint32_t t;
+ 
+@@ -84,7 +84,7 @@ void MD5Update(struct MD5Context *ctx, unsigned char const *buf, unsigned len)
+ 	}
+ 	memcpy(p, buf, t);
+ 	byteReverse(ctx->in, 16);
+-	MD5Transform(ctx->buf, (uint32_t *) ctx->in);
++	ul_MD5Transform(ctx->buf, (uint32_t *) ctx->in);
+ 	buf += t;
+ 	len -= t;
+     }
+@@ -93,7 +93,7 @@ void MD5Update(struct MD5Context *ctx, unsigned char const *buf, unsigned len)
+     while (len >= 64) {
+ 	memcpy(ctx->in, buf, 64);
+ 	byteReverse(ctx->in, 16);
+-	MD5Transform(ctx->buf, (uint32_t *) ctx->in);
++	ul_MD5Transform(ctx->buf, (uint32_t *) ctx->in);
+ 	buf += 64;
+ 	len -= 64;
+     }
+@@ -104,10 +104,10 @@ void MD5Update(struct MD5Context *ctx, unsigned char const *buf, unsigned len)
+ }
+ 
+ /*
+- * Final wrapup - pad to 64-byte boundary with the bit pattern 
++ * Final wrapup - pad to 64-byte boundary with the bit pattern
+  * 1 0* (64-bit count of bits processed, MSB-first)
+  */
+-void MD5Final(unsigned char digest[MD5LENGTH], struct MD5Context *ctx)
++void ul_MD5Final(unsigned char digest[UL_MD5LENGTH], struct UL_MD5Context *ctx)
+ {
+     unsigned count;
+     unsigned char *p;
+@@ -128,7 +128,7 @@ void MD5Final(unsigned char digest[MD5LENGTH], struct MD5Context *ctx)
+ 	/* Two lots of padding:  Pad the first block to 64 bytes */
+ 	memset(p, 0, count);
+ 	byteReverse(ctx->in, 16);
+-	MD5Transform(ctx->buf, (uint32_t *) ctx->in);
++	ul_MD5Transform(ctx->buf, (uint32_t *) ctx->in);
+ 
+ 	/* Now fill the next block with 56 bytes */
+ 	memset(ctx->in, 0, 56);
+@@ -145,9 +145,9 @@ void MD5Final(unsigned char digest[MD5LENGTH], struct MD5Context *ctx)
+     memcpy(&ctx->in[14 * sizeof(uint32_t)], &ctx->bits[0], 4);
+     memcpy(&ctx->in[15 * sizeof(uint32_t)], &ctx->bits[1], 4);
+ 
+-    MD5Transform(ctx->buf, (uint32_t *) ctx->in);
++    ul_MD5Transform(ctx->buf, (uint32_t *) ctx->in);
+     byteReverse((unsigned char *) ctx->buf, 4);
+-    memcpy(digest, ctx->buf, MD5LENGTH);
++    memcpy(digest, ctx->buf, UL_MD5LENGTH);
+     memset(ctx, 0, sizeof(*ctx));	/* In case it's sensitive */
+ }
+ 
+@@ -170,7 +170,7 @@ void MD5Final(unsigned char digest[MD5LENGTH], struct MD5Context *ctx)
+  * reflect the addition of 16 longwords of new data.  MD5Update blocks
+  * the data and converts bytes into longwords for this routine.
+  */
+-void MD5Transform(uint32_t buf[4], uint32_t const in[16])
++void ul_MD5Transform(uint32_t buf[4], uint32_t const in[16])
+ {
+     register uint32_t a, b, c, d;
+ 
+diff --git a/libblkid/src/superblocks/hfs.c b/libblkid/src/superblocks/hfs.c
+index c2344114a..19f14ed0d 100644
+--- a/libblkid/src/superblocks/hfs.c
++++ b/libblkid/src/superblocks/hfs.c
+@@ -130,19 +130,21 @@ struct hfsplus_vol_header {
+ 
+ static int hfs_set_uuid(blkid_probe pr, unsigned char const *hfs_info, size_t len)
+ {
+-	static unsigned char const hash_init[MD5LENGTH] = {
++	static unsigned char const hash_init[UL_MD5LENGTH] = {
+ 		0xb3, 0xe2, 0x0f, 0x39, 0xf2, 0x92, 0x11, 0xd6,
+ 		0x97, 0xa4, 0x00, 0x30, 0x65, 0x43, 0xec, 0xac
+ 	};
+-	unsigned char uuid[MD5LENGTH];
+-	struct MD5Context md5c;
++	unsigned char uuid[UL_MD5LENGTH];
++	struct UL_MD5Context md5c;
+ 
+ 	if (memcmp(hfs_info, "\0\0\0\0\0\0\0\0", len) == 0)
+ 		return -1;
+-	MD5Init(&md5c);
+-	MD5Update(&md5c, hash_init, MD5LENGTH);
+-	MD5Update(&md5c, hfs_info, len);
+-	MD5Final(uuid, &md5c);
++
++	ul_MD5Init(&md5c);
++	ul_MD5Update(&md5c, hash_init, UL_MD5LENGTH);
++	ul_MD5Update(&md5c, hfs_info, len);
++	ul_MD5Final(uuid, &md5c);
++
+ 	uuid[6] = 0x30 | (uuid[6] & 0x0f);
+ 	uuid[8] = 0x80 | (uuid[8] & 0x3f);
+ 	return blkid_probe_set_uuid(pr, uuid);
+diff --git a/libuuid/src/gen_uuid.c b/libuuid/src/gen_uuid.c
+index 431bf2064..a374e75c9 100644
+--- a/libuuid/src/gen_uuid.c
++++ b/libuuid/src/gen_uuid.c
+@@ -564,15 +564,15 @@ void uuid_generate(uuid_t out)
+  */
+ void uuid_generate_md5(uuid_t out, const uuid_t ns, const char *name, size_t len)
+ {
+-	MD5_CTX ctx;
+-	char hash[MD5LENGTH];
++	UL_MD5_CTX ctx;
++	char hash[UL_MD5LENGTH];
+ 
+-	MD5Init(&ctx);
++	ul_MD5Init(&ctx);
+ 	/* hash concatenation of well-known UUID with name */
+-	MD5Update(&ctx, ns, sizeof(uuid_t));
+-	MD5Update(&ctx, (const unsigned char *)name, len);
++	ul_MD5Update(&ctx, ns, sizeof(uuid_t));
++	ul_MD5Update(&ctx, (const unsigned char *)name, len);
+ 
+-	MD5Final((unsigned char *)hash, &ctx);
++	ul_MD5Final((unsigned char *)hash, &ctx);
+ 
+ 	memcpy(out, hash, sizeof(uuid_t));
+ 
+diff --git a/misc-utils/mcookie.c b/misc-utils/mcookie.c
+index e6c799d24..fd4227a09 100644
+--- a/misc-utils/mcookie.c
++++ b/misc-utils/mcookie.c
+@@ -41,7 +41,7 @@ enum {
+ };
+ 
+ struct mcookie_control {
+-	struct	MD5Context ctx;
++	struct	UL_MD5Context ctx;
+ 	char	**files;
+ 	size_t	nfiles;
+ 	uint64_t maxsz;
+@@ -67,12 +67,12 @@ static uint64_t hash_file(struct mcookie_control *ctl, int fd)
+ 		r = read_all(fd, (char *) buf, rdsz);
+ 		if (r < 0)
+ 			break;
+-		MD5Update(&ctl->ctx, buf, r);
++		ul_MD5Update(&ctl->ctx, buf, r);
+ 		count += r;
+ 	}
+ 	/* Separate files with a null byte */
+ 	buf[0] = '\0';
+-	MD5Update(&ctl->ctx, buf, 1);
++	ul_MD5Update(&ctl->ctx, buf, 1);
+ 	return count;
+ }
+ 
+@@ -131,7 +131,7 @@ int main(int argc, char **argv)
+ {
+ 	struct mcookie_control ctl = { .verbose = 0 };
+ 	size_t i;
+-	unsigned char digest[MD5LENGTH];
++	unsigned char digest[UL_MD5LENGTH];
+ 	unsigned char buf[RAND_BYTES];
+ 	int c;
+ 
+@@ -180,14 +180,14 @@ int main(int argc, char **argv)
+ 	free(ctl.files);
+ 
+ 	random_get_bytes(&buf, RAND_BYTES);
+-	MD5Update(&ctl.ctx, buf, RAND_BYTES);
++	ul_MD5Update(&ctl.ctx, buf, RAND_BYTES);
+ 	if (ctl.verbose)
+ 		fprintf(stderr, P_("Got %d byte from %s\n",
+ 				   "Got %d bytes from %s\n", RAND_BYTES),
+ 				RAND_BYTES, random_tell_source());
+ 
+-	MD5Final(digest, &ctl.ctx);
+-	for (i = 0; i < MD5LENGTH; i++)
++	ul_MD5Final(digest, &ctl.ctx);
++	for (i = 0; i < UL_MD5LENGTH; i++)
+ 		printf("%02x", digest[i]);
+ 	putchar('\n');
+ 
+diff --git a/tests/helpers/test_md5.c b/tests/helpers/test_md5.c
+index 471580e12..6f8dec4aa 100644
+--- a/tests/helpers/test_md5.c
++++ b/tests/helpers/test_md5.c
+@@ -7,22 +7,22 @@
+ int main(void)
+ {
+ 	int i, ret;
+-	struct MD5Context ctx;
+-	unsigned char digest[MD5LENGTH];
++	struct UL_MD5Context ctx;
++	unsigned char digest[UL_MD5LENGTH];
+ 	unsigned char buf[BUFSIZ];
+ 
+-	MD5Init( &ctx );
++	ul_MD5Init( &ctx );
+ 
+ 	while(!feof(stdin) && !ferror(stdin)) {
+ 		ret = fread(buf, 1, sizeof(buf), stdin);
+ 		if (ret)
+-			MD5Update( &ctx, buf, ret );
++			ul_MD5Update( &ctx, buf, ret );
+ 	}
+ 
+ 	fclose(stdin);
+-	MD5Final( digest, &ctx );
++	ul_MD5Final( digest, &ctx );
+ 
+-	for (i = 0; i < MD5LENGTH; i++)
++	for (i = 0; i < UL_MD5LENGTH; i++)
+ 		printf( "%02x", digest[i] );
+ 	printf("\n");
+ 	return 0;

diff --git a/sys-apps/util-linux/files/util-linux-2.31-too_generic_symbols_pt3.patch b/sys-apps/util-linux/files/util-linux-2.31-too_generic_symbols_pt3.patch
new file mode 100644
index 00000000000..2306a210e0b
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.31-too_generic_symbols_pt3.patch
@@ -0,0 +1,43 @@
+From b4db227582f1d0a14c7b63de8d57e6052b753d57 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Tue, 12 Dec 2017 11:38:17 +0100
+Subject: [PATCH] test_sha1: update helper
+
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ tests/helpers/test_sha1.c | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/tests/helpers/test_sha1.c b/tests/helpers/test_sha1.c
+index 5a1972935..ad96da4f0 100644
+--- a/tests/helpers/test_sha1.c
++++ b/tests/helpers/test_sha1.c
+@@ -7,22 +7,22 @@
+ int main(void)
+ {
+ 	int i, ret;
+-	SHA1_CTX ctx;
+-	unsigned char digest[SHA1LENGTH];
++	UL_SHA1_CTX ctx;
++	unsigned char digest[UL_SHA1LENGTH];
+ 	unsigned char buf[BUFSIZ];
+ 
+-	SHA1Init( &ctx );
++	ul_SHA1Init( &ctx );
+ 
+ 	while(!feof(stdin) && !ferror(stdin)) {
+ 		ret = fread(buf, 1, sizeof(buf), stdin);
+ 		if (ret)
+-			SHA1Update( &ctx, buf, ret );
++			ul_SHA1Update( &ctx, buf, ret );
+ 	}
+ 
+ 	fclose(stdin);
+-	SHA1Final( digest, &ctx );
++	ul_SHA1Final( digest, &ctx );
+ 
+-	for (i = 0; i < SHA1LENGTH; i++)
++	for (i = 0; i < UL_SHA1LENGTH; i++)
+ 		printf( "%02x", digest[i] );
+ 	printf("\n");
+ 	return 0;

diff --git a/sys-apps/util-linux/util-linux-2.31-r1.ebuild b/sys-apps/util-linux/util-linux-2.31-r1.ebuild
new file mode 100644
index 00000000000..8b029289f46
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.31-r1.ebuild
@@ -0,0 +1,206 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
+
+inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 \
+	pam python-single-r1 multilib-minimal systemd
+
+MY_PV="${PV/_/-}"
+MY_P="${PN}-${MY_PV}"
+
+if [[ ${PV} == 9999 ]] ; then
+	inherit git-r3 autotools
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
+else
+	[[ "${PV}" = *_rc* ]] || \
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
+	SRC_URI="mirror://kernel/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/"
+
+LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
+SLOT="0"
+IUSE="build caps +cramfs fdformat kill ncurses nls pam python +readline selinux slang static-libs +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="caps? ( sys-libs/libcap-ng )
+	cramfs? ( sys-libs/zlib )
+	ncurses? ( >=sys-libs/ncurses-5.2-r2:0=[unicode?] )
+	pam? ( sys-libs/pam )
+	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:= )"
+DEPEND="${RDEPEND}
+	virtual/pkgconfig
+	nls? ( sys-devel/gettext )
+	test? ( sys-devel/bc )
+	virtual/os-headers"
+RDEPEND+="
+	kill? (
+		!sys-apps/coreutils[kill]
+		!sys-process/procps[kill]
+	)
+	!net-wireless/rfkill
+	!sys-process/schedutils
+	!sys-apps/setarch
+	!<sys-apps/sysvinit-2.88-r7
+	!sys-block/eject
+	!<sys-libs/e2fsprogs-libs-1.41.8
+	!<sys-fs/e2fsprogs-1.41.8
+	!<app-shells/bash-completion-2.7-r1"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+PATCHES=(
+	"${FILESDIR}"/${P}-too_generic_symbols_pt{1,2,3}.patch #641226
+)
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_setup() {
+	use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+	default
+
+	if [[ ${PV} == 9999 ]] ; then
+		po/update-potfiles
+		eautoreconf
+	fi
+	# Undo bad ncurses handling by upstream. #601530
+	sed -i -E \
+		-e '/NCURSES_/s:(ncursesw?)[56]-config:$PKG_CONFIG \1:' \
+		-e 's:(ncursesw?)[56]-config --version:$PKG_CONFIG --exists --print-errors \1:' \
+		configure || die
+	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
+}
+
+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
+
+	local myeconfargs=(
+		--disable-chfn-chsh
+		--disable-login
+		--disable-nologin
+		--disable-su
+		--docdir='${datarootdir}'/doc/${PF}
+		--enable-agetty
+		--enable-bash-completion
+		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin"
+		--enable-line
+		--enable-partx
+		--enable-raw
+		--enable-rename
+		--enable-rfkill
+		--enable-schedutils
+		--with-bashcompletiondir="$(get_bashcompdir)"
+		--with-systemdsystemunitdir=$(multilib_native_usex systemd "$(systemd_get_systemunitdir)" "no")
+		$(multilib_native_use_enable caps setpriv)
+		$(multilib_native_use_enable cramfs)
+		$(multilib_native_use_enable fdformat)
+		$(multilib_native_use_enable nls)
+		$(multilib_native_use_enable suid makeinstall-chown)
+		$(multilib_native_use_enable suid makeinstall-setuid)
+		$(multilib_native_use_enable tty-helpers mesg)
+		$(multilib_native_use_enable tty-helpers wall)
+		$(multilib_native_use_enable tty-helpers write)
+		$(multilib_native_use_with python)
+		$(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 unicode ncursesw)" '--without-ncursesw')
+		$(multilib_native_usex ncurses "$(use_with !unicode ncurses)" '--without-ncurses')
+		$(tc-has-tls || echo --disable-tls)
+		$(use_enable unicode widechar)
+		$(use_enable kill)
+		$(use_enable static-libs static)
+		$(use_with selinux)
+		$(usex ncurses '' '--without-tinfo')
+	)
+	ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+}
+
+multilib_src_compile() {
+	if multilib_is_native_abi; then
+		default
+	else
+		# build libraries only
+		emake -f Makefile -f - mylibs \
+			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
+	fi
+}
+
+multilib_src_test() {
+	multilib_is_native_abi && emake check
+}
+
+multilib_src_install() {
+	if multilib_is_native_abi; then
+		default
+	else
+		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
+			install-pkgconfigDATA install-uuidincHEADERS \
+			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
+			install-nodist_smartcolsincHEADERS install-nodist_fdiskincHEADERS
+	fi
+
+	if multilib_is_native_abi; then
+		# need the libs in /
+		gen_usr_ldscript -a blkid mount smartcols uuid
+
+		use python && python_optimize
+	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 pam; then
+		newpamd "${FILESDIR}/runuser.pamd" runuser
+		newpamd "${FILESDIR}/runuser-l.pamd" runuser-l
+	fi
+}
+
+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
+}


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2017-06-09  1:19 Lars Wendler
  0 siblings, 0 replies; 32+ messages in thread
From: Lars Wendler @ 2017-06-09  1:19 UTC (permalink / raw
  To: gentoo-commits

commit:     73318be505bc35e10cd9b4ec43b04c38cdb7da2f
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu Jun  8 23:21:43 2017 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Jun  9 01:18:43 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=73318be5

sys-apps/util-linux: Bump to version 2.30. Removed old.

Also fix pylibmount segfault with python3.6 (bug #621176).

Package-Manager: Portage-2.3.6, Repoman-2.3.2

 sys-apps/util-linux/Manifest                       |  2 +-
 .../util-linux-2.30-pylibmount_segfault.patch      | 25 ++++++++++++++++++++++
 ...inux-2.30_rc2.ebuild => util-linux-2.30.ebuild} |  6 ++++++
 3 files changed, 32 insertions(+), 1 deletion(-)

diff --git a/sys-apps/util-linux/Manifest b/sys-apps/util-linux/Manifest
index cc57bb33ef8..21f4ab9dce9 100644
--- a/sys-apps/util-linux/Manifest
+++ b/sys-apps/util-linux/Manifest
@@ -2,4 +2,4 @@ DIST util-linux-2.26.2.tar.xz 3863868 SHA256 0e29bda142528a48a0a953c39ff63093651
 DIST util-linux-2.28.2.tar.xz 4149700 SHA256 b89d37146f20bede93a42c847bce881a17e6dbd8066ff2db2bee733fa409f0cd SHA512 ac1c2d4c92bbc4eabed464cb0334c1d9b21e58df0f07f0b26e7adcfa188879de8632d195b65a4358c5e11e14ac6e09a1c6206265bbf1fab4ce122414bee7e940 WHIRLPOOL 1735e33620dba30cc1f42e60b707adb72234006b7fea242ac98c389295617bd0225563bcffa76b9d0753dfa100775dd9a2b73614843645ce667db5536842e308
 DIST util-linux-2.29.1.tar.xz 4278756 SHA256 0ce40600b934ec2fecfa6bfc4efe6982d051ba96c2832b05201347aec582f54f SHA512 221fc7651eb0534c55206eaf9184b2eb55d9f838cd0e1623cadac5d4ac57a118d96cdd770b6492b39381dd1316b81553866bc0f8c25dbb52dac9641f2fa0f7fa WHIRLPOOL d509168960b0ad54ade4d03dc39dca1dcf0bb0a5b51a594f04bc02ff3a6c89fc5966cff4653dfc826f75f8864497da600c7a86039099845b98e6f9d7981cff98
 DIST util-linux-2.29.2.tar.xz 4277668 SHA256 accea4d678209f97f634f40a93b7e9fcad5915d1f4749f6c47bee6bf110fe8e3 SHA512 0a87e6758531f74276f3de7607ef545f324b9b36b444aa5d163140c5fb0f4f7602655d7ec9939f92550dcb320d922cd69521a2183199d463795e67d3c27fce79 WHIRLPOOL 1f45711e593c76c6e208a28892ed2bf2622adb5fa1334867e13c6bf775a8903c2f1ebf18c3238d96fe139c5b60d61abf496251cf594a339209ce044f2bb8c17a
-DIST util-linux-2.30-rc2.tar.xz 4376864 SHA256 5cdb28f6221ab68cb593c5e3fb01bb7cce9466a42bad031411eea6b5adc08c5d SHA512 df03ca776af6838c06387e017fdf38abb29adc1d29df56ce7c55d1df5a5ab16d6123e649c63734e75a0239f89b994147f261edd5e78e16881fd5ec12a4365763 WHIRLPOOL 7961bbc51117dd7ee2768ecfaef20758db882bdd888ff0495cba41860caf91354a78332d5131bdedb0cbb7fa2380485e15bbbc80ee8cd6f927787816c9d04e83
+DIST util-linux-2.30.tar.xz 4478016 SHA256 c208a4ff6906cb7f57940aa5bc3a6eed146e50a7cc0a092f52ef2ab65057a08d SHA512 30e311768718508066829567200e975fd08a22360915b27c8839f368fe6d84c8eca6c2f69a60f113d934eea9934e49f05cd98c3db7fd6bc5ad8f7f770badbc97 WHIRLPOOL 11749d9842e6de9ba0b164b533ac6eeae26557eed8da601eedc1505c5da88d0a6ef25586efb17c68ba0644a5ba8110188587c197f360b75191f1d4f90691d23b

diff --git a/sys-apps/util-linux/files/util-linux-2.30-pylibmount_segfault.patch b/sys-apps/util-linux/files/util-linux-2.30-pylibmount_segfault.patch
new file mode 100644
index 00000000000..73fbc994923
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.30-pylibmount_segfault.patch
@@ -0,0 +1,25 @@
+https://bugs.gentoo.org/621176
+
+From 29b721bc9d20ed44858017689ce1745c220bd0d4 Mon Sep 17 00:00:00 2001
+From: Zac Medico <zmedico@gentoo.org>
+Date: Wed, 7 Jun 2017 17:21:33 -0700
+Subject: [PATCH] pylibmount: NULL terminate kwlist in Context_init
+
+Fixes a segfault observed with python3.6.
+---
+ libmount/python/context.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/libmount/python/context.c b/libmount/python/context.c
+index 6d82e1432..982414d01 100644
+--- a/libmount/python/context.c
++++ b/libmount/python/context.c
+@@ -90,7 +90,7 @@ static int Context_init(ContextObjext *self, PyObject *args, PyObject *kwds)
+ 		"source", "target", "fstype",
+ 		"options", "mflags", "fstype_pattern",
+ 		"options_pattern", "fs", "fstab",
+-		"optsmode"
++		"optsmode", NULL
+ 	};
+ 
+ 	if (!PyArg_ParseTupleAndKeywords(

diff --git a/sys-apps/util-linux/util-linux-2.30_rc2.ebuild b/sys-apps/util-linux/util-linux-2.30.ebuild
similarity index 98%
rename from sys-apps/util-linux/util-linux-2.30_rc2.ebuild
rename to sys-apps/util-linux/util-linux-2.30.ebuild
index 37dbeaf6c98..b016bb8652f 100644
--- a/sys-apps/util-linux/util-linux-2.30_rc2.ebuild
+++ b/sys-apps/util-linux/util-linux-2.30.ebuild
@@ -61,11 +61,17 @@ REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
 
 S="${WORKDIR}/${MY_P}"
 
+PATCHES=(
+	"${FILESDIR}"/${PN}-2.30-pylibmount_segfault.patch
+)
+
 pkg_setup() {
 	use python && python-single-r1_pkg_setup
 }
 
 src_prepare() {
+	epatch "${PATCHES[@]}"
+
 	if [[ ${PV} == 9999 ]] ; then
 		po/update-potfiles
 		eautoreconf


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2017-01-21  0:36 Lars Wendler
  0 siblings, 0 replies; 32+ messages in thread
From: Lars Wendler @ 2017-01-21  0:36 UTC (permalink / raw
  To: gentoo-commits

commit:     e422bb8f40b88a7317718049ab1e8eaa6801c91f
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 21 00:36:10 2017 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sat Jan 21 00:36:10 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e422bb8f

sys-apps/util-linux: Removed old.

Package-Manager: Portage-2.3.3, Repoman-2.3.1

 sys-apps/util-linux/Manifest                       |   1 -
 .../files/util-linux-2.27.1-sysmacros.patch        | 278 ---------------------
 sys-apps/util-linux/util-linux-2.27.1.ebuild       | 186 --------------
 3 files changed, 465 deletions(-)

diff --git a/sys-apps/util-linux/Manifest b/sys-apps/util-linux/Manifest
index adaf831..7cadb19 100644
--- a/sys-apps/util-linux/Manifest
+++ b/sys-apps/util-linux/Manifest
@@ -1,5 +1,4 @@
 DIST util-linux-2.26.2.tar.xz 3863868 SHA256 0e29bda142528a48a0a953c39ff63093651a4809042e1790fbd6aa8663fd9666 SHA512 1cb8e2f32882b3f496d31c250a45cfb61bedb79f7a2802b358c23134d4257fa9bc9cde8888cfa1aaba12109f82b93345c6dc0bec2d11629ffa084f2a4476a91b WHIRLPOOL 699ff057f9930fe53f44090817c64ffe089345e7aba4c836e18cd3d2088881add805640b0e41b8d60bc08e3632be919025417feb9c2ddda454c87821a59122ed
-DIST util-linux-2.27.1.tar.xz 3964512 SHA256 0a818fcdede99aec43ffe6ca5b5388bff80d162f2f7bd4541dca94fecb87a290 SHA512 a450a0c2d26a6deaf5e53b8f6bddf59409aefb1f0aaf07393f68a418408fbc62c5da353c8ba53c7cac8ea6e3dddfad59161753d888c31f5ccea445e81accbad8 WHIRLPOOL b0641f013762a667efcb2fabe6e3e09dd09252835d841e25cde506aca3a74876ad34f8130f3227683c7e8f19359205c4014dfcd9055d860ae6e3e54621478639
 DIST util-linux-2.28.2.tar.xz 4149700 SHA256 b89d37146f20bede93a42c847bce881a17e6dbd8066ff2db2bee733fa409f0cd SHA512 ac1c2d4c92bbc4eabed464cb0334c1d9b21e58df0f07f0b26e7adcfa188879de8632d195b65a4358c5e11e14ac6e09a1c6206265bbf1fab4ce122414bee7e940 WHIRLPOOL 1735e33620dba30cc1f42e60b707adb72234006b7fea242ac98c389295617bd0225563bcffa76b9d0753dfa100775dd9a2b73614843645ce667db5536842e308
 DIST util-linux-2.29.1.tar.xz 4278756 SHA256 0ce40600b934ec2fecfa6bfc4efe6982d051ba96c2832b05201347aec582f54f SHA512 221fc7651eb0534c55206eaf9184b2eb55d9f838cd0e1623cadac5d4ac57a118d96cdd770b6492b39381dd1316b81553866bc0f8c25dbb52dac9641f2fa0f7fa WHIRLPOOL d509168960b0ad54ade4d03dc39dca1dcf0bb0a5b51a594f04bc02ff3a6c89fc5966cff4653dfc826f75f8864497da600c7a86039099845b98e6f9d7981cff98
 DIST util-linux-2.29.tar.xz 4249020 SHA256 2c59ea67cc7b564104f60532f6e0a95fe17a91acb870ba8fd7e986f273abf9e7 SHA512 ec6d5b2ef49069341dbb805ccdaca7a2e4d6aaa4d06f34c1de24e538ed971bd83749b6c5a6ce75d72d86817edb6b4eb3396579d18cdb523eb02b92427f41d7f3 WHIRLPOOL b07750566086a183175c6ec6eb935ce2e37ffaf5eeca4b58ea7e823c6dfdd63dd52543b7009014ace20ef9cb9be363cfade85bcbfbd4fa7ac388e0eefbb80f05

diff --git a/sys-apps/util-linux/files/util-linux-2.27.1-sysmacros.patch b/sys-apps/util-linux/files/util-linux-2.27.1-sysmacros.patch
deleted file mode 100644
index 9c64e07..00000000
--- a/sys-apps/util-linux/files/util-linux-2.27.1-sysmacros.patch
+++ /dev/null
@@ -1,278 +0,0 @@
-From 71cd37a19acef366ff12f322c78c711559764e13 Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@gentoo.org>
-Date: Mon, 7 Mar 2016 16:42:05 -0500
-Subject: [PATCH] include sysmacros.h where used
-
-BSD/Linux systems stick major/minor/makedev in sysmacros.h.  Newer Linux
-libraries have been moving away from including sysmacros.h implicitly via
-sys/types.h, so include it directly.
-
-Signed-off-by: Mike Frysinger <vapier@gentoo.org>
----
-
-diff --git a/lib/ismounted.c b/lib/ismounted.c
-index f83be65..9b0e447 100644
---- a/lib/ismounted.c
-+++ b/lib/ismounted.c
-@@ -18,6 +18,7 @@
- #include <sys/stat.h>
- #include <ctype.h>
- #include <sys/param.h>
-+#include <sys/sysmacros.h>
- #ifdef __APPLE__
- #include <sys/ucred.h>
- #include <sys/mount.h>
-diff --git a/lib/sysfs.c b/lib/sysfs.c
-index 9e973a4..4b46459 100644
---- a/lib/sysfs.c
-+++ b/lib/sysfs.c
-@@ -7,6 +7,7 @@
-  * Written by Karel Zak <kzak@redhat.com>
-  */
- #include <ctype.h>
-+#include <sys/sysmacros.h>
- 
- #include "c.h"
- #include "at.h"
-diff --git a/login-utils/sulogin-consoles.c b/login-utils/sulogin-consoles.c
-index fe8eab1..56f5336 100644
---- a/login-utils/sulogin-consoles.c
-+++ b/login-utils/sulogin-consoles.c
-@@ -27,6 +27,7 @@
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
-+#include <sys/sysmacros.h>
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <sys/ioctl.h>
-diff --git a/libblkid/src/devname.c b/libblkid/src/devname.c
-index dbbe5b5..d583800 100644
---- a/libblkid/src/devname.c
-+++ b/libblkid/src/devname.c
-@@ -25,6 +25,7 @@
- #ifdef HAVE_SYS_TYPES_H
- #include <sys/types.h>
- #endif
-+#include <sys/sysmacros.h>
- #include <dirent.h>
- #ifdef HAVE_SYS_STAT_H
- #include <sys/stat.h>
-diff --git a/libblkid/src/devno.c b/libblkid/src/devno.c
-index 58fbce5..4b8f3db 100644
---- a/libblkid/src/devno.c
-+++ b/libblkid/src/devno.c
-@@ -31,6 +31,7 @@
- #endif
- #include <fcntl.h>
- #include <inttypes.h>
-+#include <sys/sysmacros.h>
- 
- #include "blkidP.h"
- #include "pathnames.h"
-diff --git a/libmount/src/tab_parse.c b/libmount/src/tab_parse.c
-index cee7008..29b4428 100644
---- a/libmount/src/tab_parse.c
-+++ b/libmount/src/tab_parse.c
-@@ -16,6 +16,7 @@
- #include <limits.h>
- #include <dirent.h>
- #include <fcntl.h>
-+#include <sys/sysmacros.h>
- 
- #include "at.h"
- #include "mangle.h"
-diff --git a/misc-utils/findmnt.c b/misc-utils/findmnt.c
-index f72be14..e14119b 100644
---- a/misc-utils/findmnt.c
-+++ b/misc-utils/findmnt.c
-@@ -31,6 +31,7 @@
- #include <assert.h>
- #include <poll.h>
- #include <sys/statvfs.h>
-+#include <sys/sysmacros.h>
- #include <sys/types.h>
- #ifdef HAVE_LIBUDEV
- # include <libudev.h>
-diff --git a/misc-utils/lsblk.c b/misc-utils/lsblk.c
-index c9a39b3..6010167 100644
---- a/misc-utils/lsblk.c
-+++ b/misc-utils/lsblk.c
-@@ -26,6 +26,7 @@
- #include <stdlib.h>
- #include <unistd.h>
- #include <stdint.h>
-+#include <sys/sysmacros.h>
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <dirent.h>
-diff --git a/misc-utils/lslocks.c b/misc-utils/lslocks.c
-index a47c1d0..7689964 100644
---- a/misc-utils/lslocks.c
-+++ b/misc-utils/lslocks.c
-@@ -30,6 +30,7 @@
- #include <dirent.h>
- #include <unistd.h>
- #include <sys/stat.h>
-+#include <sys/sysmacros.h>
- #include <sys/types.h>
- 
- #include <libmount.h>
-diff --git a/disk-utils/fsck.c b/disk-utils/fsck.c
-index 6f9e78b..2b7e712 100644
---- a/disk-utils/fsck.c
-+++ b/disk-utils/fsck.c
-@@ -30,6 +30,7 @@
- #include <sys/types.h>
- #include <sys/wait.h>
- #include <sys/stat.h>
-+#include <sys/sysmacros.h>
- #include <sys/file.h>
- #include <fcntl.h>
- #include <limits.h>
-diff --git a/disk-utils/partx.c b/disk-utils/partx.c
-index 50bd6a4..955166b 100644
---- a/disk-utils/partx.c
-+++ b/disk-utils/partx.c
-@@ -19,6 +19,7 @@
- #include <unistd.h>
- #include <assert.h>
- #include <dirent.h>
-+#include <sys/sysmacros.h>
- 
- #include <blkid.h>
- #include <libsmartcols.h>
-diff --git a/disk-utils/sfdisk.c b/disk-utils/sfdisk.c
-index 81371eb..9c1aacb 100644
---- a/disk-utils/sfdisk.c
-+++ b/disk-utils/sfdisk.c
-@@ -29,6 +29,7 @@
- #include <errno.h>
- #include <getopt.h>
- #include <sys/stat.h>
-+#include <sys/sysmacros.h>
- #include <assert.h>
- #include <fcntl.h>
- #include <libsmartcols.h>
-diff --git a/libblkid/src/evaluate.c b/libblkid/src/evaluate.c
-index ffbe097..3d9a76b 100644
---- a/libblkid/src/evaluate.c
-+++ b/libblkid/src/evaluate.c
-@@ -12,6 +12,7 @@
- #include <unistd.h>
- #include <fcntl.h>
- #include <ctype.h>
-+#include <sys/sysmacros.h>
- #include <sys/types.h>
- #ifdef HAVE_SYS_STAT_H
- #include <sys/stat.h>
-diff --git a/libblkid/src/partitions/partitions.c b/libblkid/src/partitions/partitions.c
-index c8e0bfe..4ba5411 100644
---- a/libblkid/src/partitions/partitions.c
-+++ b/libblkid/src/partitions/partitions.c
-@@ -15,6 +15,7 @@
- #include <ctype.h>
- #include <sys/types.h>
- #include <sys/stat.h>
-+#include <sys/sysmacros.h>
- #include <errno.h>
- #include <stdint.h>
- #include <inttypes.h>
-diff --git a/libblkid/src/topology/dm.c b/libblkid/src/topology/dm.c
-index e061632..993161c 100644
---- a/libblkid/src/topology/dm.c
-+++ b/libblkid/src/topology/dm.c
-@@ -17,6 +17,7 @@
- #include <string.h>
- #include <sys/stat.h>
- #include <sys/types.h>
-+#include <sys/sysmacros.h>
- #include <unistd.h>
- 
- #include "topology.h"
-diff --git a/libblkid/src/topology/evms.c b/libblkid/src/topology/evms.c
-index 7a4fd55..b59b97b 100644
---- a/libblkid/src/topology/evms.c
-+++ b/libblkid/src/topology/evms.c
-@@ -18,6 +18,7 @@
- #include <sys/ioctl.h>
- #include <sys/stat.h>
- #include <sys/types.h>
-+#include <sys/sysmacros.h>
- #include <unistd.h>
- 
- #include "topology.h"
-diff --git a/libblkid/src/topology/lvm.c b/libblkid/src/topology/lvm.c
-index bd079d4..2ade0c2 100644
---- a/libblkid/src/topology/lvm.c
-+++ b/libblkid/src/topology/lvm.c
-@@ -17,6 +17,7 @@
- #include <string.h>
- #include <sys/stat.h>
- #include <sys/types.h>
-+#include <sys/sysmacros.h>
- #include <unistd.h>
- 
- #include "topology.h"
-diff --git a/libblkid/src/topology/md.c b/libblkid/src/topology/md.c
-index 5eba947..388f996 100644
---- a/libblkid/src/topology/md.c
-+++ b/libblkid/src/topology/md.c
-@@ -18,6 +18,7 @@
- #include <sys/ioctl.h>
- #include <sys/stat.h>
- #include <sys/types.h>
-+#include <sys/sysmacros.h>
- #include <unistd.h>
- 
- #include "topology.h"
-diff --git a/libmount/python/fs.c b/libmount/python/fs.c
-index 0789d37..651a7c5 100644
---- a/libmount/python/fs.c
-+++ b/libmount/python/fs.c
-@@ -27,6 +27,7 @@
- 
- #include "pylibmount.h"
- #include <errno.h>
-+#include <sys/sysmacros.h>
- 
- #define Fs_HELP "Fs(source=None, root=None, target=None, fstype=None, options=None, attributes=None, freq=0, passno=0)"
- 
-diff --git a/libmount/src/fs.c b/libmount/src/fs.c
-index 2bab7d6..ab3155d 100644
---- a/libmount/src/fs.c
-+++ b/libmount/src/fs.c
-@@ -14,6 +14,7 @@
- #include <ctype.h>
- #include <blkid.h>
- #include <stddef.h>
-+#include <sys/sysmacros.h>
- 
- #include "mountP.h"
- #include "strutils.h"
-diff --git a/sys-utils/losetup.c b/sys-utils/losetup.c
-index 1d57ab3..90a42b6 100644
---- a/sys-utils/losetup.c
-+++ b/sys-utils/losetup.c
-@@ -12,6 +12,7 @@
- #include <unistd.h>
- #include <sys/ioctl.h>
- #include <sys/stat.h>
-+#include <sys/sysmacros.h>
- #include <inttypes.h>
- #include <getopt.h>
- 
-diff --git a/sys-utils/mountpoint.c b/sys-utils/mountpoint.c
-index ad9c1da..64d0a7e 100644
---- a/sys-utils/mountpoint.c
-+++ b/sys-utils/mountpoint.c
-@@ -31,6 +31,7 @@
- #include <unistd.h>
- #include <sys/types.h>
- #include <sys/stat.h>
-+#include <sys/sysmacros.h>
- 
- #include <libmount.h>
- 
--- 
-2.6.2

diff --git a/sys-apps/util-linux/util-linux-2.27.1.ebuild b/sys-apps/util-linux/util-linux-2.27.1.ebuild
deleted file mode 100644
index 08624a8..00000000
--- a/sys-apps/util-linux/util-linux-2.27.1.ebuild
+++ /dev/null
@@ -1,186 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="5"
-
-PYTHON_COMPAT=( python2_7 python3_4 )
-
-inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
-	python-single-r1 multilib-minimal systemd
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-2 autotools
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
-	SRC_URI="mirror://kernel/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/"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="build caps +cramfs fdformat kill ncurses nls pam python +readline selinux slang static-libs +suid systemd test tty-helpers udev unicode"
-
-RDEPEND="caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2:0=[unicode?] )
-	pam? ( sys-libs/pam )
-	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:= )
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20150406-r2
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
-	)"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-	virtual/os-headers"
-RDEPEND+="
-	kill? (
-		!sys-apps/coreutils[kill]
-		!sys-process/procps[kill]
-	)
-	!sys-process/schedutils
-	!sys-apps/setarch
-	!<sys-apps/sysvinit-2.88-r7
-	!sys-block/eject
-	!<sys-libs/e2fsprogs-libs-1.41.8
-	!<sys-fs/e2fsprogs-1.41.8
-	!<app-shells/bash-completion-1.3-r2"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	if [[ ${PV} == 9999 ]] ; then
-		po/update-potfiles
-		eautoreconf
-	fi
-	epatch "${FILESDIR}"/${P}-sysmacros.patch
-	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
-}
-
-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
-	ECONF_SOURCE=${S} \
-	econf \
-		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
-		--docdir='${datarootdir}'/doc/${PF} \
-		$(multilib_native_use_enable nls) \
-		--enable-agetty \
-		--with-bashcompletiondir="$(get_bashcompdir)" \
-		--enable-bash-completion \
-		$(multilib_native_use_enable caps setpriv) \
-		--disable-chfn-chsh \
-		$(multilib_native_use_enable cramfs) \
-		$(multilib_native_use_enable fdformat) \
-		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
-		$(use_enable kill) \
-		--disable-login \
-		$(multilib_native_use_enable tty-helpers mesg) \
-		--disable-nologin \
-		--enable-partx \
-		$(multilib_native_use_with python) \
-		--enable-raw \
-		$(multilib_native_use_with readline) \
-		--enable-rename \
-		--disable-reset \
-		--enable-schedutils \
-		--disable-su \
-		$(multilib_native_use_enable tty-helpers wall) \
-		$(multilib_native_use_enable tty-helpers write) \
-		$(multilib_native_use_enable suid makeinstall-chown) \
-		$(multilib_native_use_enable suid makeinstall-setuid) \
-		$(use_with selinux) \
-		$(multilib_native_use_with slang) \
-		$(use_enable static-libs static) \
-		$(multilib_native_use_with systemd) \
-		--with-systemdsystemunitdir=$(multilib_native_usex systemd "$(systemd_get_unitdir)" "no") \
-		$(multilib_native_use_with udev) \
-		$(tc-has-tls || echo --disable-tls)
-}
-
-multilib_src_compile() {
-	if multilib_is_native_abi; then
-		default
-	else
-		# build libraries only
-		emake -f Makefile -f - mylibs \
-			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
-	fi
-}
-
-multilib_src_test() {
-	multilib_is_native_abi && emake check
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		default
-	else
-		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
-			install-pkgconfigDATA install-uuidincHEADERS \
-			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
-			install-nodist_smartcolsincHEADERS install-nodist_fdiskincHEADERS
-	fi
-
-	if multilib_is_native_abi; then
-		# need the libs in /
-		gen_usr_ldscript -a blkid mount smartcols uuid
-
-		use python && python_optimize
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	prune_libtool_files
-}
-
-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
-}


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2015-09-07 20:02 Lars Wendler
  0 siblings, 0 replies; 32+ messages in thread
From: Lars Wendler @ 2015-09-07 20:02 UTC (permalink / raw
  To: gentoo-commits

commit:     2b5775f59fc77e0cf453c92ca79f802f224f90a9
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  7 20:02:09 2015 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Sep  7 20:02:28 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2b5775f5

sys-apps/util-linux: Removed old with respect to bug #559902.

Package-Manager: portage-2.2.20.1
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 sys-apps/util-linux/Manifest                       |   3 -
 sys-apps/util-linux/files/crypto-loop.confd        |   9 --
 sys-apps/util-linux/files/crypto-loop.initd        |  70 --------
 .../files/util-linux-2.25.1-blkid-probe-fix.patch  |  43 -----
 sys-apps/util-linux/util-linux-2.24.1-r2.ebuild    | 147 -----------------
 sys-apps/util-linux/util-linux-2.25.1-r1.ebuild    | 174 --------------------
 sys-apps/util-linux/util-linux-2.25.1.ebuild       | 173 --------------------
 sys-apps/util-linux/util-linux-2.25.2-r1.ebuild    | 177 --------------------
 sys-apps/util-linux/util-linux-2.25.2.ebuild       | 174 --------------------
 sys-apps/util-linux/util-linux-2.26.1-r1.ebuild    | 178 ---------------------
 sys-apps/util-linux/util-linux-2.26.1.ebuild       | 177 --------------------
 sys-apps/util-linux/util-linux-2.26.ebuild         | 177 --------------------
 12 files changed, 1502 deletions(-)

diff --git a/sys-apps/util-linux/Manifest b/sys-apps/util-linux/Manifest
index ff7a239..435eed7 100644
--- a/sys-apps/util-linux/Manifest
+++ b/sys-apps/util-linux/Manifest
@@ -1,8 +1,5 @@
 DIST util-linux-2.24.1.tar.xz 3543692 SHA256 835eb6232cfab0118ef2e4fd649de0ba9f5bd1b8cbf9a7d4d84594541dec8410 SHA512 5636e1c57bd57954518e90ff0f079810cc2927f52bb925dde556ce2744a088577f8adbc19c19b2bd079efd253406767faa44d1de5f557e024762522e647f044b WHIRLPOOL 25862a85788eb1c275c7e06f3d2be8e6a9605811665e06a4b21d1e274fc4a5e19dd03e5c52061ee5d98ce8c86ba757a7f8076683edb603ad0c43c05ab5e52a51
 DIST util-linux-2.24.2.tar.xz 3586580 SHA256 1243d6c07f1c5b38aa4c3814c81a71c24cba7dafe08942916bf216a90a460ff0 SHA512 a0c03876ef19fa09e434e3e5362fb3f3e0a254b3b39a623ac7a9a207d06afce00366792244ed0fac86931f8340c046620660f33c3444a07a12037182fc191240 WHIRLPOOL 4b8185e1832145c050a8aa0761ae017d846ed58cd7e07710e4c32bf92a8f6e530bddb56dab70c8025eddb4cafafed79e658b0aced3a190b61b508078a438a9ed
-DIST util-linux-2.25.1.tar.xz 3695172 SHA256 4701305ae22790c3a92ce48e50794fa05b7ee01f4227f419a171c100d08986e8 SHA512 a670cb4318beed0a455efb339ebea6ec7c5d672e15877e7e25cae2ec9c0795fbe4275b6c85a590467c3de92ab2f64cdcd0427c9a2a6e4c6b76f563592fb7be8d WHIRLPOOL 44c17bd3ad0b05c47bb955b934011b460c3992ea5d5b43977d2001b245820b775e16bedbaa10ff9c223d59b0809674884c76f0dc34d707864d17b49b4deaab9d
 DIST util-linux-2.25.2.tar.xz 3703644 SHA256 e0457f715b73f4a349e1acb08cb410bf0edc9a74a3f75c357070f31f70e33cd6 SHA512 cf8c5bde78f844425150c2a81bdecb87aa57bcd5cebd177a78160835627f58037fa2cfe4db26fd8f35eedb3beb499a91492a297a27d065465e2ea0c6218dc387 WHIRLPOOL dd1685f2e694bf3de95acc3ba3170d231426c18c3395a867c815bbd3ab5ee0f07567b49d0ae083ce669c89db711e39fd2b990bc7321985ec2279d78816ec5258
-DIST util-linux-2.26.1.tar.xz 3859740 SHA256 22dc1c957262e2cbdfb4d524a63d5cd4f219d3ac9b5eab570fc771076799bb6e SHA512 9321793b3fa219ffc46e10639b9e45094c3cae6c48be4b80e652d9768f40dcedbd49342e17345b61c85f46540a7bd93d118a8e226c315e112bb2e959e2855ad9 WHIRLPOOL 1bcd5c3c14c278ec3b10535546706b6830a283fd72e7d1933101bf1ab6ec5b03d9ff7a53745d34a97cbb4d7d1b0e35852bb841be4b53a55c2aca07624bf06fbd
 DIST util-linux-2.26.2.tar.xz 3863868 SHA256 0e29bda142528a48a0a953c39ff63093651a4809042e1790fbd6aa8663fd9666 SHA512 1cb8e2f32882b3f496d31c250a45cfb61bedb79f7a2802b358c23134d4257fa9bc9cde8888cfa1aaba12109f82b93345c6dc0bec2d11629ffa084f2a4476a91b WHIRLPOOL 699ff057f9930fe53f44090817c64ffe089345e7aba4c836e18cd3d2088881add805640b0e41b8d60bc08e3632be919025417feb9c2ddda454c87821a59122ed
-DIST util-linux-2.26.tar.xz 3847960 SHA256 a23c6f39dea0ed215ccd589509ffc7bb6f706f6e1a04760f493fb0fd7e93c489 SHA512 af07d49a433fce683da7bdf9aea5693ad108aa16166e0147716175bd779fe5090029617dd7db153bc0f5efcf7bdd377761a616efd4cca90a87bf317132ede88c WHIRLPOOL 4f7c9463bfe1523819671824de26e051c496c86884ca34b25208762179345c799fe61e566228ebfcbca2f2b63163539e37b06e438a58f562cf7b53f954564150
 DIST util-linux-2.27.tar.xz 3968872 SHA256 fcbf04e3ef8377fc8369af7f9afee341c5eef9b02dd5a7ce71532d0957e86dc7 SHA512 06ee17f4801fd3e35fb4cf3717722ea3f709e3dd9f9153510c399742a5cfca341e3a3a400d35a091b74f0de3636e62c7a14b7dd91d63482b7b98b1991aa6fa3c WHIRLPOOL da19c56dfe424c59bc982096f08c02d864718f030bbad79661968f1da972ea10e0eacaa2477cda45ec9a3c688d220740ca2c8823918dae5139a943f6c9d8e2a4

diff --git a/sys-apps/util-linux/files/crypto-loop.confd b/sys-apps/util-linux/files/crypto-loop.confd
deleted file mode 100644
index 6a88434..0000000
--- a/sys-apps/util-linux/files/crypto-loop.confd
+++ /dev/null
@@ -1,9 +0,0 @@
-# /etc/conf.d/crypto-loop: Configuration file for /etc/init.d/crypto-loop
-
-# More info can be found in the init.d script
-
-# Specify loopback configurations here.  The format of this file is
-# shown in the following commented-out example.  One line per loopback
-# configuration.  For possible hash values, see `man hashalot`.
-
-# loop=/dev/loop0 hash='' cipher=serpent keysize=256 device=/dev/system/test other=''

diff --git a/sys-apps/util-linux/files/crypto-loop.initd b/sys-apps/util-linux/files/crypto-loop.initd
deleted file mode 100644
index 2f6470d..0000000
--- a/sys-apps/util-linux/files/crypto-loop.initd
+++ /dev/null
@@ -1,70 +0,0 @@
-#!/sbin/runscript
-# Copyright 1999-2005 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-depend() {
-	if [ -x /etc/init.d/root ]; then
-		need root
-	else
-		need checkroot
-	fi
-	need modules
-	before localmount
-}
-
-start() {
-	local status="0"
-
-	ebegin "Starting crypto loop devices"
-
-	if [ -e /etc/conf.d/crypto-loop ] ; then
-		egrep "^loop" /etc/conf.d/crypto-loop | \
-		while read loopline ; do
-			eval ${loopline}
-
-			local configured=$(awk -v MOUNT="${device}" \
-				'($2 == MOUNT) { print "yes" }' /proc/mounts)
-
-			if [ "${configured}" != "yes" ] ; then
-				einfo "  Loop ${loop} on device ${device} (cipher ${cipher}, key size ${keysize}): "
-
-				if [ -n "${hash}" ] ; then
-					/usr/sbin/hashalot -n ${keysize} ${hash} </dev/tty|\
-					/sbin/losetup -p 0 -e ${cipher}-${keysize} ${loop} ${device} ${other}
-				else
-					/sbin/losetup -e ${cipher}-${keysize} ${loop} ${device} ${other}
-				fi
-
-				if [ $? -ne 0 ] ; then
-					ewarn "Failure configuring ${loop}.  Skipping."
-					status=1
-				fi
-			else
-				ewarn "  Loop ${loop} on device ${device} are already configured"
-			fi
-		done
-	fi
-	ewend ${status} "Failed to start some loop devices."
-
-	# We do not fail if some loop devices did not start ...
-	return 0
-}
-
-stop() {
-	local status="0"
-	for loop in $(ls /dev/loop[0-9] 2>/dev/null) ; do
-		losetup ${loop} > /dev/null 2>&1
-		if [ $? -eq 0 ] ; then
-			( umount ${loop} || swapoff "${loop}" ) >/dev/null 2>&1
-			if ! /sbin/losetup -d ${loop} > /dev/null 2>&1; then
-				ewarn "Failure deconfiguring ${loop}."
-				status=1
-			fi
-		fi
-	done
-	ewend ${status}
-}
-
-
-# vim:ts=4

diff --git a/sys-apps/util-linux/files/util-linux-2.25.1-blkid-probe-fix.patch b/sys-apps/util-linux/files/util-linux-2.25.1-blkid-probe-fix.patch
deleted file mode 100644
index f994a74..0000000
--- a/sys-apps/util-linux/files/util-linux-2.25.1-blkid-probe-fix.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 00749bc366fe6106df918660a92a388cfff4f35f Mon Sep 17 00:00:00 2001
-From: Karel Zak <kzak@redhat.com>
-Date: Tue, 7 Oct 2014 12:44:34 +0200
-Subject: [PATCH] libblkid: zeroize errno on blkid_probe_get_buffer() success
-
-Since 37f4060225df0591ab8e1dd676dbc8115d900d4f prober functions are
-sensitive to errno, it seems more robust to set errno=0 with in
-blkid_probe_get_buffer() on success than set the zero on all places
-where we call blkid_probe_get_buffer().
-
-Addresses: https://github.com/karelzak/util-linux/issues/119
-Signed-off-by: Karel Zak <kzak@redhat.com>
----
- libblkid/src/probe.c | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/libblkid/src/probe.c b/libblkid/src/probe.c
-index 4fea3cc..3f7e43b 100644
---- a/libblkid/src/probe.c
-+++ b/libblkid/src/probe.c
-@@ -539,8 +539,10 @@ unsigned char *blkid_probe_get_buffer(blkid_probe pr,
- 	struct list_head *p;
- 	struct blkid_bufinfo *bf = NULL;
- 
--	if (pr->size <= 0)
-+	if (pr->size <= 0) {
-+		errno = EINVAL;
- 		return NULL;
-+	}
- 
- 	if (pr->parent &&
- 	    pr->parent->devno == pr->devno &&
-@@ -602,6 +604,7 @@ unsigned char *blkid_probe_get_buffer(blkid_probe pr,
- 		list_add_tail(&bf->bufs, &pr->buffers);
- 	}
- 
-+	errno = 0;
- 	return off ? bf->data + (off - bf->off) : bf->data;
- }
- 
--- 
-2.1.2
-

diff --git a/sys-apps/util-linux/util-linux-2.24.1-r2.ebuild b/sys-apps/util-linux/util-linux-2.24.1-r2.ebuild
deleted file mode 100644
index b835660..0000000
--- a/sys-apps/util-linux/util-linux-2.24.1-r2.ebuild
+++ /dev/null
@@ -1,147 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PYTHON_COMPAT=( python2_7 python3_{3,4} )
-
-inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 python-single-r1
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-2 autotools
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 m68k ~mips ~ppc ~ppc64 s390 sh ~sparc x86 ~amd64-linux ~arm-linux ~x86-linux"
-	SRC_URI="mirror://kernel/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/"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="bash-completion caps +cramfs cytune fdformat ncurses nls pam python selinux slang static-libs +suid test tty-helpers udev unicode"
-
-RDEPEND="!sys-process/schedutils
-	!sys-apps/setarch
-	!<sys-apps/sysvinit-2.88-r7
-	!sys-block/eject
-	!<sys-libs/e2fsprogs-libs-1.41.8
-	!<sys-fs/e2fsprogs-1.41.8
-	!<app-shells/bash-completion-1.3-r2
-	caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
-	pam? ( sys-libs/pam )
-	python? ( ${PYTHON_DEPS} )
-	selinux? ( sys-libs/libselinux )
-	slang? ( sys-libs/slang )
-	udev? ( virtual/udev )"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-	virtual/os-headers"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	if [[ ${PV} == 9999 ]] ; then
-		po/update-potfiles
-		eautoreconf
-	fi
-	epatch "${FILESDIR}"/${PN}-2.24-skip-last-tests.patch #491742
-	epatch "${FILESDIR}"/${PN}-2.24-last-tests.patch #501408
-	# http://marc.info/?l=util-linux-ng&m=140223032032288&w=2
-	epatch "${FILESDIR}"/${PN}-2.24-fix-fdisk-on-alpha.patch
-	find tests/ -name bigyear -delete #489794
-	elibtoolize
-}
-
-lfs_fallocate_test() {
-	# Make sure we can use fallocate with LFS #300307
-	cat <<-EOF > "${T}"/fallocate.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.c -o /dev/null >/dev/null 2>&1 \
-		|| export ac_cv_func_fallocate=no
-	rm -f "${T}"/fallocate.c
-}
-
-src_configure() {
-	lfs_fallocate_test
-	export ac_cv_header_security_pam_misc_h=$(usex pam) #485486
-	econf \
-		--docdir="/usr/share/doc/${PF}" \
-		--enable-fs-paths-extra=/usr/sbin:/bin:/usr/bin \
-		$(use_enable nls) \
-		--enable-agetty \
-		--with-bashcompletiondir="$(get_bashcompdir)" \
-		$(use_enable bash-completion) \
-		$(use_enable caps setpriv) \
-		$(use_enable cramfs) \
-		$(use_enable cytune) \
-		$(use_enable fdformat) \
-		--with-ncurses=$(usex ncurses $(usex unicode auto yes) no) \
-		--disable-kill \
-		--disable-login \
-		$(use_enable tty-helpers mesg) \
-		--disable-nologin \
-		--enable-partx \
-		$(use_with python) \
-		--enable-raw \
-		--enable-rename \
-		--disable-reset \
-		--enable-schedutils \
-		--disable-su \
-		$(use_enable tty-helpers wall) \
-		$(use_enable tty-helpers write) \
-		$(use_enable suid makeinstall-chown) \
-		$(use_enable suid makeinstall-setuid) \
-		$(use_with selinux) \
-		$(use_with slang) \
-		$(use_enable static-libs static) \
-		$(use_with udev) \
-		$(tc-has-tls || echo --disable-tls)
-}
-
-src_test() {
-	emake check
-}
-
-src_install() {
-	default
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	use python && python_optimize
-
-	# need the libs in /
-	gen_usr_ldscript -a blkid mount uuid
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	prune_libtool_files
-}
-
-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
-}

diff --git a/sys-apps/util-linux/util-linux-2.25.1-r1.ebuild b/sys-apps/util-linux/util-linux-2.25.1-r1.ebuild
deleted file mode 100644
index c32bfd4..0000000
--- a/sys-apps/util-linux/util-linux-2.25.1-r1.ebuild
+++ /dev/null
@@ -1,174 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PYTHON_COMPAT=( python2_7 python3_{3,4} )
-
-inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
-	python-single-r1 multilib-minimal
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-2 autotools
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
-	SRC_URI="mirror://kernel/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/"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid test tty-helpers udev unicode"
-
-RDEPEND="!sys-process/schedutils
-	!sys-apps/setarch
-	!<sys-apps/sysvinit-2.88-r7
-	!sys-block/eject
-	!<sys-libs/e2fsprogs-libs-1.41.8
-	!<sys-fs/e2fsprogs-1.41.8
-	!<app-shells/bash-completion-1.3-r2
-	caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
-	pam? ( sys-libs/pam )
-	python? ( ${PYTHON_DEPS} )
-	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
-	slang? ( sys-libs/slang )
-	udev? ( virtual/udev )
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
-	)"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-	virtual/os-headers"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	epatch "${FILESDIR}"/${P}-blkid-probe-fix.patch
-	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
-}
-
-multilib_src_configure() {
-	lfs_fallocate_test
-	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
-	# We manually set --libdir to the default since on prefix, econf will set it to
-	# a value which the configure script does not recognize.  This makes it set the
-	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
-	ECONF_SOURCE=${S} \
-	econf \
-		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
-		--libdir='${prefix}/'"$(get_libdir)" \
-		$(multilib_native_use_enable nls) \
-		--enable-agetty \
-		--with-bashcompletiondir="$(get_bashcompdir)" \
-		--enable-bash-completion \
-		$(multilib_native_use_enable caps setpriv) \
-		--disable-chfn-chsh \
-		$(multilib_native_use_enable cramfs) \
-		$(multilib_native_use_enable fdformat) \
-		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
-		--disable-kill \
-		--disable-login \
-		$(multilib_native_use_enable tty-helpers mesg) \
-		--disable-nologin \
-		--enable-partx \
-		$(multilib_native_use_with python) \
-		--enable-raw \
-		--enable-rename \
-		--disable-reset \
-		--enable-schedutils \
-		--disable-su \
-		$(multilib_native_use_enable tty-helpers wall) \
-		$(multilib_native_use_enable tty-helpers write) \
-		$(multilib_native_use_enable suid makeinstall-chown) \
-		$(multilib_native_use_enable suid makeinstall-setuid) \
-		$(use_with selinux) \
-		$(multilib_native_use_with slang) \
-		$(use_enable static-libs static) \
-		$(multilib_native_use_with udev) \
-		$(tc-has-tls || echo --disable-tls)
-}
-
-multilib_src_compile() {
-	if multilib_is_native_abi; then
-		default
-	else
-		# build libraries only
-		emake -f Makefile -f - mylibs \
-			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
-	fi
-}
-
-multilib_src_test() {
-	multilib_is_native_abi && emake check
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		default
-	else
-		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
-			install-pkgconfigDATA install-uuidincHEADERS \
-			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
-			install-nodist_smartcolsincHEADERS
-	fi
-
-	if multilib_is_native_abi; then
-		# need the libs in /
-		gen_usr_ldscript -a blkid mount smartcols uuid
-
-		use python && python_optimize
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	prune_libtool_files
-}
-
-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
-}

diff --git a/sys-apps/util-linux/util-linux-2.25.1.ebuild b/sys-apps/util-linux/util-linux-2.25.1.ebuild
deleted file mode 100644
index 5303ad0..0000000
--- a/sys-apps/util-linux/util-linux-2.25.1.ebuild
+++ /dev/null
@@ -1,173 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PYTHON_COMPAT=( python2_7 python3_{3,4} )
-
-inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
-	python-single-r1 multilib-minimal
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-2 autotools
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
-	SRC_URI="mirror://kernel/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/"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid test tty-helpers udev unicode"
-
-RDEPEND="!sys-process/schedutils
-	!sys-apps/setarch
-	!<sys-apps/sysvinit-2.88-r7
-	!sys-block/eject
-	!<sys-libs/e2fsprogs-libs-1.41.8
-	!<sys-fs/e2fsprogs-1.41.8
-	!<app-shells/bash-completion-1.3-r2
-	caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
-	pam? ( sys-libs/pam )
-	python? ( ${PYTHON_DEPS} )
-	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
-	slang? ( sys-libs/slang )
-	udev? ( virtual/udev )
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
-	)"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-	virtual/os-headers"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	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
-}
-
-multilib_src_configure() {
-	lfs_fallocate_test
-	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
-	# We manually set --libdir to the default since on prefix, econf will set it to
-	# a value which the configure script does not recognize.  This makes it set the
-	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
-	ECONF_SOURCE=${S} \
-	econf \
-		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
-		--libdir='${prefix}/'"$(get_libdir)" \
-		$(multilib_native_use_enable nls) \
-		--enable-agetty \
-		--with-bashcompletiondir="$(get_bashcompdir)" \
-		--enable-bash-completion \
-		$(multilib_native_use_enable caps setpriv) \
-		--disable-chfn-chsh \
-		$(multilib_native_use_enable cramfs) \
-		$(multilib_native_use_enable fdformat) \
-		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
-		--disable-kill \
-		--disable-login \
-		$(multilib_native_use_enable tty-helpers mesg) \
-		--disable-nologin \
-		--enable-partx \
-		$(multilib_native_use_with python) \
-		--enable-raw \
-		--enable-rename \
-		--disable-reset \
-		--enable-schedutils \
-		--disable-su \
-		$(multilib_native_use_enable tty-helpers wall) \
-		$(multilib_native_use_enable tty-helpers write) \
-		$(multilib_native_use_enable suid makeinstall-chown) \
-		$(multilib_native_use_enable suid makeinstall-setuid) \
-		$(use_with selinux) \
-		$(multilib_native_use_with slang) \
-		$(use_enable static-libs static) \
-		$(multilib_native_use_with udev) \
-		$(tc-has-tls || echo --disable-tls)
-}
-
-multilib_src_compile() {
-	if multilib_is_native_abi; then
-		default
-	else
-		# build libraries only
-		emake -f Makefile -f - mylibs \
-			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
-	fi
-}
-
-multilib_src_test() {
-	multilib_is_native_abi && emake check
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		default
-	else
-		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
-			install-pkgconfigDATA install-uuidincHEADERS \
-			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
-			install-nodist_smartcolsincHEADERS
-	fi
-
-	if multilib_is_native_abi; then
-		# need the libs in /
-		gen_usr_ldscript -a blkid mount smartcols uuid
-
-		use python && python_optimize
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	prune_libtool_files
-}
-
-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
-}

diff --git a/sys-apps/util-linux/util-linux-2.25.2-r1.ebuild b/sys-apps/util-linux/util-linux-2.25.2-r1.ebuild
deleted file mode 100644
index cbeb96a..0000000
--- a/sys-apps/util-linux/util-linux-2.25.2-r1.ebuild
+++ /dev/null
@@ -1,177 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PYTHON_COMPAT=( python2_7 python3_{3,4} )
-
-inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
-	python-single-r1 multilib-minimal systemd
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-2 autotools
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
-	SRC_URI="mirror://kernel/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/"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid systemd test tty-helpers udev unicode"
-
-RDEPEND="!sys-process/schedutils
-	!sys-apps/setarch
-	!<sys-apps/sysvinit-2.88-r7
-	!sys-block/eject
-	!<sys-libs/e2fsprogs-libs-1.41.8
-	!<sys-fs/e2fsprogs-1.41.8
-	!<app-shells/bash-completion-1.3-r2
-	caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
-	pam? ( sys-libs/pam )
-	python? ( ${PYTHON_DEPS} )
-	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
-	slang? ( sys-libs/slang )
-	systemd? ( sys-apps/systemd )
-	udev? ( virtual/udev )
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
-	)"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-	virtual/os-headers"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	epatch "${FILESDIR}"/${P}-runuser-bash-completion.patch #522288
-	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
-}
-
-multilib_src_configure() {
-	lfs_fallocate_test
-	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
-	# We manually set --libdir to the default since on prefix, econf will set it to
-	# a value which the configure script does not recognize.  This makes it set the
-	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
-	ECONF_SOURCE=${S} \
-	econf \
-		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
-		--libdir='${prefix}/'"$(get_libdir)" \
-		$(multilib_native_use_enable nls) \
-		--enable-agetty \
-		--with-bashcompletiondir="$(get_bashcompdir)" \
-		--enable-bash-completion \
-		$(multilib_native_use_enable caps setpriv) \
-		--disable-chfn-chsh \
-		$(multilib_native_use_enable cramfs) \
-		$(multilib_native_use_enable fdformat) \
-		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
-		--disable-kill \
-		--disable-login \
-		$(multilib_native_use_enable tty-helpers mesg) \
-		--disable-nologin \
-		--enable-partx \
-		$(multilib_native_use_with python) \
-		--enable-raw \
-		--enable-rename \
-		--disable-reset \
-		--enable-schedutils \
-		--disable-su \
-		$(multilib_native_use_enable tty-helpers wall) \
-		$(multilib_native_use_enable tty-helpers write) \
-		$(multilib_native_use_enable suid makeinstall-chown) \
-		$(multilib_native_use_enable suid makeinstall-setuid) \
-		$(use_with selinux) \
-		$(multilib_native_use_with slang) \
-		$(use_enable static-libs static) \
-		$(multilib_native_use_with systemd) \
-		--with-systemdsystemunitdir=$(multilib_native_usex systemd "$(systemd_get_unitdir)" "no") \
-		$(multilib_native_use_with udev) \
-		$(tc-has-tls || echo --disable-tls)
-}
-
-multilib_src_compile() {
-	if multilib_is_native_abi; then
-		default
-	else
-		# build libraries only
-		emake -f Makefile -f - mylibs \
-			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
-	fi
-}
-
-multilib_src_test() {
-	multilib_is_native_abi && emake check
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		default
-	else
-		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
-			install-pkgconfigDATA install-uuidincHEADERS \
-			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
-			install-nodist_smartcolsincHEADERS
-	fi
-
-	if multilib_is_native_abi; then
-		# need the libs in /
-		gen_usr_ldscript -a blkid mount smartcols uuid
-
-		use python && python_optimize
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	prune_libtool_files
-}
-
-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
-}

diff --git a/sys-apps/util-linux/util-linux-2.25.2.ebuild b/sys-apps/util-linux/util-linux-2.25.2.ebuild
deleted file mode 100644
index 01f6f78..0000000
--- a/sys-apps/util-linux/util-linux-2.25.2.ebuild
+++ /dev/null
@@ -1,174 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PYTHON_COMPAT=( python2_7 python3_{3,4} )
-
-inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
-	python-single-r1 multilib-minimal
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-2 autotools
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
-	SRC_URI="mirror://kernel/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/"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid test tty-helpers udev unicode"
-
-RDEPEND="!sys-process/schedutils
-	!sys-apps/setarch
-	!<sys-apps/sysvinit-2.88-r7
-	!sys-block/eject
-	!<sys-libs/e2fsprogs-libs-1.41.8
-	!<sys-fs/e2fsprogs-1.41.8
-	!<app-shells/bash-completion-1.3-r2
-	caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
-	pam? ( sys-libs/pam )
-	python? ( ${PYTHON_DEPS} )
-	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
-	slang? ( sys-libs/slang )
-	udev? ( virtual/udev )
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
-	)"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-	virtual/os-headers"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	epatch "${FILESDIR}"/${P}-runuser-bash-completion.patch #522288
-	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
-}
-
-multilib_src_configure() {
-	lfs_fallocate_test
-	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
-	# We manually set --libdir to the default since on prefix, econf will set it to
-	# a value which the configure script does not recognize.  This makes it set the
-	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
-	ECONF_SOURCE=${S} \
-	econf \
-		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
-		--libdir='${prefix}/'"$(get_libdir)" \
-		$(multilib_native_use_enable nls) \
-		--enable-agetty \
-		--with-bashcompletiondir="$(get_bashcompdir)" \
-		--enable-bash-completion \
-		$(multilib_native_use_enable caps setpriv) \
-		--disable-chfn-chsh \
-		$(multilib_native_use_enable cramfs) \
-		$(multilib_native_use_enable fdformat) \
-		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
-		--disable-kill \
-		--disable-login \
-		$(multilib_native_use_enable tty-helpers mesg) \
-		--disable-nologin \
-		--enable-partx \
-		$(multilib_native_use_with python) \
-		--enable-raw \
-		--enable-rename \
-		--disable-reset \
-		--enable-schedutils \
-		--disable-su \
-		$(multilib_native_use_enable tty-helpers wall) \
-		$(multilib_native_use_enable tty-helpers write) \
-		$(multilib_native_use_enable suid makeinstall-chown) \
-		$(multilib_native_use_enable suid makeinstall-setuid) \
-		$(use_with selinux) \
-		$(multilib_native_use_with slang) \
-		$(use_enable static-libs static) \
-		$(multilib_native_use_with udev) \
-		$(tc-has-tls || echo --disable-tls)
-}
-
-multilib_src_compile() {
-	if multilib_is_native_abi; then
-		default
-	else
-		# build libraries only
-		emake -f Makefile -f - mylibs \
-			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
-	fi
-}
-
-multilib_src_test() {
-	multilib_is_native_abi && emake check
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		default
-	else
-		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
-			install-pkgconfigDATA install-uuidincHEADERS \
-			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
-			install-nodist_smartcolsincHEADERS
-	fi
-
-	if multilib_is_native_abi; then
-		# need the libs in /
-		gen_usr_ldscript -a blkid mount smartcols uuid
-
-		use python && python_optimize
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	prune_libtool_files
-}
-
-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
-}

diff --git a/sys-apps/util-linux/util-linux-2.26.1-r1.ebuild b/sys-apps/util-linux/util-linux-2.26.1-r1.ebuild
deleted file mode 100644
index 367cbdf..0000000
--- a/sys-apps/util-linux/util-linux-2.26.1-r1.ebuild
+++ /dev/null
@@ -1,178 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="5"
-
-PYTHON_COMPAT=( python2_7 python3_{3,4} )
-
-inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
-	python-single-r1 multilib-minimal systemd
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-2 autotools
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
-	SRC_URI="mirror://kernel/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/"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid systemd test tty-helpers udev unicode"
-
-RDEPEND="!sys-process/schedutils
-	!sys-apps/setarch
-	!<sys-apps/sysvinit-2.88-r7
-	!sys-block/eject
-	!<sys-libs/e2fsprogs-libs-1.41.8
-	!<sys-fs/e2fsprogs-1.41.8
-	!<app-shells/bash-completion-1.3-r2
-	caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2:0= )
-	pam? ( sys-libs/pam )
-	python? ( ${PYTHON_DEPS} )
-	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
-	slang? ( sys-libs/slang )
-	systemd? ( sys-apps/systemd )
-	udev? ( virtual/libudev )
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20150406-r2
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
-	)"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-	virtual/os-headers"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	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
-}
-
-multilib_src_configure() {
-	lfs_fallocate_test
-	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
-	# We manually set --libdir to the default since on prefix, econf will set it to
-	# a value which the configure script does not recognize.  This makes it set the
-	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
-	ECONF_SOURCE=${S} \
-	econf \
-		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
-		--libdir='${prefix}/'"$(get_libdir)" \
-		--docdir='${datarootdir}'/doc/${PF} \
-		$(multilib_native_use_enable nls) \
-		--enable-agetty \
-		--with-bashcompletiondir="$(get_bashcompdir)" \
-		--enable-bash-completion \
-		$(multilib_native_use_enable caps setpriv) \
-		--disable-chfn-chsh \
-		$(multilib_native_use_enable cramfs) \
-		$(multilib_native_use_enable fdformat) \
-		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
-		--disable-kill \
-		--disable-login \
-		$(multilib_native_use_enable tty-helpers mesg) \
-		--disable-nologin \
-		--enable-partx \
-		$(multilib_native_use_with python) \
-		--enable-raw \
-		--enable-rename \
-		--disable-reset \
-		--enable-schedutils \
-		--disable-su \
-		$(multilib_native_use_enable tty-helpers wall) \
-		$(multilib_native_use_enable tty-helpers write) \
-		$(multilib_native_use_enable suid makeinstall-chown) \
-		$(multilib_native_use_enable suid makeinstall-setuid) \
-		$(use_with selinux) \
-		$(multilib_native_use_with slang) \
-		$(use_enable static-libs static) \
-		$(multilib_native_use_with systemd) \
-		--with-systemdsystemunitdir=$(multilib_native_usex systemd "$(systemd_get_unitdir)" "no") \
-		$(multilib_native_use_with udev) \
-		$(tc-has-tls || echo --disable-tls)
-}
-
-multilib_src_compile() {
-	if multilib_is_native_abi; then
-		default
-	else
-		# build libraries only
-		emake -f Makefile -f - mylibs \
-			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
-	fi
-}
-
-multilib_src_test() {
-	multilib_is_native_abi && emake check
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		default
-	else
-		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
-			install-pkgconfigDATA install-uuidincHEADERS \
-			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
-			install-nodist_smartcolsincHEADERS install-nodist_fdiskincHEADERS
-	fi
-
-	if multilib_is_native_abi; then
-		# need the libs in /
-		gen_usr_ldscript -a blkid mount smartcols uuid
-
-		use python && python_optimize
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	prune_libtool_files
-}
-
-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
-}

diff --git a/sys-apps/util-linux/util-linux-2.26.1.ebuild b/sys-apps/util-linux/util-linux-2.26.1.ebuild
deleted file mode 100644
index 2320483..0000000
--- a/sys-apps/util-linux/util-linux-2.26.1.ebuild
+++ /dev/null
@@ -1,177 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PYTHON_COMPAT=( python2_7 python3_{3,4} )
-
-inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
-	python-single-r1 multilib-minimal systemd
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-2 autotools
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
-	SRC_URI="mirror://kernel/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/"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid systemd test tty-helpers udev unicode"
-
-RDEPEND="!sys-process/schedutils
-	!sys-apps/setarch
-	!<sys-apps/sysvinit-2.88-r7
-	!sys-block/eject
-	!<sys-libs/e2fsprogs-libs-1.41.8
-	!<sys-fs/e2fsprogs-1.41.8
-	!<app-shells/bash-completion-1.3-r2
-	caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
-	pam? ( sys-libs/pam )
-	python? ( ${PYTHON_DEPS} )
-	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
-	slang? ( sys-libs/slang )
-	systemd? ( sys-apps/systemd )
-	udev? ( virtual/libudev )
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
-	)"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-	virtual/os-headers"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	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
-}
-
-multilib_src_configure() {
-	lfs_fallocate_test
-	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
-	# We manually set --libdir to the default since on prefix, econf will set it to
-	# a value which the configure script does not recognize.  This makes it set the
-	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
-	ECONF_SOURCE=${S} \
-	econf \
-		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
-		--libdir='${prefix}/'"$(get_libdir)" \
-		--docdir='${datarootdir}'/doc/${PF} \
-		$(multilib_native_use_enable nls) \
-		--enable-agetty \
-		--with-bashcompletiondir="$(get_bashcompdir)" \
-		--enable-bash-completion \
-		$(multilib_native_use_enable caps setpriv) \
-		--disable-chfn-chsh \
-		$(multilib_native_use_enable cramfs) \
-		$(multilib_native_use_enable fdformat) \
-		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
-		--disable-kill \
-		--disable-login \
-		$(multilib_native_use_enable tty-helpers mesg) \
-		--disable-nologin \
-		--enable-partx \
-		$(multilib_native_use_with python) \
-		--enable-raw \
-		--enable-rename \
-		--disable-reset \
-		--enable-schedutils \
-		--disable-su \
-		$(multilib_native_use_enable tty-helpers wall) \
-		$(multilib_native_use_enable tty-helpers write) \
-		$(multilib_native_use_enable suid makeinstall-chown) \
-		$(multilib_native_use_enable suid makeinstall-setuid) \
-		$(use_with selinux) \
-		$(multilib_native_use_with slang) \
-		$(use_enable static-libs static) \
-		$(multilib_native_use_with systemd) \
-		--with-systemdsystemunitdir=$(multilib_native_usex systemd "$(systemd_get_unitdir)" "no") \
-		$(multilib_native_use_with udev) \
-		$(tc-has-tls || echo --disable-tls)
-}
-
-multilib_src_compile() {
-	if multilib_is_native_abi; then
-		default
-	else
-		# build libraries only
-		emake -f Makefile -f - mylibs \
-			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
-	fi
-}
-
-multilib_src_test() {
-	multilib_is_native_abi && emake check
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		default
-	else
-		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
-			install-pkgconfigDATA install-uuidincHEADERS \
-			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
-			install-nodist_smartcolsincHEADERS install-nodist_fdiskincHEADERS
-	fi
-
-	if multilib_is_native_abi; then
-		# need the libs in /
-		gen_usr_ldscript -a blkid mount smartcols uuid
-
-		use python && python_optimize
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	prune_libtool_files
-}
-
-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
-}

diff --git a/sys-apps/util-linux/util-linux-2.26.ebuild b/sys-apps/util-linux/util-linux-2.26.ebuild
deleted file mode 100644
index 2320483..0000000
--- a/sys-apps/util-linux/util-linux-2.26.ebuild
+++ /dev/null
@@ -1,177 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PYTHON_COMPAT=( python2_7 python3_{3,4} )
-
-inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
-	python-single-r1 multilib-minimal systemd
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-2 autotools
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
-	SRC_URI="mirror://kernel/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/"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid systemd test tty-helpers udev unicode"
-
-RDEPEND="!sys-process/schedutils
-	!sys-apps/setarch
-	!<sys-apps/sysvinit-2.88-r7
-	!sys-block/eject
-	!<sys-libs/e2fsprogs-libs-1.41.8
-	!<sys-fs/e2fsprogs-1.41.8
-	!<app-shells/bash-completion-1.3-r2
-	caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
-	pam? ( sys-libs/pam )
-	python? ( ${PYTHON_DEPS} )
-	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
-	slang? ( sys-libs/slang )
-	systemd? ( sys-apps/systemd )
-	udev? ( virtual/libudev )
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
-	)"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-	virtual/os-headers"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	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
-}
-
-multilib_src_configure() {
-	lfs_fallocate_test
-	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
-	# We manually set --libdir to the default since on prefix, econf will set it to
-	# a value which the configure script does not recognize.  This makes it set the
-	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
-	ECONF_SOURCE=${S} \
-	econf \
-		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
-		--libdir='${prefix}/'"$(get_libdir)" \
-		--docdir='${datarootdir}'/doc/${PF} \
-		$(multilib_native_use_enable nls) \
-		--enable-agetty \
-		--with-bashcompletiondir="$(get_bashcompdir)" \
-		--enable-bash-completion \
-		$(multilib_native_use_enable caps setpriv) \
-		--disable-chfn-chsh \
-		$(multilib_native_use_enable cramfs) \
-		$(multilib_native_use_enable fdformat) \
-		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
-		--disable-kill \
-		--disable-login \
-		$(multilib_native_use_enable tty-helpers mesg) \
-		--disable-nologin \
-		--enable-partx \
-		$(multilib_native_use_with python) \
-		--enable-raw \
-		--enable-rename \
-		--disable-reset \
-		--enable-schedutils \
-		--disable-su \
-		$(multilib_native_use_enable tty-helpers wall) \
-		$(multilib_native_use_enable tty-helpers write) \
-		$(multilib_native_use_enable suid makeinstall-chown) \
-		$(multilib_native_use_enable suid makeinstall-setuid) \
-		$(use_with selinux) \
-		$(multilib_native_use_with slang) \
-		$(use_enable static-libs static) \
-		$(multilib_native_use_with systemd) \
-		--with-systemdsystemunitdir=$(multilib_native_usex systemd "$(systemd_get_unitdir)" "no") \
-		$(multilib_native_use_with udev) \
-		$(tc-has-tls || echo --disable-tls)
-}
-
-multilib_src_compile() {
-	if multilib_is_native_abi; then
-		default
-	else
-		# build libraries only
-		emake -f Makefile -f - mylibs \
-			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
-	fi
-}
-
-multilib_src_test() {
-	multilib_is_native_abi && emake check
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		default
-	else
-		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
-			install-pkgconfigDATA install-uuidincHEADERS \
-			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
-			install-nodist_smartcolsincHEADERS install-nodist_fdiskincHEADERS
-	fi
-
-	if multilib_is_native_abi; then
-		# need the libs in /
-		gen_usr_ldscript -a blkid mount smartcols uuid
-
-		use python && python_optimize
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	prune_libtool_files
-}
-
-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
-}


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2015-09-07 18:30 Michał Górny
  0 siblings, 0 replies; 32+ messages in thread
From: Michał Górny @ 2015-09-07 18:30 UTC (permalink / raw
  To: gentoo-commits

commit:     1cce04532d91c46c4e53d1ced1d6ba86ac1d8669
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  7 18:27:18 2015 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Sep  7 18:27:18 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1cce0453

sys-apps/util-linux: Revert "Removed old."

Revert old ebuild removal due to sys-fs/lvm2 dependencies being no
longer satisfiable.

Bug: https://bugs.gentoo.org/show_bug.cgi?id=559902
Reverts: 37cdafdff4ec64 (sys-apps/util-linux: Removed old.)

 sys-apps/util-linux/Manifest                       |   5 +
 sys-apps/util-linux/files/crypto-loop.confd        |   9 ++
 sys-apps/util-linux/files/crypto-loop.initd        |  70 ++++++++
 .../files/util-linux-2.24-fix-fdisk-on-alpha.patch |  13 ++
 .../files/util-linux-2.24-last-tests.patch         |  86 ++++++++++
 .../files/util-linux-2.24-skip-last-tests.patch    |  41 +++++
 .../files/util-linux-2.25.1-blkid-probe-fix.patch  |  43 +++++
 sys-apps/util-linux/metadata.xml                   |   1 +
 sys-apps/util-linux/util-linux-2.24.1-r2.ebuild    | 147 +++++++++++++++++
 sys-apps/util-linux/util-linux-2.24.1-r3.ebuild    | 174 ++++++++++++++++++++
 sys-apps/util-linux/util-linux-2.24.2.ebuild       | 177 ++++++++++++++++++++
 sys-apps/util-linux/util-linux-2.25.1-r1.ebuild    | 174 ++++++++++++++++++++
 sys-apps/util-linux/util-linux-2.25.1.ebuild       | 173 ++++++++++++++++++++
 sys-apps/util-linux/util-linux-2.25.2-r1.ebuild    | 177 ++++++++++++++++++++
 sys-apps/util-linux/util-linux-2.25.2.ebuild       | 174 ++++++++++++++++++++
 sys-apps/util-linux/util-linux-2.26.1-r1.ebuild    | 178 +++++++++++++++++++++
 sys-apps/util-linux/util-linux-2.26.1.ebuild       | 177 ++++++++++++++++++++
 sys-apps/util-linux/util-linux-2.26.ebuild         | 177 ++++++++++++++++++++
 18 files changed, 1996 insertions(+)

diff --git a/sys-apps/util-linux/Manifest b/sys-apps/util-linux/Manifest
index 4a7495b..ff7a239 100644
--- a/sys-apps/util-linux/Manifest
+++ b/sys-apps/util-linux/Manifest
@@ -1,3 +1,8 @@
+DIST util-linux-2.24.1.tar.xz 3543692 SHA256 835eb6232cfab0118ef2e4fd649de0ba9f5bd1b8cbf9a7d4d84594541dec8410 SHA512 5636e1c57bd57954518e90ff0f079810cc2927f52bb925dde556ce2744a088577f8adbc19c19b2bd079efd253406767faa44d1de5f557e024762522e647f044b WHIRLPOOL 25862a85788eb1c275c7e06f3d2be8e6a9605811665e06a4b21d1e274fc4a5e19dd03e5c52061ee5d98ce8c86ba757a7f8076683edb603ad0c43c05ab5e52a51
+DIST util-linux-2.24.2.tar.xz 3586580 SHA256 1243d6c07f1c5b38aa4c3814c81a71c24cba7dafe08942916bf216a90a460ff0 SHA512 a0c03876ef19fa09e434e3e5362fb3f3e0a254b3b39a623ac7a9a207d06afce00366792244ed0fac86931f8340c046620660f33c3444a07a12037182fc191240 WHIRLPOOL 4b8185e1832145c050a8aa0761ae017d846ed58cd7e07710e4c32bf92a8f6e530bddb56dab70c8025eddb4cafafed79e658b0aced3a190b61b508078a438a9ed
+DIST util-linux-2.25.1.tar.xz 3695172 SHA256 4701305ae22790c3a92ce48e50794fa05b7ee01f4227f419a171c100d08986e8 SHA512 a670cb4318beed0a455efb339ebea6ec7c5d672e15877e7e25cae2ec9c0795fbe4275b6c85a590467c3de92ab2f64cdcd0427c9a2a6e4c6b76f563592fb7be8d WHIRLPOOL 44c17bd3ad0b05c47bb955b934011b460c3992ea5d5b43977d2001b245820b775e16bedbaa10ff9c223d59b0809674884c76f0dc34d707864d17b49b4deaab9d
 DIST util-linux-2.25.2.tar.xz 3703644 SHA256 e0457f715b73f4a349e1acb08cb410bf0edc9a74a3f75c357070f31f70e33cd6 SHA512 cf8c5bde78f844425150c2a81bdecb87aa57bcd5cebd177a78160835627f58037fa2cfe4db26fd8f35eedb3beb499a91492a297a27d065465e2ea0c6218dc387 WHIRLPOOL dd1685f2e694bf3de95acc3ba3170d231426c18c3395a867c815bbd3ab5ee0f07567b49d0ae083ce669c89db711e39fd2b990bc7321985ec2279d78816ec5258
+DIST util-linux-2.26.1.tar.xz 3859740 SHA256 22dc1c957262e2cbdfb4d524a63d5cd4f219d3ac9b5eab570fc771076799bb6e SHA512 9321793b3fa219ffc46e10639b9e45094c3cae6c48be4b80e652d9768f40dcedbd49342e17345b61c85f46540a7bd93d118a8e226c315e112bb2e959e2855ad9 WHIRLPOOL 1bcd5c3c14c278ec3b10535546706b6830a283fd72e7d1933101bf1ab6ec5b03d9ff7a53745d34a97cbb4d7d1b0e35852bb841be4b53a55c2aca07624bf06fbd
 DIST util-linux-2.26.2.tar.xz 3863868 SHA256 0e29bda142528a48a0a953c39ff63093651a4809042e1790fbd6aa8663fd9666 SHA512 1cb8e2f32882b3f496d31c250a45cfb61bedb79f7a2802b358c23134d4257fa9bc9cde8888cfa1aaba12109f82b93345c6dc0bec2d11629ffa084f2a4476a91b WHIRLPOOL 699ff057f9930fe53f44090817c64ffe089345e7aba4c836e18cd3d2088881add805640b0e41b8d60bc08e3632be919025417feb9c2ddda454c87821a59122ed
+DIST util-linux-2.26.tar.xz 3847960 SHA256 a23c6f39dea0ed215ccd589509ffc7bb6f706f6e1a04760f493fb0fd7e93c489 SHA512 af07d49a433fce683da7bdf9aea5693ad108aa16166e0147716175bd779fe5090029617dd7db153bc0f5efcf7bdd377761a616efd4cca90a87bf317132ede88c WHIRLPOOL 4f7c9463bfe1523819671824de26e051c496c86884ca34b25208762179345c799fe61e566228ebfcbca2f2b63163539e37b06e438a58f562cf7b53f954564150
 DIST util-linux-2.27.tar.xz 3968872 SHA256 fcbf04e3ef8377fc8369af7f9afee341c5eef9b02dd5a7ce71532d0957e86dc7 SHA512 06ee17f4801fd3e35fb4cf3717722ea3f709e3dd9f9153510c399742a5cfca341e3a3a400d35a091b74f0de3636e62c7a14b7dd91d63482b7b98b1991aa6fa3c WHIRLPOOL da19c56dfe424c59bc982096f08c02d864718f030bbad79661968f1da972ea10e0eacaa2477cda45ec9a3c688d220740ca2c8823918dae5139a943f6c9d8e2a4

diff --git a/sys-apps/util-linux/files/crypto-loop.confd b/sys-apps/util-linux/files/crypto-loop.confd
new file mode 100644
index 0000000..6a88434
--- /dev/null
+++ b/sys-apps/util-linux/files/crypto-loop.confd
@@ -0,0 +1,9 @@
+# /etc/conf.d/crypto-loop: Configuration file for /etc/init.d/crypto-loop
+
+# More info can be found in the init.d script
+
+# Specify loopback configurations here.  The format of this file is
+# shown in the following commented-out example.  One line per loopback
+# configuration.  For possible hash values, see `man hashalot`.
+
+# loop=/dev/loop0 hash='' cipher=serpent keysize=256 device=/dev/system/test other=''

diff --git a/sys-apps/util-linux/files/crypto-loop.initd b/sys-apps/util-linux/files/crypto-loop.initd
new file mode 100644
index 0000000..2f6470d
--- /dev/null
+++ b/sys-apps/util-linux/files/crypto-loop.initd
@@ -0,0 +1,70 @@
+#!/sbin/runscript
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+depend() {
+	if [ -x /etc/init.d/root ]; then
+		need root
+	else
+		need checkroot
+	fi
+	need modules
+	before localmount
+}
+
+start() {
+	local status="0"
+
+	ebegin "Starting crypto loop devices"
+
+	if [ -e /etc/conf.d/crypto-loop ] ; then
+		egrep "^loop" /etc/conf.d/crypto-loop | \
+		while read loopline ; do
+			eval ${loopline}
+
+			local configured=$(awk -v MOUNT="${device}" \
+				'($2 == MOUNT) { print "yes" }' /proc/mounts)
+
+			if [ "${configured}" != "yes" ] ; then
+				einfo "  Loop ${loop} on device ${device} (cipher ${cipher}, key size ${keysize}): "
+
+				if [ -n "${hash}" ] ; then
+					/usr/sbin/hashalot -n ${keysize} ${hash} </dev/tty|\
+					/sbin/losetup -p 0 -e ${cipher}-${keysize} ${loop} ${device} ${other}
+				else
+					/sbin/losetup -e ${cipher}-${keysize} ${loop} ${device} ${other}
+				fi
+
+				if [ $? -ne 0 ] ; then
+					ewarn "Failure configuring ${loop}.  Skipping."
+					status=1
+				fi
+			else
+				ewarn "  Loop ${loop} on device ${device} are already configured"
+			fi
+		done
+	fi
+	ewend ${status} "Failed to start some loop devices."
+
+	# We do not fail if some loop devices did not start ...
+	return 0
+}
+
+stop() {
+	local status="0"
+	for loop in $(ls /dev/loop[0-9] 2>/dev/null) ; do
+		losetup ${loop} > /dev/null 2>&1
+		if [ $? -eq 0 ] ; then
+			( umount ${loop} || swapoff "${loop}" ) >/dev/null 2>&1
+			if ! /sbin/losetup -d ${loop} > /dev/null 2>&1; then
+				ewarn "Failure deconfiguring ${loop}."
+				status=1
+			fi
+		fi
+	done
+	ewend ${status}
+}
+
+
+# vim:ts=4

diff --git a/sys-apps/util-linux/files/util-linux-2.24-fix-fdisk-on-alpha.patch b/sys-apps/util-linux/files/util-linux-2.24-fix-fdisk-on-alpha.patch
new file mode 100644
index 0000000..f01a55d
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.24-fix-fdisk-on-alpha.patch
@@ -0,0 +1,13 @@
+--- libfdisk/src/bsd.c.orig	2014-06-11 10:15:47.000000000 +0200
++++ libfdisk/src/bsd.c	2014-06-11 10:16:18.000000000 +0200
+@@ -787,8 +787,10 @@
+ 	case 0x06: /* DOS 16-bit >=32M */
+ 	case 0xe1: /* DOS access       */
+ 	case 0xe3: /* DOS R/O          */
++#if !defined (__alpha__)
+ 	case 0xf2: /* DOS secondary    */
+ 		return BSD_FS_MSDOS;
++#endif
+ 	case 0x07: /* OS/2 HPFS        */
+ 		return BSD_FS_HPFS;
+ 	default:

diff --git a/sys-apps/util-linux/files/util-linux-2.24-last-tests.patch b/sys-apps/util-linux/files/util-linux-2.24-last-tests.patch
new file mode 100644
index 0000000..77cf478
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.24-last-tests.patch
@@ -0,0 +1,86 @@
+https://bugs.gentoo.org/501408
+
+From 3c76515abd2e80dc1da03041eb868b8c1e596fb1 Mon Sep 17 00:00:00 2001
+From: Sami Kerola <kerolasa@iki.fi>
+Date: Sun, 16 Feb 2014 23:54:18 +0000
+Subject: [PATCH] tests: align last.1 with recent phantom detection
+
+None existing account is not still-logged-in but gone mysteriously,
+assuming wtmp logout markup is missing.
+
+Signed-off-by: Sami Kerola <kerolasa@iki.fi>
+---
+ tests/expected/last/last | 16 ++++++++--------
+ 1 file changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/tests/expected/last/last b/tests/expected/last/last
+index 2ff5cc1..dfb140b 100644
+--- a/tests/expected/last/last
++++ b/tests/expected/last/last
+@@ -1,6 +1,6 @@
+ ~~~ basic output ~~~
+ rick     long         never-gonna-logo Thu Jan  1 00:00 - 03:14 (24855+03:14)
+-torvalds linux        hobby            Mon Aug 26 00:57   still logged in
++torvalds linux        hobby            Mon Aug 26 00:57    gone - no logout
+ reboot   system boot  system-name      Wed Aug 28 18:00   still running
+ reboot   system boot  system-name      Wed Aug 28 16:00 - 17:00  (01:00)
+ IPv4     root         dns-server       Wed Aug 28 13:00 - 14:00  (01:00)
+@@ -17,7 +17,7 @@ accounti foo          nine             Wed Aug 28 03:00 - 04:00  (01:00)
+ wtmp begins Wed Aug 28 03:00:00 2013
+ ~~~ include system ~~~
+ rick     long         never-gonna-logo Thu Jan  1 00:00 - 03:14 (24855+03:14)
+-torvalds linux        hobby            Mon Aug 26 00:57   still logged in
++torvalds linux        hobby            Mon Aug 26 00:57    gone - no logout
+ reboot   system boot  system-name      Wed Aug 28 18:00   still running
+ shutdown system down  system-name      Wed Aug 28 17:00 - 18:00  (01:00)
+ reboot   system boot  system-name      Wed Aug 28 16:00 - 17:00  (01:00)
+@@ -47,16 +47,16 @@ IPv4     root         Wed Aug 28 13:00 - 14:00  (01:00)     a.root-servers.net
+ 
+ wtmp begins Wed Aug 28 03:00:00 2013
+ ~~~ show ip ~~~
+-torvalds linux        128.214.205.14   Mon Aug 26 00:57   still logged in
++torvalds linux        128.214.205.14   Mon Aug 26 00:57    gone - no logout
+ 
+ wtmp begins Wed Aug 28 03:00:00 2013
+ ~~~ no host ~~~
+-torvalds linux        Mon Aug 26 00:57   still logged in
++torvalds linux        Mon Aug 26 00:57    gone - no logout
+ 
+ wtmp begins Wed Aug 28 03:00:00 2013
+ ~~~ full times ~~~
+ rick     long         never-gonna-logo Thu Jan  1 00:00:00 1970 - Tue Jan 19 03:14:07 2038 (24855+03:14)
+-torvalds linux        hobby            Mon Aug 26 00:57:08 1991   still logged in
++torvalds linux        hobby            Mon Aug 26 00:57:08 1991   gone - no logout
+ reboot   system boot  system-name      Wed Aug 28 18:00:00 2013   still running
+ reboot   system boot  system-name      Wed Aug 28 16:00:00 2013 - Wed Aug 28 17:00:00 2013  (01:00)
+ IPv4     root         dns-server       Wed Aug 28 13:00:00 2013 - Wed Aug 28 14:00:00 2013  (01:00)
+@@ -73,7 +73,7 @@ accounti foo          nine             Wed Aug 28 03:00:00 2013 - Wed Aug 28 04:
+ wtmp begins Wed Aug 28 03:00:00 2013
+ ~~~ no time ~~~
+ rick     long         never-gonna-logo   (24855+03:14)
+-torvalds linux        hobby              logged in
++torvalds linux        hobby              - no logout
+ reboot   system boot  system-name        running
+ reboot   system boot  system-name         (01:00)
+ IPv4     root         dns-server          (01:00)
+@@ -90,7 +90,7 @@ accounti foo          nine                (01:00)
+ wtmp begins Wed Aug 28 03:00:00 2013
+ ~~~ iso-8601 time ~~~
+ rick     long         never-gonna-logout 1970-01-01T00:00:00+0000 - 2038-01-19T03:14:07+0000 (24855+03:14)
+-torvalds linux        hobby            1991-08-26T00:57:08+0000   still logged in
++torvalds linux        hobby            1991-08-26T00:57:08+0000   gone - no logout
+ reboot   system boot  system-name      2013-08-28T18:00:00+0000   still running
+ reboot   system boot  system-name      2013-08-28T16:00:00+0000 - 2013-08-28T17:00:00+0000  (01:00)
+ IPv4     root         dns-server       2013-08-28T13:00:00+0000 - 2013-08-28T14:00:00+0000  (01:00)
+@@ -115,7 +115,7 @@ accounti foo          nine             Wed Aug 28 03:00 - 04:00  (01:00)
+ wtmp begins Wed Aug 28 03:00:00 2013
+ ~~~ present ~~~
+ rick     long         never-gonna-logo Thu Jan  1 00:00 - 03:14 (24855+03:14)
+-torvalds linux        hobby            Mon Aug 26 00:57   still logged in
++torvalds linux        hobby            Mon Aug 26 00:57    gone - no logout
+ runlevel foo          one              Wed Aug 28 11:00 - 12:00  (01:00)
+ 
+ wtmp begins Wed Aug 28 03:00:00 2013
+-- 
+1.8.5.5
+

diff --git a/sys-apps/util-linux/files/util-linux-2.24-skip-last-tests.patch b/sys-apps/util-linux/files/util-linux-2.24-skip-last-tests.patch
new file mode 100644
index 0000000..5148053
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.24-skip-last-tests.patch
@@ -0,0 +1,41 @@
+From 6b55612b9ad1193a042f3c3a1d9216e63b0d2907 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Sun, 22 Dec 2013 18:17:15 -0500
+Subject: [PATCH] tests: last: skip when last is not enabled
+
+References: https://bugs.gentoo.org/489794
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ tests/ts/last/ipv6 | 2 ++
+ tests/ts/last/last | 2 ++
+ 2 files changed, 4 insertions(+)
+
+diff --git a/tests/ts/last/ipv6 b/tests/ts/last/ipv6
+index 8e2b01e..60b72bd 100755
+--- a/tests/ts/last/ipv6
++++ b/tests/ts/last/ipv6
+@@ -18,6 +18,8 @@ TS_DESC="last ipv6"
+ . $TS_TOPDIR/functions.sh
+ ts_init "$*"
+ 
++[ -x $TS_CMD_LAST ] || ts_skip "last not enabled"
++
+ export LANG=C
+ export TZ=GMT
+ 
+diff --git a/tests/ts/last/last b/tests/ts/last/last
+index 4ad38cb..83b7f8d 100755
+--- a/tests/ts/last/last
++++ b/tests/ts/last/last
+@@ -18,6 +18,8 @@ TS_DESC="last"
+ . $TS_TOPDIR/functions.sh
+ ts_init "$*"
+ 
++[ -x $TS_CMD_LAST ] || ts_skip "last not enabled"
++
+ export LANG=C
+ export TZ=GMT
+ 
+-- 
+1.8.4.3
+

diff --git a/sys-apps/util-linux/files/util-linux-2.25.1-blkid-probe-fix.patch b/sys-apps/util-linux/files/util-linux-2.25.1-blkid-probe-fix.patch
new file mode 100644
index 0000000..f994a74
--- /dev/null
+++ b/sys-apps/util-linux/files/util-linux-2.25.1-blkid-probe-fix.patch
@@ -0,0 +1,43 @@
+From 00749bc366fe6106df918660a92a388cfff4f35f Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Tue, 7 Oct 2014 12:44:34 +0200
+Subject: [PATCH] libblkid: zeroize errno on blkid_probe_get_buffer() success
+
+Since 37f4060225df0591ab8e1dd676dbc8115d900d4f prober functions are
+sensitive to errno, it seems more robust to set errno=0 with in
+blkid_probe_get_buffer() on success than set the zero on all places
+where we call blkid_probe_get_buffer().
+
+Addresses: https://github.com/karelzak/util-linux/issues/119
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ libblkid/src/probe.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/libblkid/src/probe.c b/libblkid/src/probe.c
+index 4fea3cc..3f7e43b 100644
+--- a/libblkid/src/probe.c
++++ b/libblkid/src/probe.c
+@@ -539,8 +539,10 @@ unsigned char *blkid_probe_get_buffer(blkid_probe pr,
+ 	struct list_head *p;
+ 	struct blkid_bufinfo *bf = NULL;
+ 
+-	if (pr->size <= 0)
++	if (pr->size <= 0) {
++		errno = EINVAL;
+ 		return NULL;
++	}
+ 
+ 	if (pr->parent &&
+ 	    pr->parent->devno == pr->devno &&
+@@ -602,6 +604,7 @@ unsigned char *blkid_probe_get_buffer(blkid_probe pr,
+ 		list_add_tail(&bf->bufs, &pr->buffers);
+ 	}
+ 
++	errno = 0;
+ 	return off ? bf->data + (off - bf->off) : bf->data;
+ }
+ 
+-- 
+2.1.2
+

diff --git a/sys-apps/util-linux/metadata.xml b/sys-apps/util-linux/metadata.xml
index 0424e4e..77690bc 100644
--- a/sys-apps/util-linux/metadata.xml
+++ b/sys-apps/util-linux/metadata.xml
@@ -5,6 +5,7 @@
 	<use>
 		<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="cytune">build cytune for Cyclades-Z multiport serial cards</flag>
 		<flag name="fdformat">build fdformat (floppy disk format)</flag>
 		<flag name="pam">build runuser helper</flag>
 		<flag name="suid">

diff --git a/sys-apps/util-linux/util-linux-2.24.1-r2.ebuild b/sys-apps/util-linux/util-linux-2.24.1-r2.ebuild
new file mode 100644
index 0000000..b835660
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.24.1-r2.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+PYTHON_COMPAT=( python2_7 python3_{3,4} )
+
+inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 python-single-r1
+
+MY_PV=${PV/_/-}
+MY_P=${PN}-${MY_PV}
+
+if [[ ${PV} == 9999 ]] ; then
+	inherit git-2 autotools
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
+else
+	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 m68k ~mips ~ppc ~ppc64 s390 sh ~sparc x86 ~amd64-linux ~arm-linux ~x86-linux"
+	SRC_URI="mirror://kernel/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/"
+
+LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
+SLOT="0"
+IUSE="bash-completion caps +cramfs cytune fdformat ncurses nls pam python selinux slang static-libs +suid test tty-helpers udev unicode"
+
+RDEPEND="!sys-process/schedutils
+	!sys-apps/setarch
+	!<sys-apps/sysvinit-2.88-r7
+	!sys-block/eject
+	!<sys-libs/e2fsprogs-libs-1.41.8
+	!<sys-fs/e2fsprogs-1.41.8
+	!<app-shells/bash-completion-1.3-r2
+	caps? ( sys-libs/libcap-ng )
+	cramfs? ( sys-libs/zlib )
+	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
+	pam? ( sys-libs/pam )
+	python? ( ${PYTHON_DEPS} )
+	selinux? ( sys-libs/libselinux )
+	slang? ( sys-libs/slang )
+	udev? ( virtual/udev )"
+DEPEND="${RDEPEND}
+	virtual/pkgconfig
+	nls? ( sys-devel/gettext )
+	test? ( sys-devel/bc )
+	virtual/os-headers"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+	use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+	if [[ ${PV} == 9999 ]] ; then
+		po/update-potfiles
+		eautoreconf
+	fi
+	epatch "${FILESDIR}"/${PN}-2.24-skip-last-tests.patch #491742
+	epatch "${FILESDIR}"/${PN}-2.24-last-tests.patch #501408
+	# http://marc.info/?l=util-linux-ng&m=140223032032288&w=2
+	epatch "${FILESDIR}"/${PN}-2.24-fix-fdisk-on-alpha.patch
+	find tests/ -name bigyear -delete #489794
+	elibtoolize
+}
+
+lfs_fallocate_test() {
+	# Make sure we can use fallocate with LFS #300307
+	cat <<-EOF > "${T}"/fallocate.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.c -o /dev/null >/dev/null 2>&1 \
+		|| export ac_cv_func_fallocate=no
+	rm -f "${T}"/fallocate.c
+}
+
+src_configure() {
+	lfs_fallocate_test
+	export ac_cv_header_security_pam_misc_h=$(usex pam) #485486
+	econf \
+		--docdir="/usr/share/doc/${PF}" \
+		--enable-fs-paths-extra=/usr/sbin:/bin:/usr/bin \
+		$(use_enable nls) \
+		--enable-agetty \
+		--with-bashcompletiondir="$(get_bashcompdir)" \
+		$(use_enable bash-completion) \
+		$(use_enable caps setpriv) \
+		$(use_enable cramfs) \
+		$(use_enable cytune) \
+		$(use_enable fdformat) \
+		--with-ncurses=$(usex ncurses $(usex unicode auto yes) no) \
+		--disable-kill \
+		--disable-login \
+		$(use_enable tty-helpers mesg) \
+		--disable-nologin \
+		--enable-partx \
+		$(use_with python) \
+		--enable-raw \
+		--enable-rename \
+		--disable-reset \
+		--enable-schedutils \
+		--disable-su \
+		$(use_enable tty-helpers wall) \
+		$(use_enable tty-helpers write) \
+		$(use_enable suid makeinstall-chown) \
+		$(use_enable suid makeinstall-setuid) \
+		$(use_with selinux) \
+		$(use_with slang) \
+		$(use_enable static-libs static) \
+		$(use_with udev) \
+		$(tc-has-tls || echo --disable-tls)
+}
+
+src_test() {
+	emake check
+}
+
+src_install() {
+	default
+	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
+
+	use python && python_optimize
+
+	# need the libs in /
+	gen_usr_ldscript -a blkid mount uuid
+
+	# e2fsprogs-libs didnt install .la files, and .pc work fine
+	prune_libtool_files
+}
+
+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
+}

diff --git a/sys-apps/util-linux/util-linux-2.24.1-r3.ebuild b/sys-apps/util-linux/util-linux-2.24.1-r3.ebuild
new file mode 100644
index 0000000..8c25f44
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.24.1-r3.ebuild
@@ -0,0 +1,174 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+PYTHON_COMPAT=( python2_7 python3_{3,4} )
+
+inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
+	python-single-r1 multilib-minimal
+
+MY_PV=${PV/_/-}
+MY_P=${PN}-${MY_PV}
+
+if [[ ${PV} == 9999 ]] ; then
+	inherit git-2 autotools
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
+else
+	KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-linux ~arm-linux ~x86-linux"
+	SRC_URI="mirror://kernel/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/"
+
+LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
+SLOT="0"
+IUSE="bash-completion caps +cramfs cytune fdformat ncurses nls pam python selinux slang static-libs +suid test tty-helpers udev unicode"
+
+RDEPEND="!sys-process/schedutils
+	!sys-apps/setarch
+	!<sys-apps/sysvinit-2.88-r7
+	!sys-block/eject
+	!<sys-libs/e2fsprogs-libs-1.41.8
+	!<sys-fs/e2fsprogs-1.41.8
+	!<app-shells/bash-completion-1.3-r2
+	caps? ( sys-libs/libcap-ng )
+	cramfs? ( sys-libs/zlib )
+	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
+	pam? ( sys-libs/pam )
+	python? ( ${PYTHON_DEPS} )
+	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
+	slang? ( sys-libs/slang )
+	udev? ( virtual/udev )
+	abi_x86_32? (
+		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
+		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
+	)"
+DEPEND="${RDEPEND}
+	virtual/pkgconfig
+	nls? ( sys-devel/gettext )
+	test? ( sys-devel/bc )
+	virtual/os-headers"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+	use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+	if [[ ${PV} == 9999 ]] ; then
+		po/update-potfiles
+		eautoreconf
+	fi
+	epatch "${FILESDIR}"/${PN}-2.24-skip-last-tests.patch #491742
+	epatch "${FILESDIR}"/${PN}-2.24-last-tests.patch #501408
+	# http://thread.gmane.org/gmane.linux.utilities.util-linux-ng/9237
+	epatch "${FILESDIR}"/${PN}-2.24-fix-fdisk-on-alpha.patch
+	find tests/ -name bigyear -delete #489794
+	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
+}
+
+multilib_src_configure() {
+	lfs_fallocate_test
+	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
+	ECONF_SOURCE=${S} \
+	econf \
+		--docdir="/usr/share/doc/${PF}" \
+		--enable-fs-paths-extra=/usr/sbin:/bin:/usr/bin \
+		$(multilib_native_use_enable nls) \
+		--enable-agetty \
+		--with-bashcompletiondir="$(get_bashcompdir)" \
+		$(multilib_native_use_enable bash-completion) \
+		$(multilib_native_use_enable caps setpriv) \
+		$(multilib_native_use_enable cramfs) \
+		$(multilib_native_use_enable cytune) \
+		$(multilib_native_use_enable fdformat) \
+		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
+		--disable-kill \
+		--disable-login \
+		$(multilib_native_use_enable tty-helpers mesg) \
+		--disable-nologin \
+		--enable-partx \
+		$(multilib_native_use_with python) \
+		--enable-raw \
+		--enable-rename \
+		--disable-reset \
+		--enable-schedutils \
+		--disable-su \
+		$(multilib_native_use_enable tty-helpers wall) \
+		$(multilib_native_use_enable tty-helpers write) \
+		$(multilib_native_use_enable suid makeinstall-chown) \
+		$(multilib_native_use_enable suid makeinstall-setuid) \
+		$(use_with selinux) \
+		$(multilib_native_use_with slang) \
+		$(use_enable static-libs static) \
+		$(multilib_native_use_with udev) \
+		$(tc-has-tls || echo --disable-tls)
+}
+
+multilib_src_compile() {
+	if multilib_is_native_abi; then
+		default
+	else
+		# build libraries only
+		emake -f Makefile -f - mylibs \
+			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
+	fi
+}
+
+multilib_src_test() {
+	multilib_is_native_abi && emake check
+}
+
+multilib_src_install() {
+	if multilib_is_native_abi; then
+		default
+	else
+		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
+			install-pkgconfigDATA install-uuidincHEADERS \
+			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS
+	fi
+
+	if multilib_is_native_abi; then
+		# need the libs in /
+		gen_usr_ldscript -a blkid mount uuid
+
+		use python && python_optimize
+	fi
+}
+
+multilib_src_install_all() {
+	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
+
+	# e2fsprogs-libs didnt install .la files, and .pc work fine
+	prune_libtool_files
+}
+
+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
+}

diff --git a/sys-apps/util-linux/util-linux-2.24.2.ebuild b/sys-apps/util-linux/util-linux-2.24.2.ebuild
new file mode 100644
index 0000000..47d580b
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.24.2.ebuild
@@ -0,0 +1,177 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+PYTHON_COMPAT=( python2_7 python3_{3,4} )
+
+inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
+	python-single-r1 multilib-minimal
+
+MY_PV=${PV/_/-}
+MY_P=${PN}-${MY_PV}
+
+if [[ ${PV} == 9999 ]] ; then
+	inherit git-2 autotools
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
+else
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
+	SRC_URI="mirror://kernel/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/"
+
+LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
+SLOT="0"
+IUSE="caps +cramfs cytune fdformat ncurses nls pam python selinux slang static-libs +suid test tty-helpers udev unicode"
+
+RDEPEND="!sys-process/schedutils
+	!sys-apps/setarch
+	!<sys-apps/sysvinit-2.88-r7
+	!sys-block/eject
+	!<sys-libs/e2fsprogs-libs-1.41.8
+	!<sys-fs/e2fsprogs-1.41.8
+	!<app-shells/bash-completion-1.3-r2
+	caps? ( sys-libs/libcap-ng )
+	cramfs? ( sys-libs/zlib )
+	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
+	pam? ( sys-libs/pam )
+	python? ( ${PYTHON_DEPS} )
+	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
+	slang? ( sys-libs/slang )
+	udev? ( virtual/udev )
+	abi_x86_32? (
+		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
+		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
+	)"
+DEPEND="${RDEPEND}
+	virtual/pkgconfig
+	nls? ( sys-devel/gettext )
+	test? ( sys-devel/bc )
+	virtual/os-headers"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+	use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+	if [[ ${PV} == 9999 ]] ; then
+		po/update-potfiles
+		eautoreconf
+	fi
+	epatch "${FILESDIR}"/${PN}-2.24-last-tests.patch #501408
+	# http://thread.gmane.org/gmane.linux.utilities.util-linux-ng/9237
+	epatch "${FILESDIR}"/${PN}-2.24-fix-fdisk-on-alpha.patch
+	find tests/ -name bigyear -delete #489794
+	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
+}
+
+multilib_src_configure() {
+	lfs_fallocate_test
+	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
+	# We manually set --libdir to the default since on prefix, econf will set it to
+	# a value which the configure script does not recognize.  This makes it set the
+	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
+	ECONF_SOURCE=${S} \
+	econf \
+		--docdir="${EPREFIX}/usr/share/doc/${PF}" \
+		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
+		--libdir='${prefix}/'"$(get_libdir)" \
+		$(multilib_native_use_enable nls) \
+		--enable-agetty \
+		--with-bashcompletiondir="$(get_bashcompdir)" \
+		--enable-bash-completion \
+		$(multilib_native_use_enable caps setpriv) \
+		$(multilib_native_use_enable cramfs) \
+		$(multilib_native_use_enable cytune) \
+		$(multilib_native_use_enable fdformat) \
+		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
+		--disable-kill \
+		--disable-login \
+		$(multilib_native_use_enable tty-helpers mesg) \
+		--disable-nologin \
+		--enable-partx \
+		$(multilib_native_use_with python) \
+		--enable-raw \
+		--enable-rename \
+		--disable-reset \
+		--enable-schedutils \
+		--disable-su \
+		$(multilib_native_use_enable tty-helpers wall) \
+		$(multilib_native_use_enable tty-helpers write) \
+		$(multilib_native_use_enable suid makeinstall-chown) \
+		$(multilib_native_use_enable suid makeinstall-setuid) \
+		$(use_with selinux) \
+		$(multilib_native_use_with slang) \
+		$(use_enable static-libs static) \
+		$(multilib_native_use_with udev) \
+		$(tc-has-tls || echo --disable-tls)
+}
+
+multilib_src_compile() {
+	if multilib_is_native_abi; then
+		default
+	else
+		# build libraries only
+		emake -f Makefile -f - mylibs \
+			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
+	fi
+}
+
+multilib_src_test() {
+	multilib_is_native_abi && emake check
+}
+
+multilib_src_install() {
+	if multilib_is_native_abi; then
+		default
+	else
+		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
+			install-pkgconfigDATA install-uuidincHEADERS \
+			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS
+	fi
+
+	if multilib_is_native_abi; then
+		# need the libs in /
+		gen_usr_ldscript -a blkid mount uuid
+
+		use python && python_optimize
+	fi
+}
+
+multilib_src_install_all() {
+	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
+
+	# e2fsprogs-libs didnt install .la files, and .pc work fine
+	prune_libtool_files
+}
+
+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
+}

diff --git a/sys-apps/util-linux/util-linux-2.25.1-r1.ebuild b/sys-apps/util-linux/util-linux-2.25.1-r1.ebuild
new file mode 100644
index 0000000..c32bfd4
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.25.1-r1.ebuild
@@ -0,0 +1,174 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+PYTHON_COMPAT=( python2_7 python3_{3,4} )
+
+inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
+	python-single-r1 multilib-minimal
+
+MY_PV=${PV/_/-}
+MY_P=${PN}-${MY_PV}
+
+if [[ ${PV} == 9999 ]] ; then
+	inherit git-2 autotools
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
+else
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
+	SRC_URI="mirror://kernel/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/"
+
+LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
+SLOT="0"
+IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid test tty-helpers udev unicode"
+
+RDEPEND="!sys-process/schedutils
+	!sys-apps/setarch
+	!<sys-apps/sysvinit-2.88-r7
+	!sys-block/eject
+	!<sys-libs/e2fsprogs-libs-1.41.8
+	!<sys-fs/e2fsprogs-1.41.8
+	!<app-shells/bash-completion-1.3-r2
+	caps? ( sys-libs/libcap-ng )
+	cramfs? ( sys-libs/zlib )
+	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
+	pam? ( sys-libs/pam )
+	python? ( ${PYTHON_DEPS} )
+	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
+	slang? ( sys-libs/slang )
+	udev? ( virtual/udev )
+	abi_x86_32? (
+		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
+		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
+	)"
+DEPEND="${RDEPEND}
+	virtual/pkgconfig
+	nls? ( sys-devel/gettext )
+	test? ( sys-devel/bc )
+	virtual/os-headers"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+	use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+	epatch "${FILESDIR}"/${P}-blkid-probe-fix.patch
+	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
+}
+
+multilib_src_configure() {
+	lfs_fallocate_test
+	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
+	# We manually set --libdir to the default since on prefix, econf will set it to
+	# a value which the configure script does not recognize.  This makes it set the
+	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
+	ECONF_SOURCE=${S} \
+	econf \
+		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
+		--libdir='${prefix}/'"$(get_libdir)" \
+		$(multilib_native_use_enable nls) \
+		--enable-agetty \
+		--with-bashcompletiondir="$(get_bashcompdir)" \
+		--enable-bash-completion \
+		$(multilib_native_use_enable caps setpriv) \
+		--disable-chfn-chsh \
+		$(multilib_native_use_enable cramfs) \
+		$(multilib_native_use_enable fdformat) \
+		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
+		--disable-kill \
+		--disable-login \
+		$(multilib_native_use_enable tty-helpers mesg) \
+		--disable-nologin \
+		--enable-partx \
+		$(multilib_native_use_with python) \
+		--enable-raw \
+		--enable-rename \
+		--disable-reset \
+		--enable-schedutils \
+		--disable-su \
+		$(multilib_native_use_enable tty-helpers wall) \
+		$(multilib_native_use_enable tty-helpers write) \
+		$(multilib_native_use_enable suid makeinstall-chown) \
+		$(multilib_native_use_enable suid makeinstall-setuid) \
+		$(use_with selinux) \
+		$(multilib_native_use_with slang) \
+		$(use_enable static-libs static) \
+		$(multilib_native_use_with udev) \
+		$(tc-has-tls || echo --disable-tls)
+}
+
+multilib_src_compile() {
+	if multilib_is_native_abi; then
+		default
+	else
+		# build libraries only
+		emake -f Makefile -f - mylibs \
+			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
+	fi
+}
+
+multilib_src_test() {
+	multilib_is_native_abi && emake check
+}
+
+multilib_src_install() {
+	if multilib_is_native_abi; then
+		default
+	else
+		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
+			install-pkgconfigDATA install-uuidincHEADERS \
+			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
+			install-nodist_smartcolsincHEADERS
+	fi
+
+	if multilib_is_native_abi; then
+		# need the libs in /
+		gen_usr_ldscript -a blkid mount smartcols uuid
+
+		use python && python_optimize
+	fi
+}
+
+multilib_src_install_all() {
+	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
+
+	# e2fsprogs-libs didnt install .la files, and .pc work fine
+	prune_libtool_files
+}
+
+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
+}

diff --git a/sys-apps/util-linux/util-linux-2.25.1.ebuild b/sys-apps/util-linux/util-linux-2.25.1.ebuild
new file mode 100644
index 0000000..5303ad0
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.25.1.ebuild
@@ -0,0 +1,173 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+PYTHON_COMPAT=( python2_7 python3_{3,4} )
+
+inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
+	python-single-r1 multilib-minimal
+
+MY_PV=${PV/_/-}
+MY_P=${PN}-${MY_PV}
+
+if [[ ${PV} == 9999 ]] ; then
+	inherit git-2 autotools
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
+else
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
+	SRC_URI="mirror://kernel/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/"
+
+LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
+SLOT="0"
+IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid test tty-helpers udev unicode"
+
+RDEPEND="!sys-process/schedutils
+	!sys-apps/setarch
+	!<sys-apps/sysvinit-2.88-r7
+	!sys-block/eject
+	!<sys-libs/e2fsprogs-libs-1.41.8
+	!<sys-fs/e2fsprogs-1.41.8
+	!<app-shells/bash-completion-1.3-r2
+	caps? ( sys-libs/libcap-ng )
+	cramfs? ( sys-libs/zlib )
+	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
+	pam? ( sys-libs/pam )
+	python? ( ${PYTHON_DEPS} )
+	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
+	slang? ( sys-libs/slang )
+	udev? ( virtual/udev )
+	abi_x86_32? (
+		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
+		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
+	)"
+DEPEND="${RDEPEND}
+	virtual/pkgconfig
+	nls? ( sys-devel/gettext )
+	test? ( sys-devel/bc )
+	virtual/os-headers"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+	use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+	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
+}
+
+multilib_src_configure() {
+	lfs_fallocate_test
+	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
+	# We manually set --libdir to the default since on prefix, econf will set it to
+	# a value which the configure script does not recognize.  This makes it set the
+	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
+	ECONF_SOURCE=${S} \
+	econf \
+		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
+		--libdir='${prefix}/'"$(get_libdir)" \
+		$(multilib_native_use_enable nls) \
+		--enable-agetty \
+		--with-bashcompletiondir="$(get_bashcompdir)" \
+		--enable-bash-completion \
+		$(multilib_native_use_enable caps setpriv) \
+		--disable-chfn-chsh \
+		$(multilib_native_use_enable cramfs) \
+		$(multilib_native_use_enable fdformat) \
+		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
+		--disable-kill \
+		--disable-login \
+		$(multilib_native_use_enable tty-helpers mesg) \
+		--disable-nologin \
+		--enable-partx \
+		$(multilib_native_use_with python) \
+		--enable-raw \
+		--enable-rename \
+		--disable-reset \
+		--enable-schedutils \
+		--disable-su \
+		$(multilib_native_use_enable tty-helpers wall) \
+		$(multilib_native_use_enable tty-helpers write) \
+		$(multilib_native_use_enable suid makeinstall-chown) \
+		$(multilib_native_use_enable suid makeinstall-setuid) \
+		$(use_with selinux) \
+		$(multilib_native_use_with slang) \
+		$(use_enable static-libs static) \
+		$(multilib_native_use_with udev) \
+		$(tc-has-tls || echo --disable-tls)
+}
+
+multilib_src_compile() {
+	if multilib_is_native_abi; then
+		default
+	else
+		# build libraries only
+		emake -f Makefile -f - mylibs \
+			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
+	fi
+}
+
+multilib_src_test() {
+	multilib_is_native_abi && emake check
+}
+
+multilib_src_install() {
+	if multilib_is_native_abi; then
+		default
+	else
+		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
+			install-pkgconfigDATA install-uuidincHEADERS \
+			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
+			install-nodist_smartcolsincHEADERS
+	fi
+
+	if multilib_is_native_abi; then
+		# need the libs in /
+		gen_usr_ldscript -a blkid mount smartcols uuid
+
+		use python && python_optimize
+	fi
+}
+
+multilib_src_install_all() {
+	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
+
+	# e2fsprogs-libs didnt install .la files, and .pc work fine
+	prune_libtool_files
+}
+
+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
+}

diff --git a/sys-apps/util-linux/util-linux-2.25.2-r1.ebuild b/sys-apps/util-linux/util-linux-2.25.2-r1.ebuild
new file mode 100644
index 0000000..cbeb96a
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.25.2-r1.ebuild
@@ -0,0 +1,177 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+PYTHON_COMPAT=( python2_7 python3_{3,4} )
+
+inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
+	python-single-r1 multilib-minimal systemd
+
+MY_PV=${PV/_/-}
+MY_P=${PN}-${MY_PV}
+
+if [[ ${PV} == 9999 ]] ; then
+	inherit git-2 autotools
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
+else
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
+	SRC_URI="mirror://kernel/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/"
+
+LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
+SLOT="0"
+IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid systemd test tty-helpers udev unicode"
+
+RDEPEND="!sys-process/schedutils
+	!sys-apps/setarch
+	!<sys-apps/sysvinit-2.88-r7
+	!sys-block/eject
+	!<sys-libs/e2fsprogs-libs-1.41.8
+	!<sys-fs/e2fsprogs-1.41.8
+	!<app-shells/bash-completion-1.3-r2
+	caps? ( sys-libs/libcap-ng )
+	cramfs? ( sys-libs/zlib )
+	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
+	pam? ( sys-libs/pam )
+	python? ( ${PYTHON_DEPS} )
+	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
+	slang? ( sys-libs/slang )
+	systemd? ( sys-apps/systemd )
+	udev? ( virtual/udev )
+	abi_x86_32? (
+		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
+		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
+	)"
+DEPEND="${RDEPEND}
+	virtual/pkgconfig
+	nls? ( sys-devel/gettext )
+	test? ( sys-devel/bc )
+	virtual/os-headers"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+	use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+	epatch "${FILESDIR}"/${P}-runuser-bash-completion.patch #522288
+	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
+}
+
+multilib_src_configure() {
+	lfs_fallocate_test
+	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
+	# We manually set --libdir to the default since on prefix, econf will set it to
+	# a value which the configure script does not recognize.  This makes it set the
+	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
+	ECONF_SOURCE=${S} \
+	econf \
+		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
+		--libdir='${prefix}/'"$(get_libdir)" \
+		$(multilib_native_use_enable nls) \
+		--enable-agetty \
+		--with-bashcompletiondir="$(get_bashcompdir)" \
+		--enable-bash-completion \
+		$(multilib_native_use_enable caps setpriv) \
+		--disable-chfn-chsh \
+		$(multilib_native_use_enable cramfs) \
+		$(multilib_native_use_enable fdformat) \
+		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
+		--disable-kill \
+		--disable-login \
+		$(multilib_native_use_enable tty-helpers mesg) \
+		--disable-nologin \
+		--enable-partx \
+		$(multilib_native_use_with python) \
+		--enable-raw \
+		--enable-rename \
+		--disable-reset \
+		--enable-schedutils \
+		--disable-su \
+		$(multilib_native_use_enable tty-helpers wall) \
+		$(multilib_native_use_enable tty-helpers write) \
+		$(multilib_native_use_enable suid makeinstall-chown) \
+		$(multilib_native_use_enable suid makeinstall-setuid) \
+		$(use_with selinux) \
+		$(multilib_native_use_with slang) \
+		$(use_enable static-libs static) \
+		$(multilib_native_use_with systemd) \
+		--with-systemdsystemunitdir=$(multilib_native_usex systemd "$(systemd_get_unitdir)" "no") \
+		$(multilib_native_use_with udev) \
+		$(tc-has-tls || echo --disable-tls)
+}
+
+multilib_src_compile() {
+	if multilib_is_native_abi; then
+		default
+	else
+		# build libraries only
+		emake -f Makefile -f - mylibs \
+			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
+	fi
+}
+
+multilib_src_test() {
+	multilib_is_native_abi && emake check
+}
+
+multilib_src_install() {
+	if multilib_is_native_abi; then
+		default
+	else
+		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
+			install-pkgconfigDATA install-uuidincHEADERS \
+			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
+			install-nodist_smartcolsincHEADERS
+	fi
+
+	if multilib_is_native_abi; then
+		# need the libs in /
+		gen_usr_ldscript -a blkid mount smartcols uuid
+
+		use python && python_optimize
+	fi
+}
+
+multilib_src_install_all() {
+	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
+
+	# e2fsprogs-libs didnt install .la files, and .pc work fine
+	prune_libtool_files
+}
+
+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
+}

diff --git a/sys-apps/util-linux/util-linux-2.25.2.ebuild b/sys-apps/util-linux/util-linux-2.25.2.ebuild
new file mode 100644
index 0000000..01f6f78
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.25.2.ebuild
@@ -0,0 +1,174 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+PYTHON_COMPAT=( python2_7 python3_{3,4} )
+
+inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
+	python-single-r1 multilib-minimal
+
+MY_PV=${PV/_/-}
+MY_P=${PN}-${MY_PV}
+
+if [[ ${PV} == 9999 ]] ; then
+	inherit git-2 autotools
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
+else
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
+	SRC_URI="mirror://kernel/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/"
+
+LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
+SLOT="0"
+IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid test tty-helpers udev unicode"
+
+RDEPEND="!sys-process/schedutils
+	!sys-apps/setarch
+	!<sys-apps/sysvinit-2.88-r7
+	!sys-block/eject
+	!<sys-libs/e2fsprogs-libs-1.41.8
+	!<sys-fs/e2fsprogs-1.41.8
+	!<app-shells/bash-completion-1.3-r2
+	caps? ( sys-libs/libcap-ng )
+	cramfs? ( sys-libs/zlib )
+	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
+	pam? ( sys-libs/pam )
+	python? ( ${PYTHON_DEPS} )
+	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
+	slang? ( sys-libs/slang )
+	udev? ( virtual/udev )
+	abi_x86_32? (
+		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
+		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
+	)"
+DEPEND="${RDEPEND}
+	virtual/pkgconfig
+	nls? ( sys-devel/gettext )
+	test? ( sys-devel/bc )
+	virtual/os-headers"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+	use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+	epatch "${FILESDIR}"/${P}-runuser-bash-completion.patch #522288
+	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
+}
+
+multilib_src_configure() {
+	lfs_fallocate_test
+	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
+	# We manually set --libdir to the default since on prefix, econf will set it to
+	# a value which the configure script does not recognize.  This makes it set the
+	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
+	ECONF_SOURCE=${S} \
+	econf \
+		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
+		--libdir='${prefix}/'"$(get_libdir)" \
+		$(multilib_native_use_enable nls) \
+		--enable-agetty \
+		--with-bashcompletiondir="$(get_bashcompdir)" \
+		--enable-bash-completion \
+		$(multilib_native_use_enable caps setpriv) \
+		--disable-chfn-chsh \
+		$(multilib_native_use_enable cramfs) \
+		$(multilib_native_use_enable fdformat) \
+		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
+		--disable-kill \
+		--disable-login \
+		$(multilib_native_use_enable tty-helpers mesg) \
+		--disable-nologin \
+		--enable-partx \
+		$(multilib_native_use_with python) \
+		--enable-raw \
+		--enable-rename \
+		--disable-reset \
+		--enable-schedutils \
+		--disable-su \
+		$(multilib_native_use_enable tty-helpers wall) \
+		$(multilib_native_use_enable tty-helpers write) \
+		$(multilib_native_use_enable suid makeinstall-chown) \
+		$(multilib_native_use_enable suid makeinstall-setuid) \
+		$(use_with selinux) \
+		$(multilib_native_use_with slang) \
+		$(use_enable static-libs static) \
+		$(multilib_native_use_with udev) \
+		$(tc-has-tls || echo --disable-tls)
+}
+
+multilib_src_compile() {
+	if multilib_is_native_abi; then
+		default
+	else
+		# build libraries only
+		emake -f Makefile -f - mylibs \
+			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
+	fi
+}
+
+multilib_src_test() {
+	multilib_is_native_abi && emake check
+}
+
+multilib_src_install() {
+	if multilib_is_native_abi; then
+		default
+	else
+		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
+			install-pkgconfigDATA install-uuidincHEADERS \
+			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
+			install-nodist_smartcolsincHEADERS
+	fi
+
+	if multilib_is_native_abi; then
+		# need the libs in /
+		gen_usr_ldscript -a blkid mount smartcols uuid
+
+		use python && python_optimize
+	fi
+}
+
+multilib_src_install_all() {
+	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
+
+	# e2fsprogs-libs didnt install .la files, and .pc work fine
+	prune_libtool_files
+}
+
+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
+}

diff --git a/sys-apps/util-linux/util-linux-2.26.1-r1.ebuild b/sys-apps/util-linux/util-linux-2.26.1-r1.ebuild
new file mode 100644
index 0000000..367cbdf
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.26.1-r1.ebuild
@@ -0,0 +1,178 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=( python2_7 python3_{3,4} )
+
+inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
+	python-single-r1 multilib-minimal systemd
+
+MY_PV=${PV/_/-}
+MY_P=${PN}-${MY_PV}
+
+if [[ ${PV} == 9999 ]] ; then
+	inherit git-2 autotools
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
+else
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
+	SRC_URI="mirror://kernel/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/"
+
+LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
+SLOT="0"
+IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid systemd test tty-helpers udev unicode"
+
+RDEPEND="!sys-process/schedutils
+	!sys-apps/setarch
+	!<sys-apps/sysvinit-2.88-r7
+	!sys-block/eject
+	!<sys-libs/e2fsprogs-libs-1.41.8
+	!<sys-fs/e2fsprogs-1.41.8
+	!<app-shells/bash-completion-1.3-r2
+	caps? ( sys-libs/libcap-ng )
+	cramfs? ( sys-libs/zlib )
+	ncurses? ( >=sys-libs/ncurses-5.2-r2:0= )
+	pam? ( sys-libs/pam )
+	python? ( ${PYTHON_DEPS} )
+	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
+	slang? ( sys-libs/slang )
+	systemd? ( sys-apps/systemd )
+	udev? ( virtual/libudev )
+	abi_x86_32? (
+		!<=app-emulation/emul-linux-x86-baselibs-20150406-r2
+		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
+	)"
+DEPEND="${RDEPEND}
+	virtual/pkgconfig
+	nls? ( sys-devel/gettext )
+	test? ( sys-devel/bc )
+	virtual/os-headers"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+	use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+	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
+}
+
+multilib_src_configure() {
+	lfs_fallocate_test
+	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
+	# We manually set --libdir to the default since on prefix, econf will set it to
+	# a value which the configure script does not recognize.  This makes it set the
+	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
+	ECONF_SOURCE=${S} \
+	econf \
+		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
+		--libdir='${prefix}/'"$(get_libdir)" \
+		--docdir='${datarootdir}'/doc/${PF} \
+		$(multilib_native_use_enable nls) \
+		--enable-agetty \
+		--with-bashcompletiondir="$(get_bashcompdir)" \
+		--enable-bash-completion \
+		$(multilib_native_use_enable caps setpriv) \
+		--disable-chfn-chsh \
+		$(multilib_native_use_enable cramfs) \
+		$(multilib_native_use_enable fdformat) \
+		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
+		--disable-kill \
+		--disable-login \
+		$(multilib_native_use_enable tty-helpers mesg) \
+		--disable-nologin \
+		--enable-partx \
+		$(multilib_native_use_with python) \
+		--enable-raw \
+		--enable-rename \
+		--disable-reset \
+		--enable-schedutils \
+		--disable-su \
+		$(multilib_native_use_enable tty-helpers wall) \
+		$(multilib_native_use_enable tty-helpers write) \
+		$(multilib_native_use_enable suid makeinstall-chown) \
+		$(multilib_native_use_enable suid makeinstall-setuid) \
+		$(use_with selinux) \
+		$(multilib_native_use_with slang) \
+		$(use_enable static-libs static) \
+		$(multilib_native_use_with systemd) \
+		--with-systemdsystemunitdir=$(multilib_native_usex systemd "$(systemd_get_unitdir)" "no") \
+		$(multilib_native_use_with udev) \
+		$(tc-has-tls || echo --disable-tls)
+}
+
+multilib_src_compile() {
+	if multilib_is_native_abi; then
+		default
+	else
+		# build libraries only
+		emake -f Makefile -f - mylibs \
+			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
+	fi
+}
+
+multilib_src_test() {
+	multilib_is_native_abi && emake check
+}
+
+multilib_src_install() {
+	if multilib_is_native_abi; then
+		default
+	else
+		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
+			install-pkgconfigDATA install-uuidincHEADERS \
+			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
+			install-nodist_smartcolsincHEADERS install-nodist_fdiskincHEADERS
+	fi
+
+	if multilib_is_native_abi; then
+		# need the libs in /
+		gen_usr_ldscript -a blkid mount smartcols uuid
+
+		use python && python_optimize
+	fi
+}
+
+multilib_src_install_all() {
+	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
+
+	# e2fsprogs-libs didnt install .la files, and .pc work fine
+	prune_libtool_files
+}
+
+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
+}

diff --git a/sys-apps/util-linux/util-linux-2.26.1.ebuild b/sys-apps/util-linux/util-linux-2.26.1.ebuild
new file mode 100644
index 0000000..2320483
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.26.1.ebuild
@@ -0,0 +1,177 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+PYTHON_COMPAT=( python2_7 python3_{3,4} )
+
+inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
+	python-single-r1 multilib-minimal systemd
+
+MY_PV=${PV/_/-}
+MY_P=${PN}-${MY_PV}
+
+if [[ ${PV} == 9999 ]] ; then
+	inherit git-2 autotools
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
+else
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
+	SRC_URI="mirror://kernel/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/"
+
+LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
+SLOT="0"
+IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid systemd test tty-helpers udev unicode"
+
+RDEPEND="!sys-process/schedutils
+	!sys-apps/setarch
+	!<sys-apps/sysvinit-2.88-r7
+	!sys-block/eject
+	!<sys-libs/e2fsprogs-libs-1.41.8
+	!<sys-fs/e2fsprogs-1.41.8
+	!<app-shells/bash-completion-1.3-r2
+	caps? ( sys-libs/libcap-ng )
+	cramfs? ( sys-libs/zlib )
+	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
+	pam? ( sys-libs/pam )
+	python? ( ${PYTHON_DEPS} )
+	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
+	slang? ( sys-libs/slang )
+	systemd? ( sys-apps/systemd )
+	udev? ( virtual/libudev )
+	abi_x86_32? (
+		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
+		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
+	)"
+DEPEND="${RDEPEND}
+	virtual/pkgconfig
+	nls? ( sys-devel/gettext )
+	test? ( sys-devel/bc )
+	virtual/os-headers"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+	use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+	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
+}
+
+multilib_src_configure() {
+	lfs_fallocate_test
+	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
+	# We manually set --libdir to the default since on prefix, econf will set it to
+	# a value which the configure script does not recognize.  This makes it set the
+	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
+	ECONF_SOURCE=${S} \
+	econf \
+		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
+		--libdir='${prefix}/'"$(get_libdir)" \
+		--docdir='${datarootdir}'/doc/${PF} \
+		$(multilib_native_use_enable nls) \
+		--enable-agetty \
+		--with-bashcompletiondir="$(get_bashcompdir)" \
+		--enable-bash-completion \
+		$(multilib_native_use_enable caps setpriv) \
+		--disable-chfn-chsh \
+		$(multilib_native_use_enable cramfs) \
+		$(multilib_native_use_enable fdformat) \
+		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
+		--disable-kill \
+		--disable-login \
+		$(multilib_native_use_enable tty-helpers mesg) \
+		--disable-nologin \
+		--enable-partx \
+		$(multilib_native_use_with python) \
+		--enable-raw \
+		--enable-rename \
+		--disable-reset \
+		--enable-schedutils \
+		--disable-su \
+		$(multilib_native_use_enable tty-helpers wall) \
+		$(multilib_native_use_enable tty-helpers write) \
+		$(multilib_native_use_enable suid makeinstall-chown) \
+		$(multilib_native_use_enable suid makeinstall-setuid) \
+		$(use_with selinux) \
+		$(multilib_native_use_with slang) \
+		$(use_enable static-libs static) \
+		$(multilib_native_use_with systemd) \
+		--with-systemdsystemunitdir=$(multilib_native_usex systemd "$(systemd_get_unitdir)" "no") \
+		$(multilib_native_use_with udev) \
+		$(tc-has-tls || echo --disable-tls)
+}
+
+multilib_src_compile() {
+	if multilib_is_native_abi; then
+		default
+	else
+		# build libraries only
+		emake -f Makefile -f - mylibs \
+			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
+	fi
+}
+
+multilib_src_test() {
+	multilib_is_native_abi && emake check
+}
+
+multilib_src_install() {
+	if multilib_is_native_abi; then
+		default
+	else
+		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
+			install-pkgconfigDATA install-uuidincHEADERS \
+			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
+			install-nodist_smartcolsincHEADERS install-nodist_fdiskincHEADERS
+	fi
+
+	if multilib_is_native_abi; then
+		# need the libs in /
+		gen_usr_ldscript -a blkid mount smartcols uuid
+
+		use python && python_optimize
+	fi
+}
+
+multilib_src_install_all() {
+	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
+
+	# e2fsprogs-libs didnt install .la files, and .pc work fine
+	prune_libtool_files
+}
+
+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
+}

diff --git a/sys-apps/util-linux/util-linux-2.26.ebuild b/sys-apps/util-linux/util-linux-2.26.ebuild
new file mode 100644
index 0000000..2320483
--- /dev/null
+++ b/sys-apps/util-linux/util-linux-2.26.ebuild
@@ -0,0 +1,177 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+PYTHON_COMPAT=( python2_7 python3_{3,4} )
+
+inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
+	python-single-r1 multilib-minimal systemd
+
+MY_PV=${PV/_/-}
+MY_P=${PN}-${MY_PV}
+
+if [[ ${PV} == 9999 ]] ; then
+	inherit git-2 autotools
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
+else
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
+	SRC_URI="mirror://kernel/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/"
+
+LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
+SLOT="0"
+IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid systemd test tty-helpers udev unicode"
+
+RDEPEND="!sys-process/schedutils
+	!sys-apps/setarch
+	!<sys-apps/sysvinit-2.88-r7
+	!sys-block/eject
+	!<sys-libs/e2fsprogs-libs-1.41.8
+	!<sys-fs/e2fsprogs-1.41.8
+	!<app-shells/bash-completion-1.3-r2
+	caps? ( sys-libs/libcap-ng )
+	cramfs? ( sys-libs/zlib )
+	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
+	pam? ( sys-libs/pam )
+	python? ( ${PYTHON_DEPS} )
+	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
+	slang? ( sys-libs/slang )
+	systemd? ( sys-apps/systemd )
+	udev? ( virtual/libudev )
+	abi_x86_32? (
+		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
+		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
+	)"
+DEPEND="${RDEPEND}
+	virtual/pkgconfig
+	nls? ( sys-devel/gettext )
+	test? ( sys-devel/bc )
+	virtual/os-headers"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+	use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+	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
+}
+
+multilib_src_configure() {
+	lfs_fallocate_test
+	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
+	# We manually set --libdir to the default since on prefix, econf will set it to
+	# a value which the configure script does not recognize.  This makes it set the
+	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
+	ECONF_SOURCE=${S} \
+	econf \
+		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
+		--libdir='${prefix}/'"$(get_libdir)" \
+		--docdir='${datarootdir}'/doc/${PF} \
+		$(multilib_native_use_enable nls) \
+		--enable-agetty \
+		--with-bashcompletiondir="$(get_bashcompdir)" \
+		--enable-bash-completion \
+		$(multilib_native_use_enable caps setpriv) \
+		--disable-chfn-chsh \
+		$(multilib_native_use_enable cramfs) \
+		$(multilib_native_use_enable fdformat) \
+		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
+		--disable-kill \
+		--disable-login \
+		$(multilib_native_use_enable tty-helpers mesg) \
+		--disable-nologin \
+		--enable-partx \
+		$(multilib_native_use_with python) \
+		--enable-raw \
+		--enable-rename \
+		--disable-reset \
+		--enable-schedutils \
+		--disable-su \
+		$(multilib_native_use_enable tty-helpers wall) \
+		$(multilib_native_use_enable tty-helpers write) \
+		$(multilib_native_use_enable suid makeinstall-chown) \
+		$(multilib_native_use_enable suid makeinstall-setuid) \
+		$(use_with selinux) \
+		$(multilib_native_use_with slang) \
+		$(use_enable static-libs static) \
+		$(multilib_native_use_with systemd) \
+		--with-systemdsystemunitdir=$(multilib_native_usex systemd "$(systemd_get_unitdir)" "no") \
+		$(multilib_native_use_with udev) \
+		$(tc-has-tls || echo --disable-tls)
+}
+
+multilib_src_compile() {
+	if multilib_is_native_abi; then
+		default
+	else
+		# build libraries only
+		emake -f Makefile -f - mylibs \
+			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
+	fi
+}
+
+multilib_src_test() {
+	multilib_is_native_abi && emake check
+}
+
+multilib_src_install() {
+	if multilib_is_native_abi; then
+		default
+	else
+		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
+			install-pkgconfigDATA install-uuidincHEADERS \
+			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
+			install-nodist_smartcolsincHEADERS install-nodist_fdiskincHEADERS
+	fi
+
+	if multilib_is_native_abi; then
+		# need the libs in /
+		gen_usr_ldscript -a blkid mount smartcols uuid
+
+		use python && python_optimize
+	fi
+}
+
+multilib_src_install_all() {
+	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
+
+	# e2fsprogs-libs didnt install .la files, and .pc work fine
+	prune_libtool_files
+}
+
+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
+}


^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/
@ 2015-09-07 14:37 Lars Wendler
  0 siblings, 0 replies; 32+ messages in thread
From: Lars Wendler @ 2015-09-07 14:37 UTC (permalink / raw
  To: gentoo-commits

commit:     37cdafdff4ec644124e502146d15634325469901
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  7 14:36:44 2015 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Sep  7 14:37:05 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=37cdafdf

sys-apps/util-linux: Removed old.

Package-Manager: portage-2.2.20.1
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 sys-apps/util-linux/Manifest                       |   5 -
 sys-apps/util-linux/files/crypto-loop.confd        |   9 --
 sys-apps/util-linux/files/crypto-loop.initd        |  70 --------
 .../files/util-linux-2.24-fix-fdisk-on-alpha.patch |  13 --
 .../files/util-linux-2.24-last-tests.patch         |  86 ----------
 .../files/util-linux-2.24-skip-last-tests.patch    |  41 -----
 .../files/util-linux-2.25.1-blkid-probe-fix.patch  |  43 -----
 sys-apps/util-linux/metadata.xml                   |   1 -
 sys-apps/util-linux/util-linux-2.24.1-r2.ebuild    | 147 -----------------
 sys-apps/util-linux/util-linux-2.24.1-r3.ebuild    | 174 --------------------
 sys-apps/util-linux/util-linux-2.24.2.ebuild       | 177 --------------------
 sys-apps/util-linux/util-linux-2.25.1-r1.ebuild    | 174 --------------------
 sys-apps/util-linux/util-linux-2.25.1.ebuild       | 173 --------------------
 sys-apps/util-linux/util-linux-2.25.2-r1.ebuild    | 177 --------------------
 sys-apps/util-linux/util-linux-2.25.2.ebuild       | 174 --------------------
 sys-apps/util-linux/util-linux-2.26.1-r1.ebuild    | 178 ---------------------
 sys-apps/util-linux/util-linux-2.26.1.ebuild       | 177 --------------------
 sys-apps/util-linux/util-linux-2.26.ebuild         | 177 --------------------
 18 files changed, 1996 deletions(-)

diff --git a/sys-apps/util-linux/Manifest b/sys-apps/util-linux/Manifest
index ff7a239..4a7495b 100644
--- a/sys-apps/util-linux/Manifest
+++ b/sys-apps/util-linux/Manifest
@@ -1,8 +1,3 @@
-DIST util-linux-2.24.1.tar.xz 3543692 SHA256 835eb6232cfab0118ef2e4fd649de0ba9f5bd1b8cbf9a7d4d84594541dec8410 SHA512 5636e1c57bd57954518e90ff0f079810cc2927f52bb925dde556ce2744a088577f8adbc19c19b2bd079efd253406767faa44d1de5f557e024762522e647f044b WHIRLPOOL 25862a85788eb1c275c7e06f3d2be8e6a9605811665e06a4b21d1e274fc4a5e19dd03e5c52061ee5d98ce8c86ba757a7f8076683edb603ad0c43c05ab5e52a51
-DIST util-linux-2.24.2.tar.xz 3586580 SHA256 1243d6c07f1c5b38aa4c3814c81a71c24cba7dafe08942916bf216a90a460ff0 SHA512 a0c03876ef19fa09e434e3e5362fb3f3e0a254b3b39a623ac7a9a207d06afce00366792244ed0fac86931f8340c046620660f33c3444a07a12037182fc191240 WHIRLPOOL 4b8185e1832145c050a8aa0761ae017d846ed58cd7e07710e4c32bf92a8f6e530bddb56dab70c8025eddb4cafafed79e658b0aced3a190b61b508078a438a9ed
-DIST util-linux-2.25.1.tar.xz 3695172 SHA256 4701305ae22790c3a92ce48e50794fa05b7ee01f4227f419a171c100d08986e8 SHA512 a670cb4318beed0a455efb339ebea6ec7c5d672e15877e7e25cae2ec9c0795fbe4275b6c85a590467c3de92ab2f64cdcd0427c9a2a6e4c6b76f563592fb7be8d WHIRLPOOL 44c17bd3ad0b05c47bb955b934011b460c3992ea5d5b43977d2001b245820b775e16bedbaa10ff9c223d59b0809674884c76f0dc34d707864d17b49b4deaab9d
 DIST util-linux-2.25.2.tar.xz 3703644 SHA256 e0457f715b73f4a349e1acb08cb410bf0edc9a74a3f75c357070f31f70e33cd6 SHA512 cf8c5bde78f844425150c2a81bdecb87aa57bcd5cebd177a78160835627f58037fa2cfe4db26fd8f35eedb3beb499a91492a297a27d065465e2ea0c6218dc387 WHIRLPOOL dd1685f2e694bf3de95acc3ba3170d231426c18c3395a867c815bbd3ab5ee0f07567b49d0ae083ce669c89db711e39fd2b990bc7321985ec2279d78816ec5258
-DIST util-linux-2.26.1.tar.xz 3859740 SHA256 22dc1c957262e2cbdfb4d524a63d5cd4f219d3ac9b5eab570fc771076799bb6e SHA512 9321793b3fa219ffc46e10639b9e45094c3cae6c48be4b80e652d9768f40dcedbd49342e17345b61c85f46540a7bd93d118a8e226c315e112bb2e959e2855ad9 WHIRLPOOL 1bcd5c3c14c278ec3b10535546706b6830a283fd72e7d1933101bf1ab6ec5b03d9ff7a53745d34a97cbb4d7d1b0e35852bb841be4b53a55c2aca07624bf06fbd
 DIST util-linux-2.26.2.tar.xz 3863868 SHA256 0e29bda142528a48a0a953c39ff63093651a4809042e1790fbd6aa8663fd9666 SHA512 1cb8e2f32882b3f496d31c250a45cfb61bedb79f7a2802b358c23134d4257fa9bc9cde8888cfa1aaba12109f82b93345c6dc0bec2d11629ffa084f2a4476a91b WHIRLPOOL 699ff057f9930fe53f44090817c64ffe089345e7aba4c836e18cd3d2088881add805640b0e41b8d60bc08e3632be919025417feb9c2ddda454c87821a59122ed
-DIST util-linux-2.26.tar.xz 3847960 SHA256 a23c6f39dea0ed215ccd589509ffc7bb6f706f6e1a04760f493fb0fd7e93c489 SHA512 af07d49a433fce683da7bdf9aea5693ad108aa16166e0147716175bd779fe5090029617dd7db153bc0f5efcf7bdd377761a616efd4cca90a87bf317132ede88c WHIRLPOOL 4f7c9463bfe1523819671824de26e051c496c86884ca34b25208762179345c799fe61e566228ebfcbca2f2b63163539e37b06e438a58f562cf7b53f954564150
 DIST util-linux-2.27.tar.xz 3968872 SHA256 fcbf04e3ef8377fc8369af7f9afee341c5eef9b02dd5a7ce71532d0957e86dc7 SHA512 06ee17f4801fd3e35fb4cf3717722ea3f709e3dd9f9153510c399742a5cfca341e3a3a400d35a091b74f0de3636e62c7a14b7dd91d63482b7b98b1991aa6fa3c WHIRLPOOL da19c56dfe424c59bc982096f08c02d864718f030bbad79661968f1da972ea10e0eacaa2477cda45ec9a3c688d220740ca2c8823918dae5139a943f6c9d8e2a4

diff --git a/sys-apps/util-linux/files/crypto-loop.confd b/sys-apps/util-linux/files/crypto-loop.confd
deleted file mode 100644
index 6a88434..0000000
--- a/sys-apps/util-linux/files/crypto-loop.confd
+++ /dev/null
@@ -1,9 +0,0 @@
-# /etc/conf.d/crypto-loop: Configuration file for /etc/init.d/crypto-loop
-
-# More info can be found in the init.d script
-
-# Specify loopback configurations here.  The format of this file is
-# shown in the following commented-out example.  One line per loopback
-# configuration.  For possible hash values, see `man hashalot`.
-
-# loop=/dev/loop0 hash='' cipher=serpent keysize=256 device=/dev/system/test other=''

diff --git a/sys-apps/util-linux/files/crypto-loop.initd b/sys-apps/util-linux/files/crypto-loop.initd
deleted file mode 100644
index 2f6470d..0000000
--- a/sys-apps/util-linux/files/crypto-loop.initd
+++ /dev/null
@@ -1,70 +0,0 @@
-#!/sbin/runscript
-# Copyright 1999-2005 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-depend() {
-	if [ -x /etc/init.d/root ]; then
-		need root
-	else
-		need checkroot
-	fi
-	need modules
-	before localmount
-}
-
-start() {
-	local status="0"
-
-	ebegin "Starting crypto loop devices"
-
-	if [ -e /etc/conf.d/crypto-loop ] ; then
-		egrep "^loop" /etc/conf.d/crypto-loop | \
-		while read loopline ; do
-			eval ${loopline}
-
-			local configured=$(awk -v MOUNT="${device}" \
-				'($2 == MOUNT) { print "yes" }' /proc/mounts)
-
-			if [ "${configured}" != "yes" ] ; then
-				einfo "  Loop ${loop} on device ${device} (cipher ${cipher}, key size ${keysize}): "
-
-				if [ -n "${hash}" ] ; then
-					/usr/sbin/hashalot -n ${keysize} ${hash} </dev/tty|\
-					/sbin/losetup -p 0 -e ${cipher}-${keysize} ${loop} ${device} ${other}
-				else
-					/sbin/losetup -e ${cipher}-${keysize} ${loop} ${device} ${other}
-				fi
-
-				if [ $? -ne 0 ] ; then
-					ewarn "Failure configuring ${loop}.  Skipping."
-					status=1
-				fi
-			else
-				ewarn "  Loop ${loop} on device ${device} are already configured"
-			fi
-		done
-	fi
-	ewend ${status} "Failed to start some loop devices."
-
-	# We do not fail if some loop devices did not start ...
-	return 0
-}
-
-stop() {
-	local status="0"
-	for loop in $(ls /dev/loop[0-9] 2>/dev/null) ; do
-		losetup ${loop} > /dev/null 2>&1
-		if [ $? -eq 0 ] ; then
-			( umount ${loop} || swapoff "${loop}" ) >/dev/null 2>&1
-			if ! /sbin/losetup -d ${loop} > /dev/null 2>&1; then
-				ewarn "Failure deconfiguring ${loop}."
-				status=1
-			fi
-		fi
-	done
-	ewend ${status}
-}
-
-
-# vim:ts=4

diff --git a/sys-apps/util-linux/files/util-linux-2.24-fix-fdisk-on-alpha.patch b/sys-apps/util-linux/files/util-linux-2.24-fix-fdisk-on-alpha.patch
deleted file mode 100644
index f01a55d..0000000
--- a/sys-apps/util-linux/files/util-linux-2.24-fix-fdisk-on-alpha.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- libfdisk/src/bsd.c.orig	2014-06-11 10:15:47.000000000 +0200
-+++ libfdisk/src/bsd.c	2014-06-11 10:16:18.000000000 +0200
-@@ -787,8 +787,10 @@
- 	case 0x06: /* DOS 16-bit >=32M */
- 	case 0xe1: /* DOS access       */
- 	case 0xe3: /* DOS R/O          */
-+#if !defined (__alpha__)
- 	case 0xf2: /* DOS secondary    */
- 		return BSD_FS_MSDOS;
-+#endif
- 	case 0x07: /* OS/2 HPFS        */
- 		return BSD_FS_HPFS;
- 	default:

diff --git a/sys-apps/util-linux/files/util-linux-2.24-last-tests.patch b/sys-apps/util-linux/files/util-linux-2.24-last-tests.patch
deleted file mode 100644
index 77cf478..0000000
--- a/sys-apps/util-linux/files/util-linux-2.24-last-tests.patch
+++ /dev/null
@@ -1,86 +0,0 @@
-https://bugs.gentoo.org/501408
-
-From 3c76515abd2e80dc1da03041eb868b8c1e596fb1 Mon Sep 17 00:00:00 2001
-From: Sami Kerola <kerolasa@iki.fi>
-Date: Sun, 16 Feb 2014 23:54:18 +0000
-Subject: [PATCH] tests: align last.1 with recent phantom detection
-
-None existing account is not still-logged-in but gone mysteriously,
-assuming wtmp logout markup is missing.
-
-Signed-off-by: Sami Kerola <kerolasa@iki.fi>
----
- tests/expected/last/last | 16 ++++++++--------
- 1 file changed, 8 insertions(+), 8 deletions(-)
-
-diff --git a/tests/expected/last/last b/tests/expected/last/last
-index 2ff5cc1..dfb140b 100644
---- a/tests/expected/last/last
-+++ b/tests/expected/last/last
-@@ -1,6 +1,6 @@
- ~~~ basic output ~~~
- rick     long         never-gonna-logo Thu Jan  1 00:00 - 03:14 (24855+03:14)
--torvalds linux        hobby            Mon Aug 26 00:57   still logged in
-+torvalds linux        hobby            Mon Aug 26 00:57    gone - no logout
- reboot   system boot  system-name      Wed Aug 28 18:00   still running
- reboot   system boot  system-name      Wed Aug 28 16:00 - 17:00  (01:00)
- IPv4     root         dns-server       Wed Aug 28 13:00 - 14:00  (01:00)
-@@ -17,7 +17,7 @@ accounti foo          nine             Wed Aug 28 03:00 - 04:00  (01:00)
- wtmp begins Wed Aug 28 03:00:00 2013
- ~~~ include system ~~~
- rick     long         never-gonna-logo Thu Jan  1 00:00 - 03:14 (24855+03:14)
--torvalds linux        hobby            Mon Aug 26 00:57   still logged in
-+torvalds linux        hobby            Mon Aug 26 00:57    gone - no logout
- reboot   system boot  system-name      Wed Aug 28 18:00   still running
- shutdown system down  system-name      Wed Aug 28 17:00 - 18:00  (01:00)
- reboot   system boot  system-name      Wed Aug 28 16:00 - 17:00  (01:00)
-@@ -47,16 +47,16 @@ IPv4     root         Wed Aug 28 13:00 - 14:00  (01:00)     a.root-servers.net
- 
- wtmp begins Wed Aug 28 03:00:00 2013
- ~~~ show ip ~~~
--torvalds linux        128.214.205.14   Mon Aug 26 00:57   still logged in
-+torvalds linux        128.214.205.14   Mon Aug 26 00:57    gone - no logout
- 
- wtmp begins Wed Aug 28 03:00:00 2013
- ~~~ no host ~~~
--torvalds linux        Mon Aug 26 00:57   still logged in
-+torvalds linux        Mon Aug 26 00:57    gone - no logout
- 
- wtmp begins Wed Aug 28 03:00:00 2013
- ~~~ full times ~~~
- rick     long         never-gonna-logo Thu Jan  1 00:00:00 1970 - Tue Jan 19 03:14:07 2038 (24855+03:14)
--torvalds linux        hobby            Mon Aug 26 00:57:08 1991   still logged in
-+torvalds linux        hobby            Mon Aug 26 00:57:08 1991   gone - no logout
- reboot   system boot  system-name      Wed Aug 28 18:00:00 2013   still running
- reboot   system boot  system-name      Wed Aug 28 16:00:00 2013 - Wed Aug 28 17:00:00 2013  (01:00)
- IPv4     root         dns-server       Wed Aug 28 13:00:00 2013 - Wed Aug 28 14:00:00 2013  (01:00)
-@@ -73,7 +73,7 @@ accounti foo          nine             Wed Aug 28 03:00:00 2013 - Wed Aug 28 04:
- wtmp begins Wed Aug 28 03:00:00 2013
- ~~~ no time ~~~
- rick     long         never-gonna-logo   (24855+03:14)
--torvalds linux        hobby              logged in
-+torvalds linux        hobby              - no logout
- reboot   system boot  system-name        running
- reboot   system boot  system-name         (01:00)
- IPv4     root         dns-server          (01:00)
-@@ -90,7 +90,7 @@ accounti foo          nine                (01:00)
- wtmp begins Wed Aug 28 03:00:00 2013
- ~~~ iso-8601 time ~~~
- rick     long         never-gonna-logout 1970-01-01T00:00:00+0000 - 2038-01-19T03:14:07+0000 (24855+03:14)
--torvalds linux        hobby            1991-08-26T00:57:08+0000   still logged in
-+torvalds linux        hobby            1991-08-26T00:57:08+0000   gone - no logout
- reboot   system boot  system-name      2013-08-28T18:00:00+0000   still running
- reboot   system boot  system-name      2013-08-28T16:00:00+0000 - 2013-08-28T17:00:00+0000  (01:00)
- IPv4     root         dns-server       2013-08-28T13:00:00+0000 - 2013-08-28T14:00:00+0000  (01:00)
-@@ -115,7 +115,7 @@ accounti foo          nine             Wed Aug 28 03:00 - 04:00  (01:00)
- wtmp begins Wed Aug 28 03:00:00 2013
- ~~~ present ~~~
- rick     long         never-gonna-logo Thu Jan  1 00:00 - 03:14 (24855+03:14)
--torvalds linux        hobby            Mon Aug 26 00:57   still logged in
-+torvalds linux        hobby            Mon Aug 26 00:57    gone - no logout
- runlevel foo          one              Wed Aug 28 11:00 - 12:00  (01:00)
- 
- wtmp begins Wed Aug 28 03:00:00 2013
--- 
-1.8.5.5
-

diff --git a/sys-apps/util-linux/files/util-linux-2.24-skip-last-tests.patch b/sys-apps/util-linux/files/util-linux-2.24-skip-last-tests.patch
deleted file mode 100644
index 5148053..0000000
--- a/sys-apps/util-linux/files/util-linux-2.24-skip-last-tests.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 6b55612b9ad1193a042f3c3a1d9216e63b0d2907 Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@gentoo.org>
-Date: Sun, 22 Dec 2013 18:17:15 -0500
-Subject: [PATCH] tests: last: skip when last is not enabled
-
-References: https://bugs.gentoo.org/489794
-Signed-off-by: Mike Frysinger <vapier@gentoo.org>
----
- tests/ts/last/ipv6 | 2 ++
- tests/ts/last/last | 2 ++
- 2 files changed, 4 insertions(+)
-
-diff --git a/tests/ts/last/ipv6 b/tests/ts/last/ipv6
-index 8e2b01e..60b72bd 100755
---- a/tests/ts/last/ipv6
-+++ b/tests/ts/last/ipv6
-@@ -18,6 +18,8 @@ TS_DESC="last ipv6"
- . $TS_TOPDIR/functions.sh
- ts_init "$*"
- 
-+[ -x $TS_CMD_LAST ] || ts_skip "last not enabled"
-+
- export LANG=C
- export TZ=GMT
- 
-diff --git a/tests/ts/last/last b/tests/ts/last/last
-index 4ad38cb..83b7f8d 100755
---- a/tests/ts/last/last
-+++ b/tests/ts/last/last
-@@ -18,6 +18,8 @@ TS_DESC="last"
- . $TS_TOPDIR/functions.sh
- ts_init "$*"
- 
-+[ -x $TS_CMD_LAST ] || ts_skip "last not enabled"
-+
- export LANG=C
- export TZ=GMT
- 
--- 
-1.8.4.3
-

diff --git a/sys-apps/util-linux/files/util-linux-2.25.1-blkid-probe-fix.patch b/sys-apps/util-linux/files/util-linux-2.25.1-blkid-probe-fix.patch
deleted file mode 100644
index f994a74..0000000
--- a/sys-apps/util-linux/files/util-linux-2.25.1-blkid-probe-fix.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 00749bc366fe6106df918660a92a388cfff4f35f Mon Sep 17 00:00:00 2001
-From: Karel Zak <kzak@redhat.com>
-Date: Tue, 7 Oct 2014 12:44:34 +0200
-Subject: [PATCH] libblkid: zeroize errno on blkid_probe_get_buffer() success
-
-Since 37f4060225df0591ab8e1dd676dbc8115d900d4f prober functions are
-sensitive to errno, it seems more robust to set errno=0 with in
-blkid_probe_get_buffer() on success than set the zero on all places
-where we call blkid_probe_get_buffer().
-
-Addresses: https://github.com/karelzak/util-linux/issues/119
-Signed-off-by: Karel Zak <kzak@redhat.com>
----
- libblkid/src/probe.c | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/libblkid/src/probe.c b/libblkid/src/probe.c
-index 4fea3cc..3f7e43b 100644
---- a/libblkid/src/probe.c
-+++ b/libblkid/src/probe.c
-@@ -539,8 +539,10 @@ unsigned char *blkid_probe_get_buffer(blkid_probe pr,
- 	struct list_head *p;
- 	struct blkid_bufinfo *bf = NULL;
- 
--	if (pr->size <= 0)
-+	if (pr->size <= 0) {
-+		errno = EINVAL;
- 		return NULL;
-+	}
- 
- 	if (pr->parent &&
- 	    pr->parent->devno == pr->devno &&
-@@ -602,6 +604,7 @@ unsigned char *blkid_probe_get_buffer(blkid_probe pr,
- 		list_add_tail(&bf->bufs, &pr->buffers);
- 	}
- 
-+	errno = 0;
- 	return off ? bf->data + (off - bf->off) : bf->data;
- }
- 
--- 
-2.1.2
-

diff --git a/sys-apps/util-linux/metadata.xml b/sys-apps/util-linux/metadata.xml
index 77690bc..0424e4e 100644
--- a/sys-apps/util-linux/metadata.xml
+++ b/sys-apps/util-linux/metadata.xml
@@ -5,7 +5,6 @@
 	<use>
 		<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="cytune">build cytune for Cyclades-Z multiport serial cards</flag>
 		<flag name="fdformat">build fdformat (floppy disk format)</flag>
 		<flag name="pam">build runuser helper</flag>
 		<flag name="suid">

diff --git a/sys-apps/util-linux/util-linux-2.24.1-r2.ebuild b/sys-apps/util-linux/util-linux-2.24.1-r2.ebuild
deleted file mode 100644
index b835660..0000000
--- a/sys-apps/util-linux/util-linux-2.24.1-r2.ebuild
+++ /dev/null
@@ -1,147 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PYTHON_COMPAT=( python2_7 python3_{3,4} )
-
-inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 python-single-r1
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-2 autotools
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 m68k ~mips ~ppc ~ppc64 s390 sh ~sparc x86 ~amd64-linux ~arm-linux ~x86-linux"
-	SRC_URI="mirror://kernel/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/"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="bash-completion caps +cramfs cytune fdformat ncurses nls pam python selinux slang static-libs +suid test tty-helpers udev unicode"
-
-RDEPEND="!sys-process/schedutils
-	!sys-apps/setarch
-	!<sys-apps/sysvinit-2.88-r7
-	!sys-block/eject
-	!<sys-libs/e2fsprogs-libs-1.41.8
-	!<sys-fs/e2fsprogs-1.41.8
-	!<app-shells/bash-completion-1.3-r2
-	caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
-	pam? ( sys-libs/pam )
-	python? ( ${PYTHON_DEPS} )
-	selinux? ( sys-libs/libselinux )
-	slang? ( sys-libs/slang )
-	udev? ( virtual/udev )"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-	virtual/os-headers"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	if [[ ${PV} == 9999 ]] ; then
-		po/update-potfiles
-		eautoreconf
-	fi
-	epatch "${FILESDIR}"/${PN}-2.24-skip-last-tests.patch #491742
-	epatch "${FILESDIR}"/${PN}-2.24-last-tests.patch #501408
-	# http://marc.info/?l=util-linux-ng&m=140223032032288&w=2
-	epatch "${FILESDIR}"/${PN}-2.24-fix-fdisk-on-alpha.patch
-	find tests/ -name bigyear -delete #489794
-	elibtoolize
-}
-
-lfs_fallocate_test() {
-	# Make sure we can use fallocate with LFS #300307
-	cat <<-EOF > "${T}"/fallocate.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.c -o /dev/null >/dev/null 2>&1 \
-		|| export ac_cv_func_fallocate=no
-	rm -f "${T}"/fallocate.c
-}
-
-src_configure() {
-	lfs_fallocate_test
-	export ac_cv_header_security_pam_misc_h=$(usex pam) #485486
-	econf \
-		--docdir="/usr/share/doc/${PF}" \
-		--enable-fs-paths-extra=/usr/sbin:/bin:/usr/bin \
-		$(use_enable nls) \
-		--enable-agetty \
-		--with-bashcompletiondir="$(get_bashcompdir)" \
-		$(use_enable bash-completion) \
-		$(use_enable caps setpriv) \
-		$(use_enable cramfs) \
-		$(use_enable cytune) \
-		$(use_enable fdformat) \
-		--with-ncurses=$(usex ncurses $(usex unicode auto yes) no) \
-		--disable-kill \
-		--disable-login \
-		$(use_enable tty-helpers mesg) \
-		--disable-nologin \
-		--enable-partx \
-		$(use_with python) \
-		--enable-raw \
-		--enable-rename \
-		--disable-reset \
-		--enable-schedutils \
-		--disable-su \
-		$(use_enable tty-helpers wall) \
-		$(use_enable tty-helpers write) \
-		$(use_enable suid makeinstall-chown) \
-		$(use_enable suid makeinstall-setuid) \
-		$(use_with selinux) \
-		$(use_with slang) \
-		$(use_enable static-libs static) \
-		$(use_with udev) \
-		$(tc-has-tls || echo --disable-tls)
-}
-
-src_test() {
-	emake check
-}
-
-src_install() {
-	default
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	use python && python_optimize
-
-	# need the libs in /
-	gen_usr_ldscript -a blkid mount uuid
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	prune_libtool_files
-}
-
-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
-}

diff --git a/sys-apps/util-linux/util-linux-2.24.1-r3.ebuild b/sys-apps/util-linux/util-linux-2.24.1-r3.ebuild
deleted file mode 100644
index 8c25f44..0000000
--- a/sys-apps/util-linux/util-linux-2.24.1-r3.ebuild
+++ /dev/null
@@ -1,174 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PYTHON_COMPAT=( python2_7 python3_{3,4} )
-
-inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
-	python-single-r1 multilib-minimal
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-2 autotools
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-linux ~arm-linux ~x86-linux"
-	SRC_URI="mirror://kernel/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/"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="bash-completion caps +cramfs cytune fdformat ncurses nls pam python selinux slang static-libs +suid test tty-helpers udev unicode"
-
-RDEPEND="!sys-process/schedutils
-	!sys-apps/setarch
-	!<sys-apps/sysvinit-2.88-r7
-	!sys-block/eject
-	!<sys-libs/e2fsprogs-libs-1.41.8
-	!<sys-fs/e2fsprogs-1.41.8
-	!<app-shells/bash-completion-1.3-r2
-	caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
-	pam? ( sys-libs/pam )
-	python? ( ${PYTHON_DEPS} )
-	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
-	slang? ( sys-libs/slang )
-	udev? ( virtual/udev )
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
-	)"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-	virtual/os-headers"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	if [[ ${PV} == 9999 ]] ; then
-		po/update-potfiles
-		eautoreconf
-	fi
-	epatch "${FILESDIR}"/${PN}-2.24-skip-last-tests.patch #491742
-	epatch "${FILESDIR}"/${PN}-2.24-last-tests.patch #501408
-	# http://thread.gmane.org/gmane.linux.utilities.util-linux-ng/9237
-	epatch "${FILESDIR}"/${PN}-2.24-fix-fdisk-on-alpha.patch
-	find tests/ -name bigyear -delete #489794
-	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
-}
-
-multilib_src_configure() {
-	lfs_fallocate_test
-	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
-	ECONF_SOURCE=${S} \
-	econf \
-		--docdir="/usr/share/doc/${PF}" \
-		--enable-fs-paths-extra=/usr/sbin:/bin:/usr/bin \
-		$(multilib_native_use_enable nls) \
-		--enable-agetty \
-		--with-bashcompletiondir="$(get_bashcompdir)" \
-		$(multilib_native_use_enable bash-completion) \
-		$(multilib_native_use_enable caps setpriv) \
-		$(multilib_native_use_enable cramfs) \
-		$(multilib_native_use_enable cytune) \
-		$(multilib_native_use_enable fdformat) \
-		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
-		--disable-kill \
-		--disable-login \
-		$(multilib_native_use_enable tty-helpers mesg) \
-		--disable-nologin \
-		--enable-partx \
-		$(multilib_native_use_with python) \
-		--enable-raw \
-		--enable-rename \
-		--disable-reset \
-		--enable-schedutils \
-		--disable-su \
-		$(multilib_native_use_enable tty-helpers wall) \
-		$(multilib_native_use_enable tty-helpers write) \
-		$(multilib_native_use_enable suid makeinstall-chown) \
-		$(multilib_native_use_enable suid makeinstall-setuid) \
-		$(use_with selinux) \
-		$(multilib_native_use_with slang) \
-		$(use_enable static-libs static) \
-		$(multilib_native_use_with udev) \
-		$(tc-has-tls || echo --disable-tls)
-}
-
-multilib_src_compile() {
-	if multilib_is_native_abi; then
-		default
-	else
-		# build libraries only
-		emake -f Makefile -f - mylibs \
-			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
-	fi
-}
-
-multilib_src_test() {
-	multilib_is_native_abi && emake check
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		default
-	else
-		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
-			install-pkgconfigDATA install-uuidincHEADERS \
-			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS
-	fi
-
-	if multilib_is_native_abi; then
-		# need the libs in /
-		gen_usr_ldscript -a blkid mount uuid
-
-		use python && python_optimize
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	prune_libtool_files
-}
-
-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
-}

diff --git a/sys-apps/util-linux/util-linux-2.24.2.ebuild b/sys-apps/util-linux/util-linux-2.24.2.ebuild
deleted file mode 100644
index 47d580b..0000000
--- a/sys-apps/util-linux/util-linux-2.24.2.ebuild
+++ /dev/null
@@ -1,177 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PYTHON_COMPAT=( python2_7 python3_{3,4} )
-
-inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
-	python-single-r1 multilib-minimal
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-2 autotools
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
-	SRC_URI="mirror://kernel/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/"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="caps +cramfs cytune fdformat ncurses nls pam python selinux slang static-libs +suid test tty-helpers udev unicode"
-
-RDEPEND="!sys-process/schedutils
-	!sys-apps/setarch
-	!<sys-apps/sysvinit-2.88-r7
-	!sys-block/eject
-	!<sys-libs/e2fsprogs-libs-1.41.8
-	!<sys-fs/e2fsprogs-1.41.8
-	!<app-shells/bash-completion-1.3-r2
-	caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
-	pam? ( sys-libs/pam )
-	python? ( ${PYTHON_DEPS} )
-	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
-	slang? ( sys-libs/slang )
-	udev? ( virtual/udev )
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
-	)"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-	virtual/os-headers"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	if [[ ${PV} == 9999 ]] ; then
-		po/update-potfiles
-		eautoreconf
-	fi
-	epatch "${FILESDIR}"/${PN}-2.24-last-tests.patch #501408
-	# http://thread.gmane.org/gmane.linux.utilities.util-linux-ng/9237
-	epatch "${FILESDIR}"/${PN}-2.24-fix-fdisk-on-alpha.patch
-	find tests/ -name bigyear -delete #489794
-	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
-}
-
-multilib_src_configure() {
-	lfs_fallocate_test
-	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
-	# We manually set --libdir to the default since on prefix, econf will set it to
-	# a value which the configure script does not recognize.  This makes it set the
-	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
-	ECONF_SOURCE=${S} \
-	econf \
-		--docdir="${EPREFIX}/usr/share/doc/${PF}" \
-		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
-		--libdir='${prefix}/'"$(get_libdir)" \
-		$(multilib_native_use_enable nls) \
-		--enable-agetty \
-		--with-bashcompletiondir="$(get_bashcompdir)" \
-		--enable-bash-completion \
-		$(multilib_native_use_enable caps setpriv) \
-		$(multilib_native_use_enable cramfs) \
-		$(multilib_native_use_enable cytune) \
-		$(multilib_native_use_enable fdformat) \
-		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
-		--disable-kill \
-		--disable-login \
-		$(multilib_native_use_enable tty-helpers mesg) \
-		--disable-nologin \
-		--enable-partx \
-		$(multilib_native_use_with python) \
-		--enable-raw \
-		--enable-rename \
-		--disable-reset \
-		--enable-schedutils \
-		--disable-su \
-		$(multilib_native_use_enable tty-helpers wall) \
-		$(multilib_native_use_enable tty-helpers write) \
-		$(multilib_native_use_enable suid makeinstall-chown) \
-		$(multilib_native_use_enable suid makeinstall-setuid) \
-		$(use_with selinux) \
-		$(multilib_native_use_with slang) \
-		$(use_enable static-libs static) \
-		$(multilib_native_use_with udev) \
-		$(tc-has-tls || echo --disable-tls)
-}
-
-multilib_src_compile() {
-	if multilib_is_native_abi; then
-		default
-	else
-		# build libraries only
-		emake -f Makefile -f - mylibs \
-			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
-	fi
-}
-
-multilib_src_test() {
-	multilib_is_native_abi && emake check
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		default
-	else
-		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
-			install-pkgconfigDATA install-uuidincHEADERS \
-			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS
-	fi
-
-	if multilib_is_native_abi; then
-		# need the libs in /
-		gen_usr_ldscript -a blkid mount uuid
-
-		use python && python_optimize
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	prune_libtool_files
-}
-
-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
-}

diff --git a/sys-apps/util-linux/util-linux-2.25.1-r1.ebuild b/sys-apps/util-linux/util-linux-2.25.1-r1.ebuild
deleted file mode 100644
index c32bfd4..0000000
--- a/sys-apps/util-linux/util-linux-2.25.1-r1.ebuild
+++ /dev/null
@@ -1,174 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PYTHON_COMPAT=( python2_7 python3_{3,4} )
-
-inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
-	python-single-r1 multilib-minimal
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-2 autotools
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
-	SRC_URI="mirror://kernel/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/"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid test tty-helpers udev unicode"
-
-RDEPEND="!sys-process/schedutils
-	!sys-apps/setarch
-	!<sys-apps/sysvinit-2.88-r7
-	!sys-block/eject
-	!<sys-libs/e2fsprogs-libs-1.41.8
-	!<sys-fs/e2fsprogs-1.41.8
-	!<app-shells/bash-completion-1.3-r2
-	caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
-	pam? ( sys-libs/pam )
-	python? ( ${PYTHON_DEPS} )
-	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
-	slang? ( sys-libs/slang )
-	udev? ( virtual/udev )
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
-	)"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-	virtual/os-headers"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	epatch "${FILESDIR}"/${P}-blkid-probe-fix.patch
-	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
-}
-
-multilib_src_configure() {
-	lfs_fallocate_test
-	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
-	# We manually set --libdir to the default since on prefix, econf will set it to
-	# a value which the configure script does not recognize.  This makes it set the
-	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
-	ECONF_SOURCE=${S} \
-	econf \
-		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
-		--libdir='${prefix}/'"$(get_libdir)" \
-		$(multilib_native_use_enable nls) \
-		--enable-agetty \
-		--with-bashcompletiondir="$(get_bashcompdir)" \
-		--enable-bash-completion \
-		$(multilib_native_use_enable caps setpriv) \
-		--disable-chfn-chsh \
-		$(multilib_native_use_enable cramfs) \
-		$(multilib_native_use_enable fdformat) \
-		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
-		--disable-kill \
-		--disable-login \
-		$(multilib_native_use_enable tty-helpers mesg) \
-		--disable-nologin \
-		--enable-partx \
-		$(multilib_native_use_with python) \
-		--enable-raw \
-		--enable-rename \
-		--disable-reset \
-		--enable-schedutils \
-		--disable-su \
-		$(multilib_native_use_enable tty-helpers wall) \
-		$(multilib_native_use_enable tty-helpers write) \
-		$(multilib_native_use_enable suid makeinstall-chown) \
-		$(multilib_native_use_enable suid makeinstall-setuid) \
-		$(use_with selinux) \
-		$(multilib_native_use_with slang) \
-		$(use_enable static-libs static) \
-		$(multilib_native_use_with udev) \
-		$(tc-has-tls || echo --disable-tls)
-}
-
-multilib_src_compile() {
-	if multilib_is_native_abi; then
-		default
-	else
-		# build libraries only
-		emake -f Makefile -f - mylibs \
-			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
-	fi
-}
-
-multilib_src_test() {
-	multilib_is_native_abi && emake check
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		default
-	else
-		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
-			install-pkgconfigDATA install-uuidincHEADERS \
-			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
-			install-nodist_smartcolsincHEADERS
-	fi
-
-	if multilib_is_native_abi; then
-		# need the libs in /
-		gen_usr_ldscript -a blkid mount smartcols uuid
-
-		use python && python_optimize
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	prune_libtool_files
-}
-
-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
-}

diff --git a/sys-apps/util-linux/util-linux-2.25.1.ebuild b/sys-apps/util-linux/util-linux-2.25.1.ebuild
deleted file mode 100644
index 5303ad0..0000000
--- a/sys-apps/util-linux/util-linux-2.25.1.ebuild
+++ /dev/null
@@ -1,173 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PYTHON_COMPAT=( python2_7 python3_{3,4} )
-
-inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
-	python-single-r1 multilib-minimal
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-2 autotools
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
-	SRC_URI="mirror://kernel/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/"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid test tty-helpers udev unicode"
-
-RDEPEND="!sys-process/schedutils
-	!sys-apps/setarch
-	!<sys-apps/sysvinit-2.88-r7
-	!sys-block/eject
-	!<sys-libs/e2fsprogs-libs-1.41.8
-	!<sys-fs/e2fsprogs-1.41.8
-	!<app-shells/bash-completion-1.3-r2
-	caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
-	pam? ( sys-libs/pam )
-	python? ( ${PYTHON_DEPS} )
-	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
-	slang? ( sys-libs/slang )
-	udev? ( virtual/udev )
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
-	)"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-	virtual/os-headers"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	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
-}
-
-multilib_src_configure() {
-	lfs_fallocate_test
-	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
-	# We manually set --libdir to the default since on prefix, econf will set it to
-	# a value which the configure script does not recognize.  This makes it set the
-	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
-	ECONF_SOURCE=${S} \
-	econf \
-		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
-		--libdir='${prefix}/'"$(get_libdir)" \
-		$(multilib_native_use_enable nls) \
-		--enable-agetty \
-		--with-bashcompletiondir="$(get_bashcompdir)" \
-		--enable-bash-completion \
-		$(multilib_native_use_enable caps setpriv) \
-		--disable-chfn-chsh \
-		$(multilib_native_use_enable cramfs) \
-		$(multilib_native_use_enable fdformat) \
-		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
-		--disable-kill \
-		--disable-login \
-		$(multilib_native_use_enable tty-helpers mesg) \
-		--disable-nologin \
-		--enable-partx \
-		$(multilib_native_use_with python) \
-		--enable-raw \
-		--enable-rename \
-		--disable-reset \
-		--enable-schedutils \
-		--disable-su \
-		$(multilib_native_use_enable tty-helpers wall) \
-		$(multilib_native_use_enable tty-helpers write) \
-		$(multilib_native_use_enable suid makeinstall-chown) \
-		$(multilib_native_use_enable suid makeinstall-setuid) \
-		$(use_with selinux) \
-		$(multilib_native_use_with slang) \
-		$(use_enable static-libs static) \
-		$(multilib_native_use_with udev) \
-		$(tc-has-tls || echo --disable-tls)
-}
-
-multilib_src_compile() {
-	if multilib_is_native_abi; then
-		default
-	else
-		# build libraries only
-		emake -f Makefile -f - mylibs \
-			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
-	fi
-}
-
-multilib_src_test() {
-	multilib_is_native_abi && emake check
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		default
-	else
-		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
-			install-pkgconfigDATA install-uuidincHEADERS \
-			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
-			install-nodist_smartcolsincHEADERS
-	fi
-
-	if multilib_is_native_abi; then
-		# need the libs in /
-		gen_usr_ldscript -a blkid mount smartcols uuid
-
-		use python && python_optimize
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	prune_libtool_files
-}
-
-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
-}

diff --git a/sys-apps/util-linux/util-linux-2.25.2-r1.ebuild b/sys-apps/util-linux/util-linux-2.25.2-r1.ebuild
deleted file mode 100644
index cbeb96a..0000000
--- a/sys-apps/util-linux/util-linux-2.25.2-r1.ebuild
+++ /dev/null
@@ -1,177 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PYTHON_COMPAT=( python2_7 python3_{3,4} )
-
-inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
-	python-single-r1 multilib-minimal systemd
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-2 autotools
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
-	SRC_URI="mirror://kernel/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/"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid systemd test tty-helpers udev unicode"
-
-RDEPEND="!sys-process/schedutils
-	!sys-apps/setarch
-	!<sys-apps/sysvinit-2.88-r7
-	!sys-block/eject
-	!<sys-libs/e2fsprogs-libs-1.41.8
-	!<sys-fs/e2fsprogs-1.41.8
-	!<app-shells/bash-completion-1.3-r2
-	caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
-	pam? ( sys-libs/pam )
-	python? ( ${PYTHON_DEPS} )
-	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
-	slang? ( sys-libs/slang )
-	systemd? ( sys-apps/systemd )
-	udev? ( virtual/udev )
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
-	)"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-	virtual/os-headers"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	epatch "${FILESDIR}"/${P}-runuser-bash-completion.patch #522288
-	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
-}
-
-multilib_src_configure() {
-	lfs_fallocate_test
-	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
-	# We manually set --libdir to the default since on prefix, econf will set it to
-	# a value which the configure script does not recognize.  This makes it set the
-	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
-	ECONF_SOURCE=${S} \
-	econf \
-		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
-		--libdir='${prefix}/'"$(get_libdir)" \
-		$(multilib_native_use_enable nls) \
-		--enable-agetty \
-		--with-bashcompletiondir="$(get_bashcompdir)" \
-		--enable-bash-completion \
-		$(multilib_native_use_enable caps setpriv) \
-		--disable-chfn-chsh \
-		$(multilib_native_use_enable cramfs) \
-		$(multilib_native_use_enable fdformat) \
-		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
-		--disable-kill \
-		--disable-login \
-		$(multilib_native_use_enable tty-helpers mesg) \
-		--disable-nologin \
-		--enable-partx \
-		$(multilib_native_use_with python) \
-		--enable-raw \
-		--enable-rename \
-		--disable-reset \
-		--enable-schedutils \
-		--disable-su \
-		$(multilib_native_use_enable tty-helpers wall) \
-		$(multilib_native_use_enable tty-helpers write) \
-		$(multilib_native_use_enable suid makeinstall-chown) \
-		$(multilib_native_use_enable suid makeinstall-setuid) \
-		$(use_with selinux) \
-		$(multilib_native_use_with slang) \
-		$(use_enable static-libs static) \
-		$(multilib_native_use_with systemd) \
-		--with-systemdsystemunitdir=$(multilib_native_usex systemd "$(systemd_get_unitdir)" "no") \
-		$(multilib_native_use_with udev) \
-		$(tc-has-tls || echo --disable-tls)
-}
-
-multilib_src_compile() {
-	if multilib_is_native_abi; then
-		default
-	else
-		# build libraries only
-		emake -f Makefile -f - mylibs \
-			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
-	fi
-}
-
-multilib_src_test() {
-	multilib_is_native_abi && emake check
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		default
-	else
-		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
-			install-pkgconfigDATA install-uuidincHEADERS \
-			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
-			install-nodist_smartcolsincHEADERS
-	fi
-
-	if multilib_is_native_abi; then
-		# need the libs in /
-		gen_usr_ldscript -a blkid mount smartcols uuid
-
-		use python && python_optimize
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	prune_libtool_files
-}
-
-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
-}

diff --git a/sys-apps/util-linux/util-linux-2.25.2.ebuild b/sys-apps/util-linux/util-linux-2.25.2.ebuild
deleted file mode 100644
index 01f6f78..0000000
--- a/sys-apps/util-linux/util-linux-2.25.2.ebuild
+++ /dev/null
@@ -1,174 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PYTHON_COMPAT=( python2_7 python3_{3,4} )
-
-inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
-	python-single-r1 multilib-minimal
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-2 autotools
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
-	SRC_URI="mirror://kernel/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/"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid test tty-helpers udev unicode"
-
-RDEPEND="!sys-process/schedutils
-	!sys-apps/setarch
-	!<sys-apps/sysvinit-2.88-r7
-	!sys-block/eject
-	!<sys-libs/e2fsprogs-libs-1.41.8
-	!<sys-fs/e2fsprogs-1.41.8
-	!<app-shells/bash-completion-1.3-r2
-	caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
-	pam? ( sys-libs/pam )
-	python? ( ${PYTHON_DEPS} )
-	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
-	slang? ( sys-libs/slang )
-	udev? ( virtual/udev )
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
-	)"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-	virtual/os-headers"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	epatch "${FILESDIR}"/${P}-runuser-bash-completion.patch #522288
-	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
-}
-
-multilib_src_configure() {
-	lfs_fallocate_test
-	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
-	# We manually set --libdir to the default since on prefix, econf will set it to
-	# a value which the configure script does not recognize.  This makes it set the
-	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
-	ECONF_SOURCE=${S} \
-	econf \
-		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
-		--libdir='${prefix}/'"$(get_libdir)" \
-		$(multilib_native_use_enable nls) \
-		--enable-agetty \
-		--with-bashcompletiondir="$(get_bashcompdir)" \
-		--enable-bash-completion \
-		$(multilib_native_use_enable caps setpriv) \
-		--disable-chfn-chsh \
-		$(multilib_native_use_enable cramfs) \
-		$(multilib_native_use_enable fdformat) \
-		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
-		--disable-kill \
-		--disable-login \
-		$(multilib_native_use_enable tty-helpers mesg) \
-		--disable-nologin \
-		--enable-partx \
-		$(multilib_native_use_with python) \
-		--enable-raw \
-		--enable-rename \
-		--disable-reset \
-		--enable-schedutils \
-		--disable-su \
-		$(multilib_native_use_enable tty-helpers wall) \
-		$(multilib_native_use_enable tty-helpers write) \
-		$(multilib_native_use_enable suid makeinstall-chown) \
-		$(multilib_native_use_enable suid makeinstall-setuid) \
-		$(use_with selinux) \
-		$(multilib_native_use_with slang) \
-		$(use_enable static-libs static) \
-		$(multilib_native_use_with udev) \
-		$(tc-has-tls || echo --disable-tls)
-}
-
-multilib_src_compile() {
-	if multilib_is_native_abi; then
-		default
-	else
-		# build libraries only
-		emake -f Makefile -f - mylibs \
-			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
-	fi
-}
-
-multilib_src_test() {
-	multilib_is_native_abi && emake check
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		default
-	else
-		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
-			install-pkgconfigDATA install-uuidincHEADERS \
-			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
-			install-nodist_smartcolsincHEADERS
-	fi
-
-	if multilib_is_native_abi; then
-		# need the libs in /
-		gen_usr_ldscript -a blkid mount smartcols uuid
-
-		use python && python_optimize
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	prune_libtool_files
-}
-
-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
-}

diff --git a/sys-apps/util-linux/util-linux-2.26.1-r1.ebuild b/sys-apps/util-linux/util-linux-2.26.1-r1.ebuild
deleted file mode 100644
index 367cbdf..0000000
--- a/sys-apps/util-linux/util-linux-2.26.1-r1.ebuild
+++ /dev/null
@@ -1,178 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="5"
-
-PYTHON_COMPAT=( python2_7 python3_{3,4} )
-
-inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
-	python-single-r1 multilib-minimal systemd
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-2 autotools
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
-	SRC_URI="mirror://kernel/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/"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid systemd test tty-helpers udev unicode"
-
-RDEPEND="!sys-process/schedutils
-	!sys-apps/setarch
-	!<sys-apps/sysvinit-2.88-r7
-	!sys-block/eject
-	!<sys-libs/e2fsprogs-libs-1.41.8
-	!<sys-fs/e2fsprogs-1.41.8
-	!<app-shells/bash-completion-1.3-r2
-	caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2:0= )
-	pam? ( sys-libs/pam )
-	python? ( ${PYTHON_DEPS} )
-	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
-	slang? ( sys-libs/slang )
-	systemd? ( sys-apps/systemd )
-	udev? ( virtual/libudev )
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20150406-r2
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
-	)"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-	virtual/os-headers"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	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
-}
-
-multilib_src_configure() {
-	lfs_fallocate_test
-	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
-	# We manually set --libdir to the default since on prefix, econf will set it to
-	# a value which the configure script does not recognize.  This makes it set the
-	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
-	ECONF_SOURCE=${S} \
-	econf \
-		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
-		--libdir='${prefix}/'"$(get_libdir)" \
-		--docdir='${datarootdir}'/doc/${PF} \
-		$(multilib_native_use_enable nls) \
-		--enable-agetty \
-		--with-bashcompletiondir="$(get_bashcompdir)" \
-		--enable-bash-completion \
-		$(multilib_native_use_enable caps setpriv) \
-		--disable-chfn-chsh \
-		$(multilib_native_use_enable cramfs) \
-		$(multilib_native_use_enable fdformat) \
-		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
-		--disable-kill \
-		--disable-login \
-		$(multilib_native_use_enable tty-helpers mesg) \
-		--disable-nologin \
-		--enable-partx \
-		$(multilib_native_use_with python) \
-		--enable-raw \
-		--enable-rename \
-		--disable-reset \
-		--enable-schedutils \
-		--disable-su \
-		$(multilib_native_use_enable tty-helpers wall) \
-		$(multilib_native_use_enable tty-helpers write) \
-		$(multilib_native_use_enable suid makeinstall-chown) \
-		$(multilib_native_use_enable suid makeinstall-setuid) \
-		$(use_with selinux) \
-		$(multilib_native_use_with slang) \
-		$(use_enable static-libs static) \
-		$(multilib_native_use_with systemd) \
-		--with-systemdsystemunitdir=$(multilib_native_usex systemd "$(systemd_get_unitdir)" "no") \
-		$(multilib_native_use_with udev) \
-		$(tc-has-tls || echo --disable-tls)
-}
-
-multilib_src_compile() {
-	if multilib_is_native_abi; then
-		default
-	else
-		# build libraries only
-		emake -f Makefile -f - mylibs \
-			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
-	fi
-}
-
-multilib_src_test() {
-	multilib_is_native_abi && emake check
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		default
-	else
-		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
-			install-pkgconfigDATA install-uuidincHEADERS \
-			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
-			install-nodist_smartcolsincHEADERS install-nodist_fdiskincHEADERS
-	fi
-
-	if multilib_is_native_abi; then
-		# need the libs in /
-		gen_usr_ldscript -a blkid mount smartcols uuid
-
-		use python && python_optimize
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	prune_libtool_files
-}
-
-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
-}

diff --git a/sys-apps/util-linux/util-linux-2.26.1.ebuild b/sys-apps/util-linux/util-linux-2.26.1.ebuild
deleted file mode 100644
index 2320483..0000000
--- a/sys-apps/util-linux/util-linux-2.26.1.ebuild
+++ /dev/null
@@ -1,177 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PYTHON_COMPAT=( python2_7 python3_{3,4} )
-
-inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
-	python-single-r1 multilib-minimal systemd
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-2 autotools
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
-	SRC_URI="mirror://kernel/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/"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid systemd test tty-helpers udev unicode"
-
-RDEPEND="!sys-process/schedutils
-	!sys-apps/setarch
-	!<sys-apps/sysvinit-2.88-r7
-	!sys-block/eject
-	!<sys-libs/e2fsprogs-libs-1.41.8
-	!<sys-fs/e2fsprogs-1.41.8
-	!<app-shells/bash-completion-1.3-r2
-	caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
-	pam? ( sys-libs/pam )
-	python? ( ${PYTHON_DEPS} )
-	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
-	slang? ( sys-libs/slang )
-	systemd? ( sys-apps/systemd )
-	udev? ( virtual/libudev )
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
-	)"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-	virtual/os-headers"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	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
-}
-
-multilib_src_configure() {
-	lfs_fallocate_test
-	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
-	# We manually set --libdir to the default since on prefix, econf will set it to
-	# a value which the configure script does not recognize.  This makes it set the
-	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
-	ECONF_SOURCE=${S} \
-	econf \
-		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
-		--libdir='${prefix}/'"$(get_libdir)" \
-		--docdir='${datarootdir}'/doc/${PF} \
-		$(multilib_native_use_enable nls) \
-		--enable-agetty \
-		--with-bashcompletiondir="$(get_bashcompdir)" \
-		--enable-bash-completion \
-		$(multilib_native_use_enable caps setpriv) \
-		--disable-chfn-chsh \
-		$(multilib_native_use_enable cramfs) \
-		$(multilib_native_use_enable fdformat) \
-		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
-		--disable-kill \
-		--disable-login \
-		$(multilib_native_use_enable tty-helpers mesg) \
-		--disable-nologin \
-		--enable-partx \
-		$(multilib_native_use_with python) \
-		--enable-raw \
-		--enable-rename \
-		--disable-reset \
-		--enable-schedutils \
-		--disable-su \
-		$(multilib_native_use_enable tty-helpers wall) \
-		$(multilib_native_use_enable tty-helpers write) \
-		$(multilib_native_use_enable suid makeinstall-chown) \
-		$(multilib_native_use_enable suid makeinstall-setuid) \
-		$(use_with selinux) \
-		$(multilib_native_use_with slang) \
-		$(use_enable static-libs static) \
-		$(multilib_native_use_with systemd) \
-		--with-systemdsystemunitdir=$(multilib_native_usex systemd "$(systemd_get_unitdir)" "no") \
-		$(multilib_native_use_with udev) \
-		$(tc-has-tls || echo --disable-tls)
-}
-
-multilib_src_compile() {
-	if multilib_is_native_abi; then
-		default
-	else
-		# build libraries only
-		emake -f Makefile -f - mylibs \
-			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
-	fi
-}
-
-multilib_src_test() {
-	multilib_is_native_abi && emake check
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		default
-	else
-		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
-			install-pkgconfigDATA install-uuidincHEADERS \
-			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
-			install-nodist_smartcolsincHEADERS install-nodist_fdiskincHEADERS
-	fi
-
-	if multilib_is_native_abi; then
-		# need the libs in /
-		gen_usr_ldscript -a blkid mount smartcols uuid
-
-		use python && python_optimize
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	prune_libtool_files
-}
-
-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
-}

diff --git a/sys-apps/util-linux/util-linux-2.26.ebuild b/sys-apps/util-linux/util-linux-2.26.ebuild
deleted file mode 100644
index 2320483..0000000
--- a/sys-apps/util-linux/util-linux-2.26.ebuild
+++ /dev/null
@@ -1,177 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PYTHON_COMPAT=( python2_7 python3_{3,4} )
-
-inherit eutils toolchain-funcs libtool flag-o-matic bash-completion-r1 \
-	python-single-r1 multilib-minimal systemd
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-
-if [[ ${PV} == 9999 ]] ; then
-	inherit git-2 autotools
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
-else
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
-	SRC_URI="mirror://kernel/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/"
-
-LICENSE="GPL-2 LGPL-2.1 BSD-4 MIT public-domain"
-SLOT="0"
-IUSE="caps +cramfs fdformat ncurses nls pam python selinux slang static-libs +suid systemd test tty-helpers udev unicode"
-
-RDEPEND="!sys-process/schedutils
-	!sys-apps/setarch
-	!<sys-apps/sysvinit-2.88-r7
-	!sys-block/eject
-	!<sys-libs/e2fsprogs-libs-1.41.8
-	!<sys-fs/e2fsprogs-1.41.8
-	!<app-shells/bash-completion-1.3-r2
-	caps? ( sys-libs/libcap-ng )
-	cramfs? ( sys-libs/zlib )
-	ncurses? ( >=sys-libs/ncurses-5.2-r2 )
-	pam? ( sys-libs/pam )
-	python? ( ${PYTHON_DEPS} )
-	selinux? ( >=sys-libs/libselinux-2.2.2-r4[${MULTILIB_USEDEP}] )
-	slang? ( sys-libs/slang )
-	systemd? ( sys-apps/systemd )
-	udev? ( virtual/libudev )
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20140406-r2
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32]
-	)"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	nls? ( sys-devel/gettext )
-	test? ( sys-devel/bc )
-	virtual/os-headers"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	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
-}
-
-multilib_src_configure() {
-	lfs_fallocate_test
-	export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam) #485486
-	# We manually set --libdir to the default since on prefix, econf will set it to
-	# a value which the configure script does not recognize.  This makes it set the
-	# usrlib_execdir to a bad value. bug #518898#c2, fixed upstream for >2.25
-	ECONF_SOURCE=${S} \
-	econf \
-		--enable-fs-paths-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin" \
-		--libdir='${prefix}/'"$(get_libdir)" \
-		--docdir='${datarootdir}'/doc/${PF} \
-		$(multilib_native_use_enable nls) \
-		--enable-agetty \
-		--with-bashcompletiondir="$(get_bashcompdir)" \
-		--enable-bash-completion \
-		$(multilib_native_use_enable caps setpriv) \
-		--disable-chfn-chsh \
-		$(multilib_native_use_enable cramfs) \
-		$(multilib_native_use_enable fdformat) \
-		--with-ncurses=$(multilib_native_usex ncurses $(usex unicode auto yes) no) \
-		--disable-kill \
-		--disable-login \
-		$(multilib_native_use_enable tty-helpers mesg) \
-		--disable-nologin \
-		--enable-partx \
-		$(multilib_native_use_with python) \
-		--enable-raw \
-		--enable-rename \
-		--disable-reset \
-		--enable-schedutils \
-		--disable-su \
-		$(multilib_native_use_enable tty-helpers wall) \
-		$(multilib_native_use_enable tty-helpers write) \
-		$(multilib_native_use_enable suid makeinstall-chown) \
-		$(multilib_native_use_enable suid makeinstall-setuid) \
-		$(use_with selinux) \
-		$(multilib_native_use_with slang) \
-		$(use_enable static-libs static) \
-		$(multilib_native_use_with systemd) \
-		--with-systemdsystemunitdir=$(multilib_native_usex systemd "$(systemd_get_unitdir)" "no") \
-		$(multilib_native_use_with udev) \
-		$(tc-has-tls || echo --disable-tls)
-}
-
-multilib_src_compile() {
-	if multilib_is_native_abi; then
-		default
-	else
-		# build libraries only
-		emake -f Makefile -f - mylibs \
-			<<< 'mylibs: $(usrlib_exec_LTLIBRARIES) $(pkgconfig_DATA)'
-	fi
-}
-
-multilib_src_test() {
-	multilib_is_native_abi && emake check
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		default
-	else
-		emake DESTDIR="${D}" install-usrlib_execLTLIBRARIES \
-			install-pkgconfigDATA install-uuidincHEADERS \
-			install-nodist_blkidincHEADERS install-nodist_mountincHEADERS \
-			install-nodist_smartcolsincHEADERS install-nodist_fdiskincHEADERS
-	fi
-
-	if multilib_is_native_abi; then
-		# need the libs in /
-		gen_usr_ldscript -a blkid mount smartcols uuid
-
-		use python && python_optimize
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc AUTHORS NEWS README* Documentation/{TODO,*.txt,releases/*}
-
-	# e2fsprogs-libs didnt install .la files, and .pc work fine
-	prune_libtool_files
-}
-
-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
-}


^ permalink raw reply related	[flat|nested] 32+ messages in thread

end of thread, other threads:[~2024-05-20 15:06 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-05-23 12:14 [gentoo-commits] repo/gentoo:master commit in: sys-apps/util-linux/, sys-apps/util-linux/files/ David Seifert
  -- strict thread matches above, loose matches on Subject: below --
2024-05-20 15:06 Mike Gilbert
2024-05-11 17:19 Mike Gilbert
2024-04-04  1:17 Sam James
2024-03-28  4:55 Sam James
2024-03-22  0:12 Matt Turner
2023-12-28  2:57 Sam James
2023-05-26  7:24 Sam James
2023-05-23  4:20 Sam James
2023-05-23  3:14 Sam James
2023-03-19  6:07 Sam James
2023-02-09  3:54 Sam James
2022-01-24 16:02 Sam James
2021-10-03 11:28 David Seifert
2021-08-16 14:02 Lars Wendler
2021-08-11 12:30 Lars Wendler
2021-07-30 12:21 Marek Szuba
2021-07-10 21:31 Lars Wendler
2021-06-02 21:14 Georgy Yakovlev
2020-12-22 14:43 Andreas K. Hüttel
2020-11-16 17:36 Lars Wendler
2020-03-25 14:14 Thomas Deutschmann
2019-05-31  0:58 Lars Wendler
2018-12-29 17:45 Mikle Kolyada
2018-07-13 16:41 Patrick McLean
2018-04-10 19:29 Thomas Deutschmann
2017-12-17 15:48 Lars Wendler
2017-06-09  1:19 Lars Wendler
2017-01-21  0:36 Lars Wendler
2015-09-07 20:02 Lars Wendler
2015-09-07 18:30 Michał Górny
2015-09-07 14:37 Lars Wendler

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox