Merge branch 'master' into resource-manipulation
[platform/upstream/iotivity.git] / android / android_api / SConscript
1 import os\r
2 import platform\r
3 Import('env')\r
4 \r
5 android_home = env.get('ANDROID_HOME')\r
6 \r
7 ANDROID_TARGET_ARCH = env.get('TARGET_ARCH')\r
8 if env.get('RELEASE'):\r
9         ANDROID_RELEASE="release"\r
10 else:\r
11         ANDROID_RELEASE="debug"\r
12 \r
13 os.environ['ANDROID_HOME'] = env.get('ANDROID_HOME')\r
14 os.environ['ANDROID_NDK_HOME'] = env.get('ANDROID_NDK')\r
15 \r
16 if not os.path.exists(android_home + '/platforms/android-21') or not os.path.exists(android_home + '/build-tools/20.0.0'):\r
17     print '''\r
18 ***************************************** Info ********************************\r
19 *   Either 'Android API 21' is not installed or 'Android SDK Build Tools      *\r
20 *   20.0.0' is not installed. The Android SDK Manager will now open. Please   *\r
21 *   be sure to deselect all options, then select the following 2 packages:    *\r
22 *       1. Under "Tools" select "Android SDK Build-tools" Revision 20.        *\r
23 *       2. Under "Android 5.0.1 (API 21)" select "SDK Platform"               *\r
24 *       3. Continue by selecting "Install 2 Packages"                         *\r
25 *                                                                             *\r
26 *   NOTE: If you have an http proxy, please press ctrl+c now and edit/create  *\r
27 *         the following file in your $HOME directory as follows:              *\r
28 *                                                                             *\r
29 * Edit/Create file: "$HOME/.android/androidtool.cfg"                          *\r
30 *                                                                             *\r
31 *    http.proxyPort=<YOUR_PORT_NUMBER>                                        *\r
32 *    sdkman.monitor.density=108                                               *\r
33 *    http.proxyHost=<YOUR_HTTP_PROXY_ADDRESS>                                 *\r
34 *    sdkman.show.update.only=true                                             *\r
35 *    sdkman.ask.adb.restart=false                                             *\r
36 *    sdkman.force.http=true                                                   *\r
37 *    sdkman.show.updateonly=true                                              *\r
38 *                                                                             *\r
39 *******************************************************************************\r
40 \r
41 ...Opening Android SDK Manager now. Once you are finished, the build will continue.\r
42 '''\r
43     os.system(android_home + '/tools/android')\r
44 \r
45 jdk_env = Environment(ENV=os.environ)\r
46 jdk_env['BUILDERS']['Gradle'] = Builder(action = env.get('ANDROID_GRADLE') + ' build -b' + os.getcwd()+'/build.gradle -PTARGET_ARCH=%s -PRELEASE=%s' %(ANDROID_TARGET_ARCH, ANDROID_RELEASE))\r
47 jdk_env.Gradle(target="base/objs", source="base/src/main/java/org/iotivity/base/OcResource.java")\r
48 \r