summaryrefslogtreecommitdiff
path: root/sys-apps/util-linux
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2025-01-23 06:45:02 +0000
committerV3n3RiX <venerix@koprulu.sector>2025-01-23 06:45:02 +0000
commitc78477d222e1ceb9516a9bbbadbba0b5c1ce11db (patch)
tree5187cbad4740387edb2c1cca0942036a0fdccd88 /sys-apps/util-linux
parent564687d289b862b8b079569a45a2d39d7b8c3585 (diff)
gentoo auto-resync : 23:01:2025 - 06:45:02next
Diffstat (limited to 'sys-apps/util-linux')
-rw-r--r--sys-apps/util-linux/Manifest2
-rw-r--r--sys-apps/util-linux/util-linux-9999.ebuild270
2 files changed, 129 insertions, 143 deletions
diff --git a/sys-apps/util-linux/Manifest b/sys-apps/util-linux/Manifest
index 7dfea09b32ee..66431f4095ba 100644
--- a/sys-apps/util-linux/Manifest
+++ b/sys-apps/util-linux/Manifest
@@ -8,5 +8,5 @@ DIST util-linux-2.40.4.tar.sign 833 BLAKE2B 7ed5fe555bc5fe11e99081190e73d0784e91
DIST util-linux-2.40.4.tar.xz 8848216 BLAKE2B 37c095d0ab97d54dd5a35160dd4d7d3ac683c19c799d57dac3a2e850a824160470e8654fbc77752cad9a9b1198cd1aa6594e8fa66f498c653c8a9f34ef0203e8 SHA512 0024955056ba7b4c54040a917f9919f49692e57ba6d42d17a6c29c1eefe88bf48b1214a545072b71c468829a63a8f15237f49733e9127c134e11126d1e435124
EBUILD util-linux-2.40.2.ebuild 11840 BLAKE2B 17e67c38a3c97d14a93f2b707f9c0fdc9636ae405cfa07147fe24e13b9fe1a7187d317907b0535637a5708609ca7235d325aa9ae473911d7a55724edc98ead8b SHA512 8c084819d7072f660d703d7707544032f16c7de6e20eb00ddd8fc8f35adaeed9f9812cb9269685cab2feafbb838383a917348e3950f32793619f2142a8425eee
EBUILD util-linux-2.40.4.ebuild 11848 BLAKE2B b882e0b2875a9dddebbb79fa284ba00d90e873b69d82c9e6ec6590057025bd0715c1b6aae0af6eda94f4439d3cb2755996876a3aa48ddb8cd8e5df8e49a5dc96 SHA512 022b938eee51773d5ce855e226559c8292c656463e0216eb1bf727cc7b7be4ac649e9d18e0b6b761295d079f6892969c409ac6178e32d33bfc3665d6ea0f208e
-EBUILD util-linux-9999.ebuild 11848 BLAKE2B e5cd0282f73810dff2d7abccd14262ddb23b99b7d1afd1e8ecce9f31b4eb943595f7a8bb29479baa79b2e49103f712b1ae74a4ee13d811e93f144ceeecbfa1cc SHA512 e99ce93e1548ab5389ac63ea087dd8994d6c1bd0d7391f25d33d809ac7c0770231b1372d55dc1e1662461955fb24c2d72542f8f5cd102779fc9d8e2ff774f8d8
+EBUILD util-linux-9999.ebuild 11371 BLAKE2B 7d32da5167e58a0c7b7dfca709c6a914698dd79f4f141768a76d3649af970174b39709fe1f13d23e1d8d22ce4ddce303c36871bff7e68bc1c5e9abef163a9884 SHA512 2f67a129faf46917456454be8840ded807dbd37cb9666c96ce1920268c5b400799bd75f0f743c0d36b774152cc5cfb52ecaed2c71bae3bc887305fa83a3b3f46
MISC metadata.xml 1600 BLAKE2B c36342513e86655c4e4bfee627d9b516d4dc008abce3a7397d6cf3fb65f562bb58bcdc5b9d7daa801da01c77d19415b0dc6bf3407c5cca7d51327bb3689f94f6 SHA512 56b041dcbcc2c048a642bb8b44927cc0bed40de1c531f6445feaf0a87673fa19efffa3a5dabed5178b427d1fe5fdf41c2f7b8c0386f9adf1545c5ff9fa30169b
diff --git a/sys-apps/util-linux/util-linux-9999.ebuild b/sys-apps/util-linux/util-linux-9999.ebuild
index 199d340e51aa..2d18de7bfe90 100644
--- a/sys-apps/util-linux/util-linux-9999.ebuild
+++ b/sys-apps/util-linux/util-linux-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -6,8 +6,7 @@ EAPI=8
PYTHON_COMPAT=( python3_{10..13} )
TMPFILES_OPTIONAL=1
-inherit toolchain-funcs libtool flag-o-matic bash-completion-r1 \
- pam python-r1 multilib-minimal multiprocessing systemd tmpfiles
+inherit pam python-r1 meson-multilib tmpfiles toolchain-funcs
MY_PV="${PV/_/-}"
MY_P="${PN}-${MY_PV}"
@@ -17,7 +16,7 @@ HOMEPAGE="https://www.kernel.org/pub/linux/utils/util-linux/ https://github.com/
if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
- inherit autotools git-r3
+ inherit git-r3
else
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/karelzak.asc
inherit verify-sig
@@ -141,6 +140,15 @@ src_prepare() {
lsfd/mkfds-inotify
lsfd/mkfds-symlink
lsfd/mkfds-rw-character-device
+ lsns/filter
+ findmnt/df-options
+ findmnt/target
+ findmnt/outputs
+ findmnt/filterQ
+ findmnt/filter
+ misc/mountpoint
+ lsblk/lsblk
+ lslocks/lslocks
# Fails with network-sandbox at least in nspawn
lsfd/option-inet
utmp/last-ipv6
@@ -151,6 +159,14 @@ src_prepare() {
# Permission issues on /dev/random
lsfd/mkfds-eventpoll
lsfd/column-xmode
+
+ # bashism
+ kill/decode
+
+ # Format changes?
+ lslogins/checkuser
+ misc/swaplabel
+ misc/setarch
)
# debug prints confuse the tests which look for a diff
@@ -188,175 +204,148 @@ src_prepare() {
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
+ local emesonargs=(
+ -Dauto_features=disabled
+ -Dbuild-python=enabled
+ -Dpython="${EPYTHON}"
+
+ # XXX: The 'check' target doesn't get created with
+ # -Dauto_features=disabled, but there's no Python-specific
+ # tests anyway, so it's not a big deal.
+ # See https://github.com/util-linux/util-linux/pull/3351 for
+ # an incomplete fix.
+ #$(meson_use test program-tests)
+
+ -Dbuild-libblkid=enabled
+ -Dbuild-libmount=enabled
)
mkdir "${BUILD_DIR}" || die
pushd "${BUILD_DIR}" >/dev/null || die
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+ meson_src_configure
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 emesonargs=(
+ -Dbuild-python=disabled
+ -Dfs-search-path-extra="${EPREFIX}/usr/sbin:${EPREFIX}/bin:${EPREFIX}/usr/bin"
+ -Duse-tls=$(tc-has-tls && echo true || echo false)
- 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)
- $(multilib_native_use_enable uuidd)
+ $(meson_use test program-tests)
+
+ $(meson_native_use_feature audit)
+ $(meson_native_use_feature readline)
+ $(meson_native_use_feature slang)
+ $(meson_native_use_feature magic)
+ $(meson_feature unicode widechar)
+ $(meson_native_use_feature uuidd build-uuidd)
+
+ $(meson_feature nls)
+ $(meson_feature selinux)
+ $(meson_feature ncurses tinfo)
+ -Ddefault_library=$(multilib_native_usex static-libs both shared)
# TODO: Wire this up (bug #931118)
- --without-econf
+ -Deconf=disabled
# TODO: Wire this up (bug #931297)
- # TODO: investigate build failure w/ 2.40.1_rc1
- --disable-liblastlog2
- --disable-pam-lastlog2
+ -Dbuild-liblastlog2=disabled
+ -Dbuild-pam-lastlog2=disabled
+
+ # Provided by sys-apps/shadow
+ -Dbuild-chfn-chsh=disabled
+ -Dbuild-login=disabled
+ -Dbuild-newgrp=disabled
+ -Dbuild-nologin=disabled
+ -Dbuild-vipw=disabled
+
+ -Dbuild-pylibmount=disabled
+ -Dbuild-raw=disabled
+
+ $(meson_native_enabled build-agetty)
+ $(meson_native_enabled build-bash-completion)
+ $(meson_native_enabled build-line)
+ $(meson_native_enabled build-partx)
+ $(meson_native_enabled build-rename)
+ $(meson_native_enabled build-rfkill)
+ $(meson_native_enabled build-schedutils)
+
+ $(meson_native_use_feature caps build-setpriv)
+ $(meson_native_use_feature cramfs build-cramfs)
+ $(meson_native_use_feature fdformat build-fdformat)
+ $(meson_native_use_feature hardlink build-hardlink)
+ $(meson_native_use_feature kill build-kill)
+ $(meson_native_use_feature logger build-logger)
+ $(meson_native_use_feature ncurses build-pg)
+ $(meson_native_use_feature su build-su)
+ $(meson_native_use_feature tty-helpers build-mesg)
+ $(meson_native_use_feature tty-helpers build-wall)
+ $(meson_native_use_feature tty-helpers build-write)
+ $(meson_native_use_feature cryptsetup)
+
+ # Libraries
+ -Dbuild-libuuid=enabled
+ -Dbuild-libblkid=enabled
+ -Dbuild-libsmartcols=enabled
+ -Dbuild-libfdisk=enabled
+ -Dbuild-libmount=enabled
+
+ # TODO: Support uuidd for non-native libuuid (do we want this still?)
+ #$(use_enable uuidd libuuid-force-uuidd)
)
+ # TODO: udev (which seems to be controlled by just the systemd option right now?)
if use build ; then
- myeconfargs+=(
- --without-systemd
- --without-udev
+ emesonargs+=(
+ -Dsystemd=disabled
)
else
- myeconfargs+=(
- $(multilib_native_use_with systemd)
- $(multilib_native_use_with udev)
+ emesonargs+=(
+ $(meson_native_use_feature systemd)
)
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)"
- --with-tmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d
- $(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
-
- # Support uuidd for non-native libuuid
- $(use_enable uuidd libuuid-force-uuidd)
+ local native_file="${T}"/meson.${CHOST}.${ABI}.ini.local
+ cat >> ${native_file} <<-EOF || die
+ [binaries]
+ asciidoctor='asciidoctor-falseified'
+ EOF
+ # TODO: Verify this does the right thing for releases (may need to
+ # manually install).
+ if [[ ${PV} != *9999 ]] ; then
+ # Upstream is shipping pre-generated man-pages for releases
+ emesonargs+=(
+ --native-file "${native_file}"
)
fi
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+ # TODO: check pam automagic (bug #485486, bug #545042)
+ #export ac_cv_header_security_pam_misc_h=$(multilib_native_usex pam)
+ #export ac_cv_header_security_pam_appl_h=$(multilib_native_usex pam)
+ #
+ # TODO: check librtas automagic to avoid automagic dependency on ppc*
+ #export ac_cv_lib_rtas_rtas_get_sysparm=$(usex rtas)
+
+ meson_src_configure
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
+ meson_src_compile
popd >/dev/null || die
}
multilib_src_compile() {
- emake all
+ meson_src_compile
if multilib_is_native_abi && use python ; then
python_foreach_impl python_compile
@@ -365,12 +354,14 @@ multilib_src_compile() {
python_test() {
pushd "${BUILD_DIR}" >/dev/null || die
- emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
+ # XXX: See python_configure
+ #eninja check
popd >/dev/null || die
}
multilib_src_test() {
- emake check TS_OPTS="--parallel=$(makeopts_jobs) --nonroot"
+ eninja check
+
if multilib_is_native_abi && use python ; then
python_foreach_impl python_test
fi
@@ -378,7 +369,7 @@ multilib_src_test() {
python_install() {
pushd "${BUILD_DIR}" >/dev/null || die
- emake DESTDIR="${D}" install
+ meson_src_install
python_optimize
popd >/dev/null || die
}
@@ -388,9 +379,7 @@ multilib_src_install() {
python_foreach_impl python_install
fi
- # This needs to be called AFTER python_install call, bug #689190
- # XXX: -j1 as temporary workaround for bug #931301
- emake DESTDIR="${D}" install -j1
+ meson_src_install
}
multilib_src_install_all() {
@@ -399,9 +388,6 @@ multilib_src_install_all() {
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