# Template file for 'systemd-boot-efistub'
pkgname=systemd-boot-efistub
version=255.3
revision=1
build_style=meson
configure_args="-Defi=true -Dman=enabled -Dbootloader=enabled
 -Dsbat-distro=void -Dsbat-distro-summary=Void -Dsbat-distro-pkgname=${pkgname}
 -Dsbat-distro-version="${version}_${revision}"
 -Dsbat-distro-url=https://github.com/void-linux/void-packages/issues

 -Dacl=disabled -Dkmod=disabled -Dselinux=disabled -Dsysusers=false -Dtmpfiles=false
 -Dadm-group=false -Danalyze=false -Dapparmor=disabled -Daudit=disabled
 -Dbacklight=false -Dbinfmt=false -Dbpf-framework=disabled -Dbzip2=disabled
 -Dcoredump=false -Ddbus=disabled -Delfutils=disabled -Denvironment-d=false
 -Dfdisk=disabled -Dgcrypt=disabled -Dglib=disabled -Dgshadow=false -Dgnutls=disabled
 -Dhibernate=false -Dhostnamed=false -Didn=false -Dima=false -Dinitrd=false
 -Dfirstboot=false -Dldconfig=false -Dlibcryptsetup=disabled -Dlibcurl=disabled
 -Dlibfido2=disabled -Dlibidn=disabled -Dlibidn2=disabled -Dlibiptc=disabled -Dlocaled=false
 -Dlogind=false -Dlz4=disabled -Dmachined=false -Dmicrohttpd=disabled -Dnetworkd=false
 -Dnscd=false -Dnss-myhostname=false -Dnss-resolve=disabled -Dnss-systemd=false
 -Doomd=false -Dopenssl=disabled -Dp11kit=disabled -Dpam=disabled -Dpcre2=disabled
 -Dpolkit=disabled -Dportabled=false -Dpstore=false -Dpwquality=disabled
 -Drandomseed=false -Dresolve=false -Drfkill=false -Dseccomp=disabled -Dsmack=false
 -Dsysext=false -Dtimedated=false -Dtimesyncd=false -Dtpm=false -Dqrencode=disabled
 -Dquotacheck=false -Duserdb=false -Dutmp=false -Dvconsole=false -Dwheel-group=false
 -Dxdg-autostart=false -Dxkbcommon=disabled -Dxz=disabled -Dzlib=disabled -Dzstd=disabled
 -Dtests=false -Dkernel-install=false -Dlink-boot-shared=false -Dstandalone-binaries=true"
# most of these aren't needed for what we're building but it's easier than patching
hostmakedepends="pkg-config gperf python3-Jinja2 python3-pyelftools libxslt docbook-xsl"
makedepends="libcap-devel libmount-devel"
short_desc="UEFI stub loader from systemd-boot"
maintainer="classabbyamp <void@placeviolette.net>"
license="LGPL-2.1-or-later"
homepage="https://www.freedesktop.org/wiki/Software/systemd/systemd-boot/"
distfiles="https://github.com/systemd/systemd-stable/archive/refs/tags/v${version}.tar.gz"
checksum=27807c65f969d0e0e44629dee8379e1e2c30e6c5e84be0389438c4ab1b225000
make_check=no  # missing printf.h

if [ "${XBPS_TARGET_LIBC}" = glibc ]; then
	makedepends+=" libxcrypt-devel"
fi

case "${XBPS_TARGET_MACHINE}" in
	x86_64*)  _efi_arch="x64"     ;;
	i686*)    _efi_arch="ia32"    ;;
	aarch64*) _efi_arch="aa64"    ;;
	arm*)     _efi_arch="arm"     ;;
	riscv64*) _efi_arch="riscv64" ;;
	*) broken="unknown efi architecture" ;;
esac

_bins=(ukify)
_mans=(man/ukify.1 man/systemd-stub.7)
_efis=("src/boot/efi/linux${_efi_arch}.efi.stub")
make_build_target="${_bins[*]} ${_mans[*]} ${_efis[*]}"

do_install() {
	for b in "${_bins[@]}"; do
		vbin "build/$b"
	done

	for m in build/man/*.[0-9]; do
		vman "$m"
	done

	for e in "${_efis[@]}"; do
		vinstall "build/$e" 644 usr/lib/systemd/boot/efi
	done
}

ukify_package() {
	short_desc="Unified Kernel Image creation tool from systemd-boot"
	depends="python3-pefile"
	pkg_install() {
		vmove usr/bin/ukify
		vmove usr/share/man/man1/ukify.1
	}
}
