1 #!/bin/bash 2 # 3 # Copyright (C) 2014 The Android Open Source Project 4 # 5 # Licensed under the Apache License, Version 2.0 (the "License"); 6 # you may not use this file except in compliance with the License. 7 # You may obtain a copy of the License at 8 # 9 # http://www.apache.org/licenses/LICENSE-2.0 10 # 11 # Unless required by applicable law or agreed to in writing, software 12 # distributed under the License is distributed on an "AS IS" BASIS, 13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 # See the License for the specific language governing permissions and 15 # limitations under the License. 16 17 # Stop if something fails. 18 set -e 19 20 export ORIGINAL_JAVAC="$JAVAC" 21 22 # Wrapper function for javac which invokes the compiler and applies 23 # additional setup steps for the test. 24 function javac_wrapper { 25 set -e # Stop on error - the caller script may not have this set. 26 27 if [[ "$*" != *"classes2"* ]]; then 28 # First invocation: compile src/ files. 29 $ORIGINAL_JAVAC "$@" 30 else 31 # Second invocation: move MirandaInterface.class for placement in 32 # a secondary dex file. There are no other source files for the 33 # secondary DEX so no compilation required. 34 mv classes/MirandaInterface.class classes2 35 fi 36 return $? 37 } 38 39 export -f javac_wrapper 40 export JAVAC=javac_wrapper 41 42 ###################################################################### 43 44 # Signal to default-build that this is a multidex test. 45 mkdir src-multidex 46 ./default-build "$@" 47