#!/usr/bin/make -f
# -*- makefile -*-

PYVER = $(shell pyversions -d -v)
PYVERS = $(shell pyversions -r -v)

# Enforce use of openmpi only for now,
# could be overriden from commandline as necessary
MPI=.openmpi

%:
	dh --buildsystem=python_distutils $@

# Enforce distutils build system to build for all supported versions
# then build documentation
override_dh_auto_build:
	dh_auto_build $@ -- \
		--mpicc=/usr/bin/mpicc$(MPI) --mpicxx=/usr/bin/mpicxx$(MPI)
	: # Build documentation now
	PYTHONPATH=`/bin/ls -d $(CURDIR)/build/lib.*$(PYVER)` \
	 make -C docs/source/usrman/ html
	-rm -r docs/source/usrman/build/html/_sources
	: # objects inventory is of no use for the package
	-rm docs/source/usrman/build/html/objects.inv

override_dh_auto_install:
	dh_auto_install --destdir=debian/python-mpi4py $@

override_dh_auto_test:
ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
	for P in $(PYVERS); do \
	 PYTHONPATH=`/bin/ls -d $(CURDIR)/build/lib.*-$$P` \
	  /usr/bin/python$$P /usr/bin/nosetests -v -w test --exclude='test(PackUnpackExternal|FreePredefined)'; \
	done
else
	: # Skip unittests due to nocheck
endif

override_dh_strip:
	dh_strip --dbg-package=python-mpi4py-dbg

override_dh_installchangelogs:
	dh_installchangelogs HISTORY.txt

## Immediately useable documentation
override_dh_compress:
	dh_compress -X.py -X.html -X.css -X.jpg -X.txt -X.js -X.json -X.rtc -X.par -X.bin -Xobjects.inv

override_dh_auto_clean:
	dh_auto_clean $@
	rm -rf docs/source/usrman/build
