all: setup ninja -C build setup: build/ meson build VER_RAW := $(shell git -C .. describe --tags --match 'release/gtk/*' --abbrev=0 2>/dev/null || true) VER := $(patsubst release/gtk/%,%,$(VER_RAW)) TMP := $(shell mktemp -d) RPM_SOURCE := $(TMP)/$(VER).tar.gz .PHONY: check-version check-version: @test -n "$(VER_RAW)" || { echo "Could not determine GTK release version from git tags." >&2; echo "Expected a tag reachable from HEAD matching release/gtk/." >&2; exit 1; } @test "$(VER)" != "$(VER_RAW)" || { echo "Invalid GTK release tag: $(VER_RAW)" >&2; echo "Expected format: release/gtk/." >&2; exit 1; } rpm: check-version git -C .. archive --format=tar.gz --prefix=kordophone/ -o $(RPM_SOURCE) HEAD rpmbuild -ba dist/rpm/kordophone.spec --define "_sourcedir $(TMP)" --define "app_version $(VER)" deb: check-version ./dist/deb/build-deb.sh $(VER) .PHONY: flatpak flatpak: flatpak-builder --force-clean flatpak-build flatpak/net.buzzert.kordophone.yml .PHONY: flatpak-install flatpak-install: flatpak-builder --force-clean --user --install flatpak-build flatpak/net.buzzert.kordophone.yml