Roll src/third_party/WebKit a3b4a2e:7441784 (svn 202551:202552)
[chromium-blink-merge.git] / build / android / setup.gyp
blob419ed9859ba00b7866ab8efa111f833673c799e1
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
5   'conditions': [
6     ['android_must_copy_system_libraries == 1', {
7       'targets': [
8         {
9           # These libraries from the Android ndk are required to be packaged with
10           # any APK that is built with them. build/java_apk.gypi expects any
11           # libraries that should be packaged with the apk to be in
12           # <(SHARED_LIB_DIR)
13           'target_name': 'copy_system_libraries',
14           'type': 'none',
15           'copies': [
16             {
17               'destination': '<(SHARED_LIB_DIR)/',
18               'files': [
19                 '<(android_libcpp_libs_dir)/libc++_shared.so',
20               ],
21             },
22           ],
23         },
24       ],
25     }],
26   ],
27   'targets': [
28     {
29       'target_name': 'get_build_device_configurations',
30       'type': 'none',
31       'actions': [
32         {
33           'action_name': 'get configurations',
34           'inputs': [
35             'gyp/util/build_device.py',
36             'gyp/get_device_configuration.py',
37           ],
38           'outputs': [
39             '<(build_device_config_path)',
40             '<(build_device_config_path).fake',
41           ],
42           'action': [
43             'python', 'gyp/get_device_configuration.py',
44             '--output=<(build_device_config_path)',
45           ],
46         }
47       ],
48     },
49     {
50       # Target for creating common output build directories. Creating output
51       # dirs beforehand ensures that build scripts can assume these folders to
52       # exist and there are no race conditions resulting from build scripts
53       # trying to create these directories.
54       # The build/java.gypi target depends on this target.
55       'target_name': 'build_output_dirs',
56       'type': 'none',
57       'actions': [
58         {
59           'action_name': 'create_java_output_dirs',
60           'variables' : {
61             'output_dirs' : [
62               '<(PRODUCT_DIR)/apks',
63               '<(PRODUCT_DIR)/lib.java',
64               '<(PRODUCT_DIR)/test.lib.java',
65             ]
66           },
67           'inputs' : [],
68           # By not specifying any outputs, we ensure that this command isn't
69           # re-run when the output directories are touched (i.e. apks are
70           # written to them).
71           'outputs': [''],
72           'action': [
73             'mkdir',
74             '-p',
75             '<@(output_dirs)',
76           ],
77         },
78       ],
79     }, # build_output_dirs
80     {
81       'target_name': 'sun_tools_java',
82       'type': 'none',
83       'variables': {
84         'found_jar_path': '<(PRODUCT_DIR)/sun_tools_java/tools.jar',
85         'jar_path': '<(found_jar_path)',
86       },
87       'includes': [
88         '../../build/host_prebuilt_jar.gypi',
89       ],
90       'actions': [
91         {
92           'action_name': 'find_sun_tools_jar',
93           'variables' : {
94           },
95           'inputs' : [
96             'gyp/find_sun_tools_jar.py',
97             'gyp/util/build_utils.py',
98           ],
99           'outputs': [
100             '<(found_jar_path)',
101           ],
102           'action': [
103             'python', 'gyp/find_sun_tools_jar.py',
104             '--output', '<(found_jar_path)',
105           ],
106         },
107       ],
108     }, # sun_tools_java
109   ]