From 57c7aea64d14f4cc91246b4bc76b7f87e3b9ffee Mon Sep 17 00:00:00 2001 From: qbisi Date: Thu, 1 May 2025 02:29:48 +0800 Subject: [PATCH] petsc: add test for varient built with mpich mpich is not yet in pkgs/by-name and requires an explicit extra argument `ch4backend` when used with callPackage, unlike openmpi. As a result, we cannot override `mpi` in the petscPackages scope using the form `callPackage mpi.override { }`. --- pkgs/by-name/pe/petsc/package.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/pe/petsc/package.nix b/pkgs/by-name/pe/petsc/package.nix index 7dc61b709db3..92af728022bd 100644 --- a/pkgs/by-name/pe/petsc/package.nix +++ b/pkgs/by-name/pe/petsc/package.nix @@ -58,6 +58,7 @@ # Used in passthru.tests petsc, + mpich, }: assert withFullDeps -> withCommonDeps; @@ -76,6 +77,7 @@ assert withSuperLuDist -> mpiSupport; let petscPackages = lib.makeScope newScope (self: { inherit + mpi # global override options mpiSupport fortranSupport @@ -86,7 +88,6 @@ let petscPackages = self; # external libraries - mpi = self.callPackage mpi.override { }; blas = self.callPackage blas.override { }; lapack = self.callPackage lapack.override { }; hdf5 = self.callPackage hdf5.override { @@ -287,6 +288,9 @@ stdenv.mkDerivation (finalAttrs: { withFullDeps = true; withParmetis = false; }; + mpich = petsc.override { + mpi = mpich; + }; }; };