#!/usr/bin/env bash # Regenera el binding gomobile (unibus.aar) a partir de ./mobile sobre pkg/client. # # El .aar (~38 MB, con libgojni.so para 4 ABIs) NO se versiona: es un artefacto # de build reproducible. Este script lo regenera. Requisitos: # - Go con gomobile/gobind instalados: # go install golang.org/x/mobile/cmd/gomobile@latest # go install golang.org/x/mobile/cmd/gobind@latest # gomobile init # - Android NDK (este repo usó 26.3.11579264 dentro del Android SDK). # # En un worktree fuera del árbol del registry, pkg/client importa # "fn-registry/functions/cybersecurity" vía el `replace` del go.mod. Si ese # replace relativo no resuelve (p. ej. worktree en /tmp), crea un go.work local # (gitignored) con: replace fn-registry => /ruta/absoluta/a/fn_registry set -euo pipefail cd "$(dirname "$0")/.." : "${ANDROID_HOME:=$HOME/android-sdk}" : "${ANDROID_NDK_HOME:=$ANDROID_HOME/ndk/26.3.11579264}" export ANDROID_HOME ANDROID_NDK_HOME export PATH="$HOME/go/bin:$PATH" OUT="android/app/libs/unibus.aar" mkdir -p "$(dirname "$OUT")" echo "==> gomobile bind -> $OUT" gomobile bind \ -target=android \ -androidapi 21 \ -javapkg com.unibus.core \ -o "$OUT" \ ./mobile echo "==> OK: $OUT" ls -lh "$OUT"