aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-graphics
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2024-01-25 23:34:45 -0800
committerKhem Raj <raj.khem@gmail.com>2024-01-27 09:48:31 -0800
commit542c2a23d6ef3cfbff9031383686c788702eafac (patch)
treeba146e8ebff37b6dd7a99fa7ff20c69211b8e1f0 /meta-oe/recipes-graphics
parent996d41396aaa5ee93fd1b4935dbb7000785acb01 (diff)
downloadmeta-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.patch20
-rw-r--r--meta-oe/recipes-graphics/vk-gl-cts/files/0001-include-missing-cstdint.patch61
-rw-r--r--meta-oe/recipes-graphics/vk-gl-cts/khronos-cts.inc3
-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.bb4
-rw-r--r--meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts/0001-use-library-sonames-for-linking.patch114
-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"