mirror of
https://github.com/astromaddie/lambda1-vr.git
synced 2026-10-18 20:00:13 +02:00
The Frame runs Android apps in a container (Lepton) that has no OpenXR loader broker, so the APK needs its own loader. This adds a "frame" build type: ./gradlew assembleFrame. It's release plus: - applicationId .frame, minSdk 30 (the container is Android 11) - a manifest overlay that drops the headtracking requirement and the Quest/Pico metadata, since the install fails with it - the Khronos loader 1.1.63, fetched from Maven Central at build time, checked against a SHA-256 and unpacked into build/ (not committed) - L1VR_STEAM_FRAME for the native code, BuildConfig.STEAM_FRAME for Java Quest builds don't see any of this. I also added the gradle wrapper script to Projects/Android, since the wrapper jar and properties were already there, and -Wall for the VR sources. Haven't run it on the headset yet.
21 lines
612 B
Makefile
21 lines
612 B
Makefile
LOCAL_PATH := $(call my-dir)
|
|
|
|
include $(CLEAR_VARS)
|
|
|
|
LOCAL_MODULE := openxr_loader
|
|
|
|
# The Steam Frame build passes the Khronos loader it fetched
|
|
ifneq ($(L1VR_OPENXR_LOADER),)
|
|
LOCAL_SRC_FILES := $(L1VR_OPENXR_LOADER)
|
|
LOADER_FILE := $(L1VR_OPENXR_LOADER)
|
|
else
|
|
LOCAL_SRC_FILES := lib$(LOCAL_MODULE).so
|
|
LOADER_FILE := $(LOCAL_PATH)/$(LOCAL_SRC_FILES)
|
|
endif
|
|
|
|
# NOTE: This check is added to prevent the following error when running a "make clean" where
|
|
# the prebuilt lib may have been deleted: "LOCAL_SRC_FILES points to a missing file"
|
|
ifneq (,$(wildcard $(LOADER_FILE)))
|
|
include $(PREBUILT_SHARED_LIBRARY)
|
|
endif
|