From 90e240756c159001b66580cadc1cef5380f81a1f Mon Sep 17 00:00:00 2001 From: Moritz Haase Date: Fri, 11 Jul 2025 15:12:55 +0200 Subject: vulkan-cts: upgrade 1.4.2.1 -> 1.4.3.1 New version includes support to build against CMake 4+. Release notes are available at [0]. The SRC_URI update helper script required adaptations, as it was broken by recent Poky changes. The SRC_URI entries were only updated manually back then via [1]. [0]: https://github.com/KhronosGroup/VK-GL-CTS/releases [1]: https://git.openembedded.org/meta-openembedded/commit/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts-sources.inc?h=master-next&id=fc78d37ff0ce9e0d60455465851dbe4e86d7a8b3 Signed-off-by: Moritz Haase Signed-off-by: Khem Raj --- ...e-WAYLAND_SCANNER-and-WAYLAND_PROTOCOLS_D.patch | 29 ---------------------- .../vk-gl-cts/files/generate-srcuri.py | 8 ++++-- meta-oe/recipes-graphics/vk-gl-cts/khronos-cts.inc | 1 - .../vk-gl-cts/vulkan-cts-sources.inc | 17 ++++++------- .../vk-gl-cts/vulkan-cts_1.4.2.1.bb | 25 ------------------- .../vk-gl-cts/vulkan-cts_1.4.3.1.bb | 25 +++++++++++++++++++ 6 files changed, 39 insertions(+), 66 deletions(-) delete mode 100644 meta-oe/recipes-graphics/vk-gl-cts/files/0001-cmake-Define-WAYLAND_SCANNER-and-WAYLAND_PROTOCOLS_D.patch delete mode 100644 meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts_1.4.2.1.bb create mode 100644 meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts_1.4.3.1.bb 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 deleted file mode 100644 index 9eef9a702e..0000000000 --- a/meta-oe/recipes-graphics/vk-gl-cts/files/0001-cmake-Define-WAYLAND_SCANNER-and-WAYLAND_PROTOCOLS_D.patch +++ /dev/null @@ -1,29 +0,0 @@ -From ec12bb7bda60cdf2c848e13df67452a7d30a42be Mon Sep 17 00:00:00 2001 -From: Khem Raj -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 ---- - framework/platform/CMakeLists.txt | 8 ++++++-- - 1 file changed, 6 insertions(+), 2 deletions(-) - ---- a/framework/platform/CMakeLists.txt -+++ b/framework/platform/CMakeLists.txt -@@ -83,8 +83,9 @@ if (NOT DEFINED TCUTIL_PLATFORM_SRCS) - configure_file(${WAYLAND_XDG_SHELL_SRC_DIR}/xdg-shell.c ${DEQP_XDG_SHELL_GEN_OUTPUTS_DIR}/xdg-shell.c COPYONLY) - configure_file(${WAYLAND_XDG_SHELL_SRC_DIR}/xdg-shell.h ${DEQP_XDG_SHELL_GEN_OUTPUTS_DIR}/xdg-shell.h COPYONLY) - else () -- pkg_get_variable(WAYLAND_PROTOCOLS_DIR wayland-protocols pkgdatadir) -- -+ if (NOT WAYLAND_PROTOCOL_DIR) -+ pkg_get_variable(WAYLAND_PROTOCOLS_DIR wayland-protocols pkgdatadir) -+ endif() - 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/generate-srcuri.py b/meta-oe/recipes-graphics/vk-gl-cts/files/generate-srcuri.py index c2756b592c..3f64e9dc4a 100755 --- a/meta-oe/recipes-graphics/vk-gl-cts/files/generate-srcuri.py +++ b/meta-oe/recipes-graphics/vk-gl-cts/files/generate-srcuri.py @@ -53,11 +53,15 @@ def convert_fetch(basedir): # Ignore these as so far we can use the system copies pass elif isinstance(p, fetch.SourceFile): - dest = "/".join(["git/external", p.baseDir, p.extractDir]) + dest = "/".join( + ["${BB_GIT_DEFAULT_DESTSUFFIX}/external", p.baseDir, p.extractDir] + ) url = f"{p.url};subdir={dest};sha256sum={p.checksum}" lines.append(f" {url} \\") elif isinstance(p, fetch.GitRepo): - dest = "/".join(["git/external", p.baseDir, p.extractDir]) + dest = "/".join( + ["${BB_GIT_DEFAULT_DESTSUFFIX}/external", p.baseDir, p.extractDir] + ) url = transform_git(p.httpsUrl, p.revision, dest) lines.append(f" {url} \\") else: 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 1cc2da7a49..67a0dc564c 100644 --- a/meta-oe/recipes-graphics/vk-gl-cts/khronos-cts.inc +++ b/meta-oe/recipes-graphics/vk-gl-cts/khronos-cts.inc @@ -2,7 +2,6 @@ LICENSE = "Apache-2.0" LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" SRC_URI = "git://github.com/KhronosGroup/VK-GL-CTS.git;protocol=https;name=vk-gl-cts;nobranch=1 \ - file://0001-cmake-Define-WAYLAND_SCANNER-and-WAYLAND_PROTOCOLS_D.patch \ file://0001-use-library-sonames-for-linking.patch \ file://generate-srcuri.py \ " diff --git a/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts-sources.inc b/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts-sources.inc index 563da1007a..8d70bf08c3 100644 --- a/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts-sources.inc +++ b/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts-sources.inc @@ -6,21 +6,20 @@ RECIPE_UPGRADE_EXTRA_TASKS += "do_refresh_srcuri" python __anonymous() { - if d.getVar("PV") != "1.4.2.1": + if d.getVar("PV") != "1.4.3.1": bb.warn("-sources.inc out of date, run refresh_srcuri task") } SRC_URI += " \ https://raw.githubusercontent.com/baldurk/renderdoc/v1.1/renderdoc/api/app/renderdoc_app.h;subdir=${BB_GIT_DEFAULT_DESTSUFFIX}/external/renderdoc/src;sha256sum=e7b5f0aa5b1b0eadc63a1c624c0ca7f5af133aa857d6a4271b0ef3d0bdb6868e \ - git://github.com/KhronosGroup/SPIRV-Tools.git;protocol=https;nobranch=1;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/external/spirv-tools/src;rev=3364b982713a0440d1d342dd5eec65b122a61b71 \ - git://github.com/KhronosGroup/glslang.git;protocol=https;nobranch=1;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/external/glslang/src;rev=1b65bd602b23d401d1c4c86dfa90a36a52c66294 \ - git://github.com/KhronosGroup/SPIRV-Headers.git;protocol=https;nobranch=1;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/external/spirv-headers/src;rev=767e901c986e9755a17e7939b3046fc2911a4bbd \ - git://github.com/KhronosGroup/Vulkan-Docs.git;protocol=https;nobranch=1;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/external/vulkan-docs/src;rev=645c59c70e826d9738b6bb103316c03d887dfed3 \ - git://github.com/KhronosGroup/Vulkan-ValidationLayers.git;protocol=https;nobranch=1;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/external/vulkan-validationlayers/src;rev=6cf616f131e9870c499a50441bca2d07ccda9733 \ - git://github.com/google/amber.git;protocol=https;nobranch=1;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/external/amber/src;rev=6fa5ac1fb3b01c93eef3caa2aeb8841565e38d90 \ + git://github.com/KhronosGroup/SPIRV-Tools.git;protocol=https;nobranch=1;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/external/spirv-tools/src;rev=f06e0f3d2e5acfe4b14e714e4103dd1ccdb237e5 \ + git://github.com/KhronosGroup/glslang.git;protocol=https;nobranch=1;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/external/glslang/src;rev=963588074b26326ff0426c8953c1235213309bdb \ + git://github.com/KhronosGroup/SPIRV-Headers.git;protocol=https;nobranch=1;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/external/spirv-headers/src;rev=6d0784e9f1ab92c17eeea94821b2465c14a52be9 \ + git://github.com/KhronosGroup/Vulkan-Docs.git;protocol=https;nobranch=1;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/external/vulkan-docs/src;rev=112aee75d162412a4623e7d22a3de52e0233cbf5 \ + git://github.com/KhronosGroup/Vulkan-ValidationLayers.git;protocol=https;nobranch=1;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/external/vulkan-validationlayers/src;rev=6ae58a2b17b2bcebdc5377995007391b85ffa10f \ + git://github.com/google/amber.git;protocol=https;nobranch=1;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/external/amber/src;rev=57ba1ca211b6f4890c013dcf42cb16069ae916dd \ git://github.com/open-source-parsers/jsoncpp.git;protocol=https;nobranch=1;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/external/jsoncpp/src;rev=9059f5cad030ba11d37818847443a53918c327b1 \ git://github.com/Igalia/vk_video_samples.git;protocol=https;nobranch=1;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/external/nvidia-video-samples/src;rev=45fe88b456c683120138f052ea81f0a958ff3ec4 \ - git://github.com/KhronosGroup/Vulkan-Video-Samples.git;protocol=https;nobranch=1;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/external/vulkan-video-samples/src;rev=0e87744edbb84c9c56c3fc8de9ea5150af5ee4ea \ + git://github.com/KhronosGroup/Vulkan-Video-Samples.git;protocol=https;nobranch=1;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/external/vulkan-video-samples/src;rev=a22e0084e6f38a16dc0dcebb4c19a14651a6665b \ git://github.com/Igalia/video_generator.git;protocol=https;nobranch=1;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/external/video_generator/src;rev=426300e12a5cc5d4676807039a1be237a2b68187 \ - file://0001-Fix-missing-include-cstdint-causing-build-failures.patch;patchdir=external/amber/src \ " diff --git a/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts_1.4.2.1.bb b/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts_1.4.2.1.bb deleted file mode 100644 index abbd026047..0000000000 --- a/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts_1.4.2.1.bb +++ /dev/null @@ -1,25 +0,0 @@ -DESCRIPTION = "Vulkan CTS" - -require khronos-cts.inc - -SRCREV_vk-gl-cts = "644f10ca39dea3b7d9dbadaa75c56206b499a520" - -require vulkan-cts-sources.inc - -# Workaround an optimization bug that breaks createMeshShaderMiscTestsEXT -OECMAKE_CXX_FLAGS:remove:toolchain-gcc = "-O2" - -REQUIRED_DISTRO_FEATURES = "vulkan" -inherit features_check - -DEPENDS += " vulkan-loader" - -EXTRA_OECMAKE += "-DSELECTED_BUILD_TARGETS="deqp-vk deqp-vksc"" - -do_install() { - install -d ${D}/${CTSDIR}/mustpass - cp -r ${B}/external/vulkancts/modules/vulkan/* ${D}/${CTSDIR}/ - cp -r ${S}/external/vulkancts/mustpass/main/ ${D}/${CTSDIR}/mustpass/ - 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 -} diff --git a/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts_1.4.3.1.bb b/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts_1.4.3.1.bb new file mode 100644 index 0000000000..3f7a2480ef --- /dev/null +++ b/meta-oe/recipes-graphics/vk-gl-cts/vulkan-cts_1.4.3.1.bb @@ -0,0 +1,25 @@ +DESCRIPTION = "Vulkan CTS" + +require khronos-cts.inc + +SRCREV_vk-gl-cts = "1ef11bc7acde6b53a499de73db4cf78db9572710" + +require vulkan-cts-sources.inc + +# Workaround an optimization bug that breaks createMeshShaderMiscTestsEXT +OECMAKE_CXX_FLAGS:remove:toolchain-gcc = "-O2" + +REQUIRED_DISTRO_FEATURES = "vulkan" +inherit features_check + +DEPENDS += " vulkan-loader" + +EXTRA_OECMAKE += "-DSELECTED_BUILD_TARGETS="deqp-vk deqp-vksc"" + +do_install() { + install -d ${D}/${CTSDIR}/mustpass + cp -r ${B}/external/vulkancts/modules/vulkan/* ${D}/${CTSDIR}/ + cp -r ${S}/external/vulkancts/mustpass/main/ ${D}/${CTSDIR}/mustpass/ + 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 +} -- cgit v1.2.3-54-g00ecf