# Reference: <https://postmarketos.org/vendorkernel>
# Kernel config based on: kernel/arch/arm/configs/fp1_defconfig

pkgname="linux-fairphone-fp1"
pkgver=3.4.5
pkgrel=3
pkgdesc="Fairphone 1 kernel fork"
arch="armv7"
_carch="arm"
_flavor="fairphone-fp1"
url="https://kernel.org"
license="GPL-2.0-only"
options="!strip !check !tracedeps"
makedepends="perl sed installkernel bash gmp-dev bc linux-headers elfutils-dev devicepkg-dev grep coreutils mtk-mkimage gcc6"

# Compiler: GCC 6 (doesn't boot when compiled with newer versions)
if [ "${CC:0:5}" != "gcc6-" ]; then
	CC="gcc6-$CC"
	HOSTCC="gcc6-gcc"
	CROSS_COMPILE="gcc6-$CROSS_COMPILE"
fi

# Source
_repository="android_kernel_fairphone_FP1"
_commit="328160cf6ddec4ad417cdf648b61d26cc09f9e73"
_config="config-${_flavor}.${arch}"
source="
	$pkgname-$_commit.tar.gz::https://github.com/z3ntu/${_repository}/archive/${_commit}.tar.gz
	$_config
"
builddir="$srcdir/${_repository}-${_commit}"

prepare() {
	default_prepare
	downstreamkernel_prepare "$srcdir" "$builddir"/kernel "$_config" "$_carch" "$HOSTCC"
}

build() {
	cd "$builddir"/kernel
	unset LDFLAGS
	TARGET_BUILD_VARIANT=user TARGET_PRODUCT=ahong89_wet_jb2 \
		make ARCH="$_carch" CC="${CC:-gcc}" \
		KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-postmarketOS"
}

package() {
	# kernel.release
	install -D "$builddir/kernel/include/config/kernel.release" \
		"$pkgdir/usr/share/kernel/$_flavor/kernel.release"

	cd "$builddir/kernel/arch/$_carch/boot"
	# Add mediatek header to zImage
	mtk-mkimage KERNEL zImage zImage-mtk
	# Install modified zImage
	install -Dm644 zImage-mtk "$pkgdir/boot/vmlinuz-$_flavor"
}

sha512sums="9ab967c0635dc5b3dca457725d25b44cfc391cb8fb5b9417fe5d6636131aecdf36575375f6151496d5269aaaf14cf15a4580aaee6a4699f0644822af66efba06  linux-fairphone-fp1-328160cf6ddec4ad417cdf648b61d26cc09f9e73.tar.gz
425d550de5aca702e269b30f2e4e9104757ade36bc9a307c023089dcb14e294a37a720070b39eb42b4ffbab4154624d40f2c883f624abc99cf08ac9670027222  config-fairphone-fp1.armv7"
