blob: 6731ad31b7a3d82cc332a6f6feebcb3630a85456 [file] [log] [blame]
jeffhao5d1ac922011-09-29 17:41:15 -07001#!/bin/bash
2#
3# Copyright (C) 2008 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
Stephen Kyle40d35182014-10-03 13:47:56 +010020if [ -e classes.dex ]; then
21 zip $TEST_NAME.jar classes.dex
22 exit 0
23fi
24
jeffhao5d1ac922011-09-29 17:41:15 -070025mkdir classes
26${JAVAC} -d classes `find src -name '*.java'`
27
Roland Levillain560b5ac2014-10-23 16:40:59 +010028if [ -d src2 ]; then
Elliott Hughesc717eef2012-06-15 16:01:26 -070029 ${JAVAC} -d classes `find src2 -name '*.java'`
jeffhao5d1ac922011-09-29 17:41:15 -070030fi
31
Elliott Hughesc717eef2012-06-15 16:01:26 -070032if [ ${NEED_DEX} = "true" ]; then
Tsu Chiang Chuang4407e612012-07-19 16:13:43 -070033 ${DX} -JXmx256m --debug --dex --dump-to=classes.lst --output=classes.dex --dump-width=1000 classes
Nicolas Geoffraya3d05a42014-10-20 17:41:32 +010034fi
35
Roland Levillain560b5ac2014-10-23 16:40:59 +010036if [ -d smali ]; then
Nicolas Geoffraya3d05a42014-10-20 17:41:32 +010037 # Compile Smali classes
38 ${SMALI} -JXmx256m --output smali_classes.dex `find smali -name '*.smali'`
39 ${DXMERGER} classes.dex classes.dex smali_classes.dex
Elliott Hughesc717eef2012-06-15 16:01:26 -070040fi
TDYa127b92bcab2012-04-08 00:09:51 -070041
Roland Levillain560b5ac2014-10-23 16:40:59 +010042if [ -d src-ex ]; then
Elliott Hughesc717eef2012-06-15 16:01:26 -070043 mkdir classes-ex
44 ${JAVAC} -d classes-ex -cp classes `find src-ex -name '*.java'`
45 if [ ${NEED_DEX} = "true" ]; then
Tsu Chiang Chuang4407e612012-07-19 16:13:43 -070046 ${DX} -JXmx256m --debug --dex --dump-to=classes-ex.lst --output=classes-ex.dex --dump-width=1000 classes-ex
jeffhao5d1ac922011-09-29 17:41:15 -070047
48 # quick shuffle so that the stored name is "classes.dex"
49 mv classes.dex classes-1.dex
50 mv classes-ex.dex classes.dex
Brian Carlstrom904667a2012-03-10 23:43:07 -080051 zip $TEST_NAME-ex.jar classes.dex
jeffhao5d1ac922011-09-29 17:41:15 -070052 mv classes.dex classes-ex.dex
53 mv classes-1.dex classes.dex
Elliott Hughesc717eef2012-06-15 16:01:26 -070054 fi
jeffhao5d1ac922011-09-29 17:41:15 -070055fi
Nicolas Geoffraya3d05a42014-10-20 17:41:32 +010056
Nicolas Geoffray12508612014-11-05 12:34:24 +000057if [ ${NEED_DEX} = "true" ]; then
58 zip $TEST_NAME.jar classes.dex
59fi