Merge master into staging-next
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
, xlibsWrapper, libxcb, libXrandr, libXext, wayland, addOpenGLRunpath }:
|
||||
|
||||
let
|
||||
version = "1.1.106";
|
||||
version = "1.1.114.0";
|
||||
in
|
||||
|
||||
assert version == vulkan-headers.version;
|
||||
@@ -14,17 +14,15 @@ stdenv.mkDerivation rec {
|
||||
owner = "KhronosGroup";
|
||||
repo = "Vulkan-Loader";
|
||||
rev = "sdk-${version}";
|
||||
sha256 = "0zhrwj1gi90x2w8gaaaw5h4b969a8gfy244kn0drrplhhb1nqz3b";
|
||||
sha256 = "08nibkbjf3g32qyp5bpdvj7i0zdv5ds1n5y52z8pvyzkpiz7s6ww";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig addOpenGLRunpath ];
|
||||
buildInputs = [ cmake python3 xlibsWrapper libxcb libXrandr libXext wayland ];
|
||||
enableParallelBuilding = true;
|
||||
|
||||
patches = [ ./system-search-path.patch ];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DSYSTEM_SEARCH_PATH=${addOpenGLRunpath.driverLink}/share"
|
||||
"-DSYSCONFDIR=${addOpenGLRunpath.driverLink}/share"
|
||||
"-DVULKAN_HEADERS_INSTALL_DIR=${vulkan-headers}"
|
||||
];
|
||||
|
||||
|
||||
@@ -1,45 +0,0 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 9ac5ce835..cbdb0ff56 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -88,6 +88,12 @@ if(UNIX)
|
||||
STRING
|
||||
"Search path to use when XDG_DATA_DIRS is unset or empty or the current process is SUID/SGID. Default is freedesktop compliant."
|
||||
)
|
||||
+ set(
|
||||
+ SYSTEM_SEARCH_PATH ""
|
||||
+ CACHE
|
||||
+ STRING
|
||||
+ "Search path to always use, after all other search paths."
|
||||
+ )
|
||||
endif()
|
||||
|
||||
if(UNIX AND NOT APPLE) # i.e.: Linux
|
||||
@@ -184,6 +190,7 @@ if(UNIX)
|
||||
add_definitions(-DFALLBACK_CONFIG_DIRS="${FALLBACK_CONFIG_DIRS}")
|
||||
add_definitions(-DFALLBACK_DATA_DIRS="${FALLBACK_DATA_DIRS}")
|
||||
add_definitions(-DSYSCONFDIR="${CMAKE_INSTALL_FULL_SYSCONFDIR}")
|
||||
+ add_definitions(-DSYSTEM_SEARCH_PATH="${SYSTEM_SEARCH_PATH}")
|
||||
|
||||
# Make sure /etc is searched by the loader
|
||||
if(NOT (CMAKE_INSTALL_FULL_SYSCONFDIR STREQUAL "/etc"))
|
||||
diff --git a/loader/loader.c b/loader/loader.c
|
||||
index 0d3b5a947..abe357004 100644
|
||||
--- a/loader/loader.c
|
||||
+++ b/loader/loader.c
|
||||
@@ -3688,6 +3688,7 @@ static VkResult ReadDataFilesInSearchPaths(const struct loader_instance *inst, e
|
||||
search_path_size += DetermineDataFilePathSize(xdgdatahome, rel_size);
|
||||
search_path_size += DetermineDataFilePathSize(home_root, rel_size);
|
||||
}
|
||||
+ search_path_size += DetermineDataFilePathSize(SYSTEM_SEARCH_PATH, rel_size);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
@@ -3737,6 +3738,7 @@ static VkResult ReadDataFilesInSearchPaths(const struct loader_instance *inst, e
|
||||
CopyDataFilePath(xdgdatahome, relative_location, rel_size, &cur_path_ptr);
|
||||
CopyDataFilePath(home_root, relative_location, rel_size, &cur_path_ptr);
|
||||
}
|
||||
+ CopyDataFilePath(SYSTEM_SEARCH_PATH, relative_location, rel_size, &cur_path_ptr);
|
||||
}
|
||||
|
||||
// Remove the last path separator
|
||||
Reference in New Issue
Block a user