• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1@echo off
2rem Copyright (C) 2007 The Android Open Source Project
3rem
4rem Licensed under the Apache License, Version 2.0 (the "License");
5rem you may not use this file except in compliance with the License.
6rem You may obtain a copy of the License at
7rem
8rem      http://www.apache.org/licenses/LICENSE-2.0
9rem
10rem Unless required by applicable law or agreed to in writing, software
11rem distributed under the License is distributed on an "AS IS" BASIS,
12rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13rem See the License for the specific language governing permissions and
14rem limitations under the License.
15
16rem Useful links:
17rem Command-line reference:
18rem   http://technet.microsoft.com/en-us/library/bb490890.aspx
19
20rem don't modify the caller's environment
21setlocal
22
23rem Set up prog to be the path of this script, including following symlinks,
24rem and set up progdir to be the fully-qualified pathname of its directory.
25set prog=%~f0
26
27rem Grab current directory before we change it
28set work_dir="%cd%"
29
30rem Change current directory and drive to where the script is, to avoid
31rem issues with directories containing whitespaces.
32cd /d %~dp0
33
34
35rem Check we have a valid Java.exe in the path.
36set java_exe=
37call lib\find_java.bat
38if not defined java_exe goto :EOF
39
40set jar_path=lib\sdkmanager.jar;lib\swtmenubar.jar
41
42rem Set SWT.Jar path based on current architecture (x86 or x86_64)
43for /f %%a in ('%java_exe% -jar lib\archquery.jar') do set swt_path=lib\%%a
44
45:MkTempCopy
46    rem Copy android.bat and its required libs to a temp dir.
47    rem This avoids locking the tool dir in case the user is trying to update it.
48
49    set tmp_dir=%TEMP%\temp-android-tool
50    xcopy %swt_path% %tmp_dir%\%swt_path% /I /E /C /G /R /Y /Q > nul
51    copy /B /D /Y lib\org.eclipse.*      %tmp_dir%\lib\        > nul
52    copy /B /D /Y lib\sdk*               %tmp_dir%\lib\        > nul
53    copy /B /D /Y lib\common.jar         %tmp_dir%\lib\        > nul
54    copy /B /D /Y lib\layoutlib_api.jar  %tmp_dir%\lib\        > nul
55    copy /B /D /Y lib\commons-compress*  %tmp_dir%\lib\        > nul
56    copy /B /D /Y lib\swtmenubar.jar     %tmp_dir%\lib\        > nul
57    copy /B /D /Y lib\commons-logging*   %tmp_dir%\lib\        > nul
58    copy /B /D /Y lib\commons-codec*     %tmp_dir%\lib\        > nul
59    copy /B /D /Y lib\httpclient*        %tmp_dir%\lib\        > nul
60    copy /B /D /Y lib\httpcore*          %tmp_dir%\lib\        > nul
61    copy /B /D /Y lib\httpmime*          %tmp_dir%\lib\        > nul
62    copy /B /D /Y lib\dvlib.jar          %tmp_dir%\lib\        > nul
63
64    rem jar_path and swt_path are relative to PWD so we don't need to adjust them, just change dirs.
65    set tools_dir=%cd%
66    cd /d %tmp_dir%
67
68:EndTempCopy
69
70rem The global ANDROID_SWT always override the SWT.Jar path
71if defined ANDROID_SWT set swt_path=%ANDROID_SWT%
72
73if exist %swt_path% goto SetPath
74    echo ERROR: SWT folder '%swt_path%' does not exist.
75    echo Please set ANDROID_SWT to point to the folder containing swt.jar for your platform.
76    goto :EOF
77
78:SetPath
79rem Finally exec the java program and end here.
80REM set REMOTE_DEBUG=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
81call %java_exe% %REMOTE_DEBUG% -Dcom.android.sdkmanager.toolsdir="%tools_dir%" -Dcom.android.sdkmanager.workdir=%work_dir% -classpath "%jar_path%;%swt_path%\swt.jar" com.android.sdkmanager.Main %*
82
83rem EOF
84