#!/usr/bin/make -f
# See debhelper(7) (uncomment to enable)
# output every command that modifies files on the build system.
#DH_VERBOSE = 1

LOGLEVEL = info
ifeq ($(DH_VERBOSE),1)
  LOGLEVEL = debug
endif
ifneq (,$(filter terse,$(DEB_BUILD_OPTIONS)))
  LOGLEVEL = warning
endif

DPKG_EXPORT_BUILDFLAGS = 1
include /usr/share/dpkg/default.mk
include /usr/share/dpkg/architecture.mk

#confgure qt5 generally, not just for configure
export QT_SELECT=5

# see FEATURE AREAS in dpkg-buildflags(1)
#export DEB_BUILD_MAINT_OPTIONS = hardening=+all


%:
	dh $@

override_dh_auto_configure:
	qbs-setup-toolchains --settings-dir debian --detect
	qbs-setup-qt  --settings-dir debian /usr/bin/qmake deb
	# choose gcc as if clang is installed too you have to pick one
	qbs config --settings-dir debian profiles.deb.baseProfile gcc
	qbs config --settings-dir debian profiles.deb.qbs.installPrefix "usr/"
	qbs config --settings-dir debian profiles.deb.cpp.debugInformation true
ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS)))
	qbs config --settings-dir debian profiles.deb.cpp.optimization none
else
	qbs config --settings-dir debian profiles.deb.cpp.optimization fast
endif
	qbs config --settings-dir debian profiles.deb.cpp.commonCompilerFlags -Wdate-time
	qbs config --settings-dir debian profiles.deb.cpp.defines '"FORTIFY_SOURCE=2"'
	qbs config --settings-dir debian profiles.deb.cpp.cFlags '[ "-fdebug-prefix-map=$(CURDIR)=.", "-fstack-protector-strong", "-Wformat", "-Werror=format-security" ]'
	qbs config --settings-dir debian profiles.deb.cpp.cxxFlags '[ "-fdebug-prefix-map=$(CURDIR)=.", "-fstack-protector-strong", "-Wformat", "-Werror=format-security" ]'
	qbs config --settings-dir debian profiles.deb.cpp.linkerFlags '[ "-z,relro" ]'


override_dh_auto_build:
	qbs build --settings-dir debian --log-level $(LOGLEVEL) --command-echo-mode command-line --no-install \
           profile:deb \
           modules.qbs.installRoot:$(CURDIR)/debian/tmp \
           config:qbs-build
        # Generate pkgconfig file

override_dh_auto_install:
	qbs install --settings-dir debian --log-level $(LOGLEVEL) --no-build \
           --install-root $(CURDIR)/debian/tmp \
           profile:deb \
           config:qbs-build
	dh_install

override_dh_clean:
	# tidy up qbs profile builddirs
	- rm -r qbs-build
	- rm debian/plotsauce.pc
	dh_clean
