blob: 7b44863fa97f8ffa54c2e7a81ff7efe4a86a11ab [file] [log] [blame]
Andreas Gampe2b0fa5b2014-10-31 18:12:30 -07001#!/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.
18set -e
19
Orion Hodson64fe3be2018-06-15 12:50:22 +010020export ORIGINAL_JAVAC="$JAVAC"
Andreas Gampe2b0fa5b2014-10-31 18:12:30 -070021
Orion Hodson64fe3be2018-06-15 12:50:22 +010022# Wrapper function for javac which invokes the compiler and applies
23# additional setup steps for the test.
24function javac_wrapper {
25 set -e # Stop on error - the caller script may not have this set.
Andreas Gampe2b0fa5b2014-10-31 18:12:30 -070026
Orion Hodson64fe3be2018-06-15 12:50:22 +010027 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}
Orion Hodson4a1cac42018-05-23 16:23:27 +010038
Orion Hodson64fe3be2018-06-15 12:50:22 +010039export -f javac_wrapper
40export JAVAC=javac_wrapper
41
42######################################################################
43
44# Signal to default-build that this is a multidex test.
45mkdir src-multidex
46./default-build "$@"