Instrumental test for BookmarksBridge. It currently tests these functionalities:...
[chromium-blink-merge.git] / ui / views / BUILD.gn
blobc311fbd969cdf5a3f0916571555c2b659b0fa3f5
1 # Copyright 2014 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 import("//build/config/features.gni")
6 import("//build/config/ui.gni")
8 gypi_values = exec_script(
9     "//build/gypi_to_gn.py",
10     [ rebase_path("views.gyp") ],
11     "scope",
12     [ "views.gyp" ])
14 component("views") {
15   sources = gypi_values.views_sources
17   defines = [ "VIEWS_IMPLEMENTATION" ]
19   deps = [
20     "//base",
21     "//base:i18n",
22     "//base/third_party/dynamic_annotations",
23     "//skia",
24     "//third_party/icu",
25     "//third_party/wtl",
26     "//ui/accessibility",
27     "//ui/accessibility:ax_gen",
28     "//ui/aura",
29     "//ui/base",
30     "//ui/compositor",
31     "//ui/events",
32     "//ui/events:events_base",
33     "//ui/events/platform",
34     "//ui/gfx",
35     "//ui/gfx/geometry",
36     "//ui/native_theme",
37     "//ui/resources",
38     "//ui/strings",
39     "//ui/wm",
40     "//url",
41   ]
43   forward_dependent_configs_from = [ "//ui/accessibility:ax_gen" ]
45   if (use_x11 && !is_chromeos) {
46     deps += [ "//ui/display/util" ]
47   }
48   if (is_linux && !is_chromeos) {
49     sources -= [ "window/window_button_order_provider.cc" ]
50     deps += [ "//ui/shell_dialogs" ]
51   } else {
52     sources -= [
53       "linux_ui/linux_ui.h",
54       "linux_ui/linux_ui.cc",
55       "linux_ui/window_button_order_observer.h",
56       "linux_ui/window_button_order_provider.cc",
57     ]
58   }
60   if (is_chromeos) {
61     sources -= [
62       "linux_ui/status_icon_linux.h",
63       "linux_ui/status_icon_linux.cc",
64     ]
65   }
67   if (is_win) {
68     sources += gypi_values.views_win_sources
69     cflags = [ "/wd4267" ]  # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
70     libs = [ "/imm32.lib", "oleacc.lib" ]
71     ldflags = [ "/DELAYLOAD:user32.dll" ]
72     deps += [
73       "//third_party/iaccessible2",
74       "//third_party/wtl",
75     ]
76   }
78   if (use_ozone) {
79     deps += [ "//ui/ozone" ]
80   }
81   if (use_x11) {
82     configs += [
83       "//build/config/linux:x11",
84       "//build/config/linux:xrandr",
85     ]
86     deps += [
87       "//ui/events/platform/x11",
88     ]
89   }
91   if (use_aura) {
92     sources += gypi_values.views_aura_sources
93     if (!is_chromeos) {
94       sources += gypi_values.views_desktop_aura_sources
95       if (use_x11) {
96         sources += gypi_values.views_desktop_aura_x11_sources
97       } else if (is_win) {
98         sources += gypi_values.views_desktop_aura_win_sources
99       } else if (use_ozone) {
100         sources += gypi_values.views_desktop_aura_ozone_sources
101       }
102     }
103   }
106 static_library("test_support") {
107   testonly = true
108   sources = gypi_values.views_test_support_sources
110   deps = [
111     ":views",
112     "//base",
113     "//ipc:test_support",
114     "//skia",
115     "//testing/gtest",
116     "//ui/aura",
117     "//ui/base",
118     "//ui/compositor",
119     "//ui/compositor:test_support",
120     "//ui/events",
121     "//ui/events:events_base",
122     "//ui/events:test_support",
123     "//ui/events/platform",
124     "//ui/gfx",
125     "//ui/gfx/geometry",
126     "//ui/wm",
127   ]
129   if (is_chromeos) {
130     sources -= [
131       "test/ui_controls_factory_desktop_aurax11.cc",
132       "test/ui_controls_factory_desktop_aurax11.h",
133     ]
134   }
135   if (use_aura) {
136     sources += gypi_values.views_test_support_aura_sources
137     deps += [ "//ui/aura:test_support" ]
138   }
141 test("views_unittests") {
142   sources = gypi_values.views_unittests_sources
144   deps = [
145     ":test_support",
146     ":views",
147     "//base",
148     "//base:i18n",
149     "//base/allocator",
150     "//base/test:test_support",
151     "//skia",
152     "//testing/gtest",
153     "//third_party/icu",
154     "//ui/accessibility",
155     "//ui/aura",
156     "//ui/base",
157     "//ui/base:test_support",
158     "//ui/compositor",
159     "//ui/events",
160     "//ui/events:events_base",
161     "//ui/events/platform",
162     "//ui/gfx",
163     "//ui/gfx/geometry",
164     "//ui/gl",
165     "//ui/wm",
166     "//url",
167   ]
169   if (is_chromeos) {
170     sources -= [
171       "ime/input_method_bridge_unittest.cc",
172     ]
173   }
175   if (is_win) {
176     deps += [
177       "//third_party/iaccessible2",
178       "//third_party/wtl",
179     ]
180     libs = [
181       "imm32.lib",
182       "oleacc.lib",
183       "comctl32.lib",
184     ]
185     # TOOD(GYP)
186     #'msvs_settings': {
187     #  'VCManifestTool': {
188     #    'AdditionalManifestFiles': [
189     #      '$(ProjectDir)\\test\\views_unittest.manifest',
190     #    ],
191     #  },
192     #},
193   }
195   if (use_x11) {
196     configs += [
197       "//build/config/linux:x11",
198       "//build/config/linux:xext",
199     ]
200     deps += [
201       "//ui/events/platform/x11",
202     ]
203   }
205   if (use_aura) {
206     sources += gypi_values.views_unittests_aura_sources
207     deps += [ "//ui/aura:test_support" ]
208     if (!is_chromeos) {
209       sources += gypi_values.views_unittests_desktop_aura_sources
210     }
211   }
212   if (use_x11) {
213     deps += [ "//ui/events/platform/x11" ]
214   }
216   if (is_mac) {
217     # views_unittests not yet compiling on Mac. http://crbug.com/378134
218     sources -= [
219       "bubble/bubble_window_targeter_unittest.cc",
220       "controls/button/custom_button_unittest.cc",
221       "controls/button/menu_button_unittest.cc",
222       "controls/native/native_view_host_unittest.cc",
223       "controls/menu/menu_controller_unittest.cc",
224       "ime/input_method_bridge_unittest.cc",
225       "focus/focus_manager_unittest.cc",
226       "widget/window_reorderer_unittest.cc",
227       "widget/widget_unittest.cc",
228     ]
229   }
232 if (is_mac) {
233   test("macviews_interactive_ui_tests") {
234     sources = [
235       "run_all_unittests.cc",
236       "widget/native_widget_mac_interactive_uitest.mm",
237     ]
238     deps = [
239       ":test_support",
240       ":views",
241       "//base",
242       "//base/test:test_support",
243       "//skia",
244       "//testing/gtest",
245       "//ui/aura",
246       "//ui/compositor",
247       "//ui/resources",
248       "//ui/resources:ui_test_pak",
249       "//ui/strings",
250       "//ui/wm",
251     ]
252   }