Merge pull request #214023 from hmenke/openmpi-libfabric

openmpi: fix for newer libfabric
This commit is contained in:
Weijia Wang 2023-02-01 21:47:09 +01:00 committed by GitHub
commit 31968e86ed
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 27 additions and 7 deletions

View File

@ -1,9 +1,18 @@
{ lib, stdenv, fetchFromGitHub, pkg-config, autoreconfHook, libpsm2
, enablePsm2 ? (stdenv.isx86_64 && stdenv.isLinux) }:
{ lib
, stdenv
, fetchFromGitHub
, pkg-config
, autoreconfHook
, enablePsm2 ? (stdenv.isx86_64 && stdenv.isLinux)
, libpsm2
, enableOpx ? (stdenv.isx86_64 && stdenv.isLinux)
, libuuid
, numactl
}:
stdenv.mkDerivation rec {
pname = "libfabric";
version = "1.15.1";
version = "1.17.0";
enableParallelBuilding = true;
@ -11,14 +20,17 @@ stdenv.mkDerivation rec {
owner = "ofiwg";
repo = pname;
rev = "v${version}";
sha256 = "sha256-uL3L9k9yqdZXQmR1zi8OEIGLAZ8cf7EBnlDhetaMA08=";
sha256 = "sha256-tXfAn8hkasA2UuA4/8dOE3EcORyJo/A33TtSNdzDXD8=";
};
nativeBuildInputs = [ pkg-config autoreconfHook ];
buildInputs = lib.optional enablePsm2 libpsm2;
buildInputs = lib.optionals enableOpx [ libuuid numactl ] ++ lib.optional enablePsm2 [ libpsm2 ];
configureFlags = [ (if enablePsm2 then "--enable-psm2=${libpsm2}" else "--disable-psm2") ];
configureFlags = [
(if enablePsm2 then "--enable-psm2=${libpsm2}" else "--disable-psm2")
(if enableOpx then "--enable-opx" else "--disable-opx")
];
meta = with lib; {
homepage = "https://ofiwg.github.io/libfabric/";

View File

@ -1,4 +1,4 @@
{ lib, stdenv, fetchurl, gfortran, perl, libnl
{ lib, stdenv, fetchurl, fetchpatch, gfortran, perl, libnl
, rdma-core, zlib, numactl, libevent, hwloc, targetPackages, symlinkJoin
, libpsm2, libfabric, pmix, ucx
@ -32,6 +32,14 @@ in stdenv.mkDerivation rec {
sha256 = "03ckngrff1cl0l81vfvrfhp99rbgk7s0633kr1l468yibwbjx4cj";
};
patches = [
(fetchpatch {
name = "RDMA-osc-perform-CAS-in-shared-memory-if-possible.patch";
url = "https://github.com/open-mpi/ompi/pull/10513/commits/0512c135a77a0278e5288e0e119dce24c95ebed4.patch";
sha256 = "sha256-K1Gc+hBUkTPY1WqLP6JWo623EUhkoL4ONrqPVDNfFuE=";
})
];
postPatch = ''
patchShebangs ./