diff options
author | Khem Raj <raj.khem@gmail.com> | 2024-01-25 23:34:45 -0800 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2024-01-27 09:48:31 -0800 |
commit | 542c2a23d6ef3cfbff9031383686c788702eafac (patch) | |
tree | ba146e8ebff37b6dd7a99fa7ff20c69211b8e1f0 /meta-oe/recipes-graphics | |
parent | 996d41396aaa5ee93fd1b4935dbb7000785acb01 (diff) | |
download | meta-openembedded-542c2a23d6ef3cfbff9031383686c788702eafac.tar.gz |
vulkan-cts: Upgrade to 1.3.7.3
Adjust for different patches between vulkan-cts and opengl-es-cts
Use gcc to compile vulkan-cts for now, it does not like libc++ headers
from clang-18
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/recipes-graphics')
-rw-r--r-- | meta-oe/recipes-graphics/vk-gl-cts/files/0001-cmake-Define-WAYLAND_SCANNER-and-WAYLAND_PROTOCOLS_D.patch | 20 | ||||
-rw-r--r-- | meta-oe/recipes-graphics/vk-gl-cts/files/0001-include-missing-cstdint.patch | 61 | ||||
-rw-r--r-- | meta-oe/recipes-graphics/vk-gl-cts/khronos-cts.inc | 3 | ||||
-rw-r--r-- | meta-oe/recipes-graphics/vk-gl-cts/opengl-es-cts/0001-use-library-sonames-for-linking.patch (renamed from meta-oe/recipes-graphics/vk-gl-cts/files/0001-use-library-sonames-for-linking.patch) | 0 | ||||
-rw-r--r-- | meta-oe/recipes-graphics/vk-gl-cts/opengl-es-cts_3.2.9.3.bb | 4 | ||||
-rw-r--r-- | meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts/0001-use-library-sonames-for-linking.patch | 114 | ||||
-rw-r--r-- | meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts_1.3.7.3.bb (renamed from meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts_1.3.3.1.bb) | 24 |
7 files changed, 139 insertions, 87 deletions
diff --git a/meta-oe/recipes-graphics/vk-gl-cts/files/0001-cmake-Define-WAYLAND_SCANNER-and-WAYLAND_PROTOCOLS_D.patch b/meta-oe/recipes-graphics/vk-gl-cts/files/0001-cmake-Define-WAYLAND_SCANNER-and-WAYLAND_PROTOCOLS_D.patch index d7000b7da1..f659e36066 100644 --- a/meta-oe/recipes-graphics/vk-gl-cts/files/0001-cmake-Define-WAYLAND_SCANNER-and-WAYLAND_PROTOCOLS_D.patch +++ b/meta-oe/recipes-graphics/vk-gl-cts/files/0001-cmake-Define-WAYLAND_SCANNER-and-WAYLAND_PROTOCOLS_D.patch @@ -13,25 +13,17 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com> framework/platform/CMakeLists.txt | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) -diff --git a/framework/platform/CMakeLists.txt b/framework/platform/CMakeLists.txt -index c3ac463e4..030163f6c 100644 --- a/framework/platform/CMakeLists.txt +++ b/framework/platform/CMakeLists.txt -@@ -73,8 +73,12 @@ if (NOT DEFINED TCUTIL_PLATFORM_SRCS) +@@ -73,8 +73,9 @@ if (NOT DEFINED TCUTIL_PLATFORM_SRCS) add_definitions(-DDEQP_SUPPORT_WAYLAND=1) include_directories(lnx/wayland) - pkg_get_variable(WAYLAND_PROTOCOLS_DIR wayland-protocols pkgdatadir) -- pkg_get_variable(WAYLAND_SCANNER wayland-scanner wayland_scanner) -+ if (NOT DEFINED WAYLAND_PROTOCOLS_DIR) +- ++ if (NOT WAYLAND_PROTOCOLS_DIR) + pkg_get_variable(WAYLAND_PROTOCOLS_DIR wayland-protocols pkgdatadir) + endif() -+ if (NOT DEFINED WAYLAND_SCANNER) -+ pkg_get_variable(WAYLAND_SCANNER wayland-scanner wayland_scanner) -+ endif() - - set(DEQP_XDG_SHELL_PROTOCOL ${WAYLAND_PROTOCOLS_DIR}/stable/xdg-shell/xdg-shell.xml) - set(DEQP_XDG_SHELL_GEN_OUTPUTS_DIR ${PROJECT_BINARY_DIR}/framework/platform) --- -2.37.3 - + if (NOT WAYLAND_SCANNER) + pkg_get_variable(WAYLAND_SCANNER wayland-scanner wayland_scanner) + endif() diff --git a/meta-oe/recipes-graphics/vk-gl-cts/files/0001-include-missing-cstdint.patch b/meta-oe/recipes-graphics/vk-gl-cts/files/0001-include-missing-cstdint.patch deleted file mode 100644 index 47d9fc748a..0000000000 --- a/meta-oe/recipes-graphics/vk-gl-cts/files/0001-include-missing-cstdint.patch +++ /dev/null @@ -1,61 +0,0 @@ -From 74cf53d89529902ecdef5b230421bc4d30fd089b Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Wed, 25 Jan 2023 15:36:14 -0800 -Subject: [PATCH] include missing <cstdint> - -gcc-13 exposed errors like below due to it removing indirect includes of -these headers in libstdc++ [1] - -../git/external/amber/src/include/amber/shader_info.h:60:15: error: 'uint32_t' was not declared in this scope - 60 | std::vector<uint32_t> shader_data; - | ^~~~~~~~ - -[1] https://www.gnu.org/software/gcc/gcc-13/porting_to.html - -Upstream-Status: Submitted [https://github.com/google/amber/pull/1016] -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - include/amber/recipe.h | 1 + - include/amber/shader_info.h | 1 + - src/descriptor_set_and_binding_parser.h | 1 + - 3 files changed, 3 insertions(+) - -diff --git a/include/amber/recipe.h b/include/amber/recipe.h -index 310a86a..1b83213 100644 ---- a/include/amber/recipe.h -+++ b/include/amber/recipe.h -@@ -15,6 +15,7 @@ - #ifndef AMBER_RECIPE_H_ - #define AMBER_RECIPE_H_ - -+#include <cstdint> - #include <string> - #include <utility> - #include <vector> -diff --git a/include/amber/shader_info.h b/include/amber/shader_info.h -index 6c9126a..b5ce751 100644 ---- a/include/amber/shader_info.h -+++ b/include/amber/shader_info.h -@@ -15,6 +15,7 @@ - #ifndef AMBER_SHADER_INFO_H_ - #define AMBER_SHADER_INFO_H_ - -+#include <cstdint> - #include <string> - #include <vector> - -diff --git a/src/descriptor_set_and_binding_parser.h b/src/descriptor_set_and_binding_parser.h -index 145aa42..4b0d774 100644 ---- a/src/descriptor_set_and_binding_parser.h -+++ b/src/descriptor_set_and_binding_parser.h -@@ -15,6 +15,7 @@ - #ifndef SRC_DESCRIPTOR_SET_AND_BINDING_PARSER_H_ - #define SRC_DESCRIPTOR_SET_AND_BINDING_PARSER_H_ - -+#include <cstdint> - #include <string> - - #include "amber/result.h" --- -2.39.1 - diff --git a/meta-oe/recipes-graphics/vk-gl-cts/khronos-cts.inc b/meta-oe/recipes-graphics/vk-gl-cts/khronos-cts.inc index 04e4227915..09f1fbcaee 100644 --- a/meta-oe/recipes-graphics/vk-gl-cts/khronos-cts.inc +++ b/meta-oe/recipes-graphics/vk-gl-cts/khronos-cts.inc @@ -11,8 +11,7 @@ SRC_URI = "\ git://github.com/KhronosGroup/Vulkan-Docs.git;protocol=https;destsuffix=git/external/vulkan-docs/src;name=vulkan-docs;branch=main \ https://raw.githubusercontent.com/baldurk/renderdoc/v1.1/renderdoc/api/app/renderdoc_app.h;subdir=git/external/renderdoc/src;name=renderdoc \ git://github.com/Igalia/ESExtractor.git;protocol=https;destsuffix=git/external/ESExtractor/src;name=ESExtractor;branch=main \ - git://github.com/nvpro-samples/vk_video_samples.git;protocol=https;destsuffix=git/external/video-parser/src;name=video-parser;branch=main \ - file://gen-framework-path.patch \ + git://github.com/Igalia/vk_video_samples.git;protocol=https;destsuffix=git/external/nvidia-video-samples/src;name=video-parser;nobranch=1 \ " S = "${WORKDIR}/git" diff --git a/meta-oe/recipes-graphics/vk-gl-cts/files/0001-use-library-sonames-for-linking.patch b/meta-oe/recipes-graphics/vk-gl-cts/opengl-es-cts/0001-use-library-sonames-for-linking.patch index b5a1d331ed..b5a1d331ed 100644 --- a/meta-oe/recipes-graphics/vk-gl-cts/files/0001-use-library-sonames-for-linking.patch +++ b/meta-oe/recipes-graphics/vk-gl-cts/opengl-es-cts/0001-use-library-sonames-for-linking.patch diff --git a/meta-oe/recipes-graphics/vk-gl-cts/opengl-es-cts_3.2.9.3.bb b/meta-oe/recipes-graphics/vk-gl-cts/opengl-es-cts_3.2.9.3.bb index 67ce5f2b9d..0656d724b4 100644 --- a/meta-oe/recipes-graphics/vk-gl-cts/opengl-es-cts_3.2.9.3.bb +++ b/meta-oe/recipes-graphics/vk-gl-cts/opengl-es-cts_3.2.9.3.bb @@ -14,6 +14,10 @@ SRCREV_vulkan-docs = "9a2e576a052a1e65a5d41b593e693ff02745604b" SRCREV_video-parser = "7d68747d3524842afaf050c5e00a10f5b8c07904" SRC_URI[renderdoc.sha256sum] = "e7b5f0aa5b1b0eadc63a1c624c0ca7f5af133aa857d6a4271b0ef3d0bdb6868e" +SRC_URI += "\ + git://github.com/nvpro-samples/vk_video_samples.git;protocol=https;destsuffix=git/external/video-parser/src;name=video-parser;branch=main \ + file://gen-framework-path.patch \ + " S = "${WORKDIR}/git" do_install() { diff --git a/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts/0001-use-library-sonames-for-linking.patch b/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts/0001-use-library-sonames-for-linking.patch new file mode 100644 index 0000000000..f12abd0c1a --- /dev/null +++ b/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts/0001-use-library-sonames-for-linking.patch @@ -0,0 +1,114 @@ +From acd25c4b8d5b7e420a7a89bdfd6551c70de828b3 Mon Sep 17 00:00:00 2001 +From: Trevor Woerner <twoerner@gmail.com> +Date: Thu, 23 Sep 2021 19:36:43 -0400 +Subject: [PATCH] use library sonames for linking + +The recommended "best practices" for applications is to link to library +sonames (e.g. libGL.so.1) instead of library names (e.g. libGL.so). This +ensures that applications don't try to use libraries if an incompatible ABI +change occurs. + +Upstream-Status: Submitted [https://github.com/KhronosGroup/VK-GL-CTS/pull/288] +Signed-off-by: Trevor Woerner <twoerner@gmail.com> +--- + framework/egl/egluGLContextFactory.cpp | 4 ++-- + framework/egl/wrapper/eglwLibrary.cpp | 2 +- + framework/platform/android/tcuAndroidPlatform.cpp | 2 +- + framework/platform/lnx/X11/tcuLnxX11EglDisplayFactory.cpp | 2 +- + .../platform/lnx/wayland/tcuLnxWaylandEglDisplayFactory.cpp | 2 +- + framework/platform/surfaceless/tcuSurfacelessPlatform.cpp | 6 +++--- + 6 files changed, 9 insertions(+), 9 deletions(-) + +--- a/framework/egl/egluGLContextFactory.cpp ++++ b/framework/egl/egluGLContextFactory.cpp +@@ -63,7 +63,7 @@ using std::vector; + # if (DE_OS == DE_OS_WIN32) + # define DEQP_GLES2_LIBRARY_PATH "libGLESv2.dll" + # else +-# define DEQP_GLES2_LIBRARY_PATH "libGLESv2.so" ++# define DEQP_GLES2_LIBRARY_PATH "libGLESv2.so.2" + # endif + #endif + +@@ -75,7 +75,7 @@ using std::vector; + # if (DE_OS == DE_OS_WIN32) + # define DEQP_OPENGL_LIBRARY_PATH "opengl32.dll" + # else +-# define DEQP_OPENGL_LIBRARY_PATH "libGL.so" ++# define DEQP_OPENGL_LIBRARY_PATH "libGL.so.1" + # endif + #endif + +--- a/framework/egl/wrapper/eglwLibrary.cpp ++++ b/framework/egl/wrapper/eglwLibrary.cpp +@@ -148,7 +148,7 @@ DefaultLibrary::~DefaultLibrary (void) + const char* DefaultLibrary::getLibraryFileName (void) + { + #if (DE_OS == DE_OS_ANDROID) || (DE_OS == DE_OS_UNIX) +- return "libEGL.so"; ++ return "libEGL.so.1"; + #elif (DE_OS == DE_OS_WIN32) + return "libEGL.dll"; + #else +--- a/framework/platform/android/tcuAndroidPlatform.cpp ++++ b/framework/platform/android/tcuAndroidPlatform.cpp +@@ -57,7 +57,7 @@ static const eglu::NativeWindow::Capabil + class NativeDisplay : public eglu::NativeDisplay + { + public: +- NativeDisplay (void) : eglu::NativeDisplay(DISPLAY_CAPABILITIES), m_library("libEGL.so") {} ++ NativeDisplay (void) : eglu::NativeDisplay(DISPLAY_CAPABILITIES), m_library("libEGL.so.1") {} + virtual ~NativeDisplay (void) {} + + virtual EGLNativeDisplayType getLegacyNative (void) { return EGL_DEFAULT_DISPLAY; } +--- a/framework/platform/lnx/X11/tcuLnxX11EglDisplayFactory.cpp ++++ b/framework/platform/lnx/X11/tcuLnxX11EglDisplayFactory.cpp +@@ -75,7 +75,7 @@ class Library : public eglw::DefaultLibr + { + public: + Library (void) +- : eglw::DefaultLibrary("libEGL.so") ++ : eglw::DefaultLibrary("libEGL.so.1") + { + } + +--- a/framework/platform/lnx/wayland/tcuLnxWaylandEglDisplayFactory.cpp ++++ b/framework/platform/lnx/wayland/tcuLnxWaylandEglDisplayFactory.cpp +@@ -66,7 +66,7 @@ public: + EGL_PLATFORM_WAYLAND_KHR, + "EGL_KHR_platform_wayland") + , m_display (waylandDisplay) +- , m_library ("libEGL.so") {} ++ , m_library ("libEGL.so.1") {} + + ~Display(void) {} + wayland::Display& getWaylandDisplay (void) { return *m_display; } +--- a/framework/platform/surfaceless/tcuSurfacelessPlatform.cpp ++++ b/framework/platform/surfaceless/tcuSurfacelessPlatform.cpp +@@ -69,7 +69,7 @@ using std::vector; + + // Default library names + #if !defined(DEQP_GLES2_LIBRARY_PATH) +-# define DEQP_GLES2_LIBRARY_PATH "libGLESv2.so" ++# define DEQP_GLES2_LIBRARY_PATH "libGLESv2.so.2" + #endif + + #if !defined(DEQP_GLES3_LIBRARY_PATH) +@@ -77,7 +77,7 @@ using std::vector; + #endif + + #if !defined(DEQP_OPENGL_LIBRARY_PATH) +-# define DEQP_OPENGL_LIBRARY_PATH "libGL.so" ++# define DEQP_OPENGL_LIBRARY_PATH "libGL.so.1" + #endif + + #if !defined(DEQP_VULKAN_LIBRARY_PATH) +@@ -237,7 +237,7 @@ glu::RenderContext* ContextFactory::crea + } + + EglRenderContext::EglRenderContext(const glu::RenderConfig& config, const tcu::CommandLine& cmdLine, const glu::RenderContext *sharedContext) +- : m_egl("libEGL.so") ++ : m_egl("libEGL.so.1") + , m_contextType(config.type) + , m_eglDisplay(EGL_NO_DISPLAY) + , m_eglContext(EGL_NO_CONTEXT) diff --git a/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts_1.3.3.1.bb b/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts_1.3.7.3.bb index f491385b33..1008a5fd42 100644 --- a/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts_1.3.3.1.bb +++ b/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts_1.3.7.3.bb @@ -1,24 +1,28 @@ DESCRIPTION = "Vulkan CTS" require khronos-cts.inc -# vulkan-cts-1.3.3.1 -SRCREV_vk-gl-cts = "6024a88390942876147a88dce82bbed73b866c1b" -SRCREV_amber = "8b145a6c89dcdb4ec28173339dd176fb7b6f43ed" -SRCREV_glslang = "7dda6a6347b0bd550e202942adee475956ef462a" -SRCREV_spirv-headers = "b765c355f488837ca4c77980ba69484f3ff277f5" -SRCREV_spirv-tools = "b930e734ea198b7aabbbf04ee1562cf6f57962f0" + +SRC_URI += "git://github.com/Igalia/vk_video_samples.git;protocol=https;destsuffix=git/external/nvidia-video-samples/src;name=video-parser;nobranch=1" + +# vulkan-cts-1.3.7.3 +SRCREV_vk-gl-cts = "d71a36db16d98313c431829432a136dbda692a08" +SRCREV_amber = "933ecb4d6288675a92eb1650e0f52b1d7afe8273" +SRCREV_glslang = "c5117b328afc86e16edff6ed6afe0fe7872a7cf3" +SRCREV_spirv-headers = "b8b9eb8640c8c0107ba580fbcb10f969022ca32c" +SRCREV_spirv-tools = "bfc94f63a7adbcf8ae166f5f108ac9f69079efc0" SRCREV_jsoncpp = "9059f5cad030ba11d37818847443a53918c327b1" -SRCREV_vulkan-docs = "9b5562187a8ad72c171410b036ceedbc450153ba" +SRCREV_vulkan-docs = "b9aad705f0d9e5e6734ac2ad671d5d1de57b05e0" SRC_URI[renderdoc.sha256sum] = "e7b5f0aa5b1b0eadc63a1c624c0ca7f5af133aa857d6a4271b0ef3d0bdb6868e" # Not yet needed -SRCREV_ESExtractor = "ce5d7ebcf0ebb0d78385ee4cc34653eb6764bfc4" -SRCREV_video-parser = "7d68747d3524842afaf050c5e00a10f5b8c07904" +SRCREV_ESExtractor = "75ffcaf55bb069f7a23764194742d2fb78c7f71f" +SRCREV_video-parser = "138bbe048221d315962ddf8413aa6a08cc62a381" SRC_URI += "file://0001-cmake-Define-WAYLAND_SCANNER-and-WAYLAND_PROTOCOLS_D.patch \ file://0001-vulkan-cts-include-missing-cstdint.patch \ - file://0001-include-missing-cstdint.patch;patchdir=external/amber/src \ " +TOOLCHAIN = "gcc" + S = "${WORKDIR}/git" REQUIRED_DISTRO_FEATURES = "vulkan" |