#!/usr/bin/make -f

#export DH_VERBOSE=1

PACKAGE		= stterm
ORIGBIN		= st
CHANGELOG	= debian/upstream.changelog
UPSTREAM_DIR    = ../upstream.hg

BIN		= $(PACKAGE)
PKGDIR		= $(CURDIR)/debian/$(PACKAGE)
BINDIR		= $(PKGDIR)/usr/bin
SHAREROOTDIR	= $(PKGDIR)/usr/share
DOCROOTDIR	= $(SHAREROOTDIR)/doc
PKGDOCDIR	= $(DOCROOTDIR)/$(PACKAGE)
TERMINFO	= $(PKGDIR)/usr/share/terminfo

export DEB_BUILD_MAINT_OPTIONS	= hardening=+all
export DEB_CFLAGS_MAINT_APPEND	= -Wall -pedantic
export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed

# From original sources: config.mk

CFLAGS += -std=c99 --param=ssp-buffer-size=4 \
	  -I/usr/include -I/usr/X11R6/include -DVERSION=\"0.3\" \
	  $$(pkg-config --cflags freetype2)

LDFLAGS += -s -L/usr/lib -lc -L/usr/X11R6/lib -lX11 -lutil -lXext -lXft -lfontconfig

get-changelog:
	# hg cannot list logs at remote URL, so run these manually
	# hg cannot list logs at remote URL, so run these manually
	[ -d $(UPSTREAM_DIR) ] || hg clone http://hg.suckless.org/st $(UPSTREAM_DIR)

	pwd=$$(pwd); \
	cd $(UPSTREAM_DIR) hg log | head -n 100 > $$pwd/$(CHANGELOG)"

man:
	$(MAKE) -C debian -f pod2man.mk PACKAGE=$(PACKAGE) makeman

terminfo:
	install -m 755 -d $(TERMINFO)/s
	TERMINFO=$(TERMINFO) tic $(ORIGBIN).info

override_dh_auto_build:
	# Can't inject build flags to makefile; compile by hand
	cp config.def.h config.h
	$(CC) $(CFLAGS) $(CPPFLAGS) $(ORIGBIN).c -o $(BIN) $(LDFLAGS)
	rm -f config.h

override_dh_installinfo:
	# Disable; the *.info is not a info(1) but a terminfo file

override_dh_installchangelogs:
	dh_installchangelogs $(CHANGELOG)

override_dh_auto_install: man terminfo
	# Upstream no good. Calls tic(1) which writes to $HOME
	install -m 755 -D $(BIN) $(BINDIR)/$(BIN)
	install -m 644 -D \
		$(ORIGBIN).info \
		$(PKGDOCDIR)/examples/$(PACKAGE).terminfo

%:
	dh $@

.PHONY: man terminfo

# End of file
