maintainer=""
pkgname=linux-htc-flounder
pkgver=6.0.0
pkgrel=7
pkgdesc="Google Nexus 9 kernel fork"
arch="aarch64"
_carch="arm64"
_flavor="htc-flounder"
url="https://kernel.org"
license="GPL-2.0-only"
options="!strip !check !tracedeps pmb:cross-native
	pmb:kconfigcheck-nftables pmb:kconfigcheck-zram
	pmb:kconfigcheck-containers pmb:kconfigcheck-waydroid
"
makedepends="
	bash
	bc
	bison
	clang
	devicepkg-dev
	elfutils-dev
	findutils
	flex
	gmp-dev
	gzip
	linux-headers
	lld
	llvm
	openssl-dev
	perl
	sed
	xz
"

# Source
_repository="linux"
_commit="1af7ece0542ef888433623a572ed8e19ca5e956a"
_config="config-$_flavor.$arch"
source="
	$pkgname-$_commit.tar.gz::https://github.com/TuxThePenguin0/$_repository/archive/$_commit.tar.gz
	$_config
"
builddir="$srcdir/$_repository-$_commit"
_outdir="out"

prepare() {
	default_prepare
	. downstreamkernel_prepare
}

build() {
	unset LDFLAGS

	# V=1: workaround for pma#1990
	make O="$_outdir" ARCH="$_carch" LLVM=1 LLVM_IAS=1 \
		KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-postmarketOS" V=1
}

package() {
	downstreamkernel_package "$builddir" "$pkgdir" "$_carch" "$_flavor" "$_outdir"

	make modules_install dtbs_install \
		LLVM=1 \
		LLVM_IAS=1 \
		O="$_outdir" ARCH="$_carch" \
		INSTALL_MOD_STRIP=1 \
		INSTALL_MOD_PATH="$pkgdir" \
		INSTALL_DTBS_PATH="$pkgdir/boot/dtbs"

	# Flounder requires a gzip compressed kernel
	gzip "$pkgdir"/boot/vmlinuz
	mv "$pkgdir"/boot/vmlinuz.gz "$pkgdir"/boot/vmlinuz
}

sha512sums="
ee712d770cc863a6acff52ee32c5009657480864fcd748f0ccc7afb9edba912d727e56bd1d484bd391c5f3d0fed0d063ec8fca36af80c88572bcf85a6f00522e  linux-htc-flounder-1af7ece0542ef888433623a572ed8e19ca5e956a.tar.gz
2862f537195da1dfc9ac9d36526e8aecc0183ac1bceec2905ef5663dd8daf048b4341282fcb005b60b1aa25718136ce5f3a0f6b2a49261df65322cf5d59dbee6  config-htc-flounder.aarch64
"
