diff options
author | joachifm <joachifm@users.noreply.github.com> | 2016-04-18 15:30:00 +0200 |
---|---|---|
committer | joachifm <joachifm@users.noreply.github.com> | 2016-04-18 15:30:00 +0200 |
commit | c7f9b6c440fcbe7ca02d92de0c64c31188a45638 (patch) | |
tree | 6ffd71aaa343f6ce9fbd12e4ccb539c4e54cb3d2 /pkgs/development | |
parent | 302f3a3f5596b1a8708f0a17e1667145d217797a (diff) | |
parent | d916f1663fc8ea2ee5cddc218d7a428bba634018 (diff) | |
download | nixlib-c7f9b6c440fcbe7ca02d92de0c64c31188a45638.tar nixlib-c7f9b6c440fcbe7ca02d92de0c64c31188a45638.tar.gz nixlib-c7f9b6c440fcbe7ca02d92de0c64c31188a45638.tar.bz2 nixlib-c7f9b6c440fcbe7ca02d92de0c64c31188a45638.tar.lz nixlib-c7f9b6c440fcbe7ca02d92de0c64c31188a45638.tar.xz nixlib-c7f9b6c440fcbe7ca02d92de0c64c31188a45638.tar.zst nixlib-c7f9b6c440fcbe7ca02d92de0c64c31188a45638.zip |
Merge pull request #13968 from bzizou/libibverbs
libibverbs: added mlx4 and mthca userspace driver plugins
Diffstat (limited to 'pkgs/development')
-rw-r--r-- | pkgs/development/libraries/libibverbs/default.nix | 60 |
1 files changed, 54 insertions, 6 deletions
diff --git a/pkgs/development/libraries/libibverbs/default.nix b/pkgs/development/libraries/libibverbs/default.nix index 5ce1e5cbdf6c..8e37648adfcc 100644 --- a/pkgs/development/libraries/libibverbs/default.nix +++ b/pkgs/development/libraries/libibverbs/default.nix @@ -1,17 +1,65 @@ { stdenv, fetchurl }: -stdenv.mkDerivation rec { - name = "libibverbs-1.1.8"; +let - src = fetchurl { - url = "https://www.openfabrics.org/downloads/verbs/${name}.tar.gz"; - sha256 = "13w2j5lrrqxxxvhpxbqb70x7wy0h8g329inzgfrvqv8ykrknwxkw"; + verbs = rec { + version = "1.1.8"; + 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; { homepage = https://www.openfabrics.org/; license = licenses.bsd2; platforms = with platforms; linux ++ freebsd; - maintainers = with maintainers; [ wkennington ]; + maintainers = with maintainers; [ wkennington bzizou ]; }; } + |