- 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>
28 lines
1.1 KiB
CMake
28 lines
1.1 KiB
CMake
# CMake toolchain: cross-compile for aarch64 Linux (Steam Frame) inside
|
|
# cross-arm64.Dockerfile (Debian multiarch). Used by container-build.sh.
|
|
# Adapted from the vrdashboard template.
|
|
|
|
set(CMAKE_SYSTEM_NAME Linux)
|
|
set(CMAKE_SYSTEM_PROCESSOR aarch64)
|
|
|
|
set(CMAKE_C_COMPILER aarch64-linux-gnu-gcc)
|
|
set(CMAKE_CXX_COMPILER aarch64-linux-gnu-g++)
|
|
|
|
# Debian multiarch: target libraries live in /usr/lib/aarch64-linux-gnu;
|
|
# headers are shared.
|
|
set(CMAKE_LIBRARY_ARCHITECTURE aarch64-linux-gnu)
|
|
set(CMAKE_FIND_ROOT_PATH /usr/aarch64-linux-gnu)
|
|
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
|
set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE BOTH)
|
|
set(ENV{PKG_CONFIG_LIBDIR} /usr/lib/aarch64-linux-gnu/pkgconfig:/usr/share/pkgconfig)
|
|
|
|
# Qt 6 cross builds need a host Qt for its code generators (moc, rcc,
|
|
# qmlcachegen, ...).
|
|
set(QT_HOST_PATH /usr CACHE PATH "Host Qt prefix")
|
|
set(QT_HOST_PATH_CMAKE_DIR /usr/lib/x86_64-linux-gnu/cmake CACHE PATH "Host Qt CMake dir")
|
|
set(CMAKE_PREFIX_PATH /usr/lib/aarch64-linux-gnu/cmake)
|
|
|
|
set(CMAKE_OBJDUMP aarch64-linux-gnu-objdump)
|