#!/usr/bin/make -f

# export DH_VERBOSE=1

# for DEB_VERSION_UPSTREAM
include /usr/share/dpkg/pkg-info.mk

export DEB_BUILD_MAINT_OPTIONS = hardening=+bindnow

DB2MAN      = /usr/share/sgml/docbook/stylesheet/xsl/nwalsh/manpages/docbook.xsl
XP          = xsltproc -''-nonet -''-param man.charmap.use.subset "0"
DESTDIR     = $(CURDIR)/debian/cppcheck
DESTDIR_GUI = $(CURDIR)/debian/cppcheck-gui

override_dh_auto_build:
	echo ld $LDFLAGS
	echo env
	set
	[ -f externals/tinyxml ] || mv externals/tinyxml externals/tinyxml.disabled
	dh_auto_build -- CFGDIR=/usr/share/cppcheck/cfg HAVE_RULES=yes LIBS=-ltinyxml2 \
		INCLUDE_FOR_LIB="-Ilib -Iexternals/simplecpp" \
		INCLUDE_FOR_CLI="-Ilib -Iexternals/simplecpp" \
		INCLUDE_FOR_TEST="-Ilib -Icli -Iexternals/simplecpp"
	$(XP) $(DB2MAN) man/cppcheck.1.xml
	cd gui; qmake -qt=5 HAVE_RULES=yes
	sed -i -e 's/^CC\>/#CC/;s/^CXX\>/#CXX/;s/^CFLAGS *=/CFLAGS += $$(CPPFLAGS)/;s/^CXXFLAGS *=/CXXFLAGS += $$(CPPFLAGS)/;s/^LFLAGS *=/LFLAGS += $$(LDFLAGS)/' gui/Makefile
	dh_auto_build -- -C gui HAVE_RULES=yes CC="$(CC)" CXX="$(CXX)"
	sed -e "s/1.70/$(DEB_VERSION_UPSTREAM)/" debian/cppcheck-htmlreport.1.in >debian/cppcheck-htmlreport.1

override_dh_auto_clean:
	dh_auto_clean
	[ ! -f gui/Makefile ] || $(MAKE) -C gui clean
	rm -f gui/Makefile gui/cppcheck-gui gui/.qmake.stash
	rm -f debian/cppcheck-htmlreport.1
	[ ! -d externals/tinyxml.disabled ] || mv externals/tinyxml.disabled externals/tinyxml

override_dh_auto_test:
ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
	dh_auto_test -- CFGDIR=/usr/share/cppcheck/cfg HAVE_RULES=yes LIBS=-ltinyxml2 \
		INCLUDE_FOR_LIB="-Ilib -Iexternals/simplecpp" \
		INCLUDE_FOR_CLI="-Ilib -Iexternals/simplecpp" \
		INCLUDE_FOR_TEST="-Ilib -Icli -Iexternals/simplecpp"
endif

override_dh_auto_install:
	install -d ${DESTDIR}/usr/bin
	install cppcheck ${DESTDIR}/usr/bin
	install -d ${DESTDIR}/usr/share/cppcheck/cfg
	install -m 644 cfg/* ${DESTDIR}/usr/share/cppcheck/cfg
	install htmlreport/cppcheck-htmlreport ${DESTDIR}/usr/bin
	install -d ${DESTDIR}/usr/share/man/man1
	install debian/cppcheck-htmlreport.1 ${DESTDIR}/usr/share/man/man1
	install -d ${DESTDIR_GUI}/usr/bin
	install gui/cppcheck-gui ${DESTDIR_GUI}/usr/bin

override_dh_python3:
	dh_python3 --shebang=/usr/bin/python3

%:
	dh $@ --with python3
