# 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)