Upstream version 8.36.161.0
[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_library_empty_embedder_apk_name': 'XWalkCoreLibraryEmptyEmbedder',
8   },
9   'targets': [
10     {
11       'target_name': 'xwalk_core_library_documentation',
12       'type': 'none',
13       'variables': {
14         'api_files': [
15           '<(DEPTH)/xwalk/runtime/android/core/src/org/xwalk/core/XWalkJavascriptResult.java',
16           '<(DEPTH)/xwalk/runtime/android/core/src/org/xwalk/core/XWalkNavigationHistory.java',
17           '<(DEPTH)/xwalk/runtime/android/core/src/org/xwalk/core/XWalkNavigationItem.java',
18           '<(DEPTH)/xwalk/runtime/android/core/src/org/xwalk/core/XWalkPreferences.java',
19           '<(DEPTH)/xwalk/runtime/android/core/src/org/xwalk/core/XWalkResourceClient.java',
20           '<(DEPTH)/xwalk/runtime/android/core/src/org/xwalk/core/XWalkUIClient.java',
21           '<(DEPTH)/xwalk/runtime/android/core/src/org/xwalk/core/XWalkView.java',
22         ],
23         'docs': '<(PRODUCT_DIR)/xwalk_core_library_docs',
24       },
25       'actions': [
26         {
27           'action_name': 'javadoc_xwalk_core_library',
28           'message': 'Creating documentation for XWalk Core Library',
29           'inputs': [
30             '<@(api_files)',
31           ],
32           'outputs': [
33             '<(docs)/index.html',
34           ],
35           'action': [
36             'javadoc',
37             '-XDignore.symbol.file',
38             '-d', '<(docs)',
39             '<@(api_files)',
40           ],
41         },
42       ],
43     },
44     {
45       'target_name': 'pack_xwalk_core_library',
46       'type': 'none',
47       'dependencies': [
48         'xwalk_core_library'
49       ],
50       'actions': [
51         {
52           'action_name': 'pack_xwalk_core_library',
53           'message': 'Packaging XwalkCore Library Project.',
54           'inputs': [
55             '<(DEPTH)/xwalk/tools/tar.py',
56           ],
57           'outputs': [
58             '<(PRODUCT_DIR)/xwalk_core_library.tar.gz',
59             '<(PRODUCT_DIR)/pack_xwalk_core_library_intermediate/always_run',
60           ],
61           'action': [
62             'python', 'tools/tar.py',
63             '<(PRODUCT_DIR)/xwalk_core_library'
64           ],
65         },
66       ],
67     },
68     {
69       'target_name': 'xwalk_core_library_empty_embedder_apk',
70       'type': 'none',
71       'dependencies': [
72         'libxwalkcore',
73         'xwalk_core_java',
74       ],
75       'variables': {
76         'apk_name': '<(core_library_empty_embedder_apk_name)',
77         'java_in_dir': 'runtime/android/core_library_empty',
78         'native_lib_target': 'libxwalkcore',
79         'is_test_apk': 1,
80         'additional_src_dirs': [
81            '<(DEPTH)/ui/android/java/resource_map',
82            '<(DEPTH)/content/public/android/java/resource_map',
83            '<(DEPTH)/xwalk/runtime/android/core_internal/resource_map',
84         ],
85       },
86       'includes': [ '../build/java_apk.gypi' ],
87     },
88     {
89       # pack classes compiled from the java files chromium generated into a
90       # jar file.
91       'target_name': 'chromium_generated_java',
92       'type': 'none',
93       'dependencies': [
94         'xwalk_core_library_empty_embedder_apk',
95       ],
96       'variables': {
97         'jar_name': '<(_target_name).jar',
98         'jar_final_path': '<(PRODUCT_DIR)/lib.java/<(jar_name)',
99         'jar_excluded_classes': [
100           '*org/xwalk/core/R*',
101         ],
102       },
103       'all_dependent_settings': {
104         'variables': {
105           'input_jars_paths': ['<(jar_final_path)'],
106         },
107       },
108       'actions': [
109         {
110           'action_name': 'jar_<(_target_name)',
111           'message': 'Creating <(_target_name) jar',
112           'inputs': [
113             '<(DEPTH)/build/android/gyp/util/build_utils.py',
114             '<(DEPTH)/build/android/gyp/util/md5_check.py',
115             '<(DEPTH)/build/android/gyp/jar.py',
116             '<(PRODUCT_DIR)/apks/<(core_library_empty_embedder_apk_name).apk',
117           ],
118           'outputs': [
119             '<(jar_final_path)',
120           ],
121           'action': [
122             'python', '<(DEPTH)/build/android/gyp/jar.py',
123             '--classes-dir=<(PRODUCT_DIR)/xwalk_core_library_empty_embedder_apk/classes',
124             '--jar-path=<(jar_final_path)',
125             '--excluded-classes=<(jar_excluded_classes)',
126           ],
127         },
128       ],
129     },
130     {
131       'target_name': 'xwalk_core_library_java',
132       'type': 'none',
133       'dependencies': [
134         'xwalk_core_java',
135         'chromium_generated_java',
136       ],
137       'variables': {
138         'classes_dir': '<(PRODUCT_DIR)/<(_target_name)/classes',
139         'jar_name': '<(_target_name).jar',
140         'jar_final_path': '<(PRODUCT_DIR)/lib.java/<(jar_name)',
141       },
142       'actions': [
143         {
144           'action_name': 'jars_<(_target_name)',
145           'message': 'Creating <(_target_name) jar',
146           'inputs': [
147             'build/android/merge_jars.py',
148           ],
149           'outputs': [
150             '<(PRODUCT_DIR)/pack_xwalk_core_library_java_intermediate/always_run',
151           ],
152           'action': [
153             'python', 'build/android/merge_jars.py',
154             '--classes-dir=<(classes_dir)',
155             '--jars=>(input_jars_paths)',
156             '--jar-path=<(jar_final_path)',
157           ],
158         },
159       ],
160     },
161     {
162       'target_name': 'xwalk_core_library',
163       'type': 'none',
164       'dependencies': [
165         'xwalk_core_shell_apk',
166         'xwalk_core_library_java',
167       ],
168       'actions': [
169         {
170           'action_name': 'generate_xwalk_core_library',
171           'message': 'Generating XwalkCore Library Project.',
172           'inputs': [
173             '<(DEPTH)/xwalk/build/android/common_function.py',
174             '<(DEPTH)/xwalk/build/android/generate_xwalk_core_library.py',
175           ],
176           'outputs': [
177             '<(PRODUCT_DIR)/xwalk_core_library_intermediate/always_run',
178           ],
179           'action': [
180             'python', '<(DEPTH)/xwalk/build/android/generate_xwalk_core_library.py',
181             '-s',  '<(DEPTH)',
182             '-t', '<(PRODUCT_DIR)'
183           ],
184         },
185       ],
186     },
187   ],
188 }