# Reference: <https://postmarketos.org/devicepkg>
# Contributor: Luca Weiss <luca@z3ntu.xyz>
pkgname="device-fairphone-fp2"
pkgdesc="Fairphone 2"
pkgver=2
pkgrel=11
url="https://postmarketos.org"
license="MIT"
arch="armv7"
options="!check !archcheck"
depends="postmarketos-base mkbootimg"
makedepends="devicepkg-dev"
source="deviceinfo
	FP2.conf
	hifi"
subpackages="
	$pkgname-kernel-downstream:kernel_downstream
	$pkgname-kernel-mainline:kernel_mainline
	$pkgname-nonfree-firmware:nonfree_firmware
	$pkgname-downstream-firmware:downstream_firmware
	$pkgname-mainline-firmware:mainline_firmware
	$pkgname-alsa
"

build() {
	devicepkg_build $startdir $pkgname
}

package() {
	devicepkg_package $startdir $pkgname
}

kernel_downstream() {
	pkgdesc="Downstream kernel"
	depends="linux-fairphone-fp2 mesa-dri-swrast ofono"
	devicepkg_subpackage_kernel $startdir $pkgname $subpkgname
}

kernel_mainline() {
	pkgdesc="Mainline kernel"
	depends="linux-postmarketos-qcom-msm8974 mesa-dri-freedreno"
	devicepkg_subpackage_kernel $startdir $pkgname $subpkgname
}

nonfree_firmware() {
	pkgdesc="Firmware for WiFi, Audio, etc."
	depends="firmware-fairphone-fp2-adsp firmware-fairphone-fp2-modem firmware-fairphone-fp2-wcnss"
	mkdir "$subpkgdir"
}

downstream_firmware() {
	pkgdesc="Firmware support packages for downstream kernel"
	depends="$pkgname-alsa adsp-audio msm-modem-downstream wcnss-wlan"
	install_if="$pkgname-kernel-downstream $pkgname-nonfree-firmware"
	mkdir "$subpkgdir"
}

mainline_firmware() {
	pkgdesc="Firmware support packages for mainline kernel"
	depends="msm-modem-mainline firmware-adreno"
	install_if="$pkgname-kernel-mainline $pkgname-nonfree-firmware"
	mkdir "$subpkgdir"
}

alsa() {
	pkgdesc="Audio configuration files"

	mkdir -p "$subpkgdir"/usr/share/alsa/ucm/FP2
	install -Dm644 "$srcdir"/FP2.conf "$subpkgdir"/usr/share/alsa/ucm/FP2/
	install -Dm644 "$srcdir"/hifi "$subpkgdir"/usr/share/alsa/ucm/FP2/
}

sha512sums="3d6bfa349f8590a254b345078fc7b294f6750b9b4274559224f9f2414305cd9e019acbb2f9f522e1cb0ce56755e04f4b9d6315dee92a765fc5fbe979c03d7543  deviceinfo
55360b1ba4ddadea341c9edb13c32ba5f19aabf75ab28602f30cfb79b9df8834f115ef979c70569f23ec1293b1fcd408baf320d87803293ce7106bdc73a26c9f  FP2.conf
b834461c6866bb0c473dd089dd5da641dd42a00f610aad6503117aa50fe6e200db9ad0a264bb609f12350d59faee1f772907bacd75439f702ea7d52f6f85e2b1  hifi"
