From dadc02ca9937a1152b6b3d30ffce56465de4e0ba Mon Sep 17 00:00:00 2001 From: Rodrigo Arias Mallo Date: Mon, 28 Sep 2020 13:01:31 +0200 Subject: [PATCH] Update libpsm2: disabled by now --- bsc/libpsm2/default.nix | 44 +++++++++++++++++++++++++++++++++++++++++ overlay.nix | 3 +++ 2 files changed, 47 insertions(+) create mode 100644 bsc/libpsm2/default.nix diff --git a/bsc/libpsm2/default.nix b/bsc/libpsm2/default.nix new file mode 100644 index 0000000..cf59010 --- /dev/null +++ b/bsc/libpsm2/default.nix @@ -0,0 +1,44 @@ +{ stdenv, fetchFromGitHub, numactl, pkgconfig }: + +let + version = "11.2.185"; +in +stdenv.mkDerivation { + pname = "libpsm2"; + inherit version; + + preConfigure= '' + export UDEVDIR=$out/etc/udev + substituteInPlace ./Makefile --replace "udevrulesdir}" "prefix}/etc/udev"; + ''; + + enableParallelBuilding = true; + + buildInputs = [ numactl pkgconfig ]; + + installFlags = [ + "DESTDIR=$(out)" + "UDEVDIR=/etc/udev" + "LIBPSM2_COMPAT_CONF_DIR=/etc" + ]; + + src = fetchFromGitHub { + owner = "intel"; + repo = "opa-psm2"; + rev = "PSM2_${version}"; + sha256 = "062hg4r6gz7pla9df70nqs5i2a3mp1wszmp4l0g771fykhhrxsjg"; + }; + + postInstall = '' + mv $out/usr/* $out + rmdir $out/usr + ''; + + meta = with stdenv.lib; { + homepage = "https://github.com/intel/opa-psm2"; + description = "The PSM2 library supports a number of fabric media and stacks"; + license = with licenses; [ gpl2 bsd3 ]; + platforms = [ "x86_64-linux" ]; + maintainers = [ maintainers.bzizou ]; + }; +} diff --git a/overlay.nix b/overlay.nix index 298369a..f646302 100644 --- a/overlay.nix +++ b/overlay.nix @@ -30,6 +30,9 @@ let mpichDebug = self.mpich.override { enableDebug = true; }; + # Updated version of libpsm2: TODO push upstream. + #libpsm2 = callPackage ./bsc/libpsm2/default.nix { }; + # Default Intel MPI version is 2019 (the last one) impi = self.bsc.intelMpi;