38 lines
1.3 KiB
Bash
Executable File
38 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
|
|
echo "=== Building j3270 (Desktop JAR) and a3270 (Android APK) ==="
|
|
|
|
export JAVA_HOME="/Users/rudi/.sdkman/candidates/java/21.0.6-sem"
|
|
export ANDROID_HOME="/Users/rudi/Library/Android/sdk"
|
|
|
|
GRADLE_BIN="/Users/rudi/.gradle/wrapper/dists/gradle-8.5-bin/5t9huq95ubn472n8rpzujfbqh/gradle-8.5/bin/gradle"
|
|
BUILD_DIR="$(pwd)/build"
|
|
|
|
mkdir -p "$BUILD_DIR"
|
|
|
|
echo "Building Android APK (a3270)..."
|
|
"$GRADLE_BIN" :a3270:assembleDebug
|
|
|
|
echo "Building Desktop App JAR (j3270)..."
|
|
mkdir -p "$BUILD_DIR/lib3270j" "$BUILD_DIR/j3270"
|
|
"$JAVA_HOME/bin/javac" -d "$BUILD_DIR/lib3270j" $(find lib3270j/src -name "*.java")
|
|
"$JAVA_HOME/bin/javac" -cp "$BUILD_DIR/lib3270j" -d "$BUILD_DIR/j3270" $(find j3270/src -name "*.java")
|
|
|
|
echo "Main-Class: org.pubvm.j3270.J3270App" > "$BUILD_DIR/MANIFEST.MF"
|
|
echo "" >> "$BUILD_DIR/MANIFEST.MF"
|
|
|
|
"$JAVA_HOME/bin/jar" cvfm "$BUILD_DIR/j3270.jar" "$BUILD_DIR/MANIFEST.MF" \
|
|
-C "$BUILD_DIR/lib3270j" . \
|
|
-C "$BUILD_DIR/j3270" .
|
|
|
|
# Copy APK to build/
|
|
if [ -f "a3270/build/outputs/apk/debug/a3270-debug.apk" ]; then
|
|
cp "a3270/build/outputs/apk/debug/a3270-debug.apk" "$BUILD_DIR/a3270.apk"
|
|
echo "Copied a3270-debug.apk to $BUILD_DIR/a3270.apk"
|
|
fi
|
|
|
|
echo "=== Build Complete ==="
|
|
echo "Artifacts in $BUILD_DIR:"
|
|
ls -lh "$BUILD_DIR"/*.jar "$BUILD_DIR"/*.apk 2>/dev/null || true
|