# Contributor: Magnus Sandin <magnus.sandin@valitron.se>
# Maintainer: Magnus Sandin <magnus.sandin@valitron.se>
pkgname=tuxedo-drivers-src
_modname=tuxedo-drivers
pkgver=4.12.2
pkgrel=0
pkgdesc="Drivers for several platform devices for TUXEDO notebooks"
url="https://gitlab.com/tuxedocomputers/development/packages/tuxedo-drivers"
options="!check" # No tests available
arch="noarch"
license="GPL-3.0-or-later"
depends="akms"
makedepends="rsync"
install="$pkgname.post-deinstall"
source="https://gitlab.com/tuxedocomputers/development/packages/tuxedo-drivers/-/archive/v$pkgver/tuxedo-drivers-v$pkgver.tar.gz"
builddir="$srcdir/$_modname-v$pkgver"

package() {
	mkdir -p "$pkgdir"/usr/src/$_modname-$pkgver
	rsync --recursive --exclude=*.cmd --exclude=*.rules --exclude=*.d --exclude=*.ko --exclude=*.mod --exclude=*.mod.c --exclude=*.o --exclude=modules.order src/ "$pkgdir"/usr/src/$_modname-$pkgver

	cat > "$pkgdir"/usr/src/$_modname-$pkgver/AKMBUILD <<-EOF
	modname=$_modname
	modver=$pkgver-r$pkgrel
	built_modules="clevo_acpi.ko \
		clevo_wmi.ko \
		ite_8291/ite_8291.ko \
		ite_8291_lb/ite_8291_lb.ko \
		ite_8297/ite_8297.ko \
		ite_829x/ite_829x.ko \
		tuxedo_compatibility_check/tuxedo_compatibility_check.ko \
		tuxedo_io/tuxedo_io.ko \
		tuxedo_keyboard.ko \
		tuxedo_nb02_nvidia_power_ctrl/tuxedo_nb02_nvidia_power_ctrl.ko \
		tuxedo_nb04/tuxedo_nb04_kbd_backlight.ko \
		tuxedo_nb04/tuxedo_nb04_keyboard.ko \
		tuxedo_nb04/tuxedo_nb04_power_profiles.ko \
		tuxedo_nb04/tuxedo_nb04_sensors.ko \
		tuxedo_nb04/tuxedo_nb04_wmi_ab.ko \
		tuxedo_nb04/tuxedo_nb04_wmi_bs.ko \
		tuxedo_nb05/tuxedo_nb05_ec.ko \
		tuxedo_nb05/tuxedo_nb05_kbd_backlight.ko \
		tuxedo_nb05/tuxedo_nb05_keyboard.ko \
		tuxedo_nb05/tuxedo_nb05_power_profiles.ko \
		tuxedo_nb05/tuxedo_nb05_sensors.ko \
		uniwill_wmi.ko \
		"
	EOF

	# Recursive Kbuild fails in an infinite loop, define all modules in one single Kbuild file instead
	find src/ -name Kbuild -exec sh -c 'd="$(dirname "$1" | cut -b 5-)" ; sed "s/.= /\+= $d\//g" < "$1" ; echo ""' shell {} \; | grep . | grep -v "obj-y " | sort > "$pkgdir"/usr/src/$_modname-$pkgver/Kbuild
}

sha512sums="
94ea87d073702b0bccb563f308cd83d75f5e07b006de7c93bb7887dc58e33cd2af4a64c8a07c49dcdfeb99ebc73c89300e3acc871405ea6af431cbed4bb431e6  tuxedo-drivers-v4.12.2.tar.gz
"
