Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / ui / android / ui_android.gyp
blob90ae8748fb0784be8b11178bc83fb28969935d15
1 # Copyright 2013 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.
6   'variables': {
7     'chromium_code': 1,
8   },
9   'targets': [
10     {
11       # GN version: //ui/android
12       'target_name': 'ui_android',
13       'type': '<(component)',
14       'dependencies': [
15         '../../base/base.gyp:base',
16         '../../cc/cc.gyp:cc',
17         '../../skia/skia.gyp:skia',
18         '../gfx/gfx.gyp:gfx',
19         '../gfx/gfx.gyp:gfx_geometry',
20         'ui_android_jni_headers',
21       ],
22       'defines': [
23         'UI_ANDROID_IMPLEMENTATION',
24       ],
25       'sources' : [
26         'resources/resource_manager.cc',
27         'resources/resource_manager.h',
28         'resources/resource_manager_impl.cc',
29         'resources/resource_manager_impl.h',
30         'resources/ui_resource_android.cc',
31         'resources/ui_resource_android.h',
32         'resources/ui_resource_client_android.h',
33         'resources/ui_resource_provider.cc',
34         'resources/ui_resource_provider.h',
35         'ui_android_export.h',
36         'ui_android_jni_registrar.cc',
37         'ui_android_jni_registrar.h',
38         'view_android.cc',
39         'view_android.h',
40         'window_android.cc',
41         'window_android.h',
42         'window_android_compositor.h',
43         'window_android_observer.h',
44       ],
45     },
46     {
47       'target_name': 'ui_android_jni_headers',
48       'type': 'none',
49       'sources': [
50         'java/src/org/chromium/ui/base/WindowAndroid.java',
51         'java/src/org/chromium/ui/resources/ResourceManager.java',
52       ],
53       'variables': {
54         'jni_gen_package': 'ui_android',
55       },
56       'includes': [ '../../build/jni_generator.gypi' ],
57     },
58     {
59       'target_name': 'android_resource_type_java',
60       'type': 'none',
61       'variables': {
62         'source_file': 'resources/resource_manager.h',
63       },
64       'includes': [ '../../build/android/java_cpp_enum.gypi' ],
65     },
66     {
67       'target_name': 'bitmap_format_java',
68       'type': 'none',
69       'variables': {
70         'source_file': '../gfx/android/java_bitmap.h',
71       },
72       'includes': [ '../../build/android/java_cpp_enum.gypi' ],
73     },
74     {
75       'target_name': 'page_transition_types_java',
76       'type': 'none',
77       'variables': {
78         'source_file': '../base/page_transition_types.h',
79       },
80       'includes': [ '../../build/android/java_cpp_enum.gypi' ],
81     },
82     {
83       'target_name': 'system_ui_resource_type_java',
84       'type': 'none',
85       'variables': {
86         'source_file': 'resources/system_ui_resource_type.h',
87       },
88       'includes': [ '../../build/android/java_cpp_enum.gypi' ],
89     },
90     {
91       'target_name': 'touch_device_types_java',
92       'type': 'none',
93       'variables': {
94         'source_file': '../base/touch/touch_device.h',
95       },
96       'includes': [ '../../build/android/java_cpp_enum.gypi' ],
97     },
98     {
99       'target_name': 'window_open_disposition_java',
100       'type': 'none',
101       'variables': {
102         'source_file': '../base/window_open_disposition.h',
103       },
104       'includes': [ '../../build/android/java_cpp_enum.gypi' ],
105     },
106     {
107       'target_name': 'text_input_type_java',
108       'type': 'none',
109       'variables': {
110         'source_file': '../base/ime/text_input_type.h',
111       },
112       'includes': [ '../../build/android/java_cpp_enum.gypi' ],
113     },
114     {
115       'target_name': 'ui_java',
116       'type': 'none',
117       'variables': {
118         'java_in_dir': '../../ui/android/java',
119         'has_java_resources': 1,
120         'R_package': 'org.chromium.ui',
121         'R_package_relpath': 'org/chromium/ui',
122       },
123       'dependencies': [
124         '../../base/base.gyp:base_java',
125         'android_resource_type_java',
126         'bitmap_format_java',
127         'page_transition_types_java',
128         'system_ui_resource_type_java',
129         'touch_device_types_java',
130         'ui_strings_grd',
131         'window_open_disposition_java',
132         'text_input_type_java',
133       ],
134       'includes': [ '../../build/java.gypi' ],
135     },
136     {
137       'target_name': 'ui_javatests',
138       'type': 'none',
139       'variables': {
140         'java_in_dir': '../../ui/android/javatests',
141       },
142       'dependencies': [
143         '../../base/base.gyp:base_java_test_support',
144         'ui_java',
145       ],
146       'includes': [ '../../build/java.gypi' ],
147     },
148     {
149       'target_name': 'ui_strings_grd',
150        # The android_webview/Android.mk file depends on this target directly.
151       'android_unmangled_name': 1,
152       'type': 'none',
153       'variables': {
154         'grd_file': '../../ui/android/java/strings/android_ui_strings.grd',
155       },
156       'includes': [
157         '../../build/java_strings_grd.gypi',
158       ],
159     },
160     {
161       # GN version: //ui/android:ui_android_unittests
162       'target_name': 'ui_android_unittests',
163       'type': '<(gtest_target_type)',
164       'dependencies': [
165         '../../base/base.gyp:base',
166         '../../base/base.gyp:test_support_base',
167         '../../cc/cc.gyp:cc',
168         '../../skia/skia.gyp:skia',
169         '../../testing/android/native_test.gyp:native_test_native_code',
170         '../../testing/gtest.gyp:gtest',
171         '../base/ui_base.gyp:ui_base',
172         '../gfx/gfx.gyp:gfx',
173         '../resources/ui_resources.gyp:ui_test_pak',
174         'ui_android',
175       ],
176       'sources': [
177         'resources/resource_manager_impl_unittest.cc',
178         'run_all_unittests.cc',
179       ],
180     },
181     {
182       'target_name': 'ui_android_unittests_apk',
183       'type': 'none',
184       'dependencies': [
185         'ui_android_unittests',
186         'ui_java',
187       ],
188       'variables': {
189         'test_suite_name': 'ui_android_unittests',
190       },
191       'includes': [ '../../build/apk_test.gypi' ],
192     },
193   ],
194   'conditions': [
195     ['test_isolation_mode != "noop"',
196       {
197         'targets': [
198           {
199             'target_name': 'ui_android_unittests_apk_run',
200             'type': 'none',
201             'dependencies': [
202               'ui_android_unittests_apk',
203             ],
204             'includes': [
205               '../../build/isolate.gypi',
206             ],
207             'sources': [
208               'ui_android_unittests_apk.isolate',
209             ],
210           },
211         ]
212       }
213     ],
214   ]