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