#!/usr/bin/make -f
## -*- makefile -*-

export DEB_BUILD_MAINT_OPTIONS=hardening=+all
export QT_SELECT=qt6
export LC_ALL=C.UTF-8

include /usr/share/dpkg/architecture.mk

BUILD_DIR = obj-$(DEB_HOST_MULTIARCH)

%:
	dh $@ --buildsystem=qmake --builddirectory=$(BUILD_DIR)

override_dh_auto_configure:
	mkdir -p $(BUILD_DIR)
	cd $(BUILD_DIR) && qmake6 $(CURDIR)/bianbu-appearance.pro BCC_PLUGIN_DIR=/usr/lib/$(DEB_HOST_MULTIARCH)/bianbu-control-center

override_dh_auto_install:
	dh_auto_install --buildsystem=qmake --builddirectory=$(BUILD_DIR) -- INSTALL_ROOT=$(CURDIR)/debian/bianbu-appearance
	test -x $(CURDIR)/debian/bianbu-appearance/usr/bin/bianbu-appearance
	test -f $(CURDIR)/debian/bianbu-appearance/usr/lib/$(DEB_HOST_MULTIARCH)/bianbu-control-center/libbianbu-appearance.so
	set -e; LRELEASE_BIN="$(shell command -v lrelease-qt6 2>/dev/null || command -v /usr/lib/qt6/bin/lrelease 2>/dev/null || command -v lrelease 2>/dev/null)"; \
	if [ -z "$$LRELEASE_BIN" ]; then echo "[i18n] No lrelease tool found"; exit 1; fi; \
	for ts in $(CURDIR)/src/plugin/translations/bianbu-control-center-appearance_*.ts; do \
	  [ -f "$$ts" ] || continue; \
	  qm="$${ts%.ts}.qm"; \
	  if [ -f "$$qm" ]; then \
	    echo "[i18n] Skipping $$ts (QM already exists)"; \
	    continue; \
	  fi; \
	  echo "[i18n] Generating QM from $$ts using $$LRELEASE_BIN"; \
	  QT_SELECT= "$$LRELEASE_BIN" "$$ts" >/dev/null || { echo "lrelease failed for $$ts"; exit 1; }; \
	done
	set -e; \
	for f in $(CURDIR)/src/plugin/translations/bianbu-control-center-appearance_*.qm; do \
	  [ -f "$$f" ] || continue; \
	  base=$${f##*/}; \
	  lang=$${base#bianbu-control-center-appearance_}; lang=$${lang%.qm}; \
	  dest="$(CURDIR)/debian/bianbu-appearance/usr/share/locale/$$lang/LC_MESSAGES"; \
	  mkdir -p "$$dest"; \
	  cp -f "$$f" "$$dest/bianbu-control-center-appearance.qm"; \
	done
	test -f $(CURDIR)/debian/bianbu-appearance/usr/share/locale/zh_CN/LC_MESSAGES/bianbu-control-center-appearance.qm

override_dh_auto_clean:
	dh_auto_clean --buildsystem=qmake --builddirectory=$(BUILD_DIR) || true
	rm -rf $(BUILD_DIR)
	rm -rf src/.obj src/.moc src/.rcc src/.ui src/plugin/.obj src/plugin/.moc src/plugin/.rcc src/plugin/.ui
	rm -f src/plugin/translations/*.qm
	rm -f src/Makefile src/plugin/Makefile Makefile .qmake.stash

override_dh_missing:
	dh_missing --fail-missing