#!/usr/bin/make -f # -*- makefile -*- include /usr/share/mpi-default-dev/debian_defaults export OMPI_MCA_plm_rsh_agent=/bin/false ifeq (ia64, $(DEB_HOST_ARCH)) DEB_BUILD_OPTIONS += nocheck endif empty := space := $(empty)$(empty) # mpich tests time out on these arches ARCH_SKIP_MPICH_TEST_LIST = ppc64 sparc64 ifneq (,$(findstring $(space)$(DEB_HOST_ARCH)$(space), $(space)$(ARCH_SKIP_MPICH_TEST_LIST)$(space))) TEST_MPI_FLAVORS=openmpi else TEST_MPI_FLAVORS=mpich openmpi endif %: dh $@ --with autoreconf override_dh_clean: dh_clean rm -rf $(CURDIR)/pristine-src $(CURDIR)/build-mpich $(CURDIR)/build-openmpi override_dh_autoreconf: rm -rf $(CURDIR)/pristine-src $(CURDIR)/build-mpich $(CURDIR)/build-openmpi tmpdir=`mktemp -d`; \ cp -ra $(CURDIR)/* $${tmpdir}; \ mv $$tmpdir $(CURDIR)/pristine-src dh_autoreconf --as-needed --sourcedirectory=$(CURDIR)/pristine-src cp -ra pristine-src build-mpich cp -ra pristine-src build-openmpi override_dh_auto_configure: for mpi_flavor in mpich openmpi; do \ MPICC=mpicc.$${mpi_flavor} dh_auto_configure --sourcedirectory=$(CURDIR)/build-$${mpi_flavor} -- MPI_FLAVOR=$${mpi_flavor}; \ done override_dh_auto_build: for mpi_flavor in mpich openmpi; do \ dh_auto_build --sourcedirectory=$(CURDIR)/build-$${mpi_flavor}; \ done ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) override_dh_auto_test: set -e; \ ncpu=`nproc`; if [ $${ncpu} -gt 1 ]; then ncpu=2; fi;\ for mpi_flavor in $(TEST_MPI_FLAVORS); do \ $(MAKE) -C $(CURDIR)/build-$${mpi_flavor} -k check MPIEXEC="mpiexec.$${mpi_flavor} -np $${ncpu}" ARMCI_USE_WIN_ALLOCATE=1 || cat $(CURDIR)/build-$${mpi_flavor}/test-suite.log; \ done endif override_dh_auto_install: for mpi_flavor in mpich openmpi; do \ dh_auto_install --sourcedirectory=$(CURDIR)/build-$${mpi_flavor}; \ done override_dh_link: dh_link -plibarmci-mpi-dev usr/lib/$(DEB_HOST_MULTIARCH)/libarmci-$(ARCH_DEFAULT_MPI_IMPL).a usr/lib/$(DEB_HOST_MULTIARCH)/libarmci.a dh_link -plibarmci-mpi-dev usr/lib/$(DEB_HOST_MULTIARCH)/libarmci-$(ARCH_DEFAULT_MPI_IMPL).la usr/lib/$(DEB_HOST_MULTIARCH)/libarmci.la