#!/bin/bash # # Copyright (C) 2007 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Find dx.jar from dx in the android dev tree prog=`which dx` progdir=`dirname "${prog}"` dxjar=$progdir/../framework/dx.jar junitjar=$progdir/../framework/junit-host.jar junitdex=$progdir/../framework/junit-hostdex.jar for i in "$dxjar" "$junitjar" "$junitdex"; do if [ ! -r $i ]; then echo Missing dependency $i. Build dx/junit-tests. exit 1 fi done javac -source 1.7 -target 1.7 -cp $dxjar:$junitjar `find . -name "*.java"` if [ $? != 0 ]; then echo Failed java compilation. exit 1 fi dx --dex --output=test.jar com/android/dx/merge/* $dxjar # Build a resource .jar containing the .dex files to merge dx --dex --output=testdata/Annotated.dex testdata/Annotated* dx --dex --output=testdata/Basic.dex testdata/Basic* dx --dex --output=testdata/FillArrayData.dex testdata/FillArrayData* dx --dex --output=testdata/StaticValues.dex testdata/StaticValues* dx --dex --output=testdata/TryCatchFinally.dex testdata/TryCatchFinally* jar cfM resources.jar testdata/*.dex art -classpath test.jar:$junitdex:resources.jar \ junit.textui.TestRunner com.android.dx.merge.DexMergeTest > unit-out.txt 2>&1 if [ "$?" = "0" ]; then echo "Yay!" else cat unit-out.txt fi