# Template file for 'fwupd'
pkgname=fwupd
version=1.8.8
revision=1
build_style=meson
build_helper="gir"
configure_args="-Dsupported_build=enabled -Dconsolekit=disabled
 -Dsystemd=disabled -Delogind=enabled -Dintrospection=enabled
 -Defi_binary=false"
hostmakedepends="dejavu-fonts-ttf gnutls-tools pkg-config gcab gi-docgen vala
 glib-devel polkit gettext pango python3-gobject python3-Pillow
 protobuf-c-devel"
makedepends="libxmlb-devel cairo-devel colord-devel libarchive-devel
 gnutls-devel gpgme-devel json-glib-devel libgusb-devel polkit-devel
 sqlite-devel gcab-devel pango-devel elogind-devel
 tpm2-tss-devel libjcat-devel libcurl-devel protobuf-c-devel"
depends="dbus udisks2"
checkdepends="umockdev"
conf_files="
 /etc/fwupd/*.conf
 /etc/fwupd/remotes.d/*.conf"
short_desc="Daemon to allow session software to update firmware"
maintainer="Érico Nogueira <ericonr@disroot.org>"
license="LGPL-2.1-or-later"
homepage="https://github.com/fwupd/fwupd"
distfiles="https://github.com/fwupd/fwupd/archive/${version}.tar.gz"
checksum=8a8f90680c1598407380ad57c15898bd48a903f2a74f3a97469a8e68b18f1fc1
replaces="fwupdate>=0"

case "$XBPS_TARGET_MACHINE" in
	x86_64*|i686*)
		_have_uefi=yes
		_plugin_msr=yes
		_plugin_dell=yes
		;;
	arm*|aarch64*)
		_have_uefi=yes;;
esac

if [ -z "$_plugin_msr" ]; then
	configure_args+=" -Dplugin_msr=false"
fi

if [ "$_plugin_dell" ]; then
	makedepends+=" libsmbios-devel"
else
	configure_args+=" -Dplugin_dell=false"
fi

if [ -n "$_have_uefi" ]; then
	makedepends+=" libefivar-devel fwupd-efi"
	depends+=" fwupd-efi"
else
	configure_args+=" -Dplugin_redfish=false -Dplugin_uefi_capsule=false -Dplugin_uefi_pk=false"
fi

pre_build() {
	# help gi-docgen find gi files on cross
	if [ -n "$CROSS_BUILD" ]; then
		export XDG_DATA_DIRS=/usr/$XBPS_CROSS_TRIPLET/usr/share/
	fi
}

post_install() {
	vcompletion data/bash-completion/fwupdagent bash fwupdagent
	vcompletion data/bash-completion/fwupdmgr bash fwupdmgr
	vcompletion data/bash-completion/fwupdtool bash fwupdtool
}

fwupd-devel_package() {
	depends="${sourcepkg}>=${version}_${revision} libglib-devel libcurl-devel
	 libjcat-devel libgusb-devel libxmlb-devel libarchive-devel gcab-devel
	 json-glib-devel"
	short_desc+=" - development files"
	pkg_install() {
		vmove usr/include
		vmove usr/lib/pkgconfig
		vmove "usr/lib/*.so"
		vmove usr/share/gir-1.0
		vmove usr/share/vala
		vmove usr/share/doc
	}
}
