mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-27 01:13:05 +00:00
libibverbs: added mlx4 and mthca userspace driver plugins
This commit is contained in:
parent
be0abb32f6
commit
d916f1663f
@ -1,17 +1,65 @@
|
|||||||
{ stdenv, fetchurl }:
|
{ stdenv, fetchurl }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
let
|
||||||
name = "libibverbs-1.1.8";
|
|
||||||
|
|
||||||
src = fetchurl {
|
verbs = rec {
|
||||||
url = "https://www.openfabrics.org/downloads/verbs/${name}.tar.gz";
|
version = "1.1.8";
|
||||||
sha256 = "13w2j5lrrqxxxvhpxbqb70x7wy0h8g329inzgfrvqv8ykrknwxkw";
|
name = "libibverbs-${version}";
|
||||||
|
url = "http://downloads.openfabrics.org/verbs/${name}.tar.gz";
|
||||||
|
sha256 = "13w2j5lrrqxxxvhpxbqb70x7wy0h8g329inzgfrvqv8ykrknwxkw";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
drivers = {
|
||||||
|
libmlx4 = rec {
|
||||||
|
version = "1.0.6";
|
||||||
|
name = "libmlx4-${version}";
|
||||||
|
url = "http://downloads.openfabrics.org/mlx4/${name}.tar.gz";
|
||||||
|
sha256 = "f680ecbb60b01ad893490c158b4ce8028a3014bb8194c2754df508d53aa848a8";
|
||||||
|
};
|
||||||
|
libmthca = rec {
|
||||||
|
version = "1.0.6";
|
||||||
|
name = "libmthca-${version}";
|
||||||
|
url = "http://downloads.openfabrics.org/mthca/${name}.tar.gz";
|
||||||
|
sha256 = "cc8ea3091135d68233d53004e82b5b510009c821820494a3624e89e0bdfc855c";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
in stdenv.mkDerivation rec {
|
||||||
|
|
||||||
|
inherit (verbs) name version ;
|
||||||
|
|
||||||
|
srcs = [
|
||||||
|
( fetchurl { inherit (verbs) url sha256 ; } )
|
||||||
|
( fetchurl { inherit (drivers.libmlx4) url sha256 ; } )
|
||||||
|
( fetchurl { inherit (drivers.libmthca) url sha256 ; } )
|
||||||
|
];
|
||||||
|
|
||||||
|
sourceRoot = name;
|
||||||
|
|
||||||
|
# Install userspace drivers
|
||||||
|
postInstall = ''
|
||||||
|
for dir in ${drivers.libmlx4.name} ${drivers.libmthca.name} ; do
|
||||||
|
cd ../$dir
|
||||||
|
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$out/include"
|
||||||
|
export NIX_LDFLAGS="-rpath $out/lib $NIX_LDFLAGS -L$out/lib"
|
||||||
|
./configure $configureFlags
|
||||||
|
make -j$NIX_BUILD_CORES
|
||||||
|
make install
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
|
||||||
|
# Re-add the libibverbs path into runpath of the library
|
||||||
|
# to enable plugins to be found by dlopen
|
||||||
|
postFixup = ''
|
||||||
|
RPATH=$(patchelf --print-rpath $out/lib/libibverbs.so)
|
||||||
|
patchelf --set-rpath $RPATH:$out/lib $out/lib/libibverbs.so.1.0.0
|
||||||
|
'';
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
homepage = https://www.openfabrics.org/;
|
homepage = https://www.openfabrics.org/;
|
||||||
license = licenses.bsd2;
|
license = licenses.bsd2;
|
||||||
platforms = with platforms; linux ++ freebsd;
|
platforms = with platforms; linux ++ freebsd;
|
||||||
maintainers = with maintainers; [ wkennington ];
|
maintainers = with maintainers; [ wkennington bzizou ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user