#!/usr/bin/make -f
# Sample debian/rules that uses debhelper.
# GNU copyright 1997 to 1999 by Joey Hess.

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

# This is the debhelper compatibility version to use.
export DH_COMPAT=4
SHELL=/bin/bash -e -o pipefail

TAGVERSION := $(shell dpkg-parsechangelog -ldebian/changelog | sed -ne 's/^Version: *//p' | sed -e 's/\./_/g')

# OWNER and GROUP
include config.dist

CFLAGS = -Wall -g

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

configure: configure-stamp
configure-stamp:
	dh_testdir
	# Add here commands to configure the package.
	# NONE

	@if ! getent group $(GROUP) >/dev/null; then echo TODO: addgroup --system $(GROUP) ; exit 1; fi

	@if ! getent passwd $(OWNER) >/dev/null; then echo TODO: adduser --system --ingroup $(GROUP) --home /usr/pop $(OWNER) ; exit 1; fi

	touch configure-stamp

DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)

ifeq ($(DEB_HOST_ARCH),i386)
kunde_xx_bin = kunde-64-bin
kunde_xx_arch = amd64
endif

ifeq ($(DEB_HOST_ARCH),amd64)
kunde_xx_bin = kunde-32-bin
kunde_xx_arch = i386
endif


build: build-stamp

build-stamp: configure-stamp 
	dh_testdir

	# Add here commands to compile the package.
	$(MAKE) -f Makefile.Linux compile SUBPYTHON=dbpython
	#/usr/bin/docbook-to-man debian/datenbank.sgml > datenbank.1

	touch build-stamp

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

	-$(MAKE) clean
	rm -rf debian/tmp

	dh_clean

install: build
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs
	
	# install into debian/tmp
	$(MAKE) -f Makefile.Linux install DESTDIR=$(CURDIR)/debian/tmp SUBPYTHON=dbpython
	$(MAKE) man DESTDIR=$(CURDIR)/debian/tmp

# Build architecture-independent files here.
binary-indep: build install
	dh_testdir -i
	dh_testroot -i
	dh_installdocs -n -i
	dh_installchangelogs  -i
	dh_link -i
	dh_strip -i
	dh_compress -i
	dh_fixperms -i
	dh_installdeb -i
	dh_perl -i
	
	for p in kunde-doc kunde-cgibin kunde-extern kunde-python kunde-qsu kunde-htdocs ; do \
		dh_movefiles --package=$$p; \
		cd debian/$$p; mkdir -p var/cache; find . -user $(OWNER) -print0 > var/cache/pop.files.$$p; cd ../..; \
	done
	
	#install -d debian/kunde-python/usr/pop/bin
	#install -m 755 -o root -g root bin/db.py debian/kunde-python/usr/pop/bin/db
	#
	dh_gencontrol -i
	dh_md5sums -i
	dh_builddeb -i


# We have nothing to do by default.

# Build architecture-dependent files here.
binary-arch: build install
	dh_testdir -a
	dh_testroot -a
#	dh_installdebconf	 -a
	dh_installdocs -n -a
	dh_installexamples -p kunde examples/*
#	dh_installmenu -a
#	dh_installlogrotate -a
#	dh_installemacsen -a
#	dh_installpam -a
#	dh_installmime -a
#	dh_installinit -a
#	dh_installcron -a
#	dh_installman -a
#	dh_installinfo -a
#	dh_undocumented -a
	dh_installchangelogs  -a
	dh_link -a
	dh_strip -a
	dh_compress -a
	dh_fixperms -a
#	dh_makeshlibs -a
	dh_installdeb -a
	dh_perl -a

	# Some files are in more than one package
	for p in kunde-common $(kunde_xx_bin) kunde-bin kunde-rt kunde ; do \
		dh_movefiles --package=$$p ; \
		cd debian/$$p; mkdir -p var/cache; find . -user $(OWNER) -print0 > var/cache/pop.files.$$p; cd ../..; \
	done

	dh_shlibdeps -a
	dh_gencontrol -a
ifneq ($(kunde_xx_bin),)
	perl -pi -e 's/^(Package:\s+)$(kunde_xx_bin)/$${1}kunde-bin/; s/^(Architecture:\s+)$(DEB_HOST_ARCH)/$${1}$(kunde_xx_arch)/; s/^(Depends:.*\blibc)-$(kunde_xx_arch)\b/$${1}/' debian/$(kunde_xx_bin)/DEBIAN/control
	find debian/$(kunde_xx_bin) -type f | while read f ; do g="$$(echo $$f | sed -e 's/32$$//g' -e 's/64$$//g')"; [ "$$f" = "$$g" ] || mv "$$f" "$$g" ; done
endif
#Package: kunde-64-bin
#Version: 1.2008.8.12
#Section: noris/kunde
#Priority: extra
#Architecture: i386
#Pre-Depends: netbase (>= 4.21)
#Depends: libc6-amd64 (>= 2.3.5-1)
#Installed-Size: 168
#Maintainer: Matthias Urlichs <smurf@noris.de>
#Source: kunde
#Description: noris-kunde-Datenbank, Binaries

	dh_md5sums -a
	dh_builddeb kunde-bin $(kunde_xx_bin)
ifneq ($(kunde_xx_bin),)
	perl -pi -e 's/^$(kunde_xx_bin)_(.*)_$(DEB_HOST_ARCH)\.deb/kunde-bin_$${1}_$(kunde_xx_arch).deb/' debian/files
endif
#kunde-64-bin_1.2008.8.12_i386.deb noris/kunde extra

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

version:
	@echo ${TAGVERSION}
