# Contributor: ProgCat <progcat@protonmail.com>
# Maintainer: Lindsay Zhou <i@lin.moe>
maintainer="Lindsay Zhou <i@lin.moe>"
pkgname=fcitx5-qt
pkgver=5.1.8
pkgrel=1
pkgdesc="Qt library and IM module for Fcitx5"
url="https://github.com/fcitx/fcitx5-qt"
arch="all"
license="LGPL-2.1-or-later AND BSD-3-Clause"
makedepends="
	cmake
	extra-cmake-modules
	fcitx5-dev
	libxkbcommon-dev
	libxcb-dev
	libxkbcommon-dev
	libxcb-dev
	libx11-dev
	libxcb-dev
	libxkbcommon-dev
	qt5-qtbase-dev
	qt6-qtbase-dev
	qt6-qtwayland-dev
	samurai
	"
subpackages="
	$pkgname-dev
	$pkgname-lang
	$pkgname-qt5
	$pkgname-qt6
	"
source="$pkgname-$pkgver.tar.gz::https://github.com/fcitx/fcitx5-qt/archive/refs/tags/$pkgver.tar.gz"

build() {
	if [ "$CBUILD" != "$CHOST" ]; then
		CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
	fi
	CXXFLAGS="$CXXFLAGS -flto=auto -DNDEBUG" \
	cmake -B build -G Ninja \
		-DCMAKE_INSTALL_PREFIX=/usr \
		-DCMAKE_INSTALL_LIBDIR=lib \
		-DBUILD_SHARED_LIBS=True \
		-DCMAKE_BUILD_TYPE=None \
		-DENABLE_QT4=Off \
		-DENABLE_QT6=ON \
		$CMAKE_CROSSOPTS
	cmake --build build
}

check() {
	cd build
	CTEST_OUTPUT_ON_FAILURE=TRUE ctest
}

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

qt5() {
	pkgdesc="$pkgdesc (Qt5)"
	install_if="$pkgname=$pkgver-r$pkgrel qt5-qtbase-x11"

	amove usr/lib/libFcitx5Qt5*
	amove usr/lib/qt5
	amove usr/libexec/fcitx5-qt5-gui-wrapper
	amove usr/share/applications/org.fcitx.fcitx5-qt5-gui-wrapper.desktop
}

qt6() {
	pkgdesc="$pkgdesc (Qt6)"
	install_if="$pkgname=$pkgver-r$pkgrel qt6-qtbase-x11"

	amove usr/lib/libFcitx5Qt6*
	amove usr/lib/fcitx5/qt6
	amove usr/lib/qt6
}

sha512sums="
6b5f8d27a008feb842194f4a08c8345fee3b7e1aae42940cea6d5fcc08d124f3c11a91f8bb226902b96a446ab5de00c507aba2b68dca050091503372e4aa2fb3  fcitx5-qt-5.1.8.tar.gz
"
