mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-23 16:49:10 -07:00
media-libs/vulkan-layers: wire up (restricted) tests
There's a gazillion segfaults that need investigation, so wire up the tests but keep them restricted for now. Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
This is a revert of upstream commit b5c2e38840480e3653360127f18459a907c75f5c to allow
|
||||
building tests without building dev-util/spirv-tools with static-libs.
|
||||
--- a/tests/CMakeLists.txt
|
||||
+++ b/tests/CMakeLists.txt
|
||||
@@ -320,13 +320,11 @@ endif()
|
||||
|
||||
find_package(GTest CONFIG)
|
||||
find_package(glslang CONFIG)
|
||||
-find_package(SPIRV-Tools CONFIG)
|
||||
|
||||
target_link_libraries(vk_layer_validation_tests PRIVATE
|
||||
VkLayer_utils
|
||||
glslang::SPIRV
|
||||
glslang::SPVRemapper
|
||||
- SPIRV-Tools-static
|
||||
SPIRV-Headers::SPIRV-Headers
|
||||
GTest::gtest
|
||||
GTest::gtest_main
|
||||
@@ -347,6 +345,21 @@ target_include_directories(vk_layer_validation_tests PRIVATE
|
||||
${VVL_SOURCE_DIR}/layers/external
|
||||
)
|
||||
|
||||
+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_layer_validation_tests PRIVATE SPIRV-Tools)
|
||||
+elseif(TARGET SPIRV-Tools-static)
|
||||
+ target_link_libraries(vk_layer_validation_tests PRIVATE SPIRV-Tools-static)
|
||||
+elseif(TARGET SPIRV-Tools-shared)
|
||||
+ target_link_libraries(vk_layer_validation_tests PRIVATE SPIRV-Tools-shared)
|
||||
+else()
|
||||
+ message(FATAL_ERROR "Cannot determine SPIRV-Tools target name")
|
||||
+endif()
|
||||
+
|
||||
# More details in tests/android/mock/README.md
|
||||
option(VVL_MOCK_ANDROID "Enable building for Android on desktop for testing with MockICD setup")
|
||||
if(VVL_MOCK_ANDROID)
|
||||
@@ -22,7 +22,9 @@ HOMEPAGE="https://github.com/KhronosGroup/Vulkan-ValidationLayers"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
IUSE="wayland X"
|
||||
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}
|
||||
@@ -40,6 +42,10 @@ DEPEND="${RDEPEND}
|
||||
|
||||
QA_SONAME="/usr/lib[^/]*/libVkLayer_khronos_validation.so"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.4.313.0-tests-no-static.patch
|
||||
)
|
||||
|
||||
multilib_src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DCMAKE_C_FLAGS="${CFLAGS} -DNDEBUG"
|
||||
@@ -49,7 +55,7 @@ multilib_src_configure() {
|
||||
-DBUILD_WSI_WAYLAND_SUPPORT=$(usex wayland)
|
||||
-DBUILD_WSI_XCB_SUPPORT=$(usex X)
|
||||
-DBUILD_WSI_XLIB_SUPPORT=$(usex X)
|
||||
-DBUILD_TESTS=OFF
|
||||
-DBUILD_TESTS=$(usex test)
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
@@ -22,7 +22,9 @@ HOMEPAGE="https://github.com/KhronosGroup/Vulkan-ValidationLayers"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
IUSE="wayland X"
|
||||
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}
|
||||
@@ -40,6 +42,10 @@ DEPEND="${RDEPEND}
|
||||
|
||||
QA_SONAME="/usr/lib[^/]*/libVkLayer_khronos_validation.so"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.4.313.0-tests-no-static.patch
|
||||
)
|
||||
|
||||
multilib_src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DCMAKE_C_FLAGS="${CFLAGS} -DNDEBUG"
|
||||
@@ -49,7 +55,7 @@ multilib_src_configure() {
|
||||
-DBUILD_WSI_WAYLAND_SUPPORT=$(usex wayland)
|
||||
-DBUILD_WSI_XCB_SUPPORT=$(usex X)
|
||||
-DBUILD_WSI_XLIB_SUPPORT=$(usex X)
|
||||
-DBUILD_TESTS=OFF
|
||||
-DBUILD_TESTS=$(usex test)
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user