#!/usr/bin/make -f

DEBVERSION:=$(shell head -n 1 debian/changelog \
		    | sed -e 's/^[^(]*(\([^)]*\)).*/\1/')
UPVERSION:=$(shell echo $(DEBVERSION) | sed -e 's/^.*://' -e 's/-[0-9.]*$$//' -e 's/~dfsg$$//')

DFSG:=$(shell echo $(DEBVERSION) | sed -e 's/-[0-9.]*$$//')

FILENAME := yate_$(UPVERSION).orig.tar.gz
SRCDIR := yate
DFSGNAME := yate_$(DFSG).orig.tar.gz
URL := http://yate.null.ro/tarballs/yate4/yate-$(UPVERSION).tar.gz

check-ilbc:
ifneq (,$(wildcard libs/ilbc/iLBC_define.h))
	echo "WARNING: iLBC must be removed from sources before packaging."
	exit 1
endif
	touch $@

%:
	dh $@ --with autotools_dev,autoreconf 

config.status: check-ilbc 
	dh_autoreconf --as-needed
	dh_auto_configure --\
		--without-openh323 --disable-ilbc --without-amrnb --without-coredumper --enable-sctp

build: build-arch build-indep

build-arch: build-arch-stamp
build-arch-stamp: config.status
	dh_testdir
	$(MAKE)
	touch $@

build-indep: build-indep-stamp
build-indep-stamp: config.status
	cd share/scripts/yaypm ; python ./setup.py build
	touch $@


# Build architecture-independent files here.
binary-indep: install
	dh_testdir -i
	dh_testroot -i
	dh_auto_install
	dh_installlogrotate -i
	dh_installinit -i -- defaults 21
	dh_installdocs -i 
	dh_installexamples -i -XCVS
	dh_installcron -i
	dh_installchangelogs ChangeLog -i
	dh_install -i
	dh_link -i
	dh_compress -i
	dh_fixperms -i
	dh_installdeb -i
	dh_gencontrol -i
	dh_md5sums -i
	dh_builddeb -i

subpacks_names = alsa dahdi sctp qt4 mysql h323chan pgsql
subpacks = $(subpacks_names:%=$(CURDIR)/debian/yate-%) $(CURDIR)/debian/yate

# Build architecture-dependent files here.
binary-arch: install
	dh_testdir -a
	dh_testroot -a
	dh_installchangelogs -a ChangeLog
	dh_installdocs -a
	dh_installexamples -a
	dh_install -a --fail-missing
	find $(subpacks) -name '*.yate' -type f  -printf '-name %f -o\n' \
	  | xargs | sed -e 's/ -o$$//' | xargs find $(CURDIR)/debian/yate \
	  | xargs $(RM) -fv
	find $(subpacks) -name '*.yate' -type f  -printf '-name %f -o\n' \
	  | xargs | sed -e 's/ -o$$//' | xargs find $(CURDIR)/debian/yate-core \
	  | xargs $(RM) -fv
	find $(subpacks) -name '*.conf' -type f  -printf '-name %f -o\n' \
	  | xargs | sed -e 's/ -o$$//' | xargs find $(CURDIR)/debian/yate-core \
	  | xargs $(RM) -fv
	dh_installinit -a
	dh_installman -a
	dh_link -a
	dh_strip -a
	dh_compress -a
	dh_fixperms -a
	dh_makeshlibs  -a
	dh_installdeb -a
	dh_shlibdeps -a
	dh_gencontrol -a
	dh_md5sums -a
	dh_builddeb -a

install:
	dh install

print-version:
	@@echo "Debian version:          $(DEBVERSION)"
	@@echo "DFSG     version:        $(DFSG)"
	@@echo "Upstream version:        $(UPVERSION)"

get-orig-source:
	@@dh_testdir
	@@[ -d ../tarballs/. ]||mkdir -p ../tarballs
	@@echo Downloading $(FILENAME) from $(URL) ...
	@@wget -nv -T10 -t3 -O ../tarballs/$(FILENAME) $(URL)
	@@echo Removing non dfsg compliant parts out of it
	@@[ -d ../tarballs/dfsg/. ]||mkdir -p ../tarballs/dfsg
	@@tar -xzf ../tarballs/$(FILENAME) -C ../tarballs/dfsg
	@@rm -rf ../tarballs/dfsg/$(SRCDIR)/libs/ilbc/*
	@@echo -e '#Debian Dummy\n%:\n\t:' >../tarballs/dfsg/$(SRCDIR)/libs/ilbc/Makefile.in
	@@echo Building the dfsg tarball
	@@GZIP=-9 tar -b1 -czf ../tarballs/$(DFSGNAME) -C ../tarballs/dfsg $(SRCDIR)
	@@echo Cleaning up
	@@rm -rf ../tarballs/dfsg
	@@rm -f ../tarballs/$(FILENAME)

# Commands not to run
override_dh_auto_test:

binary: binary-indep binary-arch
.PHONY: build build-arch build-indep clean clean-patched patch unpatch binary-indep binary-arch binary install 
