vulkan-cts,opengl-es-cts: Upgrade to1.3.3.1 and 3.2.8 respectively

Add needed depednency on vulkan-docs, jsoncpp and python3-xml-native as they are
added newly in these versions.

Delete patches already applied in this release

Backport one amber patch to fix compile with clang

Forward port the remaining patches

Add mechanism to run target test binaries using qemu usermode

Override WAYLAND_SCANNER and WAYLAND_PROTOCOLS_DIR

Let these variables be set via cmake cmdline before enquiring via pkg-config

Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Khem Raj 2022-09-03 00:27:30 -07:00
parent 21928e8aed
commit 1bd5688a0b
10 changed files with 161 additions and 240 deletions

View File

@ -1,88 +0,0 @@
From aec0be857ed3faef8802c7fd61f3d7798a565108 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Thu, 29 Apr 2021 16:03:42 -0700
Subject: [PATCH] Include <limits> header for numeric_limits
Fixes
vulkancts/framework/vulkan/vkRayTracingUtil.hpp:116:32: error: 'numeric_limits' is not a member of 'std'
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
framework/vulkan/vkRayTracingUtil.hpp | 1 +
modules/vulkan/api/vktApiBufferTests.cpp | 1 +
modules/vulkan/spirv_assembly/vktSpvAsmNonSemanticInfoTests.cpp | 2 ++
3 files changed, 4 insertions(+)
--- a/framework/vulkan/vkRayTracingUtil.hpp
+++ b/framework/vulkan/vkRayTracingUtil.hpp
@@ -33,6 +33,7 @@
#include "tcuVector.hpp"
#include "tcuVectorType.hpp"
+#include <limits>
#include <vector>
namespace vk
--- a/modules/vulkan/api/vktApiBufferTests.cpp
+++ b/modules/vulkan/api/vktApiBufferTests.cpp
@@ -35,6 +35,7 @@
#include "tcuPlatform.hpp"
#include <algorithm>
+#include <limits>
namespace vkt
{
--- a/modules/vulkan/spirv_assembly/vktSpvAsmNonSemanticInfoTests.cpp
+++ b/modules/vulkan/spirv_assembly/vktSpvAsmNonSemanticInfoTests.cpp
@@ -28,6 +28,8 @@
#include "vktSpvAsmComputeShaderCase.hpp"
#include "vktSpvAsmGraphicsShaderTestUtil.hpp"
+#include <limits>
+
namespace vkt
{
namespace SpirVAssembly
--- a/modules/vulkan/memory/vktMemoryDeviceMemoryReportTests.cpp
+++ b/modules/vulkan/memory/vktMemoryDeviceMemoryReportTests.cpp
@@ -40,6 +40,7 @@
#include "deSharedPtr.hpp"
+#include <limits>
#include <set>
#include <vector>
--- a/modules/vulkan/draw/vktDrawDepthClampTests.cpp
+++ b/modules/vulkan/draw/vktDrawDepthClampTests.cpp
@@ -38,6 +38,7 @@
#include "vkQueryUtil.hpp"
#include "tcuTextureUtil.hpp"
+#include <limits>
#include <cmath>
namespace vkt
--- a/modules/vulkan/wsi/vktWsiFullScreenExclusiveTests.cpp
+++ b/modules/vulkan/wsi/vktWsiFullScreenExclusiveTests.cpp
@@ -39,6 +39,8 @@
#include "tcuPlatform.hpp"
#include "tcuCommandLine.hpp"
+#include <limits>
+
#if ( DE_OS == DE_OS_WIN32 )
#define NOMINMAX
#define WIN32_LEAN_AND_MEAN
--- a/modules/vulkan/synchronization/vktSynchronizationUtil.cpp
+++ b/modules/vulkan/synchronization/vktSynchronizationUtil.cpp
@@ -21,6 +21,7 @@
* \brief Synchronization tests utilities
*//*--------------------------------------------------------------------*/
+#include <limits>
#include "vktSynchronizationUtil.hpp"
#include "vkTypeUtil.hpp"
#include "vkCmdUtil.hpp"

View File

@ -0,0 +1,34 @@
From 0d863b444c9a54a92dab176b1b656c116923e1ca Mon Sep 17 00:00:00 2001
From: alan-baker <alanbaker@google.com>
Date: Wed, 30 Mar 2022 12:59:28 -0400
Subject: [PATCH] Remove dead variable (#984)
Upstream-Status: Backport [https://github.com/google/amber/commit/627ee453d6047ced0e2dd13cde983b341d0615e3]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
src/vkscript/command_parser.cc | 2 --
1 file changed, 2 deletions(-)
diff --git a/src/vkscript/command_parser.cc b/src/vkscript/command_parser.cc
index 610c7e6..3429d4d 100644
--- a/src/vkscript/command_parser.cc
+++ b/src/vkscript/command_parser.cc
@@ -486,7 +486,6 @@ Result CommandParser::ParseValues(const std::string& name,
std::vector<Value>* values) {
assert(values);
- uint32_t row_index = 0;
auto token = tokenizer_->NextToken();
size_t seen = 0;
while (!token->IsEOL() && !token->IsEOS()) {
@@ -515,7 +514,6 @@ Result CommandParser::ParseValues(const std::string& name,
values->push_back(v);
token = tokenizer_->NextToken();
- ++row_index;
++seen;
}
--
2.37.3

View File

@ -1,73 +0,0 @@
From 9cd614dd5481a4fdf552effac4820f51a10092c7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Mika=20V=C3=A4in=C3=B6l=C3=A4?=
<33728696+mvainola@users.noreply.github.com>
Date: Wed, 7 Apr 2021 13:12:17 +0300
Subject: [PATCH] Workaround for GCC 11 uninit variable warnings (#946)
Building Amber with GCC 11.0.1 produces some uninitialized variable
warnings. This commit works around them by replacing
reinterpret_cast with memcpy when type punning unsigned integers to
floats.
Upstream-Status: Backport [https://github.com/google/amber/commit/aa69a0ac23ea7f68dd32bbef210546a5d84c1734]
---
src/float16_helper.cc | 22 ++++++++++++++++------
1 file changed, 16 insertions(+), 6 deletions(-)
diff --git a/src/float16_helper.cc b/src/float16_helper.cc
index 617bd72..5cb35e7 100644
--- a/src/float16_helper.cc
+++ b/src/float16_helper.cc
@@ -15,6 +15,7 @@
#include "src/float16_helper.h"
#include <cassert>
+#include <cstring>
// Float10
// | 9 8 7 6 5 | 4 3 2 1 0 |
@@ -75,8 +76,11 @@ float HexFloat16ToFloat(const uint8_t* value) {
}
uint32_t hex = sign | exponent | mantissa;
- float* hex_float = reinterpret_cast<float*>(&hex);
- return *hex_float;
+ float hex_float;
+ static_assert((sizeof(uint32_t) == sizeof(float)),
+ "sizeof(uint32_t) != sizeof(float)");
+ memcpy(&hex_float, &hex, sizeof(float));
+ return hex_float;
}
// Convert float |value| whose size is 11 bits to 32 bits float
@@ -89,8 +93,11 @@ float HexFloat11ToFloat(const uint8_t* value) {
uint32_t mantissa = (static_cast<uint32_t>(value[0]) & 0x3f) << 17U;
uint32_t hex = exponent | mantissa;
- float* hex_float = reinterpret_cast<float*>(&hex);
- return *hex_float;
+ float hex_float;
+ static_assert((sizeof(uint32_t) == sizeof(float)),
+ "sizeof(uint32_t) != sizeof(float)");
+ memcpy(&hex_float, &hex, sizeof(float));
+ return hex_float;
}
// Convert float |value| whose size is 10 bits to 32 bits float
@@ -103,8 +110,11 @@ float HexFloat10ToFloat(const uint8_t* value) {
uint32_t mantissa = (static_cast<uint32_t>(value[0]) & 0x1f) << 18U;
uint32_t hex = exponent | mantissa;
- float* hex_float = reinterpret_cast<float*>(&hex);
- return *hex_float;
+ float hex_float;
+ static_assert((sizeof(uint32_t) == sizeof(float)),
+ "sizeof(uint32_t) != sizeof(float)");
+ memcpy(&hex_float, &hex, sizeof(float));
+ return hex_float;
}
} // namespace
--
2.31.1

View File

@ -0,0 +1,37 @@
From ec12bb7bda60cdf2c848e13df67452a7d30a42be Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 3 Sep 2022 18:52:42 -0700
Subject: [PATCH] cmake: Define WAYLAND_SCANNER and WAYLAND_PROTOCOLS_DIR if
not already defined
This helps with cross compiling and providing these knobs from cmake
cmdline
Upstream-Status: Pending
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)
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)
+ 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

View File

@ -19,8 +19,6 @@ Signed-off-by: Trevor Woerner <twoerner@gmail.com>
framework/platform/surfaceless/tcuSurfacelessPlatform.cpp | 6 +++---
6 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/framework/egl/egluGLContextFactory.cpp b/framework/egl/egluGLContextFactory.cpp
index 8fbea2af1..8d42f19eb 100644
--- a/framework/egl/egluGLContextFactory.cpp
+++ b/framework/egl/egluGLContextFactory.cpp
@@ -63,7 +63,7 @@ using std::vector;
@ -41,8 +39,6 @@ index 8fbea2af1..8d42f19eb 100644
# endif
#endif
diff --git a/framework/egl/wrapper/eglwLibrary.cpp b/framework/egl/wrapper/eglwLibrary.cpp
index d7e07fe18..ebdf68b14 100644
--- a/framework/egl/wrapper/eglwLibrary.cpp
+++ b/framework/egl/wrapper/eglwLibrary.cpp
@@ -148,7 +148,7 @@ DefaultLibrary::~DefaultLibrary (void)
@ -54,11 +50,9 @@ index d7e07fe18..ebdf68b14 100644
#elif (DE_OS == DE_OS_WIN32)
return "libEGL.dll";
#else
diff --git a/framework/platform/android/tcuAndroidPlatform.cpp b/framework/platform/android/tcuAndroidPlatform.cpp
index b9a4c716f..05cec0b49 100644
--- a/framework/platform/android/tcuAndroidPlatform.cpp
+++ b/framework/platform/android/tcuAndroidPlatform.cpp
@@ -57,7 +57,7 @@ static const eglu::NativeWindow::Capability WINDOW_CAPABILITIES = (eglu::Nativ
@@ -57,7 +57,7 @@ static const eglu::NativeWindow::Capabil
class NativeDisplay : public eglu::NativeDisplay
{
public:
@ -67,11 +61,9 @@ index b9a4c716f..05cec0b49 100644
virtual ~NativeDisplay (void) {}
virtual EGLNativeDisplayType getLegacyNative (void) { return EGL_DEFAULT_DISPLAY; }
diff --git a/framework/platform/lnx/X11/tcuLnxX11EglDisplayFactory.cpp b/framework/platform/lnx/X11/tcuLnxX11EglDisplayFactory.cpp
index 009c05e18..237c5e16f 100644
--- a/framework/platform/lnx/X11/tcuLnxX11EglDisplayFactory.cpp
+++ b/framework/platform/lnx/X11/tcuLnxX11EglDisplayFactory.cpp
@@ -75,7 +75,7 @@ class Library : public eglw::DefaultLibrary
@@ -75,7 +75,7 @@ class Library : public eglw::DefaultLibr
{
public:
Library (void)
@ -80,8 +72,6 @@ index 009c05e18..237c5e16f 100644
{
}
diff --git a/framework/platform/lnx/wayland/tcuLnxWaylandEglDisplayFactory.cpp b/framework/platform/lnx/wayland/tcuLnxWaylandEglDisplayFactory.cpp
index 97bc3a0ed..3a20d63d3 100644
--- a/framework/platform/lnx/wayland/tcuLnxWaylandEglDisplayFactory.cpp
+++ b/framework/platform/lnx/wayland/tcuLnxWaylandEglDisplayFactory.cpp
@@ -66,7 +66,7 @@ public:
@ -93,8 +83,6 @@ index 97bc3a0ed..3a20d63d3 100644
~Display(void) {}
wayland::Display& getWaylandDisplay (void) { return *m_display; }
diff --git a/framework/platform/surfaceless/tcuSurfacelessPlatform.cpp b/framework/platform/surfaceless/tcuSurfacelessPlatform.cpp
index 9783eaeab..a1d8ac667 100644
--- a/framework/platform/surfaceless/tcuSurfacelessPlatform.cpp
+++ b/framework/platform/surfaceless/tcuSurfacelessPlatform.cpp
@@ -69,7 +69,7 @@ using std::vector;
@ -114,8 +102,8 @@ index 9783eaeab..a1d8ac667 100644
+# define DEQP_OPENGL_LIBRARY_PATH "libGL.so.1"
#endif
namespace tcu
@@ -238,7 +238,7 @@ glu::RenderContext* ContextFactory::createContext(const glu::RenderConfig& confi
#if !defined(DEQP_VULKAN_LIBRARY_PATH)
@@ -234,7 +234,7 @@ glu::RenderContext* ContextFactory::crea
}
EglRenderContext::EglRenderContext(const glu::RenderConfig& config, const tcu::CommandLine& cmdLine)

View File

@ -7,23 +7,24 @@ SRC_URI = "\
git://github.com/KhronosGroup/glslang.git;protocol=https;destsuffix=git/external/glslang/src;name=glslang;branch=master \
git://github.com/KhronosGroup/SPIRV-Headers.git;protocol=https;destsuffix=git/external/spirv-headers/src;name=spirv-headers;branch=master \
git://github.com/KhronosGroup/SPIRV-Tools.git;protocol=https;destsuffix=git/external/spirv-tools/src;name=spirv-tools;branch=master \
https://raw.githubusercontent.com/baldurk/renderdoc/v1.1/renderdoc/api/app/renderdoc_app.h;subdir=git/external/renderdoc/src;name=renderdoc \
git://github.com/open-source-parsers/jsoncpp.git;protocol=https;destsuffix=git/external/jsoncpp/src;name=jsoncpp;branch=master \
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/fcdea67879fa1991e56cf7734ce0ce27866b665f/renderdoc/api/app/renderdoc_app.h;subdir=git/external/renderdoc/src;name=renderdoc \
"
S = "${WORKDIR}/git"
SRCREV_FORMAT = "vk-gl-cts_amber_glslang_spirv-headers_spirv-tools"
SRCREV_FORMAT = "vk-gl-cts_amber_glslang_spirv-headers_spirv-tools_jsoncpp_vulkan-docs"
S = "${WORKDIR}/git"
inherit pkgconfig cmake features_check
inherit pkgconfig cmake features_check python3native qemu
ANY_OF_DISTRO_FEATURES += "opengl wayland"
DEPENDS += "libpng zlib virtual/libgles2"
DEPENDS += "python3-lxml-native libpng zlib virtual/libgles2 qemu-native"
SRC_URI += "file://0001-Workaround-for-GCC-11-uninit-variable-warnings-946.patch;patchdir=external/amber/src \
file://0001-Include-limits-header-for-numeric_limits.patch;patchdir=external/vulkancts \
SRC_URI += " \
file://0001-vulkancts.patch \
file://0001-use-library-sonames-for-linking.patch \
"
@ -37,6 +38,8 @@ SRC_URI:append:toolchain-clang = "\
file://fix-clang-private-operator.patch \
"
EXTRA_OECMAKE:prepend:class-target = "-DCMAKE_CROSSCOMPILING_EMULATOR=${WORKDIR}/qemuwrapper -DWAYLAND_SCANNER=${STAGING_BINDIR_NATIVE}/wayland-scanner -DWAYLAND_PROTOCOLS_DIR=${STAGING_DATADIR}/wayland-protocols"
# The best thing for the user to do is to not specify any of the following
# PACKAGECONFIGs (i.e. leave it blank) which tells the project to do its own
# probing and build what it thinks is appropriate.
@ -44,11 +47,22 @@ SRC_URI:append:toolchain-clang = "\
# to override this behaviour.
PACKAGECONFIG ??= ""
PACKAGECONFIG[surfaceless] = "-DDEQP_TARGET=surfaceless,,,,,wayland x11_egl x11_glx x11_egl_glx"
PACKAGECONFIG[wayland] = "-DDEQP_TARGET=wayland,,wayland,,,surfaceless x11_egl x11_glx x11_egl_glx"
PACKAGECONFIG[wayland] = "-DDEQP_TARGET=wayland,,wayland-native wayland wayland-protocols,,,surfaceless x11_egl x11_glx x11_egl_glx"
PACKAGECONFIG[x11_egl] = "-DDEQP_TARGET=x11_egl,,virtual/libx11 virtual/egl,,,surfaceless wayland x11_glx x11_egl_glx"
PACKAGECONFIG[x11_glx] = "-DDEQP_TARGET=x11_glx,,virtual/libx11,,,surfaceless wayland x11_egl x11_egl_glx"
PACKAGECONFIG[x11_egl_glx] = "-DDEQP_TARGET=x11_glx,,virtual/libx11 virtual/egl,,,surfaceless wayland x11_egl x11_glx"
do_configure:append() {
# Write out a qemu wrapper that will be used by cmake
# so that it can run target helper binaries through that.
qemu_binary="${@qemu_wrapper_cmdline(d, d.getVar('STAGING_DIR_HOST'), [d.expand('${STAGING_DIR_HOST}${libdir}'),d.expand('${STAGING_DIR_HOST}${base_libdir}')])}"
cat > ${WORKDIR}/qemuwrapper << EOF
#!/bin/sh
$qemu_binary "\$@"
EOF
chmod +x ${WORKDIR}/qemuwrapper
}
python __anonymous() {
# if the user doesn't specify any PACKAGECONFIG then the cts build system
# is going to probe the sysroot to try to figure out what to build
@ -57,7 +71,7 @@ python __anonymous() {
distrofeatures = (d.getVar("DISTRO_FEATURES") or "")
if not bb.utils.contains_any("PACKAGECONFIG", ["surfaceless", "wayland", "x11_egl", "x11_glx", "x11_egl_glx"], True, False, d):
if "wayland" in distrofeatures:
d.appendVar("DEPENDS", " wayland ")
d.appendVar("DEPENDS", " wayland-native wayland wayland-protocols")
if "x11" in distrofeatures:
d.appendVar("DEPENDS", " virtual/libx11 virtual/egl ")
}

View File

@ -1,31 +0,0 @@
DESCRIPTION = "OpenGL CTS"
require khronos-cts.inc
# opengl-es-cts-3.2.7.0
SRCREV_vk-gl-cts = "7cba7113c40f2ff03573c8c2c90661b2249e04fa"
SRCREV_amber = "4d0115cccfcb3b73d20b6513b1c40748e6403c50"
SRCREV_glslang = "ffccefddfd9a02ec0c0b6dd04ef5e1042279c97f"
SRCREV_spirv-headers = "104ecc356c1bea4476320faca64440cd1df655a3"
SRCREV_spirv-tools = "cd590fa3341284cd6d1ee82366155786cfd44c96"
SRC_URI[renderdoc.sha256sum] = "e7b5f0aa5b1b0eadc63a1c624c0ca7f5af133aa857d6a4271b0ef3d0bdb6868e"
S = "${WORKDIR}/git"
do_install() {
install -d ${D}/${CTSDIR}
cp -r ${B}/external/openglcts/modules/* ${D}/${CTSDIR}
install -m 0755 ${B}/modules/egl/deqp-egl ${D}/${CTSDIR}
install -m 0755 ${B}/modules/gles2/deqp-gles2 ${D}/${CTSDIR}
install -m 0755 ${B}/modules/gles3/deqp-gles3 ${D}/${CTSDIR}
install -m 0755 ${B}/modules/gles31/deqp-gles31 ${D}/${CTSDIR}
install -m 0755 ${B}/modules/internal/de-internal-tests ${D}/${CTSDIR}
rm -r ${D}/${CTSDIR}/*.a ${D}/${CTSDIR}/cmake_install.cmake ${D}/${CTSDIR}/CMakeFiles
rm -r ${D}/${CTSDIR}/*/*.a ${D}/${CTSDIR}/*/cmake_install.cmake ${D}/${CTSDIR}/*/CMakeFiles
rm -r ${D}/${CTSDIR}/common/subgroups/*.a ${D}/${CTSDIR}/common/subgroups/cmake_install.cmake ${D}/${CTSDIR}/common/subgroups/CMakeFiles
}
SECURITY_CFLAGS:riscv64 = "${SECURITY_NOPIE_CFLAGS}"
LTO = ""

View File

@ -0,0 +1,36 @@
DESCRIPTION = "OpenGL CTS"
require khronos-cts.inc
# opengl-es-cts-3.2.8.0
SRCREV_vk-gl-cts = "317f467fac032b88a4789e4345421f92c4e8716d"
SRCREV_amber = "209d92e2c27a333e723d24497e8c7a07b2f2eb39"
SRCREV_glslang = "9158061398a96033c990e69156bd28c67114544b"
SRCREV_spirv-headers = "449bc986ba6f4c5e10e32828783f9daef2a77644"
SRCREV_spirv-tools = "ee30773650eca50b1cd3c913babcc2b50d7b91fd"
# Not yet needed
SRCREV_jsoncpp = "9059f5cad030ba11d37818847443a53918c327b1"
SRCREV_vulkan-docs = "d70e01c0be7b8a7d20b186b30b29a75b18bba75d"
SRC_URI[renderdoc.sha256sum] = "e7b5f0aa5b1b0eadc63a1c624c0ca7f5af133aa857d6a4271b0ef3d0bdb6868e"
SRC_URI += "file://0001-Remove-dead-variable-984.patch;patchdir=external/amber/src"
S = "${WORKDIR}/git"
do_install() {
install -d ${D}/${CTSDIR}
cp -r ${B}/external/openglcts/modules/* ${D}/${CTSDIR}
install -m 0755 ${B}/modules/egl/deqp-egl ${D}/${CTSDIR}
install -m 0755 ${B}/modules/gles2/deqp-gles2 ${D}/${CTSDIR}
install -m 0755 ${B}/modules/gles3/deqp-gles3 ${D}/${CTSDIR}
install -m 0755 ${B}/modules/gles31/deqp-gles31 ${D}/${CTSDIR}
install -m 0755 ${B}/modules/internal/de-internal-tests ${D}/${CTSDIR}
rm -rf ${D}/${CTSDIR}/*.a ${D}/${CTSDIR}/cmake_install.cmake ${D}/${CTSDIR}/CMakeFiles
rm -rf ${D}/${CTSDIR}/*/*.a ${D}/${CTSDIR}/*/cmake_install.cmake ${D}/${CTSDIR}/*/CMakeFiles
rm -rf ${D}/${CTSDIR}/common/subgroups/*.a ${D}/${CTSDIR}/common/subgroups/cmake_install.cmake ${D}/${CTSDIR}/common/subgroups/CMakeFiles
}
SECURITY_CFLAGS:riscv64 = "${SECURITY_NOPIE_CFLAGS}"
LTO = ""

View File

@ -1,24 +0,0 @@
DESCRIPTION = "Vulkan CTS"
require khronos-cts.inc
# vulkan-cts-1.2.6.0
SRCREV_vk-gl-cts = "2cab49df5ad25a2d0061152367a21c6da83ed097"
SRCREV_amber = "dabae26164714abf951c6815a2b4513260f7c6a4"
SRCREV_glslang = "5c4f421121c4d24aad23a507e630dc5dc6c92c7c"
SRCREV_spirv-headers = "faa570afbc91ac73d594d787486bcf8f2df1ace0"
SRCREV_spirv-tools = "f11f7434815838bbad349124767b258ce7df41f0"
SRC_URI[renderdoc.sha256sum] = "e7b5f0aa5b1b0eadc63a1c624c0ca7f5af133aa857d6a4271b0ef3d0bdb6868e"
S = "${WORKDIR}/git"
REQUIRED_DISTRO_FEATURES = "vulkan"
inherit features_check
DEPENDS += " vulkan-loader"
do_install() {
install -d ${D}/${CTSDIR}
cp -r ${B}/external/vulkancts/modules/vulkan/* ${D}/${CTSDIR}/
rm -r ${D}/${CTSDIR}/*.a ${D}/${CTSDIR}/cmake_install.cmake ${D}/${CTSDIR}/CMakeFiles
rm -r ${D}/${CTSDIR}/*/*.a ${D}/${CTSDIR}/*/cmake_install.cmake ${D}/${CTSDIR}/*/CMakeFiles
}

View File

@ -0,0 +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"
SRCREV_jsoncpp = "9059f5cad030ba11d37818847443a53918c327b1"
SRCREV_vulkan-docs = "9b5562187a8ad72c171410b036ceedbc450153ba"
SRC_URI[renderdoc.sha256sum] = "e7b5f0aa5b1b0eadc63a1c624c0ca7f5af133aa857d6a4271b0ef3d0bdb6868e"
SRC_URI += "file://0001-cmake-Define-WAYLAND_SCANNER-and-WAYLAND_PROTOCOLS_D.patch"
S = "${WORKDIR}/git"
REQUIRED_DISTRO_FEATURES = "vulkan"
inherit features_check
DEPENDS += " vulkan-loader"
do_install() {
install -d ${D}/${CTSDIR}
cp -r ${B}/external/vulkancts/modules/vulkan/* ${D}/${CTSDIR}/
rm -rf ${D}/${CTSDIR}/*.a ${D}/${CTSDIR}/cmake_install.cmake ${D}/${CTSDIR}/CMakeFiles
rm -rf ${D}/${CTSDIR}/*/*.a ${D}/${CTSDIR}/*/cmake_install.cmake ${D}/${CTSDIR}/*/CMakeFiles
}