2021-01-19 06:50:56 +00:00
|
|
|
{ lib, stdenv, fetchFromGitHub, numactl, pkg-config }:
|
2020-04-28 09:38:21 +00:00
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
|
|
|
pname = "libpsm2";
|
2022-07-31 20:15:49 +00:00
|
|
|
version = "11.2.229";
|
2020-04-28 09:38:21 +00:00
|
|
|
|
|
|
|
preConfigure= ''
|
|
|
|
export UDEVDIR=$out/etc/udev
|
|
|
|
substituteInPlace ./Makefile --replace "udevrulesdir}" "prefix}/etc/udev";
|
|
|
|
'';
|
|
|
|
|
|
|
|
enableParallelBuilding = true;
|
|
|
|
|
2021-01-19 06:50:56 +00:00
|
|
|
buildInputs = [ numactl pkg-config ];
|
2020-04-28 09:38:21 +00:00
|
|
|
|
2021-09-20 19:09:54 +00:00
|
|
|
makeFlags = [
|
|
|
|
# Disable blanket -Werror to avoid build failures
|
|
|
|
# on fresh toolchains like gcc-11.
|
|
|
|
"WERROR="
|
|
|
|
];
|
|
|
|
|
2020-12-20 21:07:34 +00:00
|
|
|
installFlags = [
|
2020-04-28 09:38:21 +00:00
|
|
|
"DESTDIR=$(out)"
|
|
|
|
"UDEVDIR=/etc/udev"
|
|
|
|
"LIBPSM2_COMPAT_CONF_DIR=/etc"
|
|
|
|
];
|
|
|
|
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "intel";
|
|
|
|
repo = "opa-psm2";
|
2020-12-20 21:07:34 +00:00
|
|
|
rev = "PSM2_${version}";
|
2022-07-31 20:15:49 +00:00
|
|
|
sha256 = "sha256-t3tZCxGmGMscDmeyCATLbHxU7jEJqAzxwPV0Z8pl2ko=";
|
2020-04-28 09:38:21 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
postInstall = ''
|
|
|
|
mv $out/usr/* $out
|
|
|
|
rmdir $out/usr
|
|
|
|
'';
|
|
|
|
|
2021-01-11 07:54:33 +00:00
|
|
|
meta = with lib; {
|
2020-04-28 09:38:21 +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-20 19:07:20 +00:00
|
|
|
platforms = [ "x86_64-linux" ];
|
2020-04-28 09:38:21 +00:00
|
|
|
maintainers = [ maintainers.bzizou ];
|
|
|
|
};
|
|
|
|
}
|