Bug#1055455: mpich: Update hurd configuration

Samuel Thibault sthibault at debian.org
Mon Nov 6 17:05:44 GMT 2023


Package: mpich
Version: 4.1.2-2
Severity: important
Tags: patch

Hello,

The mpich package needs a few fixes to build on hurd-amd64, as the
attached patch does.

The patch incidentally fixes passing

  --with-ibverbs --with-libfabric=/usr --with-slurm

on most archs : the condition was inverted in debian/rules...

It probably also fixes build failures reported on ppc64 (see #1032008
#1054035)

Samuel

-- System Information:
Debian Release: trixie/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable-debug'), (500, 'testing-debug'), (500, 'stable-security'), (500, 'stable-debug'), (500, 'oldstable-proposed-updates-debug'), (500, 'oldstable-proposed-updates'), (500, 'oldoldstable-proposed-updates'), (500, 'oldoldstable'), (500, 'buildd-unstable'), (500, 'unstable'), (500, 'stable'), (500, 'oldstable'), (1, 'experimental-debug'), (1, 'buildd-experimental'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386, arm64

Kernel: Linux 6.5.0-1-amd64 (SMP w/8 CPU threads; PREEMPT)
Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages mpich depends on:
ii  hwloc       2.9.3-1
ii  libc6       2.37-12
ii  libhwloc15  2.9.3-1
ii  libmpich12  4.1.2-2
ii  libslurm39  23.02.3-2

Versions of packages mpich recommends:
ii  libmpich-dev  4.1.2-2

Versions of packages mpich suggests:
pn  mpich-doc  <none>

-- no debconf information

-- 
Samuel
---
Pour une évaluation indépendante, transparente et rigoureuse !
Je soutiens la Commission d'Évaluation de l'Inria.
-------------- next part --------------
--- debian/rules.original	2023-11-05 21:03:47.000000000 +0000
+++ debian/rules	2023-11-05 22:06:10.000000000 +0000
@@ -23,40 +23,40 @@
 # Keep old library naming scheme
 export MPILIBNAME=mpich
 
-NO_ROMIO_ARCH:= hurd-i386
-NO_VERBS_ARCH:= hurd-i386 s390x
-NO_SLURM_ARCH:= hurd-i386
-NO_FABRIC_ARCH:= hurd-i386 s390x powerpc sh4 x32
+NO_ROMIO_ARCH:= hurd-amd64 hurd-i386
+NO_VERBS_ARCH:= hurd-amd64 hurd-i386 s390x
+NO_SLURM_ARCH:= hurd-amd64 hurd-i386
+NO_FABRIC_ARCH:= hurd-amd64 hurd-i386 s390x powerpc sh4 x32
 BUILTIN_ATOMICS_ARCH:= armhf riscv64 hppa
 NO_REAL128_ARCH:= armel armhf mipsel hppa m68k sh5
 # Pick one as default
 NO_CH4_ARCH:= armel armhf i386 mipsel  hppa m68k sh4 powerpc x32 mips64el s390x
 UCX_ARCH:= amd64  ppc64el arm64 
 
-ifneq (,$(findstring  " $(DEB_HOST_ARCH)",$(NO_VERBS_ARCH)))
+ifeq (,$(filter $(DEB_HOST_ARCH),$(NO_VERBS_ARCH)))
 	VERBS := --with-ibverbs
 endif
-ifneq (,$(findstring $(DEB_HOST_ARCH),$(BUILTIN_ATOMICS_ARCH)))
+ifneq (,$(filter $(DEB_HOST_ARCH),$(BUILTIN_ATOMICS_ARCH)))
 	DISABLE_BUILTIN_ATOMICS:= --with-atomic-primitives=no
 endif
-ifneq (,$(findstring $(DEB_HOST_ARCH),$(NO_FABRIC_ARCH)))
+ifeq (,$(filter $(DEB_HOST_ARCH),$(NO_FABRIC_ARCH)))
 	FABRIC := --with-libfabric=/usr
 endif
-ifneq (,$(findstring  $(DEB_HOST_ARCH),$(NO_REAL128_ARCH)))
+ifneq (,$(filter  $(DEB_HOST_ARCH),$(NO_REAL128_ARCH)))
         MPICHLIB_FCFLAGS:=$(MPICHLIB_FCFLAGS) -DNO_REAL128
 endif
-ifneq (,$(findstring $(DEB_HOST_ARCH),$(NO_SLURM_ARCH)))
+ifeq (,$(filter $(DEB_HOST_ARCH),$(NO_SLURM_ARCH)))
 	SLURM := --with-slurm=/usr 
 endif
 
 DEVICE:= --with-device=ch3
 UCX:=
 PMIX:=
-ifeq (,$(findstring  $(DEB_HOST_ARCH),$(NO_CH4_ARCH)))
+ifeq (,$(filter  $(DEB_HOST_ARCH),$(NO_CH4_ARCH)))
         DEVICE:= --with-device=ch4:ofi 
 	#PMIX:=  --with-pmix=/usr/lib/$(DEB_HOST_MULTIARCH)/pmix2
 endif
-ifneq (,$(findstring  $(DEB_HOST_ARCH),$(UCX_ARCH)))
+ifneq (,$(filter  $(DEB_HOST_ARCH),$(UCX_ARCH)))
         DEVICE:= --with-device=ch4:ucx
 	UCX:= --with-ucx=/usr
 	#PMIX:=  --with-pmix=/usr/lib/$(DEB_HOST_MULTIARCH)/pmix2
@@ -87,7 +87,7 @@
 
 # On sparc and sh4, OPA isn't available, so we need to fallback to
 # emulation mode. There's a performance penalty, unfortunately.
-ifneq (,$(findstring $(DEB_HOST_GNU_CPU),sparc sh4))
+ifneq (,$(filter $(DEB_HOST_GNU_CPU),sparc sh4))
 	extra_flags += --with-atomic-primitives=no
 endif
 
@@ -146,9 +146,9 @@
 override_dh_installchangelogs:
 	dh_installchangelogs README
 
-# Some tests are failing on hurd-i386.
+# Some tests are failing on hurd-amd64 hurd-i386.
 # Disable them, to be investiated later
-# disable_test_archs = hurd-i386
+# disable_test_archs = hurd-amd64 hurd-i386
 disable_test_archs = 
 # ifneq (,$(filter $(DEB_HOST_ARCH),$(disable_test_archs)))
 override_dh_auto_test:
--- debian/control.original	2023-11-05 21:17:37.000000000 +0000
+++ debian/control	2023-11-05 21:17:52.000000000 +0000
@@ -11,11 +11,11 @@
 	       chrpath,
                hwloc-nox,
                libhwloc-dev,
-               librdmacm-dev [!hurd-i386],
-               libslurm-dev [!hurd-i386],
-               libibverbs-dev (>= 1.1.7) [!hurd-i386],
-               libfabric-dev [!hurd-i386 !powerpc !sh4 !x32],
-               libnuma-dev [!hurd-i386],
+               librdmacm-dev [!hurd-any],
+               libslurm-dev [!hurd-any],
+               libibverbs-dev (>= 1.1.7) [!hurd-any],
+               libfabric-dev [!hurd-any !powerpc !sh4 !x32],
+               libnuma-dev [!hurd-any],
 	       libucx-dev [amd64  ppc64el arm64],
                libpmix-dev,
                libxt-dev,


More information about the debian-science-maintainers mailing list