1#!/bin/bash 2 3set -e 4 5# CD to the top android directory 6D=`dirname "$0"` 7cd "$D/../../../../" 8 9# computes relative ".." paths from $1 to here (in /android) 10function back() { 11 echo $1 | sed 's@[^/]*@..@g' 12} 13 14HOST=`uname` 15if [ "${HOST:0:6}" == "CYGWIN" ]; then 16 # We can't use symlinks under Cygwin 17 function cpdir() { # $1=dest $2=source 18 echo "rsync $2 => $1" 19 rsync -avW --delete-after $2 $1 20 } 21 22else 23 # For all other systems which support symlinks 24 function cpdir() { # $1=dest $2=source 25 ln -svf `back $1`/$2 $1 26 } 27fi 28 29BASE="development/tools/eclipse/plugins/com.android.ide.eclipse.tests" 30DEST=$BASE 31BACK=`back $DEST` 32 33HOST=`uname` 34if [ "$HOST" == "Linux" ]; then 35 ln -svf $BACK/out/host/linux-x86/framework/kxml2-2.3.0.jar "$DEST/" 36 ln -svf $BACK/out/host/linux-x86/framework/layoutlib.jar "$DEST/" 37 38elif [ "$HOST" == "Darwin" ]; then 39 ln -svf $BACK/out/host/darwin-x86/framework/kxml2-2.3.0.jar "$DEST/" 40 ln -svf $BACK/out/host/darwin-x86/framework/layoutlib.jar "$DEST/" 41 42elif [ "${HOST:0:6}" == "CYGWIN" ]; then 43 if [ ! -f "$DEST/kxml2-2.3.0.jar" ]; then 44 cp -v "prebuilt/common/kxml2/kxml2-2.3.0.jar" "$DEST/" 45 fi 46 47 LIBS="layoutlib.jar" 48 NEED_MAKE="yes" 49 for LIB in $LIBS ; do 50 SRCJAR="out/host/windows-x86/framework/$LIB" 51 DSTJAR="$DEST/$LIB" 52 if [[ $NEED_MAKE ]] && ! diff -q "$SRCJAR" "$DSTJAR" >/dev/null ; then 53 MAKE_LIBS="${LIBS//.jar/}" 54 echo "Make java libs: $MAKE_LIBS" 55 make -j3 showcommands $MAKE_LIBS || die "adt-tests: Failed to build one of $LIBS." 56 NEED_MAKE="" 57 fi 58 59 cp -v "$SRCJAR" "$DSTJAR" 60 done 61 62 chmod -v a+rx "$DEST"/*.jar 63else 64 echo "Unsupported platform ($HOST). Nothing done." 65fi 66 67# create link to ddmlib tests 68DEST=$BASE/unittests/com/android 69cpdir $DEST development/tools/ddms/libs/ddmlib/tests/src/com/android/ddmlib 70cpdir $DEST development/tools/sdkmanager/libs/sdklib/tests/com/android/sdklib 71 72# Cleanup old obsolete symlink 73[[ -e $DEST/sdkuilib || -L $DEST/sdkuilib ]] && rm -rfv $DEST/sdkuilib 74 75DEST=$BASE/unittests/com/android/layoutlib 76mkdir -p $DEST 77cpdir $DEST frameworks/base/tools/layoutlib/bridge/tests/com/android/layoutlib/bridge 78cpdir $DEST frameworks/base/tools/layoutlib/bridge/tests/com/android/layoutlib/testdata 79