2021-02-05 17:12:51 +00:00
|
|
|
{ lib, stdenv, fetchFromGitHub, numactl, pkg-config }:
|
2020-05-03 17:38:23 +00:00
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
|
|
|
pname = "libpsm2";
|
2022-02-10 20:34:41 +00:00
|
|
|
version = "11.2.203";
|
2020-05-03 17:38:23 +00:00
|
|
|
|
|
|
|
preConfigure= ''
|
|
|
|
export UDEVDIR=$out/etc/udev
|
|
|
|
substituteInPlace ./Makefile --replace "udevrulesdir}" "prefix}/etc/udev";
|
|
|
|
'';
|
|
|
|
|
|
|
|
enableParallelBuilding = true;
|
|
|
|
|
2021-02-05 17:12:51 +00:00
|
|
|
buildInputs = [ numactl pkg-config ];
|
2020-05-03 17:38:23 +00:00
|
|
|
|
2021-09-22 15:38:15 +00:00
|
|
|
makeFlags = [
|
|
|
|
# Disable blanket -Werror to avoid build failures
|
|
|
|
# on fresh toolchains like gcc-11.
|
|
|
|
"WERROR="
|
|
|
|
];
|
|
|
|
|
2020-12-25 13:55:36 +00:00
|
|
|
installFlags = [
|
2020-05-03 17:38:23 +00:00
|
|
|
"DESTDIR=$(out)"
|
|
|
|
"UDEVDIR=/etc/udev"
|
|
|
|
"LIBPSM2_COMPAT_CONF_DIR=/etc"
|
|
|
|
];
|
|
|
|
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "intel";
|
|
|
|
repo = "opa-psm2";
|
2020-12-25 13:55:36 +00:00
|
|
|
rev = "PSM2_${version}";
|
2022-02-10 20:34:41 +00:00
|
|
|
sha256 = "sha256-W5Mg5ATUARMFAy1VVpMKPar0VpbKfrkxa6bDhqVYpoc=";
|
2020-05-03 17:38:23 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
postInstall = ''
|
|
|
|
mv $out/usr/* $out
|
|
|
|
rmdir $out/usr
|
|
|
|
'';
|
|
|
|
|
2021-01-15 22:18:51 +00:00
|
|
|
meta = with lib; {
|
2020-05-03 17:38:23 +00:00
|
|
|
homepage = "https://github.com/intel/opa-psm2";
|
|
|
|
description = "The PSM2 library supports a number of fabric media and stacks";
|
|
|
|
license = with licenses; [ gpl2 bsd3 ];
|
2021-09-22 15:38:15 +00:00
|
|
|
platforms = [ "x86_64-linux" ];
|
2020-05-03 17:38:23 +00:00
|
|
|
maintainers = [ maintainers.bzizou ];
|
|
|
|
};
|
|
|
|
}
|