#!/bin/bash
[% c("var/set_default_env") -%]
output_dir=[% dest_dir %]/[% c('filename') %]
gradle_repo=$rootdir/[% c('input_files_by_name/gradle-dependencies') %]
export GRADLE_MAVEN_REPO="file://$gradle_repo"

# The download script assumes artifact package name is the complete URL path.
# In some cases this is incorrect, so copy those artifacts to correct location
cp -r $gradle_repo/dl/android/maven2/* $gradle_repo
cp -r $gradle_repo/plugins-release/* $gradle_repo
cp -r $gradle_repo/maven2/* $gradle_repo

mkdir -p /var/tmp/build $output_dir

[% pc(c('var/compiler'), 'var/setup', { compiler_tarfile => c('input_files_by_name/' _ c('var/compiler')) }) %]
tar -C /var/tmp/build -xf [% project %]-[% c('version') %].tar.gz

# Patch projects
cd /var/tmp/build/[% project %]-[% c('version') %]
for p in $rootdir/*.patch
  do patch -p1 < $p
done

mkdir app/libs
cp $rootdir/[% c('input_files_by_name/tor-android-service') %]/*.aar app/libs/
cp $rootdir/[% c('input_files_by_name/topl') %]/* app/libs/

# Build Android Libraries and Apps
$GRADLE_HOME/gradle-4.1/bin/gradle --offline assembleRelease -x lint

# Remove these classes so we don't have problem with duplicates later in the build
orbot_apk=app/build/outputs/aar/Orbot-*.aar
unzip $orbot_apk classes.jar -d .
zip classes.jar --delete "com/runjva/*" "com/msopentech/*" "org/torproject/android/service/*"
zip -r $orbot_apk classes.jar

# Package
cp $orbot_apk $output_dir
