Upstream Incognito key management
[chromium-blink-merge.git] / ui / ui_unittests.gyp
blobf09b35bb855e2dc3567b471dc95296dc254bf8e8
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       'target_name': 'ui_test_support',
12       'dependencies': [
13         '../base/base.gyp:base',
14         '../skia/skia.gyp:skia',
15         '../testing/gtest.gyp:gtest',
16         'gfx/gfx.gyp:gfx',
17         'gfx/gfx.gyp:gfx_geometry',
18       ],
19       'sources': [
20         'base/test/ui_controls.h',
21         'base/test/ui_controls_aura.cc',
22         'base/test/ui_controls_gtk.cc',
23         'base/test/ui_controls_internal_win.cc',
24         'base/test/ui_controls_internal_win.h',
25         'base/test/ui_controls_mac.mm',
26         'base/test/ui_controls_win.cc',
27       ],
28       'include_dirs': [
29         '../',
30       ],
31       'conditions': [
32         ['OS!="ios"', {
33           'type': 'static_library',
34           'includes': [ 'base/ime/ime_test_support.gypi' ],
35         }, {  # OS=="ios"
36           # None of the sources in this target are built on iOS, resulting in
37           # link errors when building targets that depend on this target
38           # because the static library isn't found. If this target is changed
39           # to have sources that are built on iOS, the target should be changed
40           # to be of type static_library on all platforms.
41           'type': 'none',
42           # The cocoa files don't apply to iOS.
43           'sources/': [['exclude', 'cocoa']],
44         }],
45         ['chromeos==1', {
46           'dependencies': [
47             '../chromeos/chromeos.gyp:chromeos_test_support_without_gmock',
48             '../skia/skia.gyp:skia',
49           ],
50         }],
51         ['use_aura==1', {
52           'sources!': [
53             'base/test/ui_controls_mac.mm',
54             'base/test/ui_controls_win.cc',
55           ],
56         }],
57       ],
58     },
59     {
60       'target_name': 'ui_unittests',
61       'type': '<(gtest_target_type)',
62       'dependencies': [
63         '../base/base.gyp:base',
64         '../base/base.gyp:test_support_base',
65         '../skia/skia.gyp:skia',
66         '../testing/gmock.gyp:gmock',
67         '../testing/gtest.gyp:gtest',
68         '../third_party/icu/icu.gyp:icui18n',
69         '../third_party/icu/icu.gyp:icuuc',
70         '../third_party/libpng/libpng.gyp:libpng',
71         '../url/url.gyp:url_lib',
72         'base/strings/ui_strings.gyp:ui_strings',
73         'base/ui_base.gyp:ui_base',
74         'events/events.gyp:events_base',
75         'gfx/gfx.gyp:gfx_test_support',
76         'resources/ui_resources.gyp:ui_resources',
77         'resources/ui_resources.gyp:ui_test_pak',
78         'ui_test_support',
79       ],
80       # iOS uses a small subset of ui. common_sources are the only files that
81       # are built on iOS.
82       'common_sources' : [
83         'base/layout_unittest.cc',
84         'base/l10n/l10n_util_mac_unittest.mm',
85         'base/l10n/l10n_util_unittest.cc',
86         'base/l10n/l10n_util_win_unittest.cc',
87         'base/l10n/time_format_unittest.cc',
88         'base/models/tree_node_iterator_unittest.cc',
89         'base/resource/data_pack_literal.cc',
90         'base/resource/data_pack_unittest.cc',
91         'base/resource/resource_bundle_unittest.cc',
92         'base/test/run_all_unittests.cc',
93         'gfx/animation/animation_container_unittest.cc',
94         'gfx/animation/animation_unittest.cc',
95         'gfx/animation/multi_animation_unittest.cc',
96         'gfx/animation/slide_animation_unittest.cc',
97         'gfx/codec/png_codec_unittest.cc',
98         'gfx/color_utils_unittest.cc',
99         'gfx/display_unittest.cc',
100         'gfx/font_unittest.cc',
101         'gfx/image/image_family_unittest.cc',
102         'gfx/image/image_skia_unittest.cc',
103         'gfx/image/image_unittest.cc',
104         'gfx/image/image_unittest_util.cc',
105         'gfx/image/image_unittest_util.h',
106         'gfx/image/image_unittest_util_ios.mm',
107         'gfx/image/image_unittest_util_mac.mm',
108         'gfx/range/range_mac_unittest.mm',
109         'gfx/range/range_unittest.cc',
110         'gfx/range/range_win_unittest.cc',
111         'gfx/screen_unittest.cc',
112         'gfx/shadow_value_unittest.cc',
113         'gfx/skbitmap_operations_unittest.cc',
114         'gfx/skrect_conversion_unittest.cc',
115         'gfx/text_elider_unittest.cc',
116         'gfx/text_utils_unittest.cc',
117       ],
118       'all_sources': [
119         '<@(_common_sources)',
120         'base/accelerators/accelerator_manager_unittest.cc',
121         'base/accelerators/menu_label_accelerator_util_linux_unittest.cc',
122         'base/clipboard/clipboard_unittest.cc',
123         'base/clipboard/custom_data_helper_unittest.cc',
124         'base/cocoa/base_view_unittest.mm',
125         'base/cocoa/cocoa_base_utils_unittest.mm',
126         'base/cocoa/controls/blue_label_button_unittest.mm',
127         'base/cocoa/controls/hover_image_menu_button_unittest.mm',
128         'base/cocoa/controls/hyperlink_button_cell_unittest.mm',
129         'base/cocoa/focus_tracker_unittest.mm',
130         'base/cocoa/fullscreen_window_manager_unittest.mm',
131         'base/cocoa/hover_image_button_unittest.mm',
132         'base/cocoa/menu_controller_unittest.mm',
133         'base/cocoa/nsgraphics_context_additions_unittest.mm',
134         'base/cocoa/tracking_area_unittest.mm',
135         'base/dragdrop/os_exchange_data_provider_aurax11_unittest.cc',
136         'base/gtk/gtk_expanded_container_unittest.cc',
137         'base/models/list_model_unittest.cc',
138         'base/models/list_selection_model_unittest.cc',
139         'base/models/tree_node_model_unittest.cc',
140         'base/test/data/resource.h',
141         'base/text/bytes_formatting_unittest.cc',
142         'base/view_prop_unittest.cc',
143         'base/webui/web_ui_util_unittest.cc',
144         'base/x/x11_util_unittest.cc',
145         'gfx/animation/tween_unittest.cc',
146         'gfx/blit_unittest.cc',
147         'gfx/break_list_unittest.cc',
148         'gfx/canvas_unittest.cc',
149         'gfx/canvas_unittest_mac.mm',
150         'gfx/codec/jpeg_codec_unittest.cc',
151         'gfx/color_analysis_unittest.cc',
152         'gfx/font_list_unittest.cc',
153         'gfx/image/image_mac_unittest.mm',
154         'gfx/image/image_util_unittest.cc',
155         'gfx/ozone/dri/hardware_display_controller_unittest.cc',
156         'gfx/ozone/dri/dri_surface_factory_unittest.cc',
157         'gfx/ozone/dri/dri_surface_unittest.cc',
158         'gfx/platform_font_mac_unittest.mm',
159         'gfx/render_text_unittest.cc',
160         'gfx/sequential_id_generator_unittest.cc',
161         'gfx/transform_util_unittest.cc',
162         'gfx/utf16_indexing_unittest.cc',
163       ],
164       'includes': [
165         'display/display_unittests.gypi',
166       ],
167       'include_dirs': [
168         '../',
169       ],
170       'conditions': [
171         ['OS!="ios"', {
172           'sources' : ['<@(_all_sources)'],
173           'includes': [
174             'base/ime/ime_unittests.gypi',
175           ],
176         }, {  # OS=="ios"
177           'sources' : [
178             '<@(_common_sources)',
179           ],
180           # The ResourceBundle unittest expects a locale.pak file to exist in
181           # the bundle for English-US. Copy it in from where it was generated
182           # by ui_resources.gyp:ui_test_pak.
183           'mac_bundle_resources': [
184             '<(PRODUCT_DIR)/ui/en.lproj/locale.pak',
185           ],
186         }],
187         ['OS == "win"', {
188           'sources': [
189             'base/dragdrop/os_exchange_data_win_unittest.cc',
190             'base/win/hwnd_subclass_unittest.cc',
191             'gfx/font_fallback_win_unittest.cc',
192             'gfx/icon_util_unittest.cc',
193             'gfx/icon_util_unittests.rc',
194             'gfx/platform_font_win_unittest.cc',
195           ],
196           'include_dirs': [
197             '../..',
198             '../third_party/wtl/include',
199           ],
200           'msvs_settings': {
201             'VCLinkerTool': {
202               'DelayLoadDLLs': [
203                 'd2d1.dll',
204                 'd3d10_1.dll',
205               ],
206               'AdditionalDependencies': [
207                 'd2d1.lib',
208                 'd3d10_1.lib',
209               ],
210             },
211           },
212           'link_settings': {
213             'libraries': [
214               '-limm32.lib',
215               '-loleacc.lib',
216             ],
217           },
218           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
219           'msvs_disabled_warnings': [ 4267, ],
220         }],
221         ['OS != "mac" and OS != "ios"', {
222           'sources': [
223             'gfx/transform_unittest.cc',
224             'gfx/interpolated_transform_unittest.cc',
225           ],
226         }],
227         ['OS == "android"', {
228           'sources': [
229             'gfx/android/scroller_unittest.cc',
230           ],
231         }],
232         ['OS == "android" and gtest_target_type == "shared_library"', {
233           'dependencies': [
234             '../testing/android/native_test.gyp:native_test_native_code',
235           ],
236         }],
237         ['use_pango == 1', {
238           'dependencies': [
239             '../build/linux/system.gyp:fontconfig',
240             '../build/linux/system.gyp:pangocairo',
241           ],
242           'sources': [
243             'gfx/platform_font_pango_unittest.cc',
244           ],
245           'conditions': [
246             # TODO(dmikurube): Kill linux_use_tcmalloc. http://crbug.com/345554
247             ['(use_allocator!="none" and use_allocator!="see_use_tcmalloc") or (use_allocator=="see_use_tcmalloc" and linux_use_tcmalloc==1)', {
248                'dependencies': [
249                  '../base/allocator/allocator.gyp:allocator',
250                ],
251             }],
252           ],
253         }],
254         ['use_x11==1', {
255           'dependencies': [
256             '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
257           ],
258         }],
259         ['toolkit_uses_gtk == 1', {
260           'sources': [
261             'base/dragdrop/gtk_dnd_util_unittest.cc',
262           ],
263           'dependencies': [
264             '../build/linux/system.gyp:gtk',
265           ],
266         }],
267         ['OS=="android" or OS=="ios"', {
268           'sources!': [
269             'gfx/render_text_unittest.cc',
270           ],
271         }],
272         ['OS!="win" or use_aura==0', {
273           'sources!': [
274             'base/view_prop_unittest.cc',
275           ],
276         }],
277         ['use_x11==1 and use_aura==1',  {
278           'sources': [
279             'base/cursor/cursor_loader_x11_unittest.cc',
280           ],
281         }],
282         ['OS=="mac"',  {
283           'dependencies': [
284             'events/events.gyp:events_test_support',
285             'gfx/gfx.gyp:gfx_test_support',
286             'ui_unittests_bundle',
287           ],
288         }],
289         ['use_aura==1 or toolkit_views==1',  {
290           'sources': [
291             'base/dragdrop/os_exchange_data_unittest.cc',
292           ],
293           'dependencies': [
294             'events/events.gyp:events',
295             'events/events.gyp:events_base',
296             'events/events.gyp:events_test_support',
297           ],
298         }],
299         ['use_aura==1', {
300           'sources!': [
301             'base/dragdrop/os_exchange_data_win_unittest.cc',
302             'gfx/screen_unittest.cc',
303           ],
304         }],
305         ['use_ozone==1', {
306           'dependencies': [
307           '<(DEPTH)/build/linux/system.gyp:dridrm',
308           ],
309         }],
310         ['use_ozone==1 and use_pango==0', {
311           'sources!': [
312             'gfx/text_elider_unittest.cc',
313             'gfx/font_unittest.cc',
314             'gfx/font_list_unittest.cc',
315             'gfx/render_text_unittest.cc',
316             'gfx/canvas_unittest.cc',
317           ],
318         }],
319         ['chromeos==1', {
320           'sources!': [
321             'base/dragdrop/os_exchange_data_provider_aurax11_unittest.cc',
322           ],
323         }],
324       ],
325       'target_conditions': [
326         ['OS == "ios"', {
327           'sources/': [
328             # Pull in specific Mac files for iOS (which have been filtered out
329             # by file name rules).
330             ['include', '^base/l10n/l10n_util_mac_unittest\\.mm$'],
331           ],
332         }],
333       ],
334     },
335   ],
336   'conditions': [
337     # Mac target to build a test Framework bundle to mock out resource loading.
338     ['OS == "mac"', {
339       'targets': [
340         {
341           'target_name': 'ui_unittests_bundle',
342           'type': 'shared_library',
343           'dependencies': [
344             'resources/ui_resources.gyp:ui_test_pak',
345           ],
346           'includes': [ 'ui_unittests_bundle.gypi' ],
347         },
348       ],
349     }],
350     # Special target to wrap a gtest_target_type==shared_library
351     # ui_unittests into an android apk for execution.
352     # See base.gyp for TODO(jrg)s about this strategy.
353     ['OS == "android" and gtest_target_type == "shared_library"', {
354       'targets': [
355         {
356           'target_name': 'ui_unittests_apk',
357           'type': 'none',
358           'dependencies': [
359             'ui_unittests',
360           ],
361           'variables': {
362             'test_suite_name': 'ui_unittests',
363             'input_shlib_path': '<(SHARED_LIB_DIR)/<(SHARED_LIB_PREFIX)ui_unittests<(SHARED_LIB_SUFFIX)',
364           },
365           'includes': [ '../build/apk_test.gypi' ],
366         },
367       ],
368     }],
369   ],