faf85722be0f8b49e9f4489a8c46649530db1f7d
[platform/framework/web/crosswalk.git] / src / xwalk / xwalk_core_library_android.gypi
1 # Copyright (c) 2013 Intel Corporation. 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.
4
5 {
6   'variables': {
7     'core_internal_empty_embedder_apk_name': 'XWalkCoreInternalEmptyEmbedder',
8   },
9   'targets': [
10     {
11       'target_name': 'xwalk_core_library_documentation',
12       'type': 'none',
13       'dependencies': [
14         'xwalk_core_reflection_layer_java_gen'
15       ],
16       'variables': {
17         'api_files': [
18           '<(DEPTH)/xwalk/runtime/android/core/src/org/xwalk/core/JavascriptInterface.java',
19           '>(reflection_gen_dir)/wrapper/org/xwalk/core/XWalkExtension.java',
20           '>(reflection_gen_dir)/wrapper/org/xwalk/core/XWalkJavascriptResult.java',
21           '>(reflection_gen_dir)/wrapper/org/xwalk/core/XWalkNavigationHistory.java',
22           '>(reflection_gen_dir)/wrapper/org/xwalk/core/XWalkNavigationItem.java',
23           '>(reflection_gen_dir)/wrapper/org/xwalk/core/XWalkPreferences.java',
24           '>(reflection_gen_dir)/wrapper/org/xwalk/core/XWalkResourceClient.java',
25           '>(reflection_gen_dir)/wrapper/org/xwalk/core/XWalkUIClient.java',
26           '>(reflection_gen_dir)/wrapper/org/xwalk/core/XWalkView.java',
27         ],
28         'docs': '<(PRODUCT_DIR)/xwalk_core_library_docs',
29       },
30       'actions': [
31         {
32           'action_name': 'javadoc_xwalk_core_library',
33           'message': 'Creating documentation for XWalk Core Library',
34           'inputs': [
35             '>(reflection_layer_gen_timestamp)',
36           ],
37           'outputs': [
38             '<(docs)/index.html',
39           ],
40           'action': [
41             'javadoc',
42             '-quiet',
43             '-XDignore.symbol.file',
44             '-d', '<(docs)',
45             '-classpath', '<(android_sdk)/android.jar',
46             '<@(api_files)',
47           ],
48         },
49       ],
50     },
51     {
52       'target_name': 'pack_xwalk_core_library',
53       'type': 'none',
54       'dependencies': [
55         'xwalk_core_library'
56       ],
57       'actions': [
58         {
59           'action_name': 'pack_xwalk_core_library',
60           'message': 'Packaging XwalkCore Library Project.',
61           'inputs': [
62             '<(DEPTH)/xwalk/tools/tar.py',
63           ],
64           'outputs': [
65             '<(PRODUCT_DIR)/xwalk_core_library.tar.gz',
66             '<(PRODUCT_DIR)/pack_xwalk_core_library_intermediate/always_run',
67           ],
68           'action': [
69             'python', 'tools/tar.py',
70             '<(PRODUCT_DIR)/xwalk_core_library'
71           ],
72         },
73       ],
74     },
75     {
76       'target_name': 'xwalk_core_internal_empty_embedder_apk',
77       'type': 'none',
78       'dependencies': [
79         'libxwalkcore',
80         'xwalk_core_internal_java',
81       ],
82       'variables': {
83         'apk_name': '<(core_internal_empty_embedder_apk_name)',
84         'java_in_dir': 'runtime/android/core_internal_empty',
85         'native_lib_target': 'libxwalkcore',
86         'is_test_apk': 1,
87         'additional_src_dirs': [
88            '<(DEPTH)/xwalk/runtime/android/core_internal/resource_map',
89         ],
90       },
91       'includes': [ '../build/java_apk.gypi' ],
92       'all_dependent_settings': {
93         'variables': {
94           'input_jars_paths': ['<(javac_jar_path)'],
95         },
96       },
97     },
98     {
99       'target_name': 'xwalk_core_library_java_app_part',
100       'type': 'none',
101       'dependencies': [
102         'xwalk_core_java',
103       ],
104       'variables': {
105         'classes_dir': '<(PRODUCT_DIR)/<(_target_name)/classes',
106         'jar_name': '<(_target_name).jar',
107         'jar_final_path': '<(PRODUCT_DIR)/lib.java/<(jar_name)',
108       },
109       'actions': [
110         {
111           'action_name': 'jars_<(_target_name)',
112           'message': 'Creating <(_target_name) jar',
113           'inputs': [
114             'build/android/merge_jars.py',
115             '>@(input_jars_paths)',
116           ],
117           'outputs': [
118             '<(jar_final_path)',
119           ],
120           'action': [
121             'python', 'build/android/merge_jars.py',
122             '--classes-dir=<(classes_dir)',
123             '--jars=>(input_jars_paths)',
124             '--jar-path=<(jar_final_path)',
125           ],
126         },
127       ],
128     },
129     {
130       'target_name': 'xwalk_core_library_java_library_part',
131       'type': 'none',
132       'dependencies': [
133         'xwalk_core_internal_empty_embedder_apk',
134       ],
135       'variables': {
136         'classes_dir': '<(PRODUCT_DIR)/<(_target_name)/classes',
137         'jar_name': '<(_target_name).jar',
138         'jar_final_path': '<(PRODUCT_DIR)/lib.java/<(jar_name)',
139       },
140       'actions': [
141         {
142           'action_name': 'jars_<(_target_name)',
143           'message': 'Creating <(_target_name) jar',
144           'inputs': [
145             'build/android/merge_jars.py',
146             '>@(input_jars_paths)',
147           ],
148           'outputs': [
149             '<(jar_final_path)',
150           ],
151           'action': [
152             'python', 'build/android/merge_jars.py',
153             '--classes-dir=<(classes_dir)',
154             '--jars=>(input_jars_paths)',
155             '--jar-path=<(jar_final_path)',
156           ],
157         },
158       ],
159     },
160     {
161       'target_name': 'xwalk_core_library_java',
162       'type': 'none',
163       'dependencies': [
164         'xwalk_core_library_java_app_part',
165         'xwalk_core_library_java_library_part',
166       ],
167       'variables': {
168         'classes_dir': '<(PRODUCT_DIR)/<(_target_name)/classes',
169         'jar_name': '<(_target_name).jar',
170         'jar_final_path': '<(PRODUCT_DIR)/lib.java/<(jar_name)',
171       },
172       'actions': [
173         {
174           'action_name': 'jars_<(_target_name)',
175           'message': 'Creating <(_target_name) jar',
176           'inputs': [
177             'build/android/merge_jars.py',
178             '>@(input_jars_paths)',
179           ],
180           'outputs': [
181             '<(jar_final_path)',
182           ],
183           'action': [
184             'python', 'build/android/merge_jars.py',
185             '--classes-dir=<(classes_dir)',
186             '--jars=>(input_jars_paths)',
187             '--jar-path=<(jar_final_path)',
188           ],
189         },
190       ],
191     },
192     {
193       'target_name': 'xwalk_core_library',
194       'type': 'none',
195       'dependencies': [
196         'xwalk_core_shell_apk',
197         'xwalk_core_library_java_app_part',
198         'xwalk_core_library_java_library_part',
199       ],
200       'actions': [
201         {
202           'action_name': 'generate_xwalk_core_library',
203           'message': 'Generating XwalkCore Library Project.',
204           'inputs': [
205             '<(DEPTH)/xwalk/build/android/common_function.py',
206             '<(DEPTH)/xwalk/build/android/generate_xwalk_core_library.py',
207           ],
208           'outputs': [
209             '<(PRODUCT_DIR)/xwalk_core_library_intermediate/always_run',
210           ],
211           'action': [
212             'python', '<(DEPTH)/xwalk/build/android/generate_xwalk_core_library.py',
213             '-s',  '<(DEPTH)',
214             '-t', '<(PRODUCT_DIR)'
215           ],
216         },
217       ],
218     },
219     {
220       'target_name': 'xwalk_core_library_aar',
221       'type': 'none',
222       'dependencies': [
223         'xwalk_core_library',
224         'xwalk_core_library_java',
225       ],
226       'actions': [
227         {
228           'action_name': 'generate_xwalk_core_library_aar',
229           'message': 'Generating XwalkCore AAR Library.',
230           'inputs': [
231             '<(DEPTH)/xwalk/build/android/common_function.py',
232             '<(DEPTH)/xwalk/build/android/generate_xwalk_core_library_aar.py',
233           ],
234           'outputs': [
235             '<(PRODUCT_DIR)/xwalk_core_library_aar_intermediate/always_run',
236           ],
237           'action': [
238             'python', '<(DEPTH)/xwalk/build/android/generate_xwalk_core_library_aar.py',
239             '-t', '<(PRODUCT_DIR)',
240           ],
241         },
242       ],
243     },
244   ],
245 }