diff --git a/pkgs/development/libraries/rocm-device-libs/default.nix b/pkgs/development/libraries/rocm-device-libs/default.nix new file mode 100644 index 000000000000..a71a6a880c98 --- /dev/null +++ b/pkgs/development/libraries/rocm-device-libs/default.nix @@ -0,0 +1,41 @@ +{ stdenv +, fetchFromGitHub +, cmake +, clang +, clang-unwrapped +, lld +, llvm +, rocm-runtime +}: + +stdenv.mkDerivation rec { + pname = "rocm-device-libs"; + version = "3.5.0"; + + src = fetchFromGitHub { + owner = "RadeonOpenCompute"; + repo = "ROCm-Device-Libs"; + rev = "rocm-${version}"; + sha256 = "0n160jwbh7jnqckz5bn979ll8afh2a97lf962xh9xv3cx025vnrn"; + }; + + nativeBuildInputs = [ cmake ]; + + buildInputs = [ clang lld llvm rocm-runtime ]; + + cmakeBuildType = "Release"; + + cmakeFlags = [ + "-DCMAKE_PREFIX_PATH=${llvm}/lib/cmake/llvm;${clang-unwrapped}/lib/cmake/clang" + "-DLLVM_TARGETS_TO_BUILD='AMDGPU;X86'" + "-DCLANG=${clang}/bin/clang" + ]; + + meta = with stdenv.lib; { + description = "Set of AMD-specific device-side language runtime libraries"; + homepage = "https://github.com/RadeonOpenCompute/ROCm-Device-Libs"; + license = licenses.ncsa; + maintainers = with maintainers; [ danieldk ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2dfb6332c72c..ab33173f9204 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9235,6 +9235,10 @@ in rgbds = callPackage ../development/compilers/rgbds { }; + rocm-device-libs = callPackage ../development/libraries/rocm-device-libs { + inherit (llvmPackages_rocm) clang clang-unwrapped lld llvm; + }; + rocm-runtime = callPackage ../development/libraries/rocm-runtime { }; rocm-thunk = callPackage ../development/libraries/rocm-thunk { };