Include lint 25.3.1 and remove older lint

This CL includes Android Lint 25.3.1 which supports parsing Java 8
syntax such as lambda expressions. The lint script and its dependency
lib is put into a separate folder named sdk/tools-lint. This CL also
removes older lint script from sdk/tools.

Bug:669999

Change-Id: Icbf55777fca8c976ad157a2389ea04dc3fc50ad4
Reviewed-on: https://chromium-review.googlesource.com/483006
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
diff --git a/README.chromium b/README.chromium
index 4f8d5ff..0181296 100644
--- a/README.chromium
+++ b/README.chromium
@@ -8,6 +8,7 @@
   Android SDK Sources 25
   Android Support Library 23.2.1
   Google Cloud Messaging 3
+  Android Lint 25.3.1 (Extracted from Android SDK Tools 26.0.1)
 Security Critical: no
 License: Apache Version 2.0
 
@@ -25,5 +26,7 @@
 - Cherry-picked previous version of dx.jar.
 - Included the Android support library and required extras packages.
 - Removed unused resources from the support library (see crbug.com/372481)
+- Included the lint tool from Android SDK Tools 26.0.1 and its dependencies in
+  sdk/tools-lint. Removed previous version of lint in sdk/tools.
 
 No other modifications has been made to the public Android SDK/NDK.
diff --git a/sdk/tools-lint/bin/lint b/sdk/tools-lint/bin/lint
new file mode 100755
index 0000000..bf7471b
--- /dev/null
+++ b/sdk/tools-lint/bin/lint
@@ -0,0 +1,172 @@
+#!/usr/bin/env sh
+
+##############################################################################
+##
+##  lint start up script for UN*X
+##
+##############################################################################
+
+# Attempt to set APP_HOME
+# Resolve links: $0 may be a link
+PRG="$0"
+# Need this for relative symlinks.
+while [ -h "$PRG" ] ; do
+    ls=`ls -ld "$PRG"`
+    link=`expr "$ls" : '.*-> \(.*\)$'`
+    if expr "$link" : '/.*' > /dev/null; then
+        PRG="$link"
+    else
+        PRG=`dirname "$PRG"`"/$link"
+    fi
+done
+SAVED="`pwd`"
+cd "`dirname \"$PRG\"`/.." >/dev/null
+APP_HOME="`pwd -P`"
+cd "$SAVED" >/dev/null
+
+APP_NAME="lint"
+APP_BASE_NAME=`basename "$0"`
+
+# Add default JVM options here. You can also use JAVA_OPTS and LINT_OPTS to pass JVM options to this script.
+DEFAULT_JVM_OPTS='"-Xmx1024m" "-Dcom.android.tools.lint.bindir=$APP_HOME"'
+
+# Use the maximum available, or set MAX_FD != -1 to use that value.
+MAX_FD="maximum"
+
+warn ( ) {
+    echo "$*"
+}
+
+die ( ) {
+    echo
+    echo "$*"
+    echo
+    exit 1
+}
+
+# OS specific support (must be 'true' or 'false').
+cygwin=false
+msys=false
+darwin=false
+nonstop=false
+case "`uname`" in
+  CYGWIN* )
+    cygwin=true
+    ;;
+  Darwin* )
+    darwin=true
+    ;;
+  MINGW* )
+    msys=true
+    ;;
+  NONSTOP* )
+    nonstop=true
+    ;;
+esac
+
+CLASSPATH=$APP_HOME/lib/lint-25.3.1.jar:$APP_HOME/lib/lint-checks-25.3.1.jar:$APP_HOME/lib/ecj-4.6.1.jar:$APP_HOME/lib/lint-api-25.3.1.jar:$APP_HOME/lib/asm-analysis-5.0.4.jar:$APP_HOME/lib/sdk-common-25.3.1.jar:$APP_HOME/lib/builder-model-2.3.1.jar:$APP_HOME/lib/uast-162.2228.14.jar:$APP_HOME/lib/lombok-ast-0.2.3.jar:$APP_HOME/lib/asm-5.0.4.jar:$APP_HOME/lib/asm-tree-5.0.4.jar:$APP_HOME/lib/sdklib-25.3.1.jar:$APP_HOME/lib/builder-test-api-2.3.1.jar:$APP_HOME/lib/bcpkix-jdk15on-1.48.jar:$APP_HOME/lib/bcprov-jdk15on-1.48.jar:$APP_HOME/lib/annotations-25.3.1.jar:$APP_HOME/lib/layoutlib-api-25.3.1.jar:$APP_HOME/lib/dvlib-25.3.1.jar:$APP_HOME/lib/repository-25.3.1.jar:$APP_HOME/lib/gson-2.2.4.jar:$APP_HOME/lib/commons-compress-1.8.1.jar:$APP_HOME/lib/httpclient-4.1.1.jar:$APP_HOME/lib/httpmime-4.1.jar:$APP_HOME/lib/ddmlib-25.3.1.jar:$APP_HOME/lib/common-25.3.1.jar:$APP_HOME/lib/kxml2-2.3.0.jar:$APP_HOME/lib/annotations-12.0.jar:$APP_HOME/lib/jimfs-1.1.jar:$APP_HOME/lib/httpcore-4.1.jar:$APP_HOME/lib/commons-logging-1.1.1.jar:$APP_HOME/lib/commons-codec-1.4.jar:$APP_HOME/lib/guava-18.0.jar
+
+# Determine the Java command to use to start the JVM.
+if [ -n "$JAVA_HOME" ] ; then
+    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
+        # IBM's JDK on AIX uses strange locations for the executables
+        JAVACMD="$JAVA_HOME/jre/sh/java"
+    else
+        JAVACMD="$JAVA_HOME/bin/java"
+    fi
+    if [ ! -x "$JAVACMD" ] ; then
+        die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+    fi
+else
+    JAVACMD="java"
+    which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+fi
+
+# Increase the maximum file descriptors if we can.
+if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
+    MAX_FD_LIMIT=`ulimit -H -n`
+    if [ $? -eq 0 ] ; then
+        if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
+            MAX_FD="$MAX_FD_LIMIT"
+        fi
+        ulimit -n $MAX_FD
+        if [ $? -ne 0 ] ; then
+            warn "Could not set maximum file descriptor limit: $MAX_FD"
+        fi
+    else
+        warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
+    fi
+fi
+
+# For Darwin, add options to specify how the application appears in the dock
+if $darwin; then
+    GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
+fi
+
+# For Cygwin, switch paths to Windows format before running java
+if $cygwin ; then
+    APP_HOME=`cygpath --path --mixed "$APP_HOME"`
+    CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
+    JAVACMD=`cygpath --unix "$JAVACMD"`
+
+    # We build the pattern for arguments to be converted via cygpath
+    ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
+    SEP=""
+    for dir in $ROOTDIRSRAW ; do
+        ROOTDIRS="$ROOTDIRS$SEP$dir"
+        SEP="|"
+    done
+    OURCYGPATTERN="(^($ROOTDIRS))"
+    # Add a user-defined pattern to the cygpath arguments
+    if [ "$GRADLE_CYGPATTERN" != "" ] ; then
+        OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
+    fi
+    # Now convert the arguments - kludge to limit ourselves to /bin/sh
+    i=0
+    for arg in "$@" ; do
+        CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
+        CHECK2=`echo "$arg"|egrep -c "^-"`                                 ### Determine if an option
+
+        if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then                    ### Added a condition
+            eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
+        else
+            eval `echo args$i`="\"$arg\""
+        fi
+        i=$((i+1))
+    done
+    case $i in
+        (0) set -- ;;
+        (1) set -- "$args0" ;;
+        (2) set -- "$args0" "$args1" ;;
+        (3) set -- "$args0" "$args1" "$args2" ;;
+        (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
+        (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
+        (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
+        (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
+        (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
+        (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
+    esac
+fi
+
+# Escape application args
+save ( ) {
+    for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
+    echo " "
+}
+APP_ARGS=$(save "$@")
+
+# Collect all arguments for the java command, following the shell quoting and substitution rules
+eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $LINT_OPTS -classpath "\"$CLASSPATH\"" com.android.tools.lint.Main "$APP_ARGS"
+
+# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
+if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
+  cd "$(dirname "$0")"
+fi
+
+exec "$JAVACMD" "$@"
diff --git a/sdk/tools-lint/lib/android.el b/sdk/tools-lint/lib/android.el
new file mode 100644
index 0000000..5c66218
--- /dev/null
+++ b/sdk/tools-lint/lib/android.el
@@ -0,0 +1,131 @@
+;;;; Copyright 2007 The Android Open Source Project
+
+;;; Set up GUD+JDB to attach to a Java process running on the phone or
+;;; under the emulator.
+
+(defvar android-jdb-port-history '("8700")
+ "history of ports supplied to `android-jdb'")
+
+(defvar android-jdb-project-root-history '()
+ "history of project roots supplied to `android-jdb'")
+(defvar android-jdb-history nil
+ "history of commands supplied to `android-jdb'")
+
+(defvar android-jdb-activity-class-history ()
+ "history of activity classes supplied to `start-android-activity'")
+
+(defcustom  android-jdb-command-name "jdb"
+  "Name of Java debugger."
+  :type 'string
+  :group 'android)
+
+(defgroup android nil
+  "Android Applications."
+  :group 'applications)
+
+(defcustom android-project-root nil
+ "This is where your Android project root is stored."
+  :type 'directory
+ :group 'android )
+
+(defcustom android-apk nil
+ "This is where your Android Application Package is stored."
+ :type 'string
+ :group 'android)
+
+(defcustom android-activity-class nil
+ "This is where your Android Activity class is stored."
+ :type 'string
+ :group 'android)
+
+(defun android-read-project-root ()
+ (if (or (string-match "XEmacs" emacs-version)
+         (>= emacs-major-version 22))
+     (read-file-name "Android project root: "
+                     android-project-root
+                     nil
+                     t
+                     nil
+                     'file-directory-p)
+   (labels ((read-directory ()
+                            (read-file-name "Android project root: "
+                                            android-project-root
+                                            nil
+                                            t
+                                            nil)))
+     (do ((entered-root (read-directory) (read-directory)))
+         ((and entered-root
+               (file-directory-p entered-root))
+          (expand-file-name entered-root))))))
+
+(defun android-jdb (port root)
+ "Set GUD+JDB up to run against Android on PORT in directory ROOT."
+ (interactive
+  (list
+   (read-from-minibuffer "Activity's JDWP DDMS port: "
+                     (car android-jdb-port-history)
+                     nil
+                     t
+                     'android-jdb-port-history)
+                    (android-read-project-root)))
+ (setq android-project-root root)
+ (let ((jdb-command
+        (format "%s -attach localhost:%s -sourcepath%s"
+                android-jdb-command-name
+                port
+                (format "%s/src" root))))
+   (if (not (string= jdb-command (car android-jdb-history)))
+       (push jdb-command android-jdb-history))
+   (jdb jdb-command)))
+
+(defun android-emulate ()
+ "Run the Android emulator. This expects the SDK tools directory to be in the current path."
+ (interactive)
+ (compile "emulator"))
+
+(defun android-install-app (apk)
+  "Install an Android application package APK in the Android emulator. This expects the SDK tools directory to be in the current path."
+  (interactive (list (expand-file-name
+                      (read-file-name "Android Application Package (.apk): "
+                                      nil
+                                      android-apk
+                                      t
+                                      nil
+                                      nil))))
+  (setq android-apk apk)
+  (compile (format "adb install -r %s" apk)))
+
+(defun android-uninstall-app (package-name)
+  "Uninstall an Android application package APK in the Android emulator. This expects the SDK tools directory to be in the current path.
+Specify the package name --- and not the name of the application e.g., com.android.foo."
+  (interactive
+   (list
+    (read-from-minibuffer "Package: ")))
+  (compile (format "adb uninstall %s" package-name)))
+
+(defun android-start-activity (package class)
+ "Start the activity PACKAGE/CLASS in the Android emulator. This expects the SDK tools directory to be in the current path."
+ (interactive
+  (list
+   (read-from-minibuffer "Package: ")
+   (read-from-minibuffer "Activity Java class: "
+         (car android-jdb-activity-class-history)
+         nil
+         t
+         'android-jdb-activity-class-history)))
+ (compile (format "adb shell am start -n %s/%s" package class)))
+
+(defun android-debug-activity (package class)
+ "Start the activity PACKAGE/CLASS within the debugger in the Android emulator. This expects the SDK tools directory to be in the current path."
+ (interactive
+  (list
+   (read-from-minibuffer "Package: ")
+   (read-from-minibuffer "Activity Java class: "
+         (car android-jdb-activity-class-history)
+         nil
+         t
+         'android-jdb-activity-class-history)))
+ (compile (format "adb shell am start -D -n %s/%s" package class)))
+
+(provide 'android)
+
diff --git a/sdk/tools-lint/lib/annotations-12.0.jar b/sdk/tools-lint/lib/annotations-12.0.jar
new file mode 100644
index 0000000..7f8b362
--- /dev/null
+++ b/sdk/tools-lint/lib/annotations-12.0.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/annotations-25.3.1.jar b/sdk/tools-lint/lib/annotations-25.3.1.jar
new file mode 100644
index 0000000..98a8b1f
--- /dev/null
+++ b/sdk/tools-lint/lib/annotations-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/archquery-25.3.1.jar b/sdk/tools-lint/lib/archquery-25.3.1.jar
new file mode 100644
index 0000000..d0e6882
--- /dev/null
+++ b/sdk/tools-lint/lib/archquery-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/asm-5.0.4.jar b/sdk/tools-lint/lib/asm-5.0.4.jar
new file mode 100644
index 0000000..cdb283d
--- /dev/null
+++ b/sdk/tools-lint/lib/asm-5.0.4.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/asm-analysis-5.0.4.jar b/sdk/tools-lint/lib/asm-analysis-5.0.4.jar
new file mode 100644
index 0000000..dbd1e9e
--- /dev/null
+++ b/sdk/tools-lint/lib/asm-analysis-5.0.4.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/asm-tree-5.0.4.jar b/sdk/tools-lint/lib/asm-tree-5.0.4.jar
new file mode 100644
index 0000000..ac68a32
--- /dev/null
+++ b/sdk/tools-lint/lib/asm-tree-5.0.4.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/asset-studio-25.3.1.jar b/sdk/tools-lint/lib/asset-studio-25.3.1.jar
new file mode 100644
index 0000000..25e5ed5
--- /dev/null
+++ b/sdk/tools-lint/lib/asset-studio-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/bcpkix-jdk15on-1.48.jar b/sdk/tools-lint/lib/bcpkix-jdk15on-1.48.jar
new file mode 100644
index 0000000..167eecf
--- /dev/null
+++ b/sdk/tools-lint/lib/bcpkix-jdk15on-1.48.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/bcprov-jdk15on-1.48.jar b/sdk/tools-lint/lib/bcprov-jdk15on-1.48.jar
new file mode 100644
index 0000000..3fcb136
--- /dev/null
+++ b/sdk/tools-lint/lib/bcprov-jdk15on-1.48.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/builder-model-2.3.1.jar b/sdk/tools-lint/lib/builder-model-2.3.1.jar
new file mode 100644
index 0000000..500a4e2
--- /dev/null
+++ b/sdk/tools-lint/lib/builder-model-2.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/chimpchat-25.3.1.jar b/sdk/tools-lint/lib/chimpchat-25.3.1.jar
new file mode 100644
index 0000000..1057777
--- /dev/null
+++ b/sdk/tools-lint/lib/chimpchat-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/common-25.3.1.jar b/sdk/tools-lint/lib/common-25.3.1.jar
new file mode 100644
index 0000000..9118773
--- /dev/null
+++ b/sdk/tools-lint/lib/common-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/commons-codec-1.4.jar b/sdk/tools-lint/lib/commons-codec-1.4.jar
new file mode 100644
index 0000000..458d432
--- /dev/null
+++ b/sdk/tools-lint/lib/commons-codec-1.4.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/commons-compress-1.8.1.jar b/sdk/tools-lint/lib/commons-compress-1.8.1.jar
new file mode 100644
index 0000000..66b0a56
--- /dev/null
+++ b/sdk/tools-lint/lib/commons-compress-1.8.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/commons-logging-1.1.1.jar b/sdk/tools-lint/lib/commons-logging-1.1.1.jar
new file mode 100644
index 0000000..1deef14
--- /dev/null
+++ b/sdk/tools-lint/lib/commons-logging-1.1.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/ddmlib-25.3.1.jar b/sdk/tools-lint/lib/ddmlib-25.3.1.jar
new file mode 100644
index 0000000..153bd5b
--- /dev/null
+++ b/sdk/tools-lint/lib/ddmlib-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/ddms-25.3.1.jar b/sdk/tools-lint/lib/ddms-25.3.1.jar
new file mode 100644
index 0000000..25c75de
--- /dev/null
+++ b/sdk/tools-lint/lib/ddms-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/ddmuilib-25.3.1.jar b/sdk/tools-lint/lib/ddmuilib-25.3.1.jar
new file mode 100644
index 0000000..2acb108
--- /dev/null
+++ b/sdk/tools-lint/lib/ddmuilib-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/devices.xml b/sdk/tools-lint/lib/devices.xml
new file mode 100644
index 0000000..0c7cb96
--- /dev/null
+++ b/sdk/tools-lint/lib/devices.xml
@@ -0,0 +1,595 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<d:devices xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+           xmlns:d="http://schemas.android.com/sdk/devices/1">
+
+    <d:device>
+        <d:name>Nexus One</d:name>
+        <d:manufacturer>Google</d:manufacturer>
+        <d:hardware>
+            <d:screen>
+                <d:screen-size>normal</d:screen-size>
+                <d:diagonal-length>3.7</d:diagonal-length>
+                <d:pixel-density>hdpi</d:pixel-density>
+                <d:screen-ratio>long</d:screen-ratio>
+                <d:dimensions>
+                    <d:x-dimension>480</d:x-dimension>
+                    <d:y-dimension>800</d:y-dimension>
+                </d:dimensions>
+                <d:xdpi>254</d:xdpi>
+                <d:ydpi>254</d:ydpi>
+                <d:touch>
+                    <d:multitouch>basic</d:multitouch>
+                    <d:mechanism>finger</d:mechanism>
+                    <d:screen-type>capacitive</d:screen-type>
+                </d:touch>
+            </d:screen>
+            <d:networking>
+                Wifi
+                Bluetooth
+            </d:networking>
+            <d:sensors>
+                Accelerometer
+                Compass
+                GPS
+                LightSensor
+                ProximitySensor
+            </d:sensors>
+            <d:mic>true</d:mic>
+            <d:camera>
+                <d:location>back</d:location>
+                <d:autofocus>true</d:autofocus>
+                <d:flash>true</d:flash>
+            </d:camera>
+            <d:keyboard>nokeys</d:keyboard>
+            <d:nav>trackball</d:nav>
+            <d:ram unit="MiB">512</d:ram>
+            <d:buttons>hard</d:buttons>
+            <d:internal-storage unit="MiB">503</d:internal-storage>
+            <d:removable-storage unit="MiB">0</d:removable-storage>
+            <d:cpu>Qualcomm Scorpion</d:cpu>
+            <d:gpu>Qualcomm Adreno 200</d:gpu>
+            <d:abi>
+                armeabi-v7a
+                armeabi
+            </d:abi>
+            <d:dock> </d:dock>
+            <d:power-type>battery</d:power-type>
+        </d:hardware>
+        <d:software>
+            <d:api-level>7-10</d:api-level>
+            <d:live-wallpaper-support>true</d:live-wallpaper-support>
+            <d:bluetooth-profiles> </d:bluetooth-profiles>
+            <d:gl-version>2.0</d:gl-version>
+            <d:gl-extensions>
+            </d:gl-extensions>
+            <d:status-bar>true</d:status-bar>
+        </d:software>
+        <d:state name="Portrait" default="true">
+            <d:description>The phone in portrait view</d:description>
+            <d:screen-orientation>port</d:screen-orientation>
+            <d:keyboard-state>keyssoft</d:keyboard-state>
+            <d:nav-state>nonav</d:nav-state>
+        </d:state>
+        <d:state name="Landscape">
+            <d:description>The phone in landscape view</d:description>
+            <d:screen-orientation>land</d:screen-orientation>
+            <d:keyboard-state>keyssoft</d:keyboard-state>
+            <d:nav-state>nonav</d:nav-state>
+        </d:state>
+    </d:device>
+    <d:device>
+        <d:name>Nexus S</d:name>
+        <d:manufacturer>Google</d:manufacturer>
+        <d:hardware>
+            <d:screen>
+                <d:screen-size>normal</d:screen-size>
+                <d:diagonal-length>4</d:diagonal-length>
+                <d:pixel-density>hdpi</d:pixel-density>
+                <d:screen-ratio>long</d:screen-ratio>
+                <d:dimensions>
+                    <d:x-dimension>480</d:x-dimension>
+                    <d:y-dimension>800</d:y-dimension>
+                </d:dimensions>
+                <d:xdpi>235</d:xdpi>
+                <d:ydpi>235</d:ydpi>
+                <d:touch>
+                    <d:multitouch>jazz-hands</d:multitouch>
+                    <d:mechanism>finger</d:mechanism>
+                    <d:screen-type>capacitive</d:screen-type>
+                </d:touch>
+            </d:screen>
+            <d:networking>
+                Wifi
+                Bluetooth
+                NFC
+            </d:networking>
+            <d:sensors>
+                Accelerometer
+                Compass
+                GPS
+                Gyroscope
+                LightSensor
+                ProximitySensor
+            </d:sensors>
+            <d:mic>true</d:mic>
+            <d:camera>
+                <d:location>back</d:location>
+                <d:autofocus>true</d:autofocus>
+                <d:flash>true</d:flash>
+            </d:camera>
+            <d:camera>
+                <d:location>front</d:location>
+                <d:autofocus>false</d:autofocus>
+                <d:flash>false</d:flash>
+            </d:camera>
+            <d:keyboard>nokeys</d:keyboard>
+            <d:nav>nonav</d:nav>
+            <d:ram unit="KiB">351428</d:ram>
+            <d:buttons>hard</d:buttons>
+            <d:internal-storage unit="MiB">503</d:internal-storage>
+            <d:removable-storage unit="MiB">0</d:removable-storage>
+            <d:cpu>Samsung Exynos 3110</d:cpu>
+            <d:gpu>PowerVR SGX 540</d:gpu>
+            <d:abi>
+                armeabi-v7a
+                armeabi
+            </d:abi>
+            <d:dock> </d:dock>
+            <d:power-type>battery</d:power-type>
+        </d:hardware>
+        <d:software>
+            <d:api-level>9-16</d:api-level>
+            <d:live-wallpaper-support>true</d:live-wallpaper-support>
+            <d:bluetooth-profiles> </d:bluetooth-profiles>
+            <d:gl-version>2.0</d:gl-version>
+            <d:gl-extensions>
+                GL_EXT_debug_marker
+                GL_OES_rgb8_rgba8
+                GL_OES_depth24
+                GL_OES_vertex_half_float
+                GL_OES_texture_float
+                GL_OES_texture_half_float
+                GL_OES_element_index_uint
+                GL_OES_mapbuffer
+                GL_OES_fragment_precision_high
+                GL_OES_compressed_ETC1_RGB8_texture
+                GL_OES_EGL_image
+                GL_OES_EGL_image_external
+                GL_OES_required_internalformat
+                GL_OES_depth_texture
+                GL_OES_get_program_binary
+                GL_OES_packed_depth_stencil
+                GL_OES_standard_derivatives
+                GL_OES_vertex_array_object
+                GL_OES_egl_sync
+                GL_EXT_multi_draw_arrays
+                GL_EXT_texture_format_BGRA8888
+                GL_EXT_discard_framebuffer
+                GL_EXT_shader_texture_lod
+                GL_IMG_shader_binary
+                GL_IMG_texture_compression_pvrtc
+                GL_IMG_texture_npot
+                GL_IMG_texture_format_BGRA8888
+                GL_IMG_read_format
+                GL_IMG_program_binary
+                GL_IMG_multisampled_render_to_texture
+            </d:gl-extensions>
+            <d:status-bar>true</d:status-bar>
+        </d:software>
+        <d:state name="Portrait" default="true">
+            <d:description>The phone in portrait view</d:description>
+            <d:screen-orientation>port</d:screen-orientation>
+            <d:keyboard-state>keyssoft</d:keyboard-state>
+            <d:nav-state>nonav</d:nav-state>
+        </d:state>
+        <d:state name="Landscape">
+            <d:description>The phone in landscape view</d:description>
+            <d:screen-orientation>land</d:screen-orientation>
+            <d:keyboard-state>keyssoft</d:keyboard-state>
+            <d:nav-state>nonav</d:nav-state>
+        </d:state>
+    </d:device>
+
+    <d:device>
+        <d:name>Galaxy Nexus</d:name>
+        <d:manufacturer>Google</d:manufacturer>
+        <d:hardware>
+            <d:screen>
+                <d:screen-size>normal</d:screen-size>
+                <d:diagonal-length>4.65</d:diagonal-length> <!-- In inches -->
+                <d:pixel-density>xhdpi</d:pixel-density>
+                <d:screen-ratio>long</d:screen-ratio>
+                <d:dimensions>
+                    <d:x-dimension>720</d:x-dimension>
+                    <d:y-dimension>1280</d:y-dimension>
+                </d:dimensions>
+                <d:xdpi>316</d:xdpi>
+                <d:ydpi>316</d:ydpi>
+                <d:touch>
+                    <d:multitouch>jazz-hands</d:multitouch>
+                    <d:mechanism>finger</d:mechanism>
+                    <d:screen-type>capacitive</d:screen-type>
+                </d:touch>
+            </d:screen>
+            <d:networking>
+                Bluetooth
+                Wifi
+                NFC
+            </d:networking>
+            <d:sensors>
+                Accelerometer
+                Barometer
+                Gyroscope
+                Compass
+                GPS
+                ProximitySensor
+            </d:sensors>
+            <d:mic>true</d:mic>
+            <d:camera>
+                <d:location>front</d:location>
+                <d:autofocus>true</d:autofocus>
+                <d:flash>false</d:flash>
+            </d:camera>
+            <d:camera>
+                <d:location>back</d:location>
+                <d:autofocus>true</d:autofocus>
+                <d:flash>true</d:flash>
+            </d:camera>
+            <d:keyboard>nokeys</d:keyboard>
+            <d:nav>nonav</d:nav>
+            <d:ram unit="GiB">1</d:ram>
+            <d:buttons>soft</d:buttons>
+            <d:internal-storage unit="GiB">16</d:internal-storage>
+            <d:removable-storage unit="KiB"></d:removable-storage>
+            <d:cpu>OMAP 4460</d:cpu> <!-- cpu type (Tegra3) freeform -->
+            <d:gpu>PowerVR SGX540</d:gpu>
+            <d:abi>
+                armeabi
+                armeabi-v7a
+            </d:abi>
+            <!--dock (car, desk, tv, none)-->
+            <d:dock>
+            </d:dock>
+            <!-- power-type (battery, plugged-in) -->
+            <d:power-type>battery</d:power-type>
+        </d:hardware>
+        <d:software>
+            <d:api-level>14-</d:api-level>
+            <d:live-wallpaper-support>true</d:live-wallpaper-support>
+            <d:bluetooth-profiles>
+                HSP
+                HFP
+                SPP
+                A2DP
+                AVRCP
+                OPP
+                PBAP
+                GAVDP
+                AVDTP
+                HID
+                HDP
+                PAN
+            </d:bluetooth-profiles>
+            <d:gl-version>2.0</d:gl-version>
+            <!--
+             These can be gotten via
+             javax.microedition.khronos.opengles.GL10.glGetString(GL10.GL_EXTENSIONS);
+            -->
+            <d:gl-extensions>
+                GL_EXT_discard_framebuffer
+                GL_EXT_multi_draw_arrays
+                GL_EXT_shader_texture_lod
+                GL_EXT_texture_format_BGRA8888
+                GL_IMG_multisampled_render_to_texture
+                GL_IMG_program_binary
+                GL_IMG_read_format
+                GL_IMG_shader_binary
+                GL_IMG_texture_compression_pvrtc
+                GL_IMG_texture_format_BGRA8888
+                GL_IMG_texture_npot
+                GL_OES_compressed_ETC1_RGB8_texture
+                GL_OES_depth_texture
+                GL_OES_depth24
+                GL_OES_EGL_image
+                GL_OES_EGL_image_external
+                GL_OES_egl_sync
+                GL_OES_element_index_uint
+                GL_OES_fragment_precision_high
+                GL_OES_get_program_binary
+                GL_OES_mapbuffer
+                GL_OES_packed_depth_stencil
+                GL_OES_required_internalformat
+                GL_OES_rgb8_rgba8
+                GL_OES_standard_derivatives
+                GL_OES_texture_float
+                GL_OES_texture_half_float
+                GL_OES_vertex_array_object
+                GL_OES_vertex_half_float
+            </d:gl-extensions>
+            <d:status-bar>true</d:status-bar>
+        </d:software>
+        <d:state name="Portrait" default="true">
+            <d:description>The phone in portrait view</d:description>
+            <d:screen-orientation>port</d:screen-orientation>
+            <d:keyboard-state>keyssoft</d:keyboard-state>
+            <d:nav-state>nonav</d:nav-state>
+        </d:state>
+        <d:state name="Landscape">
+            <d:description>The phone in landscape view</d:description>
+            <d:screen-orientation>land</d:screen-orientation>
+            <d:keyboard-state>keyssoft</d:keyboard-state>
+            <d:nav-state>nonav</d:nav-state>
+        </d:state>
+    </d:device>
+    <d:device>
+        <d:name>Nexus 7</d:name>
+        <d:manufacturer>Google</d:manufacturer>
+        <d:hardware>
+            <d:screen>
+                <d:screen-size>large</d:screen-size>
+                <d:diagonal-length>7.27</d:diagonal-length>
+                <d:pixel-density>tvdpi</d:pixel-density>
+                <d:screen-ratio>notlong</d:screen-ratio>
+                <d:dimensions>
+                    <d:x-dimension>800</d:x-dimension>
+                    <d:y-dimension>1280</d:y-dimension>
+                </d:dimensions>
+                <d:xdpi>195</d:xdpi>
+                <d:ydpi>200</d:ydpi>
+                <d:touch>
+                    <d:multitouch>jazz-hands</d:multitouch>
+                    <d:mechanism>finger</d:mechanism>
+                    <d:screen-type>capacitive</d:screen-type>
+                </d:touch>
+            </d:screen>
+            <d:networking>
+                Wifi
+                Bluetooth
+                NFC
+            </d:networking>
+            <d:sensors>
+                Accelerometer
+                Compass
+                GPS
+                Gyroscope
+                LightSensor
+            </d:sensors>
+            <d:mic>true</d:mic>
+            <d:camera>
+                <d:location>front</d:location>
+                <d:autofocus>false</d:autofocus>
+                <d:flash>false</d:flash>
+            </d:camera>
+            <d:keyboard>nokeys</d:keyboard>
+            <d:nav>nonav</d:nav>
+            <d:ram unit="GiB">1</d:ram>
+            <d:buttons>soft</d:buttons>
+            <d:internal-storage unit="GiB">8</d:internal-storage>
+            <d:removable-storage unit="MiB"> </d:removable-storage>
+            <d:cpu> Tegra3 </d:cpu>
+            <d:gpu> Tegra3 </d:gpu>
+            <d:abi>
+                armeabi-v7a
+                armeabi
+            </d:abi>
+            <d:dock> </d:dock>
+            <d:power-type>battery</d:power-type>
+        </d:hardware>
+
+        <d:software>
+            <d:api-level>16</d:api-level>
+            <d:live-wallpaper-support>true</d:live-wallpaper-support>
+            <d:bluetooth-profiles> </d:bluetooth-profiles>
+            <d:gl-version>2.0</d:gl-version>
+            <d:gl-extensions> </d:gl-extensions>
+            <d:status-bar>true</d:status-bar>
+        </d:software>
+
+        <d:state name="Portrait" default="true">
+            <d:description>The phone in portrait view</d:description>
+            <d:screen-orientation>port</d:screen-orientation>
+            <d:keyboard-state>keyssoft</d:keyboard-state>
+            <d:nav-state>nonav</d:nav-state>
+        </d:state>
+        <d:state name="Landscape">
+            <d:description>The phone in landscape view</d:description>
+            <d:screen-orientation>land</d:screen-orientation>
+            <d:keyboard-state>keyssoft</d:keyboard-state>
+            <d:nav-state>nonav</d:nav-state>
+        </d:state>
+
+    </d:device>
+
+    <d:device>
+        <d:name>Nexus 4</d:name>
+        <d:manufacturer>Google</d:manufacturer>
+        <d:hardware>
+            <d:screen>
+                <d:screen-size>normal</d:screen-size>
+                <d:diagonal-length>4.7</d:diagonal-length>
+                <d:pixel-density>xhdpi</d:pixel-density>
+                <d:screen-ratio>notlong</d:screen-ratio>
+                <d:dimensions>
+                    <d:x-dimension>768</d:x-dimension>
+                    <d:y-dimension>1280</d:y-dimension>
+                </d:dimensions>
+                <d:xdpi>320</d:xdpi>
+                <d:ydpi>320</d:ydpi>
+                <d:touch>
+                    <d:multitouch>jazz-hands</d:multitouch>
+                    <d:mechanism>finger</d:mechanism>
+                    <d:screen-type>capacitive</d:screen-type>
+                </d:touch>
+            </d:screen>
+            <d:networking>
+                Wifi
+                Bluetooth
+                NFC
+            </d:networking>
+            <d:sensors>
+                Accelerometer
+                Barometer
+                Compass
+                GPS
+                Gyroscope
+                LightSensor
+                ProximitySensor
+            </d:sensors>
+            <d:mic>true</d:mic>
+            <d:camera>
+                <d:location>back</d:location>
+                <d:autofocus>true</d:autofocus>
+                <d:flash>true</d:flash>
+            </d:camera>
+            <d:camera>
+                <d:location>front</d:location>
+                <d:autofocus>false</d:autofocus>
+                <d:flash>false</d:flash>
+            </d:camera>
+            <d:keyboard>nokeys</d:keyboard>
+            <d:nav>nonav</d:nav>
+            <d:ram unit="KiB">1953125</d:ram>
+            <d:buttons>soft</d:buttons>
+            <d:internal-storage unit="KiB">7811891</d:internal-storage>
+            <d:removable-storage unit="MiB"></d:removable-storage>
+            <d:cpu>Qualcomm Snapdragon S4 Pro</d:cpu>
+            <d:gpu>Adreno 320</d:gpu>
+            <d:abi>
+                armeabi-v7a
+                armeabi
+            </d:abi>
+            <d:dock></d:dock>
+            <d:power-type>battery</d:power-type>
+        </d:hardware>
+        <d:software>
+            <d:api-level>16</d:api-level>
+            <d:live-wallpaper-support>true</d:live-wallpaper-support>
+            <d:bluetooth-profiles></d:bluetooth-profiles>
+            <d:gl-version>2.0</d:gl-version>
+            <d:gl-extensions>GL_EXT_debug_marker GL_AMD_compressed_ATC_texture
+                GL_AMD_performance_monitor GL_AMD_program_binary_Z400 GL_EXT_robustness
+                GL_EXT_texture_format_BGRA8888 GL_EXT_texture_type_2_10_10_10_REV GL_NV_fence
+                GL_OES_compressed_ETC1_RGB8_texture GL_OES_depth_texture GL_OES_depth24
+                GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_element_index_uint
+                GL_OES_fbo_render_mipmap GL_OES_fragment_precision_high GL_OES_get_program_binary
+                GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_OES_standard_derivatives
+                GL_OES_texture_3D GL_OES_texture_float GL_OES_texture_half_float
+                GL_OES_texture_half_float_linear GL_OES_texture_npot GL_OES_vertex_half_float
+                GL_OES_vertex_type_10_10_10_2 GL_OES_vertex_array_object GL_QCOM_alpha_test
+                GL_QCOM_binning_control GL_QCOM_driver_control GL_QCOM_perfmon_global_mode
+                GL_QCOM_extended_get GL_QCOM_extended_get2 GL_QCOM_tiled_rendering
+                GL_QCOM_writeonly_rendering GL_EXT_sRGB
+            </d:gl-extensions>
+            <d:status-bar>true</d:status-bar>
+        </d:software>
+        <d:state name="Portrait" default="true">
+            <d:description>The phone in portrait view</d:description>
+            <d:screen-orientation>port</d:screen-orientation>
+            <d:keyboard-state>keyssoft</d:keyboard-state>
+            <d:nav-state>nonav</d:nav-state>
+        </d:state>
+        <d:state name="Landscape">
+            <d:description>The phone in landscape view</d:description>
+            <d:screen-orientation>land</d:screen-orientation>
+            <d:keyboard-state>keyssoft</d:keyboard-state>
+            <d:nav-state>nonav</d:nav-state>
+        </d:state>
+    </d:device>
+
+    <d:device>
+        <d:name>Nexus 10</d:name>
+        <d:manufacturer>Google</d:manufacturer>
+        <d:hardware>
+            <d:screen>
+                <d:screen-size>xlarge</d:screen-size>
+                <d:diagonal-length>10.055</d:diagonal-length>
+                <d:pixel-density>xhdpi</d:pixel-density>
+                <d:screen-ratio>notlong</d:screen-ratio>
+                <d:dimensions>
+                    <d:x-dimension>2560</d:x-dimension>
+                    <d:y-dimension>1600</d:y-dimension>
+                </d:dimensions>
+                <d:xdpi>300</d:xdpi>
+                <d:ydpi>300</d:ydpi>
+                <d:touch>
+                    <d:multitouch>jazz-hands</d:multitouch>
+                    <d:mechanism>finger</d:mechanism>
+                    <d:screen-type>capacitive</d:screen-type>
+                </d:touch>
+            </d:screen>
+            <d:networking>
+                Wifi
+                Bluetooth
+                NFC
+            </d:networking>
+            <d:sensors>
+                Accelerometer
+                Barometer
+                Compass
+                GPS
+                Gyroscope
+                LightSensor
+            </d:sensors>
+            <d:mic>true</d:mic>
+            <d:camera>
+                <d:location>back</d:location>
+                <d:autofocus>true</d:autofocus>
+                <d:flash>true</d:flash>
+            </d:camera>
+            <d:camera>
+                <d:location>front</d:location>
+                <d:autofocus>false</d:autofocus>
+                <d:flash>false</d:flash>
+            </d:camera>
+            <d:keyboard>nokeys</d:keyboard>
+            <d:nav>nonav</d:nav>
+            <d:ram unit="KiB">1953125</d:ram>
+            <d:buttons>soft</d:buttons>
+            <d:internal-storage unit="KiB">15623782</d:internal-storage>
+            <d:removable-storage unit="MiB"></d:removable-storage>
+            <d:cpu>Dual-core A15</d:cpu>
+            <d:gpu>Quad-core Mali T604</d:gpu>
+            <d:abi>
+                armeabi-v7a
+                armeabi
+            </d:abi>
+            <d:dock></d:dock>
+            <d:power-type>battery</d:power-type>
+        </d:hardware>
+        <d:software>
+            <d:api-level>16</d:api-level>
+            <d:live-wallpaper-support>true</d:live-wallpaper-support>
+            <d:bluetooth-profiles></d:bluetooth-profiles>
+            <d:gl-version>2.0</d:gl-version>
+            <d:gl-extensions>GL_EXT_debug_marker GL_ARM_rgba8 GL_ARM_mali_shader_binary
+                GL_OES_depth24 GL_OES_depth_texture GL_OES_depth_texture_cube_map
+                GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_EXT_read_format_bgra
+                GL_OES_compressed_paletted_texture GL_OES_compressed_ETC1_RGB8_texture
+                GL_OES_standard_derivatives GL_OES_EGL_image GL_OES_EGL_image_external
+                GL_OES_EGL_sync GL_OES_texture_npot GL_OES_vertex_half_float
+                GL_OES_required_internalformat GL_OES_vertex_array_object GL_OES_mapbuffer
+                GL_EXT_texture_format_BGRA8888 GL_EXT_texture_rg GL_EXT_texture_type_2_10_10_10_REV
+                GL_OES_fbo_render_mipmap GL_OES_element_index_uint GL_EXT_shadow_samplers
+                GL_EXT_occlusion_query_boolean GL_EXT_blend_minmax GL_EXT_discard_framebuffer
+                GL_OES_get_program_binary GL_OES_texture_3D GL_EXT_texture_storage
+                GL_EXT_multisampled_render_to_texture GL_OES_surfaceless_context
+                GL_ARM_mali_program_binary
+            </d:gl-extensions>
+            <d:status-bar>true</d:status-bar>
+        </d:software>
+        <d:state name="Portrait">
+            <d:description>The phone in portrait view</d:description>
+            <d:screen-orientation>port</d:screen-orientation>
+            <d:keyboard-state>keyssoft</d:keyboard-state>
+            <d:nav-state>nonav</d:nav-state>
+        </d:state>
+        <d:state name="Landscape" default="true">
+            <d:description>The phone in landscape view</d:description>
+            <d:screen-orientation>land</d:screen-orientation>
+            <d:keyboard-state>keyssoft</d:keyboard-state>
+            <d:nav-state>nonav</d:nav-state>
+        </d:state>
+    </d:device>
+
+</d:devices>
diff --git a/sdk/tools-lint/lib/dvlib-25.3.1.jar b/sdk/tools-lint/lib/dvlib-25.3.1.jar
new file mode 100644
index 0000000..61e7825
--- /dev/null
+++ b/sdk/tools-lint/lib/dvlib-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/ecj-4.6.1.jar b/sdk/tools-lint/lib/ecj-4.6.1.jar
new file mode 100644
index 0000000..1c7e9ca
--- /dev/null
+++ b/sdk/tools-lint/lib/ecj-4.6.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/fat32lib.jar b/sdk/tools-lint/lib/fat32lib.jar
new file mode 100644
index 0000000..d76ea60
--- /dev/null
+++ b/sdk/tools-lint/lib/fat32lib.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/gson-2.2.4.jar b/sdk/tools-lint/lib/gson-2.2.4.jar
new file mode 100644
index 0000000..75fe27c
--- /dev/null
+++ b/sdk/tools-lint/lib/gson-2.2.4.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/guava-18.0.jar b/sdk/tools-lint/lib/guava-18.0.jar
new file mode 100644
index 0000000..8f89e49
--- /dev/null
+++ b/sdk/tools-lint/lib/guava-18.0.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/hierarchyviewer2lib-25.3.1.jar b/sdk/tools-lint/lib/hierarchyviewer2lib-25.3.1.jar
new file mode 100644
index 0000000..2228031
--- /dev/null
+++ b/sdk/tools-lint/lib/hierarchyviewer2lib-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/httpclient-4.1.1.jar b/sdk/tools-lint/lib/httpclient-4.1.1.jar
new file mode 100644
index 0000000..74121b7
--- /dev/null
+++ b/sdk/tools-lint/lib/httpclient-4.1.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/httpcore-4.1.jar b/sdk/tools-lint/lib/httpcore-4.1.jar
new file mode 100644
index 0000000..a357c07
--- /dev/null
+++ b/sdk/tools-lint/lib/httpcore-4.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/httpmime-4.1.jar b/sdk/tools-lint/lib/httpmime-4.1.jar
new file mode 100644
index 0000000..68f6158
--- /dev/null
+++ b/sdk/tools-lint/lib/httpmime-4.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/jcommon-1.0.12.jar b/sdk/tools-lint/lib/jcommon-1.0.12.jar
new file mode 100644
index 0000000..ca4f04a
--- /dev/null
+++ b/sdk/tools-lint/lib/jcommon-1.0.12.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/jfreechart-1.0.9.jar b/sdk/tools-lint/lib/jfreechart-1.0.9.jar
new file mode 100644
index 0000000..d1e2b74
--- /dev/null
+++ b/sdk/tools-lint/lib/jfreechart-1.0.9.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/jfreechart-swt-1.0.9.jar b/sdk/tools-lint/lib/jfreechart-swt-1.0.9.jar
new file mode 100644
index 0000000..e4e7ec0
--- /dev/null
+++ b/sdk/tools-lint/lib/jfreechart-swt-1.0.9.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/jimfs-1.1.jar b/sdk/tools-lint/lib/jimfs-1.1.jar
new file mode 100644
index 0000000..e0b16a5
--- /dev/null
+++ b/sdk/tools-lint/lib/jimfs-1.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/jobb-25.3.1.jar b/sdk/tools-lint/lib/jobb-25.3.1.jar
new file mode 100644
index 0000000..4ff7d66
--- /dev/null
+++ b/sdk/tools-lint/lib/jobb-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/jsilver-1.0.0.jar b/sdk/tools-lint/lib/jsilver-1.0.0.jar
new file mode 100644
index 0000000..02d55de
--- /dev/null
+++ b/sdk/tools-lint/lib/jsilver-1.0.0.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/jython-standalone-2.5.3.jar b/sdk/tools-lint/lib/jython-standalone-2.5.3.jar
new file mode 100644
index 0000000..9e01e5c
--- /dev/null
+++ b/sdk/tools-lint/lib/jython-standalone-2.5.3.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/kxml2-2.3.0.jar b/sdk/tools-lint/lib/kxml2-2.3.0.jar
new file mode 100644
index 0000000..6470952
--- /dev/null
+++ b/sdk/tools-lint/lib/kxml2-2.3.0.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/layoutlib-api-25.3.1.jar b/sdk/tools-lint/lib/layoutlib-api-25.3.1.jar
new file mode 100644
index 0000000..7a3cb9f
--- /dev/null
+++ b/sdk/tools-lint/lib/layoutlib-api-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/lint-25.3.1.jar b/sdk/tools-lint/lib/lint-25.3.1.jar
new file mode 100644
index 0000000..fc611d2
--- /dev/null
+++ b/sdk/tools-lint/lib/lint-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/lint-api-25.3.1.jar b/sdk/tools-lint/lib/lint-api-25.3.1.jar
new file mode 100644
index 0000000..025995e
--- /dev/null
+++ b/sdk/tools-lint/lib/lint-api-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/lint-checks-25.3.1.jar b/sdk/tools-lint/lib/lint-checks-25.3.1.jar
new file mode 100644
index 0000000..2f4caa8
--- /dev/null
+++ b/sdk/tools-lint/lib/lint-checks-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/lombok-ast-0.2.3.jar b/sdk/tools-lint/lib/lombok-ast-0.2.3.jar
new file mode 100644
index 0000000..4b76285
--- /dev/null
+++ b/sdk/tools-lint/lib/lombok-ast-0.2.3.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/manifest-merger-25.3.1.jar b/sdk/tools-lint/lib/manifest-merger-25.3.1.jar
new file mode 100644
index 0000000..1f41047
--- /dev/null
+++ b/sdk/tools-lint/lib/manifest-merger-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/monkeyrunner-25.3.1.jar b/sdk/tools-lint/lib/monkeyrunner-25.3.1.jar
new file mode 100644
index 0000000..92ff2fe
--- /dev/null
+++ b/sdk/tools-lint/lib/monkeyrunner-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/org-eclipse-core-commands-3.6.0.jar b/sdk/tools-lint/lib/org-eclipse-core-commands-3.6.0.jar
new file mode 100644
index 0000000..6c95c0f
--- /dev/null
+++ b/sdk/tools-lint/lib/org-eclipse-core-commands-3.6.0.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/org-eclipse-equinox-common-3.6.0.jar b/sdk/tools-lint/lib/org-eclipse-equinox-common-3.6.0.jar
new file mode 100644
index 0000000..a5d37aa
--- /dev/null
+++ b/sdk/tools-lint/lib/org-eclipse-equinox-common-3.6.0.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/org-eclipse-jface-3.6.2.jar b/sdk/tools-lint/lib/org-eclipse-jface-3.6.2.jar
new file mode 100644
index 0000000..289db85
--- /dev/null
+++ b/sdk/tools-lint/lib/org-eclipse-jface-3.6.2.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/osgi-4.0.0.jar b/sdk/tools-lint/lib/osgi-4.0.0.jar
new file mode 100644
index 0000000..5f82c42
--- /dev/null
+++ b/sdk/tools-lint/lib/osgi-4.0.0.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/proguard-project.txt b/sdk/tools-lint/lib/proguard-project.txt
new file mode 100644
index 0000000..f2fe155
--- /dev/null
+++ b/sdk/tools-lint/lib/proguard-project.txt
@@ -0,0 +1,20 @@
+# To enable ProGuard in your project, edit project.properties
+# to define the proguard.config property as described in that file.
+#
+# Add project specific ProGuard rules here.
+# By default, the flags in this file are appended to flags specified
+# in ${sdk.dir}/tools/proguard/proguard-android.txt
+# You can edit the include path and order by changing the ProGuard
+# include property in project.properties.
+#
+# For more details, see
+#   http://developer.android.com/guide/developing/tools/proguard.html
+
+# Add any project specific keep options here:
+
+# If your project uses WebView with JS, uncomment the following
+# and specify the fully qualified class name to the JavaScript interface
+# class:
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
+#   public *;
+#}
diff --git a/sdk/tools-lint/lib/repository-25.3.1.jar b/sdk/tools-lint/lib/repository-25.3.1.jar
new file mode 100644
index 0000000..3c17a83
--- /dev/null
+++ b/sdk/tools-lint/lib/repository-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/screenshot2-25.3.1.jar b/sdk/tools-lint/lib/screenshot2-25.3.1.jar
new file mode 100644
index 0000000..cbe97b8
--- /dev/null
+++ b/sdk/tools-lint/lib/screenshot2-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/sdk-common-25.3.1.jar b/sdk/tools-lint/lib/sdk-common-25.3.1.jar
new file mode 100644
index 0000000..903929a
--- /dev/null
+++ b/sdk/tools-lint/lib/sdk-common-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/sdklib-25.3.1.jar b/sdk/tools-lint/lib/sdklib-25.3.1.jar
new file mode 100644
index 0000000..ee04a27
--- /dev/null
+++ b/sdk/tools-lint/lib/sdklib-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/swtmenubar-25.3.1.jar b/sdk/tools-lint/lib/swtmenubar-25.3.1.jar
new file mode 100644
index 0000000..bd611f0
--- /dev/null
+++ b/sdk/tools-lint/lib/swtmenubar-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/traceview-25.3.1.jar b/sdk/tools-lint/lib/traceview-25.3.1.jar
new file mode 100644
index 0000000..dac847e
--- /dev/null
+++ b/sdk/tools-lint/lib/traceview-25.3.1.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/uast-162.2228.14.jar b/sdk/tools-lint/lib/uast-162.2228.14.jar
new file mode 100644
index 0000000..d19dbee
--- /dev/null
+++ b/sdk/tools-lint/lib/uast-162.2228.14.jar
Binary files differ
diff --git a/sdk/tools-lint/lib/uiautomatorviewer-25.3.1.jar b/sdk/tools-lint/lib/uiautomatorviewer-25.3.1.jar
new file mode 100644
index 0000000..59ea5c3
--- /dev/null
+++ b/sdk/tools-lint/lib/uiautomatorviewer-25.3.1.jar
Binary files differ
diff --git a/sdk/tools/lint b/sdk/tools/lint
deleted file mode 100755
index 3d2f9f4..0000000
--- a/sdk/tools/lint
+++ /dev/null
@@ -1,73 +0,0 @@
-#!/bin/bash
-# Copyright 2011, 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.
-
-# Set up prog to be the path of this script, including following symlinks,
-# and set up progdir to be the fully-qualified pathname of its directory.
-prog="$0"
-while [ -h "${prog}" ]; do
-    newProg=`/bin/ls -ld "${prog}"`
-    newProg=`expr "${newProg}" : ".* -> \(.*\)$"`
-    if expr "x${newProg}" : 'x/' >/dev/null; then
-        prog="${newProg}"
-    else
-        progdir=`dirname "${prog}"`
-        prog="${progdir}/${newProg}"
-    fi
-done
-oldwd=`pwd`
-progdir=`dirname "${prog}"`
-cd "${progdir}"
-progdir=`pwd`
-prog="${progdir}"/`basename "${prog}"`
-cd "${oldwd}"
-
-jarfile=lint.jar
-frameworkdir="$progdir"
-libdir="$progdir"
-if [ ! -r "$frameworkdir/$jarfile" ]
-then
-    frameworkdir=`dirname "$progdir"`/tools/lib
-    libdir=`dirname "$progdir"`/tools/lib
-fi
-if [ ! -r "$frameworkdir/$jarfile" ]
-then
-    frameworkdir=`dirname "$progdir"`/framework
-    libdir=`dirname "$progdir"`/lib
-fi
-if [ ! -r "$frameworkdir/$jarfile" ]
-then
-    echo `basename "$prog"`": can't find $jarfile"
-    exit 1
-fi
-
-# Check args.
-if [ debug = "$1" ]; then
-    # add this in for debugging
-    java_debug=-agentlib:jdwp=transport=dt_socket,server=y,address=8050,suspend=y
-    shift 1
-else
-    java_debug=
-fi
-
-javaCmd="java"
-
-jarpath="$frameworkdir/$jarfile"
-
-exec "$javaCmd" \
-    -Xmx1024m $os_opts $java_debug \
-    -Dcom.android.tools.lint.bindir="$progdir" \
-    -Djava.awt.headless=true \
-    -classpath "$jarpath" \
-    com.android.tools.lint.Main "$@"