Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / development / tools / rgp / default.nix
blobbfbccdf9d48f7bde166b9992977d53e359abb422
1 { lib
2 , stdenv
3 , makeWrapper
4 , fetchurl
5 , autoPatchelfHook
6 , dbus
7 , fontconfig
8 , freetype
9 , glib
10 , libGLU
11 , libglvnd
12 , libX11
13 , libxcb
14 , libXi
15 , ncurses
16 , qtbase
17 , qtdeclarative
18 , zlib
21 let
22   buildNum = "2023-05-22-1083";
24 stdenv.mkDerivation {
25   pname = "rgp";
26   version = "1.15.1";
28   src = fetchurl {
29     url = "https://gpuopen.com/download/radeon-developer-tool-suite/RadeonDeveloperToolSuite-${buildNum}.tgz";
30     hash = "sha256-WSSiNiiIVw1wwt9vxgyirBDe+SPzH87LU1GlSdUhZB8=";
31   };
33   nativeBuildInputs = [ makeWrapper autoPatchelfHook ];
35   buildInputs = [
36     dbus
37     fontconfig
38     freetype
39     glib
40     libGLU
41     libglvnd
42     libX11
43     libxcb
44     libXi
45     ncurses
46     qtbase
47     qtdeclarative
48     zlib
49   ];
51   dontWrapQtApps = true;
53   installPhase = ''
54     mkdir -p $out/opt/rgp $out/bin
55     cp -r . $out/opt/rgp/
57     chmod +x $out/opt/rgp/scripts/*
58     patchShebangs $out/opt/rgp/scripts
60     for prog in RadeonDeveloperPanel RadeonDeveloperService RadeonDeveloperServiceCLI RadeonGPUAnalyzer RadeonGPUProfiler RadeonMemoryVisualizer RadeonRaytracingAnalyzer rga rtda; do
61       # makeWrapper is needed so that executables are started from the opt
62       # directory, where qt.conf and other tools are
63       makeWrapper \
64         $out/opt/rgp/$prog \
65         $out/bin/$prog
66     done
67   '';
69   meta = with lib; {
70     description = "A tool from AMD that allows for deep inspection of GPU workloads";
71     homepage = "https://gpuopen.com/rgp/";
72     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
73     license = licenses.unfree;
74     platforms = [ "x86_64-linux" ];
75     maintainers = with maintainers; [ Flakebi ];
76   };