This is a rework of 66062de198
(util-linux: compile with eudev,
2019-10-30)
In order to support this command for unpriviledge users:
lsblk -f
util-linux needs to be compile `--with-udev`.
However, eudev itself depends on `libblkid-devel` for building.
Break this dependency cycle by:
- compile `util-linux` `--without-udev` first, only keep its library,
this will be the `util-linux-libs` meta package
- compile eudev against that `util-linux` (`--without-udev`)
- compile util-linux binary against eudev, discard its libs
78 lines
2.3 KiB
Bash
78 lines
2.3 KiB
Bash
# Template file for 'util-linux'
|
|
# Keep this package sync with util-linux-libs
|
|
pkgname=util-linux
|
|
version=2.35.1
|
|
revision=2
|
|
hostmakedepends="automake bison gettext-devel libtool pkg-config xz"
|
|
makedepends="libcap-ng-devel pam-devel readline-devel zlib-devel
|
|
eudev-libudev-devel"
|
|
depends="util-linux-libs-${version}_${revision}"
|
|
checkdepends="ncurses" # Some tests require terminfo-entries
|
|
short_desc="Miscellaneous linux utilities"
|
|
maintainer="Enno Boland <gottox@voidlinux.org>"
|
|
license="GPL-2.0-or-later"
|
|
homepage="https://www.kernel.org/pub/linux/utils/util-linux/"
|
|
distfiles="${KERNEL_SITE}/utils/${pkgname}/v2.35/${pkgname}-${version}.tar.xz"
|
|
checksum=d9de3edd287366cd908e77677514b9387b22bc7b88f45b83e1922c3597f1d7f9
|
|
|
|
# Create uuidd system account for uuidd.
|
|
system_accounts="_uuidd"
|
|
_uuidd_homedir="/var/empty"
|
|
conf_files="/etc/pam.d/*"
|
|
provides="eject-${version}_1 rfkill-${version}_1"
|
|
replaces="rfkill>=0"
|
|
|
|
# XXX musl needs this for switch_root(8).
|
|
CFLAGS="-D_DIRENT_HAVE_D_TYPE"
|
|
|
|
alternatives="
|
|
logger:logger:/usr/bin/${pkgname}-logger
|
|
logger:logger.1:/usr/share/man/man1/${pkgname}-logger.1
|
|
"
|
|
|
|
pre_configure() {
|
|
NOCONFIGURE=1 ./autogen.sh
|
|
}
|
|
|
|
do_configure() {
|
|
./configure ${configure_args} \
|
|
--exec-prefix=/usr --libdir=/usr/lib \
|
|
--bindir=/usr/bin --sbindir=/usr/bin \
|
|
--enable-libuuid --disable-makeinstall-chown \
|
|
--enable-libblkid --enable-fsck --disable-rpath \
|
|
--enable-fs-paths-extra=/usr/sbin:/usr/bin \
|
|
--enable-vipw --enable-newgrp --enable-chfn-chsh \
|
|
--with-systemdsystemunitdir=no \
|
|
--with-udev --without-python \
|
|
--enable-write
|
|
}
|
|
|
|
do_build() {
|
|
make ${makejobs}
|
|
}
|
|
|
|
do_check() {
|
|
make -k check
|
|
}
|
|
|
|
do_install() {
|
|
make usrsbin_execdir=/usr/bin DESTDIR=${DESTDIR} install
|
|
|
|
# Correct perms for newgrp, chfn, chsh, wall and write.
|
|
chmod u+s $DESTDIR/usr/bin/{newgrp,chsh,chfn}
|
|
|
|
mv ${DESTDIR}/usr/bin/{logger,${pkgname}-logger}
|
|
mv ${DESTDIR}/usr/share/man/man1/{logger,${pkgname}-logger}.1
|
|
# pam login utils.
|
|
vinstall $FILESDIR/login.pam 644 etc/pam.d login
|
|
vinstall $FILESDIR/su.pam 644 etc/pam.d su
|
|
vinstall $FILESDIR/su.pam 644 etc/pam.d su-l
|
|
vinstall $FILESDIR/common.pam 644 etc/pam.d chfn
|
|
vinstall $FILESDIR/common.pam 644 etc/pam.d chsh
|
|
|
|
vsv uuidd
|
|
|
|
rm -rf "$DESTDIR/usr/include"
|
|
rm -rf "$DESTDIR/usr/lib"
|
|
rm -rf "$DESTDIR/usr/share/man/man3"
|
|
}
|