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>
This commit is contained in:
Matthias Janetschek
2026-10-07 13:50:57 +02:00
co-authored by Claude Opus 5.5
parent b22c35ae29
commit bde675f1b8
15 changed files with 610 additions and 14 deletions
+12 -1
View File
@@ -283,8 +283,10 @@ if(NOT WIN32 AND NOT APPLE)
set_property(TARGET AdvancedSettings PROPERTY OUTPUT_NAME AdvancedSettings_app)
# libopenvr_api.so is copied next to the executable (see "openvrApiCopy");
# $ORIGIN makes the loader look there, in the build tree and in packages.
# BUILD_WITH_INSTALL_RPATH: only $ORIGIN, without the build machine's
# link directories (the build tree is what gets packaged).
set_target_properties(AdvancedSettings PROPERTIES
BUILD_RPATH "$ORIGIN"
BUILD_WITH_INSTALL_RPATH ON
INSTALL_RPATH "$ORIGIN"
)
endif()
@@ -594,3 +596,12 @@ install(SCRIPT ${deploy_script})
# "${COPY_DEST_DIR}/AdvancedSettings.exe"
#)
endif ()
# Tests (off by default). test/render checks the render backends
# (docs/steamframe/DESIGN.md, "Tests"); build_scripts/steamframe/
# container-test.sh runs them with the Vulkan validation layers.
option(OVRAS_BUILD_TESTS "Build the tests" OFF)
if (OVRAS_BUILD_TESTS)
enable_testing()
add_subdirectory(test/render)
endif ()