summary refs log tree commit diff
path: root/pkgs/development/libraries/rocm-comgr
diff options
context:
space:
mode:
authorDaniël de Kok <me@danieldk.eu>2020-07-10 19:53:14 +0200
committerDaniël de Kok <me@danieldk.eu>2020-07-13 19:59:35 +0200
commitbf54eee4272ce2d8c82d10636e064275011244bf (patch)
tree43201c64464d60fc0e86e09d0e76cc3848c2f29c /pkgs/development/libraries/rocm-comgr
parentb5de63fb8ce9f9c768e6fc7240ef81cf17498e6c (diff)
downloadnixpkgs-bf54eee4272ce2d8c82d10636e064275011244bf.tar
nixpkgs-bf54eee4272ce2d8c82d10636e064275011244bf.tar.gz
nixpkgs-bf54eee4272ce2d8c82d10636e064275011244bf.tar.bz2
nixpkgs-bf54eee4272ce2d8c82d10636e064275011244bf.tar.lz
nixpkgs-bf54eee4272ce2d8c82d10636e064275011244bf.tar.xz
nixpkgs-bf54eee4272ce2d8c82d10636e064275011244bf.tar.zst
nixpkgs-bf54eee4272ce2d8c82d10636e064275011244bf.zip
rocm-comgr: init at 3.5.0
Diffstat (limited to 'pkgs/development/libraries/rocm-comgr')
-rw-r--r--pkgs/development/libraries/rocm-comgr/default.nix46
1 files changed, 46 insertions, 0 deletions
diff --git a/pkgs/development/libraries/rocm-comgr/default.nix b/pkgs/development/libraries/rocm-comgr/default.nix
new file mode 100644
index 00000000000..c86b081a14c
--- /dev/null
+++ b/pkgs/development/libraries/rocm-comgr/default.nix
@@ -0,0 +1,46 @@
+{ stdenv, fetchFromGitHub, cmake, clang, device-libs, lld, llvm }:
+
+stdenv.mkDerivation rec {
+  pname = "rocm-comgr";
+  version = "3.5.0";
+
+  src = fetchFromGitHub {
+    owner = "RadeonOpenCompute";
+    repo = "ROCm-CompilerSupport";
+    rev = "rocm-${version}";
+    sha256 = "0h9bxz98sskgzc3xpnp469iq1wi59nbijbqprlylha91y10hqb88";
+  };
+
+  sourceRoot = "source/lib/comgr";
+
+  nativeBuildInputs = [ cmake ];
+
+  buildInputs = [ clang device-libs lld llvm ];
+
+  cmakeFlags = [
+    "-DCLANG=${clang}/bin/clang"
+    "-DCMAKE_BUILD_TYPE=Release"
+    "-DCMAKE_C_COMPILER=${clang}/bin/clang"
+    "-DCMAKE_CXX_COMPILER=${clang}/bin/clang++"
+    "-DCMAKE_PREFIX_PATH=${llvm}/lib/cmake/llvm"
+    "-DLLD_INCLUDE_DIRS=${lld.src}/include"
+    "-DLLVM_TARGETS_TO_BUILD=\"AMDGPU;X86\""
+  ];
+
+  # The comgr build tends to link against the static LLVM libraries
+  # *and* the dynamic library. Linking against both causes errors
+  # about command line options being registered twice. This patch
+  # removes the static library linking.
+  patchPhase = ''
+    sed -e '/^llvm_map_components_to_libnames/,/[[:space:]]*Symbolize)/d' \
+        -i CMakeLists.txt
+  '';
+
+  meta = with stdenv.lib; {
+    description = "APIs for compiling and inspecting AMDGPU code objects";
+    homepage = "https://github.com/RadeonOpenCompute/ROCm-CompilerSupport/tree/amd-stg-open/lib/comgr";
+    license = licenses.ncsa;
+    maintainers = with maintainers; [ danieldk ];
+    platforms = platforms.linux;
+  };
+}