1#! /bin/bash 2 3set -e 4 5printusage() { 6 echo "Usage: ./download-libs.sh <robolectric-version> " >&2 7 echo " -f <old-directory-to-copy-from>" >&2 8 exit 1 9} 10 11oldVersion="" 12roboVersion="$1" 13shift 14 15while getopts "f:h" opt; do 16 case "$opt" in 17 f) 18 oldVersion="$OPTARG" 19 ;; 20 h) 21 printusage 22 ;; 23 esac 24done 25 26if [[ -z $roboVersion ]] || [[ -z $oldVersion ]]; then 27 printusage 28fi 29 30mkdir -p ../"$roboVersion"/PREBUILT 31# Copy the scripts into the versioned directory for record 32cp download-libs.sh ../"$roboVersion"/PREBUILT/download-libs.sh 33cp download-libs.gradle ../"$roboVersion"/PREBUILT/download-libs.gradle 34 35cd ../"$roboVersion" 36gradle -b PREBUILT/download-libs.gradle \ 37 -ProbolectricVersion="$roboVersion" \ 38 -PshadowsVersion="$roboVersion" \ 39 -PbuildDir="`pwd`" 40 41COPY_FROM_OLD_VERSION=( 42 "java-timeout" 43 "list_failed.sh" 44 "report-internal.mk" 45 "robotest-internal.mk" 46 "robotest.sh" 47 "run_robotests.mk" 48 "wrapper.sh" 49 "wrapper_test.sh" 50) 51 52JARS=$(ls -1 lib/*.jar | sed 's/^.*$/ "&",/') 53 54for file in "${COPY_FROM_OLD_VERSION[@]}"; do 55 cp -n ../"$oldVersion"/$file ./$file 56done 57 58cat <<EOF > Android.bp 59package { 60 default_applicable_licenses: ["Android-Apache-2.0"], 61} 62 63java_import { 64 name: "platform-robolectric-${roboVersion}-prebuilt", 65 sdk_version: "current", 66 jars: [ 67${JARS} 68 ], 69 exclude_files: [ 70 "META-INF/*.SF", 71 "META-INF/*.DSA", 72 "META-INF/*.RSA", 73 ], 74} 75 76EOF 77 78set +e 79