Files
bigmak94andClaude Opus 5.5 bd9bded792 GalaxyQuest: Super Mario Galaxy in VR on Meta Quest 3
A native port built on the Petari decompilation (previous commit): an
HLE platform layer (OS, DVD, GX, audio, input, NAND) under the game's
own code, an OpenXR presentation (a diorama around the player, a giant
screen, the HUD and settings as compositor layers, SpaceWarp, dynamic
resolution), Touch Plus controls, the tools that convert your own game
files (tools/cook, which also takes the few pieces of data the game's
executable holds from your sys/main.dol), and the port's changes to the
decompilation (`git diff petari-base -- decomp`).  README.md explains
installing and building, docs/TECHNICAL.md how it works.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 01:59:38 +02:00

27 lines
1.3 KiB
Bash

#!/bin/bash
# Configures and builds the Quest (Android arm64) target: build-android/
# libgame.so (the game), libmain.so (the launcher), libreserve.so and the
# petari_headless test runner. tools/package_apk.sh then makes the APK.
# ./build_android.sh [ninja targets...]
# Needs the Android NDK r29, CMake 3.24+ and Ninja (see tools/env.sh for how
# they are found). The OpenXR loader is downloaded on the first build
# (tools/fetch_openxr.sh).
set -e
cd "$(dirname "$0")"
source tools/env.sh
NDK=$(find_ndk) || { echo "Android NDK not found: set ANDROID_NDK_HOME (NDK r29)" >&2; exit 1; }
CMAKE_BIN=$(find_cmake) || { echo "cmake not found: put it on PATH or set CMAKE" >&2; exit 1; }
NINJA_BIN=$(find_ninja) || { echo "ninja not found: put it on PATH or set NINJA" >&2; exit 1; }
[ -f third_party/openxr/prefab/modules/openxr_loader/libs/android.arm64-v8a/libopenxr_loader.so ] || tools/fetch_openxr.sh
BUILD=${BUILD:-build-android}
if [ ! -f $BUILD/build.ninja ]; then
"$CMAKE_BIN" -S . -B $BUILD -G Ninja \
-DCMAKE_MAKE_PROGRAM="$(native_path "$NINJA_BIN")" \
-DCMAKE_TOOLCHAIN_FILE="$(native_path "$NDK")/build/cmake/android.toolchain.cmake" \
-DANDROID_ABI=arm64-v8a -DANDROID_PLATFORM=android-32 \
-DCMAKE_BUILD_TYPE=${CONFIG:-RelWithDebInfo}
fi
"$NINJA_BIN" -C $BUILD "$@"