Pin Chrome's shortcut to the Win10 Start menu on install and OS upgrade.
[chromium-blink-merge.git] / ui / accessibility / accessibility.gyp
blobcdb7cb04bf1aa5508ae34ccde1349f25e187de8a
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   },
10   'targets': [
11     {
12       'target_name': 'accessibility',
13       'type': '<(component)',
14       'export_dependent_settings': [
15         'ax_gen',
16       ],
17       'hard_dependency': 1,
18       'dependencies': [
19         '../../base/base.gyp:base',
20         '../gfx/gfx.gyp:gfx',
21         '../gfx/gfx.gyp:gfx_geometry',
22         'ax_gen',
23       ],
24       'defines': [
25         'ACCESSIBILITY_IMPLEMENTATION',
26       ],
27       'sources': [
28         # All .cc, .h under accessibility, except unittests
29         'ax_node.cc',
30         'ax_node.h',
31         'ax_node_data.cc',
32         'ax_node_data.h',
33         'ax_serializable_tree.cc',
34         'ax_serializable_tree.h',
35         'ax_text_utils.cc',
36         'ax_text_utils.h',
37         'ax_tree.cc',
38         'ax_tree.h',
39         'ax_tree_serializer.cc',
40         'ax_tree_serializer.h',
41         'ax_tree_source.h',
42         'ax_tree_update.cc',
43         'ax_tree_update.h',
44         'ax_view_state.cc',
45         'ax_view_state.h',
46         'platform/atk_util_auralinux.cc',
47         'platform/atk_util_auralinux.h',
48         'platform/ax_platform_node.cc',
49         'platform/ax_platform_node.h',
50         'platform/ax_platform_node_auralinux.cc',
51         'platform/ax_platform_node_auralinux.h',
52         'platform/ax_platform_node_base.cc',
53         'platform/ax_platform_node_base.h',
54         'platform/ax_platform_node_delegate.h',
55         'platform/ax_platform_node_mac.h',
56         'platform/ax_platform_node_mac.mm',
57         'platform/ax_platform_node_win.h',
58         'platform/ax_platform_node_win.cc',
59       ],
60       'conditions': [
61         ['OS=="win"', {
62           'dependencies': [
63             '../../third_party/iaccessible2/iaccessible2.gyp:iaccessible2'
64           ],
65         }],
66         ['OS=="linux" and chromeos==0 and use_x11==1', {
67           'dependencies': [
68             '../../build/linux/system.gyp:atk',
69             '../../build/linux/system.gyp:gconf',
70             '../../build/linux/system.gyp:glib',
71           ],
72           'variables': {
73             'clang_warning_flags': [
74               # glib uses the pre-c++11 typedef-as-static_assert hack.
75               '-Wno-unused-local-typedefs',
76               # G_DEFINE_TYPE automatically generates a
77               # *get_instance_private inline function after glib 2.37.
78               # That's unused. Prevent to complain about it.
79               '-Wno-unused-function',
80             ],
81           },
82         }],
83         ['OS!="linux" or chromeos==1 or use_x11==0', {
84           'sources!': [
85             'platform/ax_platform_node_auralinux.cc',
86             'platform/ax_platform_node_auralinux.h',
87             'platform/atk_util_auralinux.cc',
88             'platform/atk_util_auralinux.h',
89           ],
90         }],
91         ['OS=="android"', {
92           'dependencies': [
93             'ui_accessibility_java'
94           ],
95         }],
96       ],
97     },
98     {
99       'target_name': 'accessibility_test_support',
100       'type': 'static_library',
101       'dependencies': [
102         '../../base/base.gyp:base',
103         'accessibility'
104       ],
105       'sources': [
106         'platform/test_ax_node_wrapper.cc',
107         'platform/test_ax_node_wrapper.h',
108         'tree_generator.cc',
109         'tree_generator.h',
110       ]
111     },
112     {
113       'target_name': 'accessibility_unittests',
114       'type': 'executable',
115       'dependencies': [
116         '../../base/base.gyp:base',
117         '../../base/base.gyp:run_all_unittests',
118         '../../testing/gtest.gyp:gtest',
119         '../gfx/gfx.gyp:gfx',
120         '../gfx/gfx.gyp:gfx_geometry',
121         'accessibility',
122         'accessibility_test_support',
123         'ax_gen',
124       ],
125       'sources': [
126         'ax_generated_tree_unittest.cc',
127         'ax_text_utils_unittest.cc',
128         'ax_tree_serializer_unittest.cc',
129         'ax_tree_unittest.cc',
130         'platform/ax_platform_node_win_unittest.cc'
131       ],
132       'conditions': [
133         ['OS=="win"', {
134           'dependencies': [
135             '../../third_party/iaccessible2/iaccessible2.gyp:iaccessible2'
136           ],
137         }],
138       ],
139     },
140     {
141       'target_name': 'ax_gen',
142       'type': 'static_library',
143       # This target exports a hard dependency because dependent targets may
144       # include ax_enums.h, a generated header.
145       'hard_dependency': 1,
146       'dependencies': [
147         '../../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations'
148         ],
149       'sources': [
150         '<@(schema_files)',
151       ],
152       'msvs_disabled_warnings': [ 4267 ],
153       'includes': [
154         '../../build/json_schema_compile.gypi',
155       ],
156       'variables': {
157         'chromium_code': 1,
158         'schema_files': [
159           'ax_enums.idl',
160         ],
161         'non_compiled_schema_files': [],
162         'cc_dir': 'ui/accessibility',
163         # TODO(dtseng): Change this once all files under ui/accessibility
164         # namespaced under ui::ax.
165         'root_namespace': 'ui',
166       },
167     },
168   ],
169   'conditions': [
170     ['test_isolation_mode != "noop"', {
171       'targets': [
172         {
173           'target_name': 'accessibility_unittests_run',
174           'type': 'none',
175           'dependencies': [
176             'accessibility_unittests',
177           ],
178           'includes': [
179             '../../build/isolate.gypi',
180           ],
181           'sources': [
182             'accessibility_unittests.isolate',
183           ],
184           'conditions': [
185             ['use_x11 == 1', {
186               'dependencies': [
187                 '../../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
188               ],
189             }],
190           ],
191         },
192       ],
193     }],
194     ['OS == "android"', {
195       'targets': [
196         {
197           'target_name': 'ui_accessibility_java',
198           'type': 'none',
199           'variables': {
200             'java_in_dir': '<(DEPTH)/build/android/empty',
201             'has_java_resources': 0,
202           },
203           'dependencies': [
204             'ax_enumerations_java',
205           ],
206           'includes': [ '../../build/java.gypi' ],
207         },
208         {
209           'target_name': 'ax_enumerations_java',
210           'type': 'none',
211           'variables': {
212             'source_file': 'ax_enums.idl',
213           },
214           'includes': [ '../../build/android/java_cpp_enum.gypi' ],
215         },
216       ],
217     }],
218   ],