#!/usr/bin/make -f

REV=$(shell dpkg-parsechangelog | sed -rne 's,^Version: .*[+~]bzr([0-9]+).*,\1,p')
VER=$(shell dpkg-parsechangelog | sed -rne 's,^Version: ([^-]+).*,\1,p')
MAJOR_VER=0.7
ifeq "$(REV)" ""
	REV=tag:$(VER)
endif
MANDIR=debian/manpages

%:
	dh $@ --with python2

override_dh_auto_test:
ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
	JUJU_TEST_TIMEOUT=30 ./test
endif

get-orig-source:
	bzr export -r $(REV) --root=juju-$(VER).orig \
               juju_$(VER).orig.tar.gz lp:juju/$(MAJOR_VER)

override_dh_auto_clean::
	rm -f debian/manpages/*.partial
	rm -f debian/manpages/*.1
	rm -f debian/juju-$(VER).postinst debian/juju-$(VER).docs debian/juju-$(VER).prerm

HELP2MAN=PYTHONPATH=`pwd` help2man -N --version-string $(VER)

generate_juju_manpages:
	mkdir -p $(MANDIR)
	$(HELP2MAN) --name "juju service orchestration system admin client" \
     --include debian/manpages/juju.includes.in bin/juju \
     > debian/manpages/juju.1.partial
	$(HELP2MAN) --name "juju bootstrap tool" \
     --include debian/manpages/juju-admin.in bin/juju-admin \
     > debian/manpages/juju-admin.1.partial
	for i in `ls bin|grep -v juju$$|grep -v juju-admin$$` ; do \
        $(HELP2MAN) --name "Juju charm API commands" \
         --include debian/manpages/charm_api.in \
         bin/$$i > debian/manpages/$$i.1.partial ;\
         mv debian/manpages/$$i.1.partial $(MANDIR)/$$i.1 ;\
    done
	mv -f debian/manpages/juju-admin.1.partial $(MANDIR)/juju-admin.1
	mv -f debian/manpages/juju.1.partial $(MANDIR)/juju.1

override_dh_auto_build: generate_juju_manpages

install_juju_manpages:
	mkdir -p debian/juju-$(MAJOR_VER)/usr/lib/juju-$(VER)/man/man1
	cp -a debian/manpages/*.1 debian/juju-$(MAJOR_VER)/usr/lib/juju-$(VER)/man/man1/
	gzip debian/juju-$(MAJOR_VER)/usr/lib/juju-$(VER)/man/man1/*.1

install_bash_completion:
	mkdir -p debian/juju-$(MAJOR_VER)/usr/lib/juju-$(VER)/etc/bash_completion.d
	cp -a misc/bash_completion.d/juju debian/juju-$(MAJOR_VER)/usr/lib/juju-$(VER)/etc/bash_completion.d/juju

debian/juju-$(VER).docs: debian/juju.docs.in
	sed -e "s/__NEW_VERSION__/$(VER)/g" $< > $@

override_dh_auto_install: install_juju_manpages install_bash_completion debian/juju-$(VER).docs
	set -e && python setup.py install --root=debian/juju-$(MAJOR_VER) --install-layout=deb --install-scripts=/usr/lib/juju-$(VER)/bin --compile
	dh_auto_install

debian/juju-$(VER).postinst: debian/juju.postinst.in
	sed -e "s/__NEW_VERSION__/$(VER)/g" $< > $@

debian/juju-$(VER).prerm: debian/juju.prerm.in
	sed -e "s/__NEW_VERSION__/$(VER)/g" $< > $@

override_dh_installdeb: debian/juju-$(VER).postinst debian/juju-$(VER).prerm
	dh_installdeb

