diff options
Diffstat (limited to 'pkgs/development/tools/vulkan-validation-layers/default.nix')
-rw-r--r-- | pkgs/development/tools/vulkan-validation-layers/default.nix | 42 |
1 files changed, 5 insertions, 37 deletions
diff --git a/pkgs/development/tools/vulkan-validation-layers/default.nix b/pkgs/development/tools/vulkan-validation-layers/default.nix index 9df68c63810b7..dfc5ea9de6542 100644 --- a/pkgs/development/tools/vulkan-validation-layers/default.nix +++ b/pkgs/development/tools/vulkan-validation-layers/default.nix @@ -13,38 +13,6 @@ }: let - # vulkan-validation-layers requires a custom glslang & robin-hood-hashing - # version, while glslang requires custom versions for spirv-tools and spirv-headers. - # - # The git hashes required for all of these deps is documented upstream here: - # https://github.com/KhronosGroup/Vulkan-ValidationLayers/blob/master/scripts/known_good.json - # and https://github.com/KhronosGroup/glslang/blob/master/known_good.json - localSpirvHeaders = spirv-headers.overrideAttrs (_: { - src = fetchFromGitHub { - owner = "KhronosGroup"; - repo = "SPIRV-Headers"; - rev = "449bc986ba6f4c5e10e32828783f9daef2a77644"; # pin - sha256 = "1249pvk4iz09caxm3kwckzwcx2hbw97cr2h8h770l6c061kb14z5"; - }; - }); - localGlslang = (glslang.override { - argSpirv-tools = spirv-tools.overrideAttrs (_: { - src = fetchFromGitHub { - owner = "KhronosGroup"; - repo = "SPIRV-Tools"; - rev = "1fbed83c8aab8517d821fcb4164c08567951938f"; # pin - sha256 = "0faz468bnxpvbg1np13gnbwf35s0hl9ad7r2p9wi9si5k336qjmj"; - }; - }); - argSpirv-headers = localSpirvHeaders; - }).overrideAttrs (_: { - src = fetchFromGitHub { - owner = "KhronosGroup"; - repo = "glslang"; - rev = "2fb89a0072ae7316af1c856f22663fde4928128a"; # pin - sha256 = "04kkmphv0a5mb5javhmkc4kab8r0n107kb7djakj5h238ni2j7q9"; - }; - }); robin-hood-hashing = fetchFromGitHub { owner = "martinus"; repo = "robin-hood-hashing"; @@ -54,19 +22,19 @@ let in stdenv.mkDerivation rec { pname = "vulkan-validation-layers"; - version = "1.2.189.1"; + version = "1.2.198.0"; # If we were to use "dev" here instead of headers, the setupHook would be # placed in that output instead of "out". outputs = ["out" "headers"]; outputInclude = "headers"; - src = (assert version == vulkan-headers.version; + src = (assert (lib.all (pkg: pkg.version == version) [vulkan-headers glslang spirv-tools spirv-headers]); fetchFromGitHub { owner = "KhronosGroup"; repo = "Vulkan-ValidationLayers"; rev = "sdk-${version}"; - sha256 = "0a5plvvffidgnqh5ymq315xscl08w298sn9da48b3x2rdbdqgw90"; + sha256 = "sha256-/pnXT55EQZcnjOzY2vBwp+gM6l2hktZHwB9yKP8vVTU="; }); # Include absolute paths to layer libraries in their associated @@ -88,8 +56,8 @@ stdenv.mkDerivation rec { ]; cmakeFlags = [ - "-DGLSLANG_INSTALL_DIR=${localGlslang}" - "-DSPIRV_HEADERS_INSTALL_DIR=${localSpirvHeaders}" + "-DGLSLANG_INSTALL_DIR=${glslang}" + "-DSPIRV_HEADERS_INSTALL_DIR=${spirv-headers}" "-DROBIN_HOOD_HASHING_INSTALL_DIR=${robin-hood-hashing}" "-DBUILD_LAYER_SUPPORT_FILES=ON" # Hide dev warnings that are useless for packaging |