Files
OpenVR-AdvancedSettings-frame/test/render/CMakeLists.txt
T
Matthias JanetschekandClaude Opus 5.5 bde675f1b8 Steam Frame build, packaging and deployment scripts; render test
- build_scripts/steamframe/: Debian trixie (Qt 6.8) containers for the
  aarch64 cross build, native build and tests; toolchain; scripts to build,
  test (Vulkan validation layers), package (system Qt, ~3 MB) and deploy over
  SSH. Adapted from the vrdashboard template.
- test/render/: render test for the OpenGL and Vulkan backends, driven like
  OverlayController (option OVRAS_BUILD_TESTS).
- RPATH only $ORIGIN, without the build machine's link directories.
- Ignore dist/.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 13:50:57 +02:00

36 lines
1.3 KiB
CMake

# Render test for src/render/ (see tst_render.cpp). Runs without SteamVR or a
# headset; skips itself without a GPU context. One CTest entry per graphics
# API, because the API is process-wide.
find_package(Qt6 REQUIRED COMPONENTS Test)
qt_add_executable(tst_render
tst_render.cpp
${CMAKE_SOURCE_DIR}/src/render/RenderBackend.cpp
${CMAKE_SOURCE_DIR}/src/render/OpenGLRenderBackend.cpp
)
target_include_directories(tst_render PRIVATE
${CMAKE_SOURCE_DIR}/src
${CMAKE_SOURCE_DIR}/third-party/openvr/headers
)
# Only openvr.h's types are used: nothing links against libopenvr_api.
target_link_libraries(tst_render PRIVATE Qt::Gui Qt::Quick Qt::Qml Qt6::Test)
if (QT_FEATURE_vulkan)
target_sources(tst_render PRIVATE
${CMAKE_SOURCE_DIR}/src/render/VulkanRenderBackend.cpp
)
target_compile_definitions(tst_render PRIVATE OVRAS_HAS_VULKAN=1)
else ()
target_compile_definitions(tst_render PRIVATE OVRAS_HAS_VULKAN=0)
endif ()
qt_add_qml_module(tst_render
URI RenderTest
VERSION 1.0
QML_FILES TwoTone.qml
)
add_test(NAME render_opengl COMMAND tst_render)
set_tests_properties(render_opengl PROPERTIES ENVIRONMENT "OVRAS_TEST_API=opengl")
add_test(NAME render_vulkan COMMAND tst_render)
set_tests_properties(render_vulkan PROPERTIES ENVIRONMENT "OVRAS_TEST_API=vulkan")