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>
This commit is contained in:
Khem Raj
2024-01-25 23:34:45 -08:00
parent 996d41396a
commit 542c2a23d6
7 changed files with 139 additions and 87 deletions
@@ -13,25 +13,17 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
framework/platform/CMakeLists.txt | 8 ++++++-- framework/platform/CMakeLists.txt | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-) 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 --- a/framework/platform/CMakeLists.txt
+++ b/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) add_definitions(-DDEQP_SUPPORT_WAYLAND=1)
include_directories(lnx/wayland) include_directories(lnx/wayland)
- pkg_get_variable(WAYLAND_PROTOCOLS_DIR wayland-protocols pkgdatadir) - 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) + pkg_get_variable(WAYLAND_PROTOCOLS_DIR wayland-protocols pkgdatadir)
+ endif() + endif()
+ if (NOT DEFINED WAYLAND_SCANNER) if (NOT WAYLAND_SCANNER)
+ pkg_get_variable(WAYLAND_SCANNER wayland-scanner wayland_scanner) pkg_get_variable(WAYLAND_SCANNER wayland-scanner wayland_scanner)
+ endif() 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
@@ -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
@@ -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 \ 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 \ 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/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 \ git://github.com/Igalia/vk_video_samples.git;protocol=https;destsuffix=git/external/nvidia-video-samples/src;name=video-parser;nobranch=1 \
file://gen-framework-path.patch \
" "
S = "${WORKDIR}/git" S = "${WORKDIR}/git"
@@ -14,6 +14,10 @@ SRCREV_vulkan-docs = "9a2e576a052a1e65a5d41b593e693ff02745604b"
SRCREV_video-parser = "7d68747d3524842afaf050c5e00a10f5b8c07904" SRCREV_video-parser = "7d68747d3524842afaf050c5e00a10f5b8c07904"
SRC_URI[renderdoc.sha256sum] = "e7b5f0aa5b1b0eadc63a1c624c0ca7f5af133aa857d6a4271b0ef3d0bdb6868e" 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" S = "${WORKDIR}/git"
do_install() { do_install() {
@@ -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)
@@ -1,24 +1,28 @@
DESCRIPTION = "Vulkan CTS" DESCRIPTION = "Vulkan CTS"
require khronos-cts.inc require khronos-cts.inc
# vulkan-cts-1.3.3.1
SRCREV_vk-gl-cts = "6024a88390942876147a88dce82bbed73b866c1b" SRC_URI += "git://github.com/Igalia/vk_video_samples.git;protocol=https;destsuffix=git/external/nvidia-video-samples/src;name=video-parser;nobranch=1"
SRCREV_amber = "8b145a6c89dcdb4ec28173339dd176fb7b6f43ed"
SRCREV_glslang = "7dda6a6347b0bd550e202942adee475956ef462a" # vulkan-cts-1.3.7.3
SRCREV_spirv-headers = "b765c355f488837ca4c77980ba69484f3ff277f5" SRCREV_vk-gl-cts = "d71a36db16d98313c431829432a136dbda692a08"
SRCREV_spirv-tools = "b930e734ea198b7aabbbf04ee1562cf6f57962f0" SRCREV_amber = "933ecb4d6288675a92eb1650e0f52b1d7afe8273"
SRCREV_glslang = "c5117b328afc86e16edff6ed6afe0fe7872a7cf3"
SRCREV_spirv-headers = "b8b9eb8640c8c0107ba580fbcb10f969022ca32c"
SRCREV_spirv-tools = "bfc94f63a7adbcf8ae166f5f108ac9f69079efc0"
SRCREV_jsoncpp = "9059f5cad030ba11d37818847443a53918c327b1" SRCREV_jsoncpp = "9059f5cad030ba11d37818847443a53918c327b1"
SRCREV_vulkan-docs = "9b5562187a8ad72c171410b036ceedbc450153ba" SRCREV_vulkan-docs = "b9aad705f0d9e5e6734ac2ad671d5d1de57b05e0"
SRC_URI[renderdoc.sha256sum] = "e7b5f0aa5b1b0eadc63a1c624c0ca7f5af133aa857d6a4271b0ef3d0bdb6868e" SRC_URI[renderdoc.sha256sum] = "e7b5f0aa5b1b0eadc63a1c624c0ca7f5af133aa857d6a4271b0ef3d0bdb6868e"
# Not yet needed # Not yet needed
SRCREV_ESExtractor = "ce5d7ebcf0ebb0d78385ee4cc34653eb6764bfc4" SRCREV_ESExtractor = "75ffcaf55bb069f7a23764194742d2fb78c7f71f"
SRCREV_video-parser = "7d68747d3524842afaf050c5e00a10f5b8c07904" SRCREV_video-parser = "138bbe048221d315962ddf8413aa6a08cc62a381"
SRC_URI += "file://0001-cmake-Define-WAYLAND_SCANNER-and-WAYLAND_PROTOCOLS_D.patch \ SRC_URI += "file://0001-cmake-Define-WAYLAND_SCANNER-and-WAYLAND_PROTOCOLS_D.patch \
file://0001-vulkan-cts-include-missing-cstdint.patch \ file://0001-vulkan-cts-include-missing-cstdint.patch \
file://0001-include-missing-cstdint.patch;patchdir=external/amber/src \
" "
TOOLCHAIN = "gcc"
S = "${WORKDIR}/git" S = "${WORKDIR}/git"
REQUIRED_DISTRO_FEATURES = "vulkan" REQUIRED_DISTRO_FEATURES = "vulkan"