#!/usr/bin/make -f

ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
	NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
endif

ifeq (,$(NUMJOBS))
	NUMJOBS = 1
endif

DEB_BUILDDIR = builddir
DEB_DH_INSTALL_SOURCEDIR = $(CURDIR)/debian/tmp

PACKAGE = eiskaltdcpp

CUR_VER = $(shell uscan --dehs | sed -n 's/.*<upstream-version>\(.*\)<\/upstream-version>.*/\1/p')

CMAKEOPTS = -DCMAKE_BUILD_TYPE=RelWithDebInfo \
            -DCMAKE_INSTALL_PREFIX=/usr \
            -DUSE_MINIUPNP=ON -DLOCAL_MINIUPNP=OFF \
            -DLUA_SCRIPT=ON -DWITH_LUASCRIPTS=ON \
            -DPERL_REGEX=ON -DWITH_DHT=ON \
            -DWITH_SOUNDS=ON \
            -DUSE_QT=ON \
            -DUSE_ASPELL=ON -DFREE_SPACE_BAR_C=ON \
            -DUSE_JS=ON -DUSE_QT_QML=ON \
            -DUSE_QT_SQLITE=ON \
            -DUSE_GTK=ON \
            -DCHECK_GTK_DEPRECATED=ON \
            -DUSE_LIBGNOME2=OFF -DUSE_LIBNOTIFY=ON \
            -DCREATE_MO=ON -DUPDATE_PO=OFF \
            -DNO_UI_DAEMON=ON \
            -DXMLRPC_DAEMON=OFF -DJSONRPC_DAEMON=ON \
            ..

# This option is for daily builds of the EiskaltDC++ packages on Launchpad
# See https://launchpad.net/~tehnick/+archive/tehnick for more information
#REVISION = $(shell /bin/sh -c "head -n 1 debian/changelog | sed -e 's/^.*-[0-9]\{6,6\}-//' -e 's/-0ppa.*$$//'")
#CMAKEOPTS += -DDCPP_REVISION="$(REVISION)"


%:
	dh $@ --parallel

override_dh_auto_configure:
	mkdir -p $(DEB_BUILDDIR) && cd $(DEB_BUILDDIR) && cmake $(CMAKEOPTS)

override_dh_auto_build:
	cd $(DEB_BUILDDIR) && $(MAKE) -j$(NUMJOBS)

override_dh_auto_clean:
	dh_testroot
	[ ! -f Makefile ] || ( cd $(DEB_BUILDDIR) && $(MAKE) clean )
	[ ! -d $(DEB_BUILDDIR) ] || rm -r $(DEB_BUILDDIR)
	rm -f configure-stamp build-stamp

override_dh_auto_install:
	cd $(DEB_BUILDDIR) && $(MAKE) install DESTDIR=$(DEB_DH_INSTALL_SOURCEDIR)

override_dh_install:
	dh_movefiles

override_dh_installchangelogs:
	dh_installchangelogs ChangeLog.txt

.PHONY: override_dh_strip
override_dh_strip:
	dh_strip -Nlibeiskaltdcpp2.2 -Neiskaltdcpp-qt -Neiskaltdcpp-gtk -Neiskaltdcpp-daemon
	dh_strip -plibeiskaltdcpp2.2 --dbg-package=libeiskaltdcpp2.2-dbg
	dh_strip -peiskaltdcpp-qt --dbg-package=eiskaltdcpp-qt-dbg
	dh_strip -peiskaltdcpp-gtk --dbg-package=eiskaltdcpp-gtk-dbg
	dh_strip -peiskaltdcpp-daemon --dbg-package=eiskaltdcpp-daemon-dbg

.PHONY: override_dh_makeshlibs
override_dh_makeshlibs:
	dh_makeshlibs -V -plibeiskaltdcpp2.2

.PHONY: override_dh_shlibdeps
override_dh_shlibdeps:
	dh_shlibdeps -a -ldebian/libeiskaltdcpp2.2/usr/lib

get-orig-source:
	wget -4 "http://eiskaltdc.googlecode.com/files/eiskaltdcpp-$(CUR_VER).tar.xz"
	mv -f "$(PACKAGE)-$(CUR_VER).tar.xz" ../"$(PACKAGE)_$(CUR_VER).orig.tar.xz"

.PHONY: override_dh_auto_test
