diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/ucx')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/ucx/default.nix | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/ucx/default.nix b/nixpkgs/pkgs/development/libraries/ucx/default.nix new file mode 100644 index 000000000000..06c0ada16feb --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/ucx/default.nix @@ -0,0 +1,53 @@ +{ lib, stdenv, fetchFromGitHub, autoreconfHook, doxygen +, numactl, rdma-core, libbfd, libiberty, perl, zlib, symlinkJoin +, enableCuda ? false +, cudatoolkit +}: + +let + # Needed for configure to find all libraries + cudatoolkit' = symlinkJoin { + inherit (cudatoolkit) name meta; + paths = [ cudatoolkit cudatoolkit.lib ]; + }; + +in stdenv.mkDerivation rec { + pname = "ucx"; + version = "1.11.2"; + + src = fetchFromGitHub { + owner = "openucx"; + repo = "ucx"; + rev = "v${version}"; + sha256 = "0a4rbgr3hn3h42krb7lasfidhqcavacbpp1pv66l4lvfc0gkwi2i"; + }; + + nativeBuildInputs = [ autoreconfHook doxygen ]; + + buildInputs = [ + libbfd + libiberty + numactl + perl + rdma-core + zlib + ] ++ lib.optional enableCuda cudatoolkit; + + configureFlags = [ + "--with-rdmacm=${rdma-core}" + "--with-dc" + "--with-rc" + "--with-dm" + "--with-verbs=${rdma-core}" + ] ++ lib.optional enableCuda "--with-cuda=${cudatoolkit'}"; + + enableParallelBuilding = true; + + meta = with lib; { + description = "Unified Communication X library"; + homepage = "http://www.openucx.org"; + license = licenses.bsd3; + platforms = platforms.linux; + maintainers = [ maintainers.markuskowa ]; + }; +} |