You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

45 lines
1.9 KiB

"""Copy OpenXR vendors plugin files to the gradle build directory."""
import shutil
import os
project = r"C:\git\g1-teleop"
build_dir = os.path.join(project, "android", "build")
addons = os.path.join(project, "addons", "godotopenxrvendors")
# 1. Copy Meta AAR to libs/debug and libs/plugins/debug
for d in ["libs/debug", "libs/plugins/debug"]:
dest = os.path.join(build_dir, d)
os.makedirs(dest, exist_ok=True)
src = os.path.join(addons, ".bin", "android", "debug", "godotopenxr-meta-debug.aar")
if os.path.exists(src):
shutil.copy2(src, dest)
print(f"Copied meta debug AAR to {dest}")
for d in ["libs/release", "libs/plugins/release"]:
dest = os.path.join(build_dir, d)
os.makedirs(dest, exist_ok=True)
src = os.path.join(addons, ".bin", "android", "release", "godotopenxr-meta-release.aar")
if os.path.exists(src):
shutil.copy2(src, dest)
print(f"Copied meta release AAR to {dest}")
# 2. Copy libgodotopenxrvendors.so to libs/debug/arm64-v8a
for build_type in ["debug", "release"]:
template = "template_debug" if build_type == "debug" else "template_release"
so_dir = os.path.join(build_dir, "libs", build_type, "arm64-v8a")
os.makedirs(so_dir, exist_ok=True)
src = os.path.join(addons, ".bin", "android", template, "arm64", "libgodotopenxrvendors.so")
if os.path.exists(src):
shutil.copy2(src, so_dir)
print(f"Copied libgodotopenxrvendors.so to {so_dir}")
# 3. Copy the gdextension file to assets so it's included in the APK
assets_addons = os.path.join(build_dir, "src", "main", "assets", "addons", "godotopenxrvendors")
os.makedirs(assets_addons, exist_ok=True)
for f in ["plugin.gdextension", "plugin.gdextension.uid"]:
src = os.path.join(addons, f)
if os.path.exists(src):
shutil.copy2(src, assets_addons)
print(f"Copied {f} to assets")
print("\nDone! Now rebuild the APK.")