vulkan-loader: 1.0.21.0 -> 1.0.26.0
Also added asserts to ensure everything stays in sync.
This commit is contained in:
parent
b52e8809d6
commit
e0e27c83ab
@ -1,21 +1,22 @@
|
|||||||
{ stdenv, fetchFromGitHub, cmake, bison }:
|
{ stdenv, fetchFromGitHub, cmake, bison }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "glslang-${version}";
|
name = "glslang-git-${version}";
|
||||||
version = "2016-07-16";
|
version = "2016-08-26";
|
||||||
|
|
||||||
# `vulkan-loader` requires a specific version of `glslang` as specified in
|
# `vulkan-loader` requires a specific version of `glslang` as specified in
|
||||||
# `<vulkan-loader-repo>/glslang_revision`.
|
# `<vulkan-loader-repo>/glslang_revision`.
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "KhronosGroup";
|
owner = "KhronosGroup";
|
||||||
repo = "glslang";
|
repo = "glslang";
|
||||||
rev = "e4821e43c86d97bcf65fb07c1f70471b7102978d";
|
rev = "81cd764b5ffc475bc73f1fb35f75fd1171bb2343";
|
||||||
sha256 = "0vnfl8r5ssil1sffgk9sf7c7n5l3775pfizxgb1bcyvm84vw0pr3";
|
sha256 = "1vfwl6lzkjh9nh29q32b7zca4q1abf3q4nqkahskijgznw5lr59g";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [ ./install-headers.patch ];
|
patches = [ ./install-headers.patch ];
|
||||||
|
|
||||||
buildInputs = [ cmake bison ];
|
buildInputs = [ cmake bison ];
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
inherit (src.meta) homepage;
|
inherit (src.meta) homepage;
|
||||||
|
@ -1,23 +1,23 @@
|
|||||||
diff --git a/SPIRV/CMakeLists.txt b/SPIRV/CMakeLists.txt
|
diff --git a/SPIRV/CMakeLists.txt b/SPIRV/CMakeLists.txt
|
||||||
index 50cda68..d4ba381 100755
|
index 48a6c46..593d941 100755
|
||||||
--- a/SPIRV/CMakeLists.txt
|
--- a/SPIRV/CMakeLists.txt
|
||||||
+++ b/SPIRV/CMakeLists.txt
|
+++ b/SPIRV/CMakeLists.txt
|
||||||
@@ -26,3 +26,8 @@ endif(WIN32)
|
@@ -42,3 +42,8 @@ endif(WIN32)
|
||||||
|
|
||||||
install(TARGETS SPIRV
|
install(TARGETS SPIRV SPVRemapper
|
||||||
ARCHIVE DESTINATION lib)
|
ARCHIVE DESTINATION lib)
|
||||||
+
|
+
|
||||||
+foreach(file ${HEADERS})
|
+foreach(file ${HEADERS} ${SPVREMAP_HEADERS})
|
||||||
+ get_filename_component(dir ${file} DIRECTORY)
|
+ get_filename_component(dir ${file} DIRECTORY)
|
||||||
+ install(FILES ${file} DESTINATION include/SPIRV/${dir})
|
+ install(FILES ${file} DESTINATION include/SPIRV/${dir})
|
||||||
+endforeach()
|
+endforeach()
|
||||||
diff --git a/glslang/CMakeLists.txt b/glslang/CMakeLists.txt
|
diff --git a/glslang/CMakeLists.txt b/glslang/CMakeLists.txt
|
||||||
index 28f4742..5a25cbb 100644
|
index ff91135..4318279 100644
|
||||||
--- a/glslang/CMakeLists.txt
|
--- a/glslang/CMakeLists.txt
|
||||||
+++ b/glslang/CMakeLists.txt
|
+++ b/glslang/CMakeLists.txt
|
||||||
@@ -87,3 +87,8 @@ endif(WIN32)
|
@@ -90,3 +90,8 @@ endif(WIN32)
|
||||||
|
|
||||||
install(TARGETS glslang
|
install(TARGETS glslang
|
||||||
ARCHIVE DESTINATION lib)
|
ARCHIVE DESTINATION lib)
|
||||||
+
|
+
|
||||||
+foreach(file ${HEADERS})
|
+foreach(file ${HEADERS})
|
||||||
|
@ -3,20 +3,29 @@
|
|||||||
|
|
||||||
assert stdenv.system == "x86_64-linux";
|
assert stdenv.system == "x86_64-linux";
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
let
|
||||||
name = "vulkan-loader-${version}";
|
version = "1.0.26.0";
|
||||||
version = "1.0.21.0";
|
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "KhronosGroup";
|
owner = "KhronosGroup";
|
||||||
repo = "Vulkan-LoaderAndValidationLayers";
|
repo = "Vulkan-LoaderAndValidationLayers";
|
||||||
rev = "97e3b677d9681aa8d420c314edae96c4bf72246d";
|
rev = "sdk-${version}";
|
||||||
sha256 = "1y42rlffmr80rd4m0xfv2mfwd9qvd680i18vr0xs109narb6fm4f";
|
sha256 = "157m746hc76xrxd3qq0f44f5dy7pjbz8cx74ykqrlbc7rmpjpk58";
|
||||||
};
|
};
|
||||||
|
getRev = name: builtins.substring 0 40 (builtins.readFile "${src}/${name}_revision");
|
||||||
|
in
|
||||||
|
|
||||||
|
assert getRev "spirv-tools" == spirv-tools.src.rev;
|
||||||
|
assert getRev "spirv-headers" == spirv-tools.headers.rev;
|
||||||
|
assert getRev "glslang" == glslang.src.rev;
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "vulkan-loader-${version}";
|
||||||
|
inherit version src;
|
||||||
|
|
||||||
buildInputs = [ cmake pkgconfig git python3 python3Packages.lxml
|
buildInputs = [ cmake pkgconfig git python3 python3Packages.lxml
|
||||||
glslang spirv-tools x11 libxcb wayland
|
glslang spirv-tools x11 libxcb wayland
|
||||||
];
|
];
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
"-DBUILD_WSI_WAYLAND_SUPPORT=ON" # XLIB/XCB supported by default
|
"-DBUILD_WSI_WAYLAND_SUPPORT=ON" # XLIB/XCB supported by default
|
||||||
|
@ -3,19 +3,19 @@
|
|||||||
let
|
let
|
||||||
|
|
||||||
spirv_sources = {
|
spirv_sources = {
|
||||||
# `vulkan-loader` requires a specific version of `spirv-tools` as specified
|
# `vulkan-loader` requires a specific version of `spirv-tools` and `spirv-headers` as specified in
|
||||||
# in `<vulkan-loader-repo>/spirv-tools_revision`.
|
# `<vulkan-loader-repo>/spirv-tools_revision`.
|
||||||
tools = fetchFromGitHub {
|
tools = fetchFromGitHub {
|
||||||
owner = "KhronosGroup";
|
owner = "KhronosGroup";
|
||||||
repo = "SPIRV-Tools";
|
repo = "SPIRV-Tools";
|
||||||
rev = "1a9385bbd0e6eae188c14302cf37c415ecc8b698";
|
rev = "923a4596b44831a07060df45caacb522613730c9";
|
||||||
sha256 = "12a2wyxhsnms966s12x9bkz2kh478qf9ygglzkxkd83j5fvmvzwm";
|
sha256 = "0hmgng2sv34amfsag3ya09prnv1w535djwlzfn8h2vh430vgawxa";
|
||||||
};
|
};
|
||||||
headers = fetchFromGitHub {
|
headers = fetchFromGitHub {
|
||||||
owner = "KhronosGroup";
|
owner = "KhronosGroup";
|
||||||
repo = "SPIRV-Headers";
|
repo = "SPIRV-Headers";
|
||||||
rev = "3814effb879ab5a98a7b9288a4b4c7849d2bc8ac";
|
rev = "33d41376d378761ed3a4c791fc4b647761897f26";
|
||||||
sha256 = "1wfszfsx318i0gavwk0w1klg4wiav8g4q4qpraqgm69arasfb9gh";
|
sha256 = "1s103bpi3g6hhq453qa4jbabfkyxxpf9vn213j8k4vm26lsi8hs2";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -27,9 +27,14 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
src = spirv_sources.tools;
|
src = spirv_sources.tools;
|
||||||
patchPhase = ''ln -sv ${spirv_sources.headers} external/spirv-headers'';
|
patchPhase = ''ln -sv ${spirv_sources.headers} external/spirv-headers'';
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
buildInputs = [ cmake python ];
|
buildInputs = [ cmake python ];
|
||||||
|
|
||||||
|
passthru = {
|
||||||
|
headers = spirv_sources.headers;
|
||||||
|
};
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
inherit (src.meta) homepage;
|
inherit (src.meta) homepage;
|
||||||
description = "The SPIR-V Tools project provides an API and commands for processing SPIR-V modules.";
|
description = "The SPIR-V Tools project provides an API and commands for processing SPIR-V modules.";
|
||||||
|
Loading…
x
Reference in New Issue
Block a user