mpich: fix darwin build
The darwin build was failing because neither of the ch4backend libraries build on darwin. Changes: * delete unused argument device * pass the derivation for the ch4backend in directly rather than using a string to switch between two other arguments. (3 args to 1 arg) * don't use ch4backend on Darwin Resolves #121978
This commit is contained in:
parent
e62feb3bf4
commit
a3d423090b
2 changed files with 8 additions and 9 deletions
|
@ -1,15 +1,13 @@
|
|||
{ stdenv, lib, fetchurl, perl, gfortran
|
||||
, openssh, hwloc, autoconf, automake, libtool
|
||||
# device options are ch3 or ch4
|
||||
, device ? "ch4"
|
||||
# backend option are libfabric or ucx
|
||||
, ch4backend ? "libfabric"
|
||||
, ucx, libfabric
|
||||
# either libfabric or ucx work for ch4backend on linux. On darwin, neither of
|
||||
# these libraries currently build so this argument is ignored on Darwin.
|
||||
, ch4backend
|
||||
# Process manager to build
|
||||
, withPm ? "hydra:gforker"
|
||||
} :
|
||||
|
||||
assert (ch4backend == "ucx" || ch4backend == "libfabric");
|
||||
assert (ch4backend.pname == "ucx" || ch4backend.pname == "libfabric");
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mpich";
|
||||
|
@ -45,8 +43,7 @@ stdenv.mkDerivation rec {
|
|||
enableParallelBuilding = true;
|
||||
|
||||
buildInputs = [ perl gfortran openssh hwloc ]
|
||||
++ lib.optional (ch4backend == "ucx") ucx
|
||||
++ lib.optional (ch4backend == "libfabric") libfabric;
|
||||
++ lib.optional (!stdenv.isDarwin) ch4backend;
|
||||
|
||||
doCheck = true;
|
||||
|
||||
|
|
|
@ -16711,7 +16711,9 @@ in
|
|||
|
||||
libmpc = callPackage ../development/libraries/libmpc { };
|
||||
|
||||
mpich = callPackage ../development/libraries/mpich { };
|
||||
mpich = callPackage ../development/libraries/mpich {
|
||||
ch4backend = libfabric;
|
||||
};
|
||||
|
||||
mstpd = callPackage ../os-specific/linux/mstpd { };
|
||||
|
||||
|
|
Loading…
Reference in a new issue