diff options
author | Daniƫl de Kok <me@danieldk.eu> | 2020-06-25 15:17:52 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-06-25 15:17:52 +0200 |
commit | 80b6b9b7065a2bf6bc7932054bc225f474d4c284 (patch) | |
tree | df31e770e490f1f63594294089f211cc54c02dd0 /pkgs/development | |
parent | 37aab787f545631acd10a30bae65bdc4b3f2ddad (diff) | |
parent | 3ff2165d4d43a42b2b9dec7a8366e49bf2db1f26 (diff) | |
download | nixpkgs-80b6b9b7065a2bf6bc7932054bc225f474d4c284.tar nixpkgs-80b6b9b7065a2bf6bc7932054bc225f474d4c284.tar.gz nixpkgs-80b6b9b7065a2bf6bc7932054bc225f474d4c284.tar.bz2 nixpkgs-80b6b9b7065a2bf6bc7932054bc225f474d4c284.tar.lz nixpkgs-80b6b9b7065a2bf6bc7932054bc225f474d4c284.tar.xz nixpkgs-80b6b9b7065a2bf6bc7932054bc225f474d4c284.tar.zst nixpkgs-80b6b9b7065a2bf6bc7932054bc225f474d4c284.zip |
Merge pull request #82305 from Flakebi/amdvlk
amdvlk: init at 2020.Q2.5
Diffstat (limited to 'pkgs/development')
-rw-r--r-- | pkgs/development/libraries/amdvlk/default.nix | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/pkgs/development/libraries/amdvlk/default.nix b/pkgs/development/libraries/amdvlk/default.nix new file mode 100644 index 00000000000..84b4d53bc56 --- /dev/null +++ b/pkgs/development/libraries/amdvlk/default.nix @@ -0,0 +1,85 @@ +{ stdenv +, lib +, fetchpatch +, fetchRepoProject +, cmake +, ninja +, patchelf +, perl +, pkgconfig +, python3 +, expat +, libdrm +, ncurses +, openssl +, wayland +, xorg +, zlib +}: + +stdenv.mkDerivation rec { + pname = "amdvlk"; + version = "2020.Q2.5"; + + src = fetchRepoProject { + name = "${pname}-src"; + manifest = "https://github.com/GPUOpen-Drivers/AMDVLK.git"; + rev = "refs/tags/v-${version}"; + sha256 = "008adby8vx12ma155x64n7aj9vp9ygqgij3mm3q20i187db7d1ab"; + }; + + buildInputs = [ + expat + ncurses + openssl + wayland + xorg.libX11 + xorg.libxcb + xorg.xcbproto + xorg.libXext + xorg.libXrandr + xorg.libXft + xorg.libxshmfence + zlib + ]; + + nativeBuildInputs = [ + cmake + ninja + patchelf + perl + pkgconfig + python3 + ]; + + rpath = lib.makeLibraryPath [ + libdrm + stdenv.cc.cc.lib + xorg.libX11 + xorg.libxcb + xorg.libxshmfence + ]; + + cmakeDir = "../drivers/xgl"; + + installPhase = '' + install -Dm755 -t $out/lib icd/amdvlk64.so + install -Dm644 -t $out/share/vulkan/icd.d ../drivers/AMDVLK/json/Redhat/amd_icd64.json + + substituteInPlace $out/share/vulkan/icd.d/amd_icd64.json --replace \ + "/usr/lib64" "$out/lib" + + patchelf --set-rpath "$rpath" $out/lib/amdvlk64.so + ''; + + # Keep the rpath, otherwise vulkaninfo and vkcube segfault + dontPatchELF = true; + + meta = with stdenv.lib; { + description = "AMD Open Source Driver For Vulkan"; + homepage = "https://github.com/GPUOpen-Drivers/AMDVLK"; + license = licenses.mit; + platforms = [ "x86_64-linux" ]; + maintainers = with maintainers; [ Flakebi ]; + }; +} |