• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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