#!/usr/bin/make -f

#include /usr/share/cdbs/1/rules/debhelper.mk
#include /usr/share/cdbs/1/class/autotools.mk

# some commonly used local vars
comma:= ,
empty:=
space:= $(empty) $(empty)


# project specific
PROJECT_NAME:= libsignoncrypto-qt
BUILD_DIR:= builddir
export BUILD_DIR
PACKAGE_TARGETS:= $(foreach pkg,$(DEB_ALL_PACKAGES),binary/$(pkg))

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


# custom C(XX)FLAGS
CFLAGS = -g
#-Wall -Werror -g

ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
    CFLAGS += -O0
else
    CFLAGS += -O2
endif


#ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
#    INSTALL_PROGRAM += -s
#endif


# check for parallel parameter
ifneq (,$(findstring parallel=,$(DEB_BUILD_OPTIONS)))
    # DEB_BUILD_OPTIONS can't seem to make its mind with the list usage...
    # ...so replace commas with spaces before doing anything else
    PROPER_DEB_BUILD_OPTIONS := $(strip $(subst $(comma),$(space),$(DEB_BUILD_OPTIONS)))
    # get the number of jobs
    MAKE_PARALLEL_PARAMS := -j$(subst parallel=,$(empty),$(filter parallel=%,$(PROPER_DEB_BUILD_OPTIONS)))
endif

builddir:
	mkdir -p $(BUILD_DIR)

configure: configure-stamp
configure-stamp: builddir
	dh_testdir

	# Add here commands to configure the package.
	cd $(BUILD_DIR) && qmake "QMAKE_CXXFLAGS=$(CFLAGS)" ../$(PROJECT_NAME).pro

	touch configure-stamp


build: build-stamp

build-stamp: configure-stamp
	dh_testdir

	# Add here commands to compile the package.
	cd $(BUILD_DIR) && $(MAKE) $(MAKE_PARALLEL_PARAMS)

	touch $@

clean:
	dh_testdir
	dh_testroot
	rm -f build-stamp configure-stamp

	# Add here commands to clean up after the build process.
	rm -r -f $(BUILD_DIR)
	rm -f -r debian/tmp

	dh_clean

install: build
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs

	# Add here commands to install the package into debian/tmp.
	cd $(BUILD_DIR) && $(MAKE) INSTALL_ROOT=$(CURDIR)/debian/tmp $(MAKE_PARALLEL_PARAMS) install

	# libsignoncrypto-qt-tests::
	cp $(CURDIR)/debian/tmp/usr/bin/libsignoncrypto-qt-test \
		$(CURDIR)/debian/tmp/usr/bin/libsignoncrypto-qt-test2

	# libsignoncrypto-qt-tests-notoken::
	cp $(CURDIR)/debian/tmp/usr/bin/libsignoncrypto-qt-test \
		$(CURDIR)/debian/tmp/usr/bin/libsignoncrypto-qt-test1

# Build architecture-independent files here.
binary-indep: build install
# We have nothing to do by default.

# Build architecture-dependent files here.
binary-arch: build install
	dh_testdir
	dh_testroot
	dh_installchangelogs
	dh_installdocs
#	dh_installexamples
	dh_install --sourcedir=debian/tmp
#	dh_installmenu
#	dh_installdebconf
#	dh_installlogrotate
#	dh_installemacsen
#	dh_installpam
#	dh_installmime
#	dh_python
#	dh_installinit
#	dh_installcron
#	dh_installinfo
#	dh_installman
	dh_link
	dh_strip --dbg-package=libsignoncrypto-qt-dbg
	dh_compress --exclude=doc/signon/  # don't compress our documentation
	dh_fixperms
#	dh_perl
	dh_makeshlibs
	dh_installdeb
	dh_shlibdeps
	dh_gencontrol
	maemo-optify
	dh_md5sums
	dh_builddeb

	aegis-deb-add -control debian/libsignoncrypto-qt-tests/DEBIAN/control .. debian/libsignoncrypto-qt-tests.aegis=_aegis

#$(PACKAGE_TARGETS)::
#	[ ! -f debian/$(notdir $@).aegis ] || aegis-deb-add -control debian/$(notdir $@)/DEBIAN/control .. debian/$(notdir $@).aegis=_aegis

binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install configure


# End of File


