#!/usr/bin/make -f
# Pinned-Zig offline build (wrapper orig: src + vendor cache + compiler)
GHOSTTY_VER = 1.3.1
ZIG = $(CURDIR)/zig/zig
ZCACHE = $(CURDIR)/vendor/zig
# glslang stays vendored: Debian ships static-only libglslang.a whose glslang.pc omits SPIRV-Tools and libstdc++
ZFLAGS = --system $(ZCACHE)/p -Doptimize=ReleaseFast -Dcpu=baseline -Dpie=true -Dstrip=false -Dversion-string=$(GHOSTTY_VER) -fsys=freetype -fsys=harfbuzz -fsys=fontconfig -fsys=libpng -fsys=zlib -fsys=oniguruma -fsys=spirv-cross -fsys=simdutf -fsys=gtk4-layer-shell -fsys=highway

%:
	dh $@

override_dh_auto_clean:
	mkdir -p debian/source; \
	printf '%s\n' 'extend-diff-ignore = "src/zig-out/.*"' 'extend-diff-ignore = "src/zig-cache/.*"' 'extend-diff-ignore = "src/.zig-cache/.*"' 'extend-diff-ignore = "obj-.*/.*"' > debian/source/options; \
	dh_auto_clean

override_dh_auto_configure:
	:

override_dh_auto_build:
	:
# Single build+install (no double compile); no upstream test suite
override_dh_auto_test:
	:

override_dh_auto_install:
	mkdir -p debian/ghostty && \
	cd src && \
	ZIG_GLOBAL_CACHE_DIR=$(ZCACHE) DESTDIR=$(CURDIR)/debian/ghostty $(ZIG) build --prefix /usr --prefix-lib-dir lib/x86_64-linux-gnu $(ZFLAGS) && \
	rm -rv $(CURDIR)/debian/ghostty/usr/share/terminfo/ && \
	mv $(CURDIR)/debian/ghostty/usr/share/pkgconfig/ $(CURDIR)/debian/ghostty/usr/lib/x86_64-linux-gnu/
