[hdf5] 01/03: Support openmpi for any arch but m68k

Gilles Filippini pini at debian.org
Fri Feb 19 00:35:50 UTC 2016


This is an automated email from the git hooks/post-receive script.

pini pushed a commit to branch master
in repository hdf5.

commit f4a30f16ad2e7b39dcb8358eab64b57909a13179
Author: Gilles Filippini <pini at debian.org>
Date:   Thu Feb 18 23:53:28 2016 +0100

    Support openmpi for any arch but m68k
---
 debian/changelog |  6 ++++++
 debian/control   |  6 +++---
 debian/rules     | 30 ++++++++++++++++++------------
 3 files changed, 27 insertions(+), 15 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 4be8fcf..bba004d 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+hdf5 (1.8.16+docs-4) UNRELEASED; urgency=medium
+
+  * Support openmpi for any arch but m68k (closes: #814329).
+
+ -- Gilles Filippini <pini at debian.org>  Thu, 18 Feb 2016 23:50:59 +0100
+
 hdf5 (1.8.16+docs-3) unstable; urgency=medium
 
   * libhdf5{,-mpich,-openmpi}-dev: Depends: libaec-dev (closes: #812683).
diff --git a/debian/control b/debian/control
index 4097fd1..63ecd24 100644
--- a/debian/control
+++ b/debian/control
@@ -97,7 +97,7 @@ Description: Hierarchical Data Format 5 (HDF5) - development files - serial vers
 Package: libhdf5-openmpi-10
 Section: libs
 Priority: extra
-Architecture: alpha amd64 armel armhf arm64 i386 ia64 powerpc powerpcspe ppc64 ppc64el sparc sparc64 kfreebsd-i386 kfreebsd-amd64 hurd-i386 mips64 mips64el mips mipsel
+Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}
 Pre-Depends: ${misc:Pre-Depends}
 Multi-Arch: same
@@ -112,7 +112,7 @@ Description: Hierarchical Data Format 5 (HDF5) - runtime files - OpenMPI version
 Package: libhdf5-openmpi-dev
 Section: libdevel
 Priority: extra
-Architecture: alpha amd64 armel armhf arm64 i386 ia64 powerpc powerpcspe ppc64 ppc64el sparc sparc64 kfreebsd-i386 kfreebsd-amd64 hurd-i386 mips64 mips64el mips mipsel
+Architecture: any
 Depends: libhdf5-openmpi-10 (= ${binary:Version}), zlib1g-dev, libaec-dev,
  libjpeg-dev, libopenmpi-dev, ${misc:Depends}
 Suggests: libhdf5-doc
@@ -127,7 +127,7 @@ Description: Hierarchical Data Format 5 (HDF5) - development files - OpenMPI ver
 Package: libhdf5-openmpi-10-dbg
 Section: debug
 Priority: extra
-Architecture: alpha amd64 armel armhf arm64 i386 ia64 powerpc powerpcspe ppc64 ppc64el sparc sparc64 kfreebsd-i386 kfreebsd-amd64 hurd-i386 mips64 mips64el mips mipsel
+Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends},
  libhdf5-openmpi-10 (= ${binary:Version}),
 Multi-Arch: same
diff --git a/debian/rules b/debian/rules
index 9f34e56..9a21b12 100755
--- a/debian/rules
+++ b/debian/rules
@@ -53,23 +53,29 @@ DEFAULT_MPI=$(ARCH_DEFAULT_MPI_IMPL)
 # Setting empty OMPIARCHS and MPICHARCHS environment variables disables
 # the related mpi targets
 #
-# To be used if openmpi binary packages were buildable on any arch
-#ARCH_FLAG=-a
-#ARCHS=any
-ARCH_FLAG=-s
-OMPIARCHS?=alpha amd64 armel armhf arm64 i386 ia64 powerpc powerpcspe ppc64 ppc64el sparc sparc64 kfreebsd-i386 kfreebsd-amd64 hurd-i386 mips64 mips64el mips mipsel
+ARCH_FLAG=-a
+# openmpi build fails on arch m68k (2016-02-19)
+OMPIARCHS?=any !m68k
 MPICHARCHS?=any
 
-ifeq (,$(or $(filter $(DEB_HOST_ARCH),$(OMPIARCHS)),$(filter any,$(OMPIARCHS))))
-build_openmpi = no
-else
+# To build for $arch there must be either "any" or "$arch" and no "!$arch"
+ifneq (,$(and $(if $(filter !$(DEB_HOST_ARCH),$(OMPIARCHS)),,yes),$(or $(filter any,$(OMPIARCHS)),$(filter $(DEB_HOST_ARCH),$(OMPIARCHS)))))
 build_openmpi = yes
+else
+build_openmpi = no
+# Exclude binary openmpi packages from the build. See debhelper manpage.
+# This is in case an arch is disabled with "!$arch". These strings can't
+# appear in debian/control, but the build have to be disabled anyway for
+# the related archs.
+export DH_OPTIONS += -N$(openmpipack) -N$(openmpipack)-dbg -Nlibhdf5-openmpi-dev
 endif
 
-ifeq (,$(or $(filter $(DEB_HOST_ARCH),$(MPICHARCHS)),$(filter any,$(MPICHARCHS))))
-build_mpich = no
-else
+ifneq (,$(and $(if $(filter !$(DEB_HOST_ARCH),$(MPICHARCHS)),,yes),$(or $(filter any,$(MPICHARCHS)),$(filter $(DEB_HOST_ARCH),$(MPICHARCHS)))))
 build_mpich = yes
+else
+build_mpich = no
+# See above comment for build_openmpi
+export DH_OPTIONS += -N$(mpichpack) -N$(mpichpack)-dbg -Nlibhdf5-mpich-dev
 endif
 
 ifeq ($(build_openmpi),yes)
@@ -236,7 +242,7 @@ clean:
 	-rm -rf debian/build
 	-rm -rf debian/build-openmpi
 	-rm -rf debian/build-mpich
-	grep -v ^\% debian/control.in | sed -e "s/@SONAME@/$(SONAME)/g" -e "s/@SONAME_CXX@/$(SONAME_CXX)/g" -e "s/@OMPIARCHS@/$(OMPIARCHS)/" -e "s/@MPICHARCHS@/$(MPICHARCHS)/" -e "s/@MAJOR_VERSION@/$(major_version)/" > debian/control
+	grep -v ^\% debian/control.in | sed -e "s/@SONAME@/$(SONAME)/g" -e "s/@SONAME_CXX@/$(SONAME_CXX)/g" -e "s/@OMPIARCHS@/$(filter-out !%,$(OMPIARCHS))/" -e "s/@MPICHARCHS@/$(filter-out !%,$(MPICHARCHS))/" -e "s/@MAJOR_VERSION@/$(major_version)/" > debian/control
 	dh_autoreconf_clean
 	rm -f m4/l*
 	-cd debian && rm -f `ls libhdf5-*.install libhdf5-*.shlibs libhdf5-*.doc | grep -v 'libhdf5-doc'`

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/hdf5.git



More information about the Pkg-grass-devel mailing list