Files
2025-10-30 10:41:52 -07:00

63 lines
1.8 KiB
Bash
Executable File

#!/bin/sh
echo "Set exit on simple errors"
set -e
echo "Use dumb gradle terminal"
export TERM=dumb
# Prefer running with JDK 21 for Gradle 8.4+/AGP 8.3+
if [ "$(uname)" = "Darwin" ]; then
# On macOS, prefer JDK 21, fall back to JDK 17
if /usr/libexec/java_home -v 21 >/dev/null 2>&1; then
export JAVA_HOME=$(/usr/libexec/java_home -v 21)
export PATH="$JAVA_HOME/bin:$PATH"
echo "Using Java (21) at $JAVA_HOME"
java -version 2>&1 | head -n 1
elif /usr/libexec/java_home -v 17 >/dev/null 2>&1; then
export JAVA_HOME=$(/usr/libexec/java_home -v 17)
export PATH="$JAVA_HOME/bin:$PATH"
echo "Using Java (17) at $JAVA_HOME"
java -version 2>&1 | head -n 1
else
echo "Warning: JDK 21 or 17 not found via /usr/libexec/java_home. Using current JAVA_HOME: ${JAVA_HOME:-unset}"
java -version 2>&1 || true
echo "Install JDK 21 (preferred) or JDK 17."
fi
else
# Non-macOS: print Java version for visibility
if command -v java >/dev/null 2>&1; then
echo "Detected Java runtime: $(java -version 2>&1 | head -n 1)"
else
echo "Warning: 'java' not found on PATH. Build will likely fail."
fi
fi
rm -rf dist/package/platforms/android || true
mkdir -p dist/package/platforms/android
echo "Build android"
cd android
./gradlew --quiet assembleRelease
cd ..
cp android/widgets/build/outputs/aar/widgets-release.aar dist/package/platforms/android/widgets-release.aar
if [ "$1" ]
then
echo "Suffix package.json's version with tag: $1"
sed -i.bak 's/\(\"version\"\:[[:space:]]*\"[^\"]*\)\"/\1-'$1'"/g' ./dist/package/package.json
fi
if [ "$SKIP_PACK" ]
then
echo "SKIP pack"
else
echo "Copy NPM artefacts"
cp .npmignore LICENSE README.md package.json dist/package
echo "NPM pack"
cd dist/package
PACKAGE="$(npm pack)"
cd ../..
mv dist/package/$PACKAGE dist/$PACKAGE
echo "Output: dist/$PACKAGE"
fi