# Contributor: Aster Boese <asterboese@mailbox.org>
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Luca Weiss <luca@lucaweiss.eu>
pkgname=qtmir
pkgver=0.7.2_git20250407
pkgrel=0
pkgdesc="QPA plugin to make Qt a Mir server"
# armhf: blocked by lots of dependencies
arch="all !armhf"
url="https://gitlab.com/ubports/development/core/qtmir"
license="LGPL-3.0-only"
makedepends="
	cmake
	cmake-extras
	gsettings-qt-dev
	gtest-dev
	libqtdbusmock
	libqtdbustest
	lomiri-app-launch-dev
	lomiri-content-hub-dev
	lomiri-url-dispatcher-dev
	lttng-ust-tools
	mir-dev
	process-cpp-dev
	qt5-qtdeclarative-dev
	qt5-qtsensors-dev
	samurai
	"
checkdepends="
	dbus
	py3-dbusmock
	"
_commit="ea2f4774b1a109fec3e22a021fb21ff60da80626" # personal/sunweaver/debian-upstream
source="https://gitlab.com/ubports/development/core/qtmir/-/archive/$_commit/qtmir-$_commit.tar.gz"
subpackages="$pkgname-dev"
options="!check" # -DWITH_MIR2=ON currently disables tests
builddir="$srcdir/qtmir-$_commit"

_cmake_opts=""
case "$CARCH" in
	# valgrind is not available on these architectures
	riscv64|loongarch64) _cmake_opts="-DWITH_VALGRIND=OFF" ;;
	*) makedepends="$makedepends valgrind-dev" ;;
esac

build() {
	cmake -B build -G Ninja \
		-DCMAKE_INSTALL_PREFIX=/usr \
		-DCMAKE_INSTALL_LIBDIR=lib \
		-DBUILD_SHARED_LIBS=ON \
		-DCMAKE_BUILD_TYPE=None \
		-DWITH_MIR2=ON \
		$_cmake_opts
	cmake --build build
}

check() {
	ctest --test-dir build
}

package() {
	DESTDIR="$pkgdir" cmake --install build

	# Remove files for testing only
	# https://gitlab.com/ubports/development/core/qtmir/-/blob/main/debian/qtmir-tests.install
	rm "$pkgdir"/usr/bin/qtmir-demo-client
	rm "$pkgdir"/usr/bin/qtmir-demo-shell
	rm "$pkgdir"/usr/share/applications/qtmir-demo-client.desktop
	rm "$pkgdir"/usr/share/applications/xwayland.qtmir.desktop
	rm "$pkgdir"/usr/share/qtmir/benchmarks/common.py
	rm "$pkgdir"/usr/share/qtmir/benchmarks/report_types.py
	rm "$pkgdir"/usr/share/qtmir/benchmarks/touch_event_latency.py
	rm "$pkgdir"/usr/share/qtmir/benchmarks/touch_event_latency.R
	rmdir "$pkgdir"/usr/share/applications/
	rm -r "$pkgdir"/usr/share/qtmir/qtmir-demo-client/
	rm -r "$pkgdir"/usr/share/qtmir/qtmir-demo-shell/
	rm -r "$pkgdir"/usr/share/qtmir/benchmarks/
	rmdir "$pkgdir"/usr/share/qtmir/
}

sha512sums="
55c64bcd556ee756f10d0d9af53f27ece1d446ece302882e52dab8cb5aef908b5784a4667ea8cb543f27bf6bc9246804f45e5865c8f560d651a5edc3696fef43  qtmir-ea2f4774b1a109fec3e22a021fb21ff60da80626.tar.gz
"
