#!/usr/bin/make -f
export DH_VERBOSE = 1
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
export DEB_CFLAGS_MAINT_APPEND  = -Wall -pedantic
export DEB_LDFLAGS_MAINT_APPEND = -Wl,-O1

%:
	dh $@

override_dh_auto_configure:
	dh_auto_configure -- \
		-DBUILD_SHARED_LIBS=1 \
		-DTRACY_ON_DEMAND=1 \
		-DTRACY_TIMER_FALLBACK=1
#	      -DCMAKE_LIBRARY_ARCHITECTURE="$(DEB_TARGET_MULTIARCH)"

tracy-client:
	dh_auto_build

tracy-capture:
	$(MAKE) -C ./capture/build/unix all

tracy-profiler:
	$(MAKE) -C ./profiler/build/unix all

tracy-csvexport:
	$(MAKE) -C ./csvexport/build/unix all

tracy-docs:
	cd manual && pdflatex tracy.tex \
	  && bibtex tracy \
	  && pdflatex tracy.tex \
	  && pdflatex tracy.tex \
	  && pdflatex techdoc.tex \
	  && pdflatex techdoc.tex

override_dh_auto_build: tracy-client tracy-capture tracy-csvexport tracy-profiler tracy-docs

override_dh_auto_clean:
	dh_auto_clean
	
	# Clean capture utility
	find . -type d -path './capture/build/unix' -exec make -C '{}' clean ';'
	
	# Clean profiler
	find . -type d -path './profiler/build/unix' -exec make -C '{}' clean ';'
	
	# Clean csvexport
	find . -type d -path './csvexport/build/unix' -exec make -C '{}' clean ';'
	
	# Clear files left over from building documentation
	cd manual && \
		rm -f tracy.out tracy.log tracy.blg tracy.aux tracy.bbl tracy.toc tracy.pdf && \
		rm -f techdoc.out techdoc.log techdoc.aux techdoc.toc techdoc.pdf

override_dh_auto_install:
	dh_auto_install
	
	sed -i -e 's/^#include "\.\.\/client/#include "\.\/client/g' debian/tmp/usr/include/tracy/*.h*
	sed -i -e 's/^#include "\.\.\/common/#include "\.\/common/g' debian/tmp/usr/include/tracy/*.h*
	
	mkdir ./debian/tmp/usr/bin
	find . -type d -path './capture/build/unix' -exec cp '{}/capture-release' ./debian/tmp/usr/bin/tracy-capture ';'
	find . -type d -path './profiler/build/unix' -exec cp '{}/Tracy-release' ./debian/tmp/usr/bin/tracy-profiler ';'
	find . -type d -path './csvexport/build/unix' -exec cp '{}/csvexport-release' ./debian/tmp/usr/bin/tracy-csvexport ';'
		
	mkdir debian/tmp/usr/share/doc/
	install -m 644 manual/tracy.pdf debian/tmp/usr/share/doc/
	install -m 644 manual/techdoc.pdf debian/tmp/usr/share/doc/
	
	mkdir debian/tmp/usr/share/doc/tracy-profiler
	pandoc debian/tracy-profiler.1.rst --standalone \
		--variable=header:"tracy-profiler User Manual" \
		--variable=section:1 \
		--from rst \
		--to man > debian/tmp/usr/share/doc/tracy-profiler/tracy-profiler.1
	
	mkdir debian/tmp/usr/share/doc/tracy-capture
	pandoc debian/tracy-capture.1.rst --standalone \
		--variable=header:"tracy-capture User Manual" \
		--variable=section:1 \
		--from rst \
		--to man > debian/tmp/usr/share/doc/tracy-capture/tracy-capture.1
	
	mkdir debian/tmp/usr/share/doc/tracy-csvexport
	pandoc debian/tracy-csvexport.1.rst --standalone \
		--variable=header:"tracy-csvexport User Manual" \
		--variable=section:1 \
		--from rst \
		--to man > debian/tmp/usr/share/doc/tracy-csvexport/tracy-csvexport.1
