#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
# This file was originally written by Joey Hess and Craig Small.
# As a special exception, when this file is copied by dh-make into a
# dh-make output file, you may use that output file without restriction.
# This special exception was added by Craig Small in version 0.37 of dh-make.

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

#rel_ext	= $(strip $(shell dpkg-parsechangelog | awk -F- '/^Version:/ {print $$NF}'))
#pkgver	= 2.4.3-$(shell expr $(rel_ext) + 0)
#pkgver	= 2.4.3-3ubuntu1

PYVERS	= $(shell pyversions -vs)
PWD	:= $(shell pwd)

CFLAGS = -Wall -g

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

p_tk	= python-tk
p_gdbm	= python-gdbm
d_tk	= debian/$(p_tk)
d_gdbm	= debian/$(p_gdbm)

build: build-stamp
build-stamp: $(PYVERS:%=build-python%) $(PYVERS:%=dbg-build-stamp%)
	touch $@

build-python%:
	dh_testdir
	cd $* && python$* setup.py build
	touch build$*-stamp

dbg-build-stamp%:
	dh_testdir
	cd $* && python$*-dbg setup.py build
	touch dbg-build$*-stamp

clean:
	dh_testdir
	dh_testroot
	rm -f *stamp
	rm -rf 2.?/build
	dh_clean 

install: build install-prereq $(PYVERS:%=install-python%) $(PYVERS:%=dbg-install-python%)
	rm -rf $(d_tk)/usr/share/pycentral
	rm -rf $(d_gdbm)/usr/share/pycentral

install-prereq:
	dh_testdir
	dh_testroot
	dh_clean -k 

install-python%: build%-stamp
	cd $* && python$* setup.py install --prefix=$(PWD)/$(d_tk)/usr
	mkdir -p $(d_tk)/usr/lib/python$*/lib-dynload
	mv $(d_tk)/usr/lib/python$*/site-packages/_tkinter.so \
		$(d_tk)/usr/lib/python$*/lib-dynload/
	mkdir -p $(d_gdbm)/usr/lib/python$*/lib-dynload
	mv $(d_tk)/usr/lib/python$*/site-packages/gdbm.so \
		$(d_gdbm)/usr/lib/python$*/lib-dynload/
	rm -rf $(d_tk)/usr/lib/python$*/site-packages
#	cp -a $*/Lib/lib-tk $(d_tk)/usr/lib/python$*/

dbg-install-python%:
	cd $* && python$*-dbg setup.py install --prefix=$(PWD)/$(d_tk)-dbg/usr
	mkdir -p $(d_tk)-dbg/usr/lib/python$*/lib-dynload
	mv $(d_tk)-dbg/usr/lib/python$*/site-packages/_tkinter_d.so \
		$(d_tk)-dbg/usr/lib/python$*/lib-dynload/
	mkdir -p $(d_gdbm)-dbg/usr/lib/python$*/lib-dynload
	mv $(d_tk)-dbg/usr/lib/python$*/site-packages/gdbm_d.so \
		$(d_gdbm)-dbg/usr/lib/python$*/lib-dynload/
	rm -rf $(d_tk)-dbg/usr/lib/python$*/site-packages

# 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 -p$(p_gdbm) debian/README.Debian
	dh_installdocs -p$(p_tk) debian/README.Tk
	rm -rf $(d_gdbm)-dbg/usr/share/doc/$(p_gdbm)-dbg
	ln -s $(p_gdbm) $(d_gdbm)-dbg/usr/share/doc/$(p_gdbm)-dbg
	rm -rf $(d_tk)-dbg/usr/share/doc/$(p_tk)-dbg
	ln -s $(p_tk) $(d_tk)-dbg/usr/share/doc/$(p_tk)-dbg
	dh_strip -p$(p_gdbm) --dbg-package=$(p_gdbm)-dbg
	dh_strip -p$(p_tk) --dbg-package=$(p_tk)-dbg
	DH_PYCENTRAL=nomove dh_pycentral
	dh_compress
	dh_fixperms
	dh_installdeb
	dh_shlibdeps
	sed -i -e 's/<< 2.5/<< 2.6/;s/python2.5 [^,]*//;s/, *,/,/;s/, *$$//' debian/*.substvars
#	dh_gencontrol -u-v$(pkgver)
	dh_gencontrol
	dh_md5sums
	dh_builddeb

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