blob: 80ae2bae0b114a5e4e3260f72cc18ae8a159a0bb [file] [log] [blame]
Qiwen Zhaof5537ba2015-06-18 15:35:37 -07001#!/bin/bash
2
3set -e
4
5usage() {
6
7cat <<EOF
8 $0
9 --sdk <SDK file path>
10 --system <system sdk file path>
11 --support <support library file path>
12EOF
13 exit 2
14
15}
16
17banner() {
18 echo "**************************************************"
19 echo "Updating $1 "
20 echo "**************************************************"
21}
22
23update_sdk() {
24 if [ -f "$SDK" ]
25 then
26 banner "SDK"
27 cd $ROOT_DIR/current
28 rm -f android.jar uiautomator.jar framework.aidl
29 unzip -j $SDK */android.jar */uiautomator.jar */framework.aidl
30 fi
31}
32
33update_system_sdk() {
34 if [ -f "$SYSTEM_SDK" ]
35 then
36 banner "system SDK"
37 cp -f $SYSTEM_SDK $ROOT_DIR/system_current/android.jar
38 fi
39}
40
41update_support_lib() {
42 if [ -f "$SUPPORT" ]
43 then
44 banner "support library"
45 rm -rf $ROOT_DIR/current/support/
46 unzip $SUPPORT >/dev/null
47
48 # Remove duplicates
49 rm -f support/v7/appcompat/libs/android-support-v4.jar
50 rm -f support/multidex/instrumentation/libs/android-support-multidex.jar
51
52 # Remove samples
53 rm -rf support/samples
54
55 # Remove source files
56 find support -name "*.java" \
57 -o -name "*.aidl" \
58 -o -name AndroidManifest.xml \
59 | xargs rm
60
61 # Other misc files we don't need
62 find support -name "*.gradle" \
63 -o -name ".classpath" \
64 -o -name ".project" \
65 -o -name "project.properties" \
66 -o -name "source.properties" \
67 -o -name ".readme" \
68 -o -name "README.txt" \
69 -o -name "package.html" \
70 -o -name "NOTICE.txt" \
71 | xargs rm
72
73 # Now we can remove empty dirs
74 find . -type d -empty -delete
75 fi
76}
77
78main() {
79 while [ "$#" -gt 0 ]
80 do
81 case "$1" in
82 --help|-h)
83 usage
84 ;;
85 --sdk)
86 export SDK="$2"
87 shift; shift
88 ;;
89 --system)
90 export SYSTEM_SDK="$2"
91 shift; shift
92 ;;
93 --support)
94 export SUPPORT="$2"
95 shift; shift
96 ;;
97 -*)
98 usage
99 ;;
100 *)
101 break
102 ;;
103 esac
104 done
105
106 ROOT_DIR=$(realpath $(dirname $0))
107
108 update_sdk
109 update_system_sdk
110 update_support_lib
111}
112
113main $*