media-libs/vulkan-layers: add 1.4.335.0

Signed-off-by: Nick Sarnie <sarnex@gentoo.org>
This commit is contained in:
Nick Sarnie
2025-12-15 03:28:12 +09:00
parent 5c594596f1
commit 39d83bb25e
4 changed files with 109 additions and 1 deletions

View File

@@ -1,2 +1,3 @@
DIST vulkan-layers-1.4.321.0.tar.gz 6494385 BLAKE2B 483b41655630967a7a08bf1bb34264a16829f30174eb21f1e5d73e70c69b88f9a4972dbbeb915c754bc88ebe588856a4b1f9f9edcac50aed9fea32fcc7c38196 SHA512 47651166201f06159348c36667097410f9b51c1907754f99b44af58ef0f6b75c47e8b1f31d06b821915589575bd74dcbda927751994b088deeaa1e46ff1653c5
DIST vulkan-layers-1.4.328.0.tar.gz 6765952 BLAKE2B 7b68d635c262f1350f93c5906ccaf9b548ea27ae85210198e02d8cbaee52a9bd080fd9555979a6b26d2d5fe200de8e4a77f938f1a77050b959100b6b82226b10 SHA512 d98ae93e738fee540e4924c887497f06ca7296a22a1a450f08e5278bdc51fb440443361fdf839793bc632b6e6115754621f24a8e7f2548da58d1bf67713ccaf9
DIST vulkan-layers-1.4.335.0.tar.gz 7035814 BLAKE2B ee49766f3521db3434dfba793f8cb51d98363610cf85d91f238727c3dd3392743897fe3aa0979956fefcdf86a4e2b0a2de9c0b236473ceba3d7556363e572407 SHA512 5088bfb212595d5c1bd052f3e2e7d52ffa1c329625576116876a248daba51c9ba86297ebf8ffb6bd1e8f78bf161409a603aa4d145032664623292d53ed541514

View File

@@ -0,0 +1,42 @@
diff --git a/tests/framework/CMakeLists.txt b/tests/framework/CMakeLists.txt
index 1950b4b06..3fee44ae0 100644
--- a/tests/framework/CMakeLists.txt
+++ b/tests/framework/CMakeLists.txt
@@ -74,7 +74,6 @@ target_include_directories(vk_test_framework PUBLIC
find_package(GTest CONFIG)
find_package(glslang CONFIG)
-find_package(SPIRV-Tools CONFIG)
if(${CMAKE_CXX_COMPILER_ID} MATCHES "(GNU|Clang)")
target_compile_options(vk_test_framework PUBLIC
@@ -103,7 +102,6 @@ endif()
target_link_libraries(vk_test_framework PUBLIC
VkLayer_utils
glslang::SPIRV
- SPIRV-Tools-static
SPIRV-Headers::SPIRV-Headers
GTest::gtest
GTest::gtest_main
@@ -112,6 +110,21 @@ target_link_libraries(vk_test_framework PUBLIC
$<TARGET_NAME_IF_EXISTS:PkgConfig::WAYlAND_CLIENT>
)
+find_package(SPIRV-Tools CONFIG QUIET)
+
+# See https://github.com/KhronosGroup/SPIRV-Tools/issues/3909 for background on this.
+# The targets available from SPIRV-Tools change depending on how SPIRV_TOOLS_BUILD_STATIC is set.
+# Try to handle all possible combinations so that we work with externally built packages.
+if (TARGET SPIRV-Tools)
+ target_link_libraries(vk_test_framework PRIVATE SPIRV-Tools)
+elseif(TARGET SPIRV-Tools-static)
+ target_link_libraries(vk_test_framework PRIVATE SPIRV-Tools-static)
+elseif(TARGET SPIRV-Tools-shared)
+ target_link_libraries(vk_test_framework PRIVATE SPIRV-Tools-shared)
+else()
+ message(FATAL_ERROR "Cannot determine SPIRV-Tools target name")
+endif()
+
# setup framework/config.h using framework/config.h.in as a source
file(GENERATE OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/config_$<CONFIG>.h" INPUT "config.h.in")

View File

@@ -0,0 +1,65 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MY_PN=Vulkan-ValidationLayers
PYTHON_COMPAT=( python3_{11..14} )
inherit cmake-multilib python-any-r1
if [[ ${PV} == *9999* ]]; then
EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git"
EGIT_SUBMODULES=()
inherit git-r3
else
SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/vulkan-sdk-${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
S="${WORKDIR}"/${MY_PN}-vulkan-sdk-${PV}
fi
DESCRIPTION="Vulkan Validation Layers"
HOMEPAGE="https://github.com/KhronosGroup/Vulkan-ValidationLayers"
LICENSE="Apache-2.0"
SLOT="0"
IUSE="wayland test X"
# Many segfaults as of 1.4.313.0
RESTRICT="!test? ( test ) test"
RDEPEND="~dev-util/spirv-tools-${PV}[${MULTILIB_USEDEP}]"
DEPEND="${RDEPEND}
${PYTHON_DEPS}
~dev-util/glslang-${PV}:=[${MULTILIB_USEDEP}]
~dev-util/spirv-headers-${PV}
~dev-util/vulkan-headers-${PV}
~dev-util/vulkan-utility-libraries-${PV}:=[${MULTILIB_USEDEP}]
wayland? ( dev-libs/wayland:=[${MULTILIB_USEDEP}] )
X? (
x11-libs/libX11:=[${MULTILIB_USEDEP}]
x11-libs/libXrandr:=[${MULTILIB_USEDEP}]
)
"
QA_SONAME="/usr/lib[^/]*/libVkLayer_khronos_validation.so"
PATCHES=(
"${FILESDIR}"/${PN}-1.4.335.0-tests-no-static.patch
)
multilib_src_configure() {
local mycmakeargs=(
-DCMAKE_C_FLAGS="${CFLAGS} -DNDEBUG"
-DCMAKE_CXX_FLAGS="${CXXFLAGS} -DNDEBUG"
-DCMAKE_SKIP_RPATH=ON
-DBUILD_WERROR=OFF
-DBUILD_WSI_WAYLAND_SUPPORT=$(usex wayland)
-DBUILD_WSI_XCB_SUPPORT=$(usex X)
-DBUILD_WSI_XLIB_SUPPORT=$(usex X)
-DBUILD_TESTS=$(usex test)
)
cmake_src_configure
}
multilib_src_install_all() {
find "${ED}" -type f -name \*.a -delete || die
}

View File

@@ -42,7 +42,7 @@ DEPEND="${RDEPEND}
QA_SONAME="/usr/lib[^/]*/libVkLayer_khronos_validation.so"
PATCHES=(
"${FILESDIR}"/${PN}-1.4.328.0-tests-no-static.patch
"${FILESDIR}"/${PN}-1.4.335.0-tests-no-static.patch
)
multilib_src_configure() {