void-packages/srcpkgs/dracut/template
q66 194de7601d dracut: add patch to fix a potential segfault
Without this patches dracut may segfault on certain platforms
with certain kernel configurations. In this case, it segfaults
on ppc64 big endian. Bump rev because it may happen anywhere.

Closes: #11384 [via git-merge-pr]
2019-04-29 23:57:17 +02:00

60 lines
1.7 KiB
Bash

# Template file for 'dracut'
pkgname=dracut
version=048
revision=5
build_style=configure
configure_args="--prefix=/usr --sysconfdir=/etc"
conf_files="/etc/dracut.conf"
hostmakedepends="asciidoc pkg-config"
makedepends="libkmod-devel"
depends="bash coreutils cpio psmisc"
short_desc="Low-level tool for generating an initramfs/initrd image"
maintainer="Juan RP <xtraeme@voidlinux.org>"
license="GPL-2.0-or-later, LGPL-2.0-or-later"
homepage="http://www.kernel.org/pub/linux/utils/boot/dracut/dracut.html"
distfiles="${KERNEL_SITE}/utils/boot/${pkgname}/${pkgname}-${version}.tar.xz"
checksum=0750d6b71b7f95d8dfa338404372bfeb0e5c30e7fe2a21ba55c6dbf3dbcf6a79
make_dirs="
/etc/dracut.conf.d 0755 root root
/usr/lib/dracut/dracut.conf.d 0755 root root"
case "$XBPS_TARGET_MACHINE" in
*-musl) # Add musl-fts implementation
makedepends+=" musl-fts-devel"
;;
esac
do_build() {
case "$XBPS_TARGET_MACHINE" in
*-musl) make ${makejobs} LDLIBS="${XBPS_CROSS_BASE}/usr/lib/libfts.a";;
esac
}
do_check() {
# Requires the distfile to be a git repository
:
}
post_install() {
# kernel hooks.
vinstall ${FILESDIR}/kernel-hook-postinst 755 etc/kernel.d/post-install 20-dracut
vinstall ${FILESDIR}/kernel-hook-postrm 755 etc/kernel.d/post-remove 20-dracut
# We don't need the systemd stuff.
rm -rf ${DESTDIR}/usr/lib/dracut/modules.d/*systemd*
rm -f ${DESTDIR}/usr/share/man/man8/*.service.*
rm -rf ${DESTDIR}/usr/lib/kernel
}
dracut-network_package() {
depends="dhclient dracut-${version}_${revision}"
short_desc+=" - network modules"
archs=noarch
pkg_install() {
for f in 40network 90livenet 95fcoe 95iscsi \
95nbd 95nfs 95zfcp 95znet; do
vmove usr/lib/dracut/modules.d/${f}
done
}
}