Hi, not sure whether there will be a lot of discussion on the bug report, so forwarding here for input. Anybody think this is a good/bad idea?
Michael ----- Forwarded message from Michael Banck <[email protected]> ----- Date: Tue, 1 Mar 2016 02:32:56 +0100 From: Michael Banck <[email protected]> To: [email protected] Subject: blacs-mpi: run testsuite User-Agent: Mutt/1.5.23 (2014-03-12) Package: blacs-mpi Version: 1.1-33.3 Severity: important Tags: patch Hi, I guess the severity can be bikeshedded at, but I find it important to exercise the testsuites at build time at least once before a release on all arches. Hence, I've written the attached patch that runs the test programs and checks for failures. It is rather simple, but better than nothing in my opinion. If people think this is a good idea, I'look into adapting the patch for scalapack. The main question is whether the tests are too big for our smaller arches, but we won't find out if we don't try it. Michael diff -u blacs-mpi-1.1/debian/changelog blacs-mpi-1.1/debian/changelog --- blacs-mpi-1.1/debian/changelog +++ blacs-mpi-1.1/debian/changelog @@ -1,3 +1,10 @@ +blacs-mpi (1.1-33.4) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Run testsuite + + -- Michael Banck <[email protected]> Tue, 01 Mar 2016 01:59:46 +0100 + blacs-mpi (1.1-33.3) unstable; urgency=medium * Non-maintainer upload. diff -u blacs-mpi-1.1/debian/control blacs-mpi-1.1/debian/control --- blacs-mpi-1.1/debian/control +++ blacs-mpi-1.1/debian/control @@ -8,7 +8,7 @@ Priority: extra Maintainer: Muammar El Khatib <[email protected]> Standards-Version: 3.9.1 -Build-Depends: debhelper (>= 7), mpi-default-dev (>= 1.0), gfortran, pkg-config +Build-Depends: debhelper (>= 7), mpi-default-dev (>= 1.0), mpi-default-bin, gfortran, pkg-config Homepage: http://www.netlib.org/blacs/ Package: libblacs-openmpi1 diff -u blacs-mpi-1.1/debian/control.in blacs-mpi-1.1/debian/control.in --- blacs-mpi-1.1/debian/control.in +++ blacs-mpi-1.1/debian/control.in @@ -3,7 +3,7 @@ Priority: extra Maintainer: Muammar El Khatib <[email protected]> Standards-Version: 3.9.1 -Build-Depends: debhelper (>= 7), mpi-default-dev (>= 1.0), gfortran, pkg-config +Build-Depends: debhelper (>= 7), mpi-default-dev (>= 1.0), mpi-default-bin, gfortran, pkg-config Homepage: http://www.netlib.org/blacs/ Package: libblacs-openmpi1 diff -u blacs-mpi-1.1/debian/rules blacs-mpi-1.1/debian/rules --- blacs-mpi-1.1/debian/rules +++ blacs-mpi-1.1/debian/rules @@ -16,13 +16,13 @@ build: build-$(ARCH_DEFAULT_MPI_IMPL) -build-openmpi: build-stamp-openmpi +build-openmpi: build-stamp-openmpi check-stamp-openmpi -build-lam: build-stamp-lam +build-lam: build-stamp-lam check-stamp-lam -build-mpich: build-stamp-mpich +build-mpich: build-stamp-mpich check-stamp-mpich -build-mpich2: build-stamp-mpich2 +build-mpich2: build-stamp-mpich2 check-stamp-mpich2 patch-stamp: patch -p1 < debian/blacs-mpi-implementations.patch @@ -193,6 +193,70 @@ touch build-stamp-mpich2 +check-stamp-openmpi: +ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) + dh_testdir + if [ -x /usr/bin/mpiexec.openmpi ]; then \ + (cd TESTING/EXE; for i in *-openmpi; do \ + echo "Running test $$i"; \ + LD_LIBRARY_PATH=../../ mpiexec.openmpi -np 4 ./$$i > $$i.log 2>&1 ; \ + grep FAILED $$i.log | sed s/DOUBLE// | \ + awk '{total += $$4; passed += $$6; skipped += $$8; failed += $$10} END \ + {print "total: " total " passed: " passed " skipped: " skipped " failed: " failed ; \ + if (failed > 0) {exit 1}}' ; \ + done) \ + fi +endif + touch check-stamp-openmpi + +check-stamp-lam: +ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) + dh_testdir + if [ -x /usr/bin/mpiexec.lam ]; then \ + (cd TESTING/EXE; for i in *-lam; do \ + echo "Running test $$i"; \ + LD_LIBRARY_PATH=../../ mpiexec.lam -np 4 ./$$i > $$i.log 2>&1 ; \ + grep FAILED $$i.log | sed s/DOUBLE// | \ + awk '{total += $$4; passed += $$6; skipped += $$8; failed += $$10} END \ + {print "total: " total " passed: " passed " skipped: " skipped " failed: " failed ; \ + if (failed > 0) {exit 1}}' ; \ + done) \ + fi +endif + touch check-stamp-lam + +check-stamp-mpich: +ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) + dh_testdir + if [ -x /usr/bin/mpiexec.mpich ]; then \ + (cd TESTING/EXE; for i in *-mpich; do \ + echo "Running test $$i"; \ + LD_LIBRARY_PATH=../../ mpiexec.mpich -np 4 ./$$i > $$i.log 2>&1 ; \ + grep FAILED $$i.log | sed s/DOUBLE// | \ + awk '{total += $$4; passed += $$6; skipped += $$8; failed += $$10} END \ + {print "total: " total " passed: " passed " skipped: " skipped " failed: " failed ; \ + if (failed > 0) {exit 1}}' ; \ + done) \ + fi +endif + touch check-stamp-mpich + +check-stamp-mpich2: +ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) + dh_testdir + if [ -x /usr/bin/mpiexec.mpich2 ]; then \ + (cd TESTING/EXE; for i in *-mpich2; do \ + echo "Running test $$i"; \ + LD_LIBRARY_PATH=../../ mpiexec.mpich2 -np 4 ./$$i > $$i.log 2>&1 ; \ + grep FAILED $$i.log | sed s/DOUBLE// | \ + awk '{total += $$4; passed += $$6; skipped += $$8; failed += $$10} END \ + {print "total: " total " passed: " passed " skipped: " skipped " failed: " failed ; \ + if (failed > 0) {exit 1}}' ; \ + done) \ + fi +endif + touch check-stamp-mpich2 + clean: unpatch dh_testdir dh_testroot ----- End forwarded message -----

