# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=gummiboot
pkgver=48.1
pkgrel=10
pkgdesc="Simple EFI Boot Manager"
url="https://cgit.freedesktop.org/gummiboot/"
arch="x86 x86_64 aarch64"
license="LGPL-2.0-or-later"
depends="$pkgname-efistub=$pkgver-r$pkgrel"
makedepends="util-linux-dev gnu-efi-dev autoconf automake docbook-xsl libxslt"
subpackages="$pkgname-doc $pkgname-efistub"
#source="https://cgit.freedesktop.org/gummiboot/snapshot/gummiboot-$pkgver.tar.gz"
source="https://dev.alpinelinux.org/archive/gummiboot/gummiboot-$pkgver.tar.gz
	gummiboot-aarch64-support.patch
	sysmacros.patch
	remove-conflicts.patch
	fix-non-secureboot-mode.patch
	fix-waitforkey.patch
	"
options="!check"

prepare() {
	default_prepare
	./autogen.sh
}

build() {
	./configure \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=/usr
	# new gnu-efi has stddef.h include which relies on it coming from syste.,
	# this uses -nostdinc and doesn't add it. these cflags come last, so it still
	# shouldn't shadow the efi incdir.
	make -j1 EFI_CFLAGS="$CFLAGS -I/usr/include -std=gnu89"
}

package() {
	make install DESTDIR="$pkgdir"
}

# NOTE: It doesn't provide "efistub" provider because it's not compatible with
#  efi-mkuki or ukify.
efistub() {
	pkgdesc="Linux UEFI stub from the gummiboot project"
	depends=

	amove usr/lib/gummiboot/*.efi.stub
}

sha512sums="
a536db10ee384fa2cd38d22bd43f87215501c38471612a1d30986748d645d970e67b3f3d38fc9d6b53fe8532ec18283690f88d77b056dd737db5efb50bf63293  gummiboot-48.1.tar.gz
6acc971c59b917616d75f5935859d109efff14c55b8fb26075ee89b6e4141f1c91708c1fc77f0acb2239d9030f4b350eaf1dac59ebb37e7a9ae5682eb52687cf  gummiboot-aarch64-support.patch
b16d5f68429acfd7ff7942ef6091455035645cb592b9f4b1424daff3245c584bf61c30a7d5eb236530c46226d67ba48f6496f6ae00de6c94a7c5e37f5bdc4831  sysmacros.patch
2f48957253afdb05d1ec401a80383bc582543822fda2c2a30b8a9137481b6911194ac34c7da323414dd00234cd51b8f7803788360e747d325e192b71f9171f72  remove-conflicts.patch
cf411c3ecf5f6d975533a85c3fa0f0cf5ee1bb4e899680179d7a3103ccf618c68b0746faac0a83497f1e150f691a26399fc73e5e644b03954e4bcc02c07702b1  fix-non-secureboot-mode.patch
d07c3e0ea4eaed0396e13d5327ac282681d1667333d29fa420ffd81f81c341ef85c1d8ce621873d63310a7d3f9d691c8f70a3e52b0227aeaaadd7943e4ff3b9c  fix-waitforkey.patch
"
