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

# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1

# see http://lists.debian.org/debian-devel-announce/2011/09/msg00001.html
# Also it does hardening by default, see http://wiki.debian.org/Hardening
DPKG_EXPORT_BUILDFLAGS = 1
-include /usr/share/dpkg/default.mk

export LFLAGS= -Wl,--as-needed $(LDFLAGS)

PDIR := $(CURDIR)/debian/tupi
PDIRdata := $(CURDIR)/debian/tupi-data

%:
	dh $@

override_dh_auto_clean:
	# remove pre-generated binaries
	cd configure.tests \
	&& for dir in opengl ffmpeg aspell; do $(RM) $$dir/$$dir $$dir/*.o $$dir/Makefile; done
	$(RM) launcher/tupi launcher/tupi.desktop
	# fix wrong upstream permissions
	chmod -R a-x+X . \
	&& chmod +x configure debian/rules
	dh_auto_clean

override_dh_auto_configure:
	# override qonf/defaults.rb
	ruby configure.rb --debian-build=1 \
                      --prefix=$(PDIR)/usr \
                      --bindir=$(PDIR)/usr/bin \
                      --libdir=$(PDIR)/usr/lib/tupi \
                      --sharedir=$(PDIRdata)/usr/share/tupi \
                      --includedir=$(PDIR)/usr/share/tupi/include
	# force qmake-generated Makefiles to respect dpkg-provided flags
	perl -pi -e 'local $$/; $$_=<>; s{((CX?X?|L)FLAGS\s*)=}{$$1+=}g;' `find . -name Makefile`

override_dh_auto_install:
	dh_auto_install
	$(RM) $(PDIR)/usr/share/man/man1/tupi.1.gz
	mv $(PDIR)/usr/lib/tupi/tupi/plugins/* $(PDIR)/usr/lib/tupi/plugins/ \
	&& $(RM) -r $(PDIR)/usr/lib/tupi/tupi \
	&& $(RM) -r $(PDIR)/usr/share/tupi/include
	convert launcher/icons/tupi_32x32.png $(PDIR)/usr/share/pixmaps/tupi_32x32.xpm
	# patch the launcher for the correct paths
	mv $(PDIR)/usr/bin/tupi.bin $(PDIR)/usr/lib/tupi
	perl -pi -e 's{(/usr/lib)(?!/tupi)}{$$1/tupi}g; s{(export\s+TUPI_INCLUDE)}{#$$1}; s{/usr/bin}{/usr/lib/tupi};' $(PDIR)/usr/bin/tupi
	# wipe empty dirs, if any
	find $(PDIR) -type d -empty -delete

override_dh_shlibdeps:
	LD_LIBRARY_PATH="$(PDIR)/usr/lib/tupi:$(PDIR)/usr/lib/tupi/plugins:$(LD_LIBRARY_PATH)" dh_shlibdeps

override_dh_makeshlibs:
	dh_makeshlibs --noscripts

get-orig-source:
	uscan --noconf --force-download --repack --rename --download-current-version --verbose --destdir=.
