blob: 204456cc094d724af5d949bf92a939cb0dca3dc8 [file] [log] [blame]
[email protected]e2504c82014-05-15 19:39:141# 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.
4
piman5adadcfc2016-07-14 23:52:355import("//testing/libfuzzer/fuzzer_test.gni")
qsrfb5251d12015-01-21 15:57:226import("//testing/test.gni")
dprankedb5527d72015-03-08 04:22:477import("//build/config/ui.gni")
Yuly Novikov09d09f42017-12-14 23:25:178import("//ui/gl/features.gni")
qsrfb5251d12015-01-21 15:57:229
brettw8f2fd172015-03-16 22:14:1810config("gpu_implementation") {
11 defines = [ "GPU_IMPLEMENTATION" ]
12}
13
Antoine Labour83a0aed12018-01-10 04:52:3814config("gpu_gles2_implementation") {
15 defines = [ "GPU_GLES2_IMPLEMENTATION" ]
16}
17
Zhenyao Moaad85e52017-10-17 04:04:4518config("gpu_util_implementation") {
19 defines = [ "GPU_UTIL_IMPLEMENTATION" ]
20}
21
Antoine Labour011cf772018-01-23 00:38:3922config("raster_implementation") {
23 defines = [ "RASTER_IMPLEMENTATION" ]
24}
25
[email protected]d05751a22014-05-29 20:54:2426component("gpu") {
brettw7dab582e2014-09-20 01:44:1127 public_deps = [
brettw542f7532015-04-06 22:35:4528 "//gpu/command_buffer/client:client_sources",
brettw542f7532015-04-06 22:35:4529 "//gpu/command_buffer/common:common_sources",
30 "//gpu/command_buffer/service:service_sources",
31 "//gpu/config:config_sources",
penghuang346a46f92016-03-31 21:37:5232 "//gpu/ipc/client:ipc_client_sources",
markdittmercbf36ce2016-03-02 16:08:2933 "//gpu/ipc/common:ipc_common_sources",
[email protected]d05751a22014-05-29 20:54:2434 ]
35}
36
Antoine Labour83a0aed12018-01-10 04:52:3837component("gles2") {
38 public_deps = [
39 "//gpu/command_buffer/client:gles2_cmd_helper_sources",
40 "//gpu/command_buffer/common:gles2_sources",
Jonathan Backer9267bf1ec2018-03-06 19:56:5041 "//gpu/command_buffer/common:raster_sources",
Antoine Labour83a0aed12018-01-10 04:52:3842 "//gpu/command_buffer/service:gles2_sources",
43 ]
44}
45
Antoine Labour011cf772018-01-23 00:38:3946component("raster") {
47 public_deps = [
48 "//gpu/command_buffer/client:raster_sources",
49 ]
50}
51
Yuly Novikov09d09f42017-12-14 23:25:1752if (!use_static_angle) {
53 shared_library("command_buffer_gles2") {
54 sources = [
55 # TODO(hendrikw): Move egl out of gles2_conform_support.
56 "gles2_conform_support/egl/config.cc",
57 "gles2_conform_support/egl/config.h",
58 "gles2_conform_support/egl/context.cc",
59 "gles2_conform_support/egl/context.h",
60 "gles2_conform_support/egl/display.cc",
61 "gles2_conform_support/egl/display.h",
62 "gles2_conform_support/egl/egl.cc",
63 "gles2_conform_support/egl/surface.cc",
64 "gles2_conform_support/egl/surface.h",
65 "gles2_conform_support/egl/test_support.cc",
66 "gles2_conform_support/egl/test_support.h",
67 "gles2_conform_support/egl/thread_state.cc",
68 "gles2_conform_support/egl/thread_state.h",
69 ]
hendrikw68d2c332015-09-03 23:02:1870
Yuly Novikov09d09f42017-12-14 23:25:1771 deps = [
72 ":gpu",
73 "//base",
Yuly Novikov09d09f42017-12-14 23:25:1774 "//gpu/command_buffer/client:gles2_c_lib",
Antoine Labour83a0aed12018-01-10 04:52:3875 "//gpu/command_buffer/client:gles2_cmd_helper",
Yuly Novikov09d09f42017-12-14 23:25:1776 "//gpu/command_buffer/client:gles2_implementation",
Antoine Labour83a0aed12018-01-10 04:52:3877 "//gpu/command_buffer/service:gles2",
Antoine Labour5f0b2672018-01-05 22:42:5978 "//ui/gl",
79 "//ui/gl/init",
Yuly Novikov09d09f42017-12-14 23:25:1780 ]
hendrikw68d2c332015-09-03 23:02:1881
Yuly Novikov09d09f42017-12-14 23:25:1782 defines = [
83 "COMMAND_BUFFER_GLES_LIB_SUPPORT_ONLY",
84 "EGLAPIENTRY=",
85 ]
86 if (is_android) {
87 configs -= [ "//build/config/android:hide_all_but_jni_onload" ]
88 }
89 if (current_os == "win") {
90 defines += [ "EGLAPI=__declspec(dllexport)" ]
91 } else {
92 defines += [ "EGLAPI=__attribute__((visibility(\"default\")))" ]
93 }
kkinnunen6aceb552016-02-15 08:04:3594 }
95
Yuly Novikov09d09f42017-12-14 23:25:1796 test("command_buffer_gles2_tests") {
97 sources = [
98 "command_buffer/tests/command_buffer_gles2_tests_main.cc",
99 "command_buffer/tests/egl_test.cc",
100 ]
kkinnunen6aceb552016-02-15 08:04:35101
Yuly Novikov09d09f42017-12-14 23:25:17102 deps = [
103 ":command_buffer_gles2",
104 "//base",
105 "//base/test:test_support",
106 "//base/third_party/dynamic_annotations",
107 "//testing/gmock",
108 "//testing/gtest",
109 ]
110
111 defines = [
112 "COMMAND_BUFFER_GLES_LIB_SUPPORT_ONLY",
113 "EGLAPIENTRY=",
114 ]
115 if (current_os == "win") {
116 defines += [ "EGLAPI=__declspec(dllimport)" ]
117 } else {
118 defines += [ "EGLAPI=" ]
119 }
120
121 libs = []
122
123 if (is_android) {
124 libs += [ "android" ]
125 deps += [ "//ui/android:ui_java" ]
126 }
127 if (is_linux && !is_component_build) {
128 configs += [ "//build/config/gcc:rpath_for_built_shared_libraries" ]
129 }
kkinnunen6aceb552016-02-15 08:04:35130 }
Yuly Novikov09d09f42017-12-14 23:25:17131} # if (!use_static_angle)
kkinnunen6aceb552016-02-15 08:04:35132
brettw3871f522016-07-14 22:08:34133static_library("test_support") {
Brett Wilson0c8745a2014-09-08 22:59:49134 testonly = true
[email protected]d05751a22014-05-29 20:54:24135 sources = [
Antoine Labour1bec1072017-06-06 19:37:03136 "command_buffer/client/client_test_helper.cc",
137 "command_buffer/client/client_test_helper.h",
[email protected]d05751a22014-05-29 20:54:24138 "command_buffer/client/gles2_interface_stub.cc",
139 "command_buffer/client/gles2_interface_stub.h",
Jonathan Backer8629c392018-04-04 23:01:03140 "command_buffer/service/copy_texture_chromium_mock.cc",
141 "command_buffer/service/copy_texture_chromium_mock.h",
satoruxc5bd7a32015-02-18 01:54:52142 "command_buffer/service/error_state_mock.cc",
thakisb8590c92017-03-23 18:14:53143 "command_buffer/service/error_state_mock.h",
satoruxc5bd7a32015-02-18 01:54:52144 "command_buffer/service/gles2_cmd_decoder_mock.cc",
thakisb8590c92017-03-23 18:14:53145 "command_buffer/service/gles2_cmd_decoder_mock.h",
Jonathan Backera4568da12018-01-31 16:25:04146 "command_buffer/service/raster_decoder_mock.cc",
147 "command_buffer/service/raster_decoder_mock.h",
Jonathan Backer0cd1c4322018-04-17 16:57:10148 "ipc/raster_in_process_context.cc",
149 "ipc/raster_in_process_context.h",
Sunny Sachanandanid312f222018-03-27 03:36:44150 "ipc/service/gpu_memory_buffer_factory_test_template.h",
[email protected]d05751a22014-05-29 20:54:24151 ]
152
brettw7dab582e2014-09-20 01:44:11153 public_deps = [
Antoine Labour83a0aed12018-01-10 04:52:38154 ":gles2",
[email protected]d05751a22014-05-29 20:54:24155 ":gpu",
jbromancba3d2fe2014-09-16 01:04:24156 "//gpu/command_buffer/client:gles2_interface",
brettw7dab582e2014-09-20 01:44:11157 ]
158 deps = [
Jonathan Backer05d5cec2018-06-07 20:39:41159 "//base/test:test_support",
Jonathan Backer0cd1c4322018-04-17 16:57:10160 "//gpu/command_buffer/client:raster",
Antoine Labourfeab2392017-12-21 20:28:39161 "//gpu/command_buffer/common",
Jonathan Backer0cd1c4322018-04-17 16:57:10162 "//gpu/ipc:gl_in_process_context",
Sunny Sachanandanid312f222018-03-27 03:36:44163 "//gpu/ipc/common",
164 "//gpu/ipc/service",
Jonathan Backer0cd1c4322018-04-17 16:57:10165 "//gpu/skia_bindings:skia_bindings",
[email protected]d05751a22014-05-29 20:54:24166 "//testing/gmock",
167 "//testing/gtest",
Daniel Bratell93172e3c2018-05-30 21:16:09168 "//ui/gfx:test_support",
[email protected]d05751a22014-05-29 20:54:24169 "//ui/gl:gl_unittest_utils",
Sunny Sachanandanid312f222018-03-27 03:36:44170 "//ui/gl:test_support",
[email protected]d05751a22014-05-29 20:54:24171 ]
172}
173
brettw4897a612015-03-02 23:13:15174test("gl_tests") {
175 sources = [
176 "command_buffer/tests/compressed_texture_test.cc",
kkinnunen631033e2015-09-23 06:39:04177 "command_buffer/tests/es3_misc_functions_unittest.cc",
dongseong.hwange727a7e72016-10-25 21:18:40178 "command_buffer/tests/gl_apply_screen_space_antialiasing_CHROMIUM_unittest.cc",
junov0c614142016-07-21 18:56:02179 "command_buffer/tests/gl_bgra_mipmap_unittest.cc",
brettw4897a612015-03-02 23:13:15180 "command_buffer/tests/gl_bind_uniform_location_unittest.cc",
kkinnunena9d27e72015-12-21 17:23:44181 "command_buffer/tests/gl_chromium_framebuffer_mixed_samples_unittest.cc",
brettw4897a612015-03-02 23:13:15182 "command_buffer/tests/gl_chromium_framebuffer_multisample_unittest.cc",
183 "command_buffer/tests/gl_chromium_path_rendering_unittest.cc",
184 "command_buffer/tests/gl_clear_framebuffer_unittest.cc",
christiank83120092015-06-17 11:40:10185 "command_buffer/tests/gl_compressed_copy_texture_CHROMIUM_unittest.cc",
erikchen38cbbce2016-03-16 17:45:44186 "command_buffer/tests/gl_copy_tex_image_2d_workaround_unittest.cc",
brettw4897a612015-03-02 23:13:15187 "command_buffer/tests/gl_copy_texture_CHROMIUM_unittest.cc",
dongseong.hwang9e8922b2015-09-01 11:04:49188 "command_buffer/tests/gl_cube_map_texture_unittest.cc",
brettw4897a612015-03-02 23:13:15189 "command_buffer/tests/gl_depth_texture_unittest.cc",
erikchen13338b62016-06-01 03:58:18190 "command_buffer/tests/gl_deschedule_unittest.cc",
jinsukkim25219612016-01-20 23:24:07191 "command_buffer/tests/gl_dynamic_config_unittest.cc",
kkinnunen8cefb232015-12-04 09:36:31192 "command_buffer/tests/gl_ext_blend_func_extended_unittest.cc",
kkinnunenf26d7382015-12-01 13:34:14193 "command_buffer/tests/gl_ext_multisample_compatibility_unittest.cc",
kkinnunen0c2dee72015-11-09 11:13:58194 "command_buffer/tests/gl_ext_srgb_unittest.cc",
Kai Ninomiyabcbefdab2017-11-03 19:57:27195 "command_buffer/tests/gl_ext_window_rectangles_unittest.cc",
dyen5c38a032015-10-07 18:58:31196 "command_buffer/tests/gl_fence_sync_unittest.cc",
brettw4897a612015-03-02 23:13:15197 "command_buffer/tests/gl_gpu_memory_buffer_unittest.cc",
erikchen2acd56012016-03-22 00:58:26198 "command_buffer/tests/gl_iosurface_readback_workaround_unittest.cc",
brettw4897a612015-03-02 23:13:15199 "command_buffer/tests/gl_lose_context_chromium_unittest.cc",
200 "command_buffer/tests/gl_manager.cc",
201 "command_buffer/tests/gl_manager.h",
zmo444e085e2016-10-12 01:19:32202 "command_buffer/tests/gl_map_buffer_range_unittest.cc",
erikchen7ea46082016-06-28 03:37:08203 "command_buffer/tests/gl_native_gmb_backbuffer_unittest.cc",
geofflang7b76cdf2016-11-18 19:39:31204 "command_buffer/tests/gl_object_bindings_unittest.cc",
Julien Isorcefd6c15f2018-03-15 16:51:17205 "command_buffer/tests/gl_oes_egl_image_unittest.cc",
Geoff Lang177df642018-01-29 22:23:59206 "command_buffer/tests/gl_offscreen_surface_unittest.cc",
Antoine Labour0b77eb12017-07-08 04:00:44207 "command_buffer/tests/gl_oob_attrib_unittest.cc",
brettw4897a612015-03-02 23:13:15208 "command_buffer/tests/gl_pointcoord_unittest.cc",
209 "command_buffer/tests/gl_program_unittest.cc",
210 "command_buffer/tests/gl_query_unittest.cc",
211 "command_buffer/tests/gl_readback_unittest.cc",
kkinnunen5d3785f2016-02-19 16:59:37212 "command_buffer/tests/gl_request_extension_unittest.cc",
Antoine Labourbd8e233b2017-08-24 17:01:31213 "command_buffer/tests/gl_set_aggressively_free_resources_unittest.cc",
brettw4897a612015-03-02 23:13:15214 "command_buffer/tests/gl_shared_resources_unittest.cc",
215 "command_buffer/tests/gl_stream_draw_unittest.cc",
216 "command_buffer/tests/gl_test_utils.cc",
217 "command_buffer/tests/gl_test_utils.h",
218 "command_buffer/tests/gl_tests_main.cc",
219 "command_buffer/tests/gl_texture_mailbox_unittest.cc",
220 "command_buffer/tests/gl_texture_storage_unittest.cc",
221 "command_buffer/tests/gl_unittest.cc",
222 "command_buffer/tests/gl_unittests_android.cc",
Kai Ninomiyabcbefdab2017-11-03 19:57:27223 "command_buffer/tests/gl_virtual_contexts_ext_window_rectangles_unittest.cc",
brettw4897a612015-03-02 23:13:15224 "command_buffer/tests/gl_virtual_contexts_unittest.cc",
225 "command_buffer/tests/occlusion_query_unittest.cc",
erikchen7ea46082016-06-28 03:37:08226 "command_buffer/tests/texture_image_factory.cc",
227 "command_buffer/tests/texture_image_factory.h",
penghuangc9c73f482016-04-26 18:52:17228 "ipc/client/gpu_context_tests.h",
229 "ipc/client/gpu_in_process_context_tests.cc",
Jonathan Backer6307cee92018-04-25 19:53:43230 "ipc/client/raster_in_process_context_tests.cc",
jbauman2a2ad222017-03-02 00:35:13231 "ipc/service/direct_composition_surface_win_unittest.cc",
brettw4897a612015-03-02 23:13:15232 ]
[email protected]d05751a22014-05-29 20:54:24233
brettw4897a612015-03-02 23:13:15234 defines = [ "GL_GLEXT_PROTOTYPES" ]
[email protected]d05751a22014-05-29 20:54:24235
brettw4897a612015-03-02 23:13:15236 configs += [ "//build/config/compiler:no_size_t_to_int_warning" ]
dpranke8ec93a3a2015-02-20 23:36:08237
brettw4897a612015-03-02 23:13:15238 deps = [
Antoine Labour83a0aed12018-01-10 04:52:38239 ":gles2",
brettw4897a612015-03-02 23:13:15240 ":gpu",
241 ":test_support",
242 "//base",
243 "//base/test:test_support",
244 "//base/third_party/dynamic_annotations",
Jonathan Backer2231a002018-05-14 19:55:22245 "//cc/paint",
kylechar8eebde302017-08-22 21:50:39246 "//components/viz/test:test_support",
agrieved7a71c882015-11-20 19:53:28247 "//gpu/command_buffer/client:gles2_c_lib",
248 "//gpu/command_buffer/client:gles2_implementation",
Jonathan Backer6307cee92018-04-25 19:53:43249 "//gpu/command_buffer/client:raster",
agrieved7a71c882015-11-20 19:53:28250 "//gpu/command_buffer/common:gles2_utils",
fsamuel600b99e2016-11-11 07:50:26251 "//gpu/ipc:gl_in_process_context",
Jonathan Backer76dfd502018-05-03 18:34:31252 "//gpu/ipc/host",
Antoine Labour5f0b2672018-01-05 22:42:59253 "//gpu/ipc/service",
brettw4897a612015-03-02 23:13:15254 "//testing/gmock",
255 "//testing/gtest",
256 "//third_party/angle:translator",
257 "//ui/gfx",
258 "//ui/gfx:test_support",
259 "//ui/gfx/geometry",
260 "//ui/gl",
Antoine Labour5f0b2672018-01-05 22:42:59261 "//ui/gl/init",
brettw4897a612015-03-02 23:13:15262 ]
[email protected]d05751a22014-05-29 20:54:24263
brettw4897a612015-03-02 23:13:15264 libs = []
cjhopman09981a92014-10-27 17:11:18265
brettw4897a612015-03-02 23:13:15266 if (is_android) {
brettw4897a612015-03-02 23:13:15267 libs += [ "android" ]
agrieve97176362015-12-01 16:36:19268 deps += [ "//ui/android:ui_java" ]
thakis85138c42016-05-13 23:16:40269 } else if (is_mac) {
270 libs += [ "IOSurface.framework" ]
jbauman78f5d7d2017-03-29 21:47:36271 } else if (is_win) {
272 deps += [
273 "//ui/platform_window",
274 "//ui/platform_window:platform_impls",
275 ]
cjhopman09981a92014-10-27 17:11:18276 }
brettw4897a612015-03-02 23:13:15277}
[email protected]d05751a22014-05-29 20:54:24278
brettw4897a612015-03-02 23:13:15279test("gpu_unittests") {
280 sources = [
281 "command_buffer/client/buffer_tracker_unittest.cc",
ericrkdc5eeaa2017-05-19 02:23:50282 "command_buffer/client/client_discardable_manager_unittest.cc",
brettw4897a612015-03-02 23:13:15283 "command_buffer/client/cmd_buffer_helper_test.cc",
Antoine Labour9e1f40df2017-08-25 17:20:39284 "command_buffer/client/command_buffer_direct_locked.cc",
285 "command_buffer/client/command_buffer_direct_locked.h",
brettw4897a612015-03-02 23:13:15286 "command_buffer/client/fenced_allocator_test.cc",
287 "command_buffer/client/gles2_implementation_unittest.cc",
288 "command_buffer/client/mapped_memory_unittest.cc",
Jonathan Backer05957f22018-02-22 21:24:55289 "command_buffer/client/mock_transfer_buffer.cc",
290 "command_buffer/client/mock_transfer_buffer.h",
brettw4897a612015-03-02 23:13:15291 "command_buffer/client/program_info_manager_unittest.cc",
292 "command_buffer/client/query_tracker_unittest.cc",
Victor Miura3a4ad4f82017-12-13 06:03:45293 "command_buffer/client/raster_implementation_gles_unittest.cc",
Jonathan Backer05957f22018-02-22 21:24:55294 "command_buffer/client/raster_implementation_unittest.cc",
brettw4897a612015-03-02 23:13:15295 "command_buffer/client/ring_buffer_test.cc",
296 "command_buffer/client/transfer_buffer_unittest.cc",
297 "command_buffer/client/vertex_array_object_manager_unittest.cc",
ericrk8c0b7bf62017-03-17 20:07:23298 "command_buffer/common/activity_flags_unittest.cc",
brettw4897a612015-03-02 23:13:15299 "command_buffer/common/bitfield_helpers_test.cc",
hajimehoshi394636a2017-05-31 07:18:42300 "command_buffer/common/buffer_unittest.cc",
brettw4897a612015-03-02 23:13:15301 "command_buffer/common/command_buffer_shared_test.cc",
302 "command_buffer/common/debug_marker_manager_unittest.cc",
ericrk6298c712017-03-30 01:05:42303 "command_buffer/common/discardable_handle_unittest.cc",
brettw4897a612015-03-02 23:13:15304 "command_buffer/common/gles2_cmd_format_test.cc",
305 "command_buffer/common/gles2_cmd_format_test_autogen.h",
306 "command_buffer/common/gles2_cmd_utils_unittest.cc",
307 "command_buffer/common/id_allocator_test.cc",
lukasza2573ce7d2016-02-16 19:17:22308 "command_buffer/common/id_type_unittest.cc",
Jonathan Backer228781f2018-01-24 15:53:30309 "command_buffer/common/raster_cmd_format_test.cc",
310 "command_buffer/common/raster_cmd_format_test_autogen.h",
brettw4897a612015-03-02 23:13:15311 "command_buffer/common/unittest_main.cc",
brettw4897a612015-03-02 23:13:15312 "command_buffer/service/buffer_manager_unittest.cc",
Geoff Lang0eedd6162017-11-07 17:56:15313 "command_buffer/service/client_service_map_unittest.cc",
brettw4897a612015-03-02 23:13:15314 "command_buffer/service/command_buffer_service_unittest.cc",
315 "command_buffer/service/common_decoder_unittest.cc",
316 "command_buffer/service/context_group_unittest.cc",
zmo5ee097e2015-05-14 19:13:52317 "command_buffer/service/context_state_unittest.cc",
brettw4897a612015-03-02 23:13:15318 "command_buffer/service/feature_info_unittest.cc",
319 "command_buffer/service/framebuffer_manager_unittest.cc",
sieversfbaa5dc2015-04-28 00:45:31320 "command_buffer/service/gl_context_mock.cc",
321 "command_buffer/service/gl_context_mock.h",
piman39f67692016-05-12 03:25:14322 "command_buffer/service/gl_context_virtual_unittest.cc",
[email protected]00c8a6c2018-06-05 02:22:41323 "command_buffer/service/gl_stream_texture_image_stub.cc",
324 "command_buffer/service/gl_stream_texture_image_stub.h",
brettw4897a612015-03-02 23:13:15325 "command_buffer/service/gl_surface_mock.cc",
326 "command_buffer/service/gl_surface_mock.h",
327 "command_buffer/service/gles2_cmd_decoder_unittest.cc",
328 "command_buffer/service/gles2_cmd_decoder_unittest.h",
329 "command_buffer/service/gles2_cmd_decoder_unittest_0_autogen.h",
330 "command_buffer/service/gles2_cmd_decoder_unittest_1.cc",
331 "command_buffer/service/gles2_cmd_decoder_unittest_1_autogen.h",
332 "command_buffer/service/gles2_cmd_decoder_unittest_2.cc",
333 "command_buffer/service/gles2_cmd_decoder_unittest_2_autogen.h",
334 "command_buffer/service/gles2_cmd_decoder_unittest_3.cc",
335 "command_buffer/service/gles2_cmd_decoder_unittest_3_autogen.h",
Jonathan Backer7229d0232018-01-25 18:35:04336 "command_buffer/service/gles2_cmd_decoder_unittest_4.cc",
337 "command_buffer/service/gles2_cmd_decoder_unittest_4_autogen.h",
brettw4897a612015-03-02 23:13:15338 "command_buffer/service/gles2_cmd_decoder_unittest_attribs.cc",
339 "command_buffer/service/gles2_cmd_decoder_unittest_base.cc",
340 "command_buffer/service/gles2_cmd_decoder_unittest_base.h",
zmoa06b9882015-03-10 20:50:34341 "command_buffer/service/gles2_cmd_decoder_unittest_buffers.cc",
sieversfbaa5dc2015-04-28 00:45:31342 "command_buffer/service/gles2_cmd_decoder_unittest_context_lost.cc",
brettw4897a612015-03-02 23:13:15343 "command_buffer/service/gles2_cmd_decoder_unittest_context_state.cc",
344 "command_buffer/service/gles2_cmd_decoder_unittest_drawing.cc",
345 "command_buffer/service/gles2_cmd_decoder_unittest_extensions.cc",
346 "command_buffer/service/gles2_cmd_decoder_unittest_framebuffers.cc",
347 "command_buffer/service/gles2_cmd_decoder_unittest_programs.cc",
348 "command_buffer/service/gles2_cmd_decoder_unittest_textures.cc",
brettw4897a612015-03-02 23:13:15349 "command_buffer/service/gpu_service_test.cc",
350 "command_buffer/service/gpu_service_test.h",
351 "command_buffer/service/gpu_tracer_unittest.cc",
352 "command_buffer/service/id_manager_unittest.cc",
zmo6c468ba2016-05-04 20:00:51353 "command_buffer/service/indexed_buffer_binding_host_unittest.cc",
brettw4897a612015-03-02 23:13:15354 "command_buffer/service/mailbox_manager_unittest.cc",
355 "command_buffer/service/memory_program_cache_unittest.cc",
356 "command_buffer/service/mocks.cc",
357 "command_buffer/service/mocks.h",
kkinnunenb959a8462015-07-14 11:08:34358 "command_buffer/service/path_manager_unittest.cc",
brettw4897a612015-03-02 23:13:15359 "command_buffer/service/program_cache_unittest.cc",
360 "command_buffer/service/program_manager_unittest.cc",
361 "command_buffer/service/query_manager_unittest.cc",
Jonathan Backer016bd97e2018-03-14 15:26:39362 "command_buffer/service/raster_decoder_unittest.cc",
Jonathan Backera4568da12018-01-31 16:25:04363 "command_buffer/service/raster_decoder_unittest_1.cc",
364 "command_buffer/service/raster_decoder_unittest_base.cc",
365 "command_buffer/service/raster_decoder_unittest_base.h",
Jonathan Backer4f9ee5fb2018-04-25 14:03:38366 "command_buffer/service/raster_decoder_unittest_context_lost.cc",
brettw4897a612015-03-02 23:13:15367 "command_buffer/service/renderbuffer_manager_unittest.cc",
sunnyps8f9139e2017-05-12 17:53:25368 "command_buffer/service/scheduler_unittest.cc",
ericrkdc5eeaa2017-05-19 02:23:50369 "command_buffer/service/service_discardable_manager_unittest.cc",
Khushal96f72652018-06-01 23:50:06370 "command_buffer/service/service_transfer_cache_unittest.cc",
brettw4897a612015-03-02 23:13:15371 "command_buffer/service/shader_manager_unittest.cc",
372 "command_buffer/service/shader_translator_cache_unittest.cc",
373 "command_buffer/service/shader_translator_unittest.cc",
dyen5c38a032015-10-07 18:58:31374 "command_buffer/service/sync_point_manager_unittest.cc",
brettw4897a612015-03-02 23:13:15375 "command_buffer/service/test_helper.cc",
376 "command_buffer/service/test_helper.h",
377 "command_buffer/service/texture_manager_unittest.cc",
378 "command_buffer/service/transfer_buffer_manager_unittest.cc",
zmo6c468ba2016-05-04 20:00:51379 "command_buffer/service/transform_feedback_manager_unittest.cc",
brettw4897a612015-03-02 23:13:15380 "command_buffer/service/vertex_array_manager_unittest.cc",
381 "command_buffer/service/vertex_attrib_manager_unittest.cc",
382 "config/gpu_blacklist_unittest.cc",
383 "config/gpu_control_list_entry_unittest.cc",
zmo2602bcf2017-04-01 00:12:03384 "config/gpu_control_list_testing_arrays_and_structs_autogen.h",
385 "config/gpu_control_list_testing_autogen.cc",
386 "config/gpu_control_list_testing_autogen.h",
387 "config/gpu_control_list_testing_data.h",
388 "config/gpu_control_list_testing_entry_enums_autogen.h",
389 "config/gpu_control_list_testing_exceptions_autogen.h",
brettw4897a612015-03-02 23:13:15390 "config/gpu_control_list_unittest.cc",
zmo2602bcf2017-04-01 00:12:03391 "config/gpu_control_list_version_unittest.cc",
brettw4897a612015-03-02 23:13:15392 "config/gpu_driver_bug_list_unittest.cc",
393 "config/gpu_info_collector_unittest.cc",
Jonathan Backer16cc8fd2018-05-31 19:59:22394 "config/gpu_preferences_unittest.cc",
brettw4897a612015-03-02 23:13:15395 "config/gpu_test_config_unittest.cc",
396 "config/gpu_test_expectations_parser_unittest.cc",
397 "config/gpu_util_unittest.cc",
Sunny Sachanandanidde88772018-03-23 03:37:10398 "ipc/client/command_buffer_proxy_impl_unittest.cc",
Michael Spang4d2bcd1e2018-03-08 02:26:47399 "ipc/common/gpu_memory_buffer_impl_shared_memory_unittest.cc",
400 "ipc/common/gpu_memory_buffer_impl_test_template.h",
fsamuel3de22242016-06-01 05:37:04401 "ipc/common/struct_traits_unittest.cc",
sadrul9095a6d2016-12-13 14:35:47402 "ipc/host/shader_disk_cache_unittest.cc",
Sunny Sachanandanid312f222018-03-27 03:36:44403 "ipc/service/gpu_channel_manager_unittest.cc",
404 "ipc/service/gpu_channel_test_common.cc",
405 "ipc/service/gpu_channel_test_common.h",
406 "ipc/service/gpu_channel_unittest.cc",
brettw4897a612015-03-02 23:13:15407 ]
penghuangc9c73f482016-04-26 18:52:17408
penghuang346a46f92016-03-31 21:37:52409 if (is_mac) {
Sunny Sachanandanid312f222018-03-27 03:36:44410 sources += [
411 "ipc/common/gpu_memory_buffer_impl_io_surface_unittest.cc",
412 "ipc/service/gpu_memory_buffer_factory_io_surface_unittest.cc",
413 ]
penghuang346a46f92016-03-31 21:37:52414 }
dpranke8ec93a3a2015-02-20 23:36:08415
julien.isorcefdc307c22017-04-13 08:49:01416 if (is_linux) {
Sunny Sachanandanid312f222018-03-27 03:36:44417 sources += [
418 "ipc/common/gpu_memory_buffer_impl_native_pixmap_unittest.cc",
419 "ipc/service/gpu_memory_buffer_factory_native_pixmap_unittest.cc",
420 ]
julien.isorcefdc307c22017-04-13 08:49:01421 }
422
Bill Orrb54509c2017-10-26 21:57:30423 if (is_win) {
Sunny Sachanandanid312f222018-03-27 03:36:44424 sources += [
425 "ipc/common/gpu_memory_buffer_impl_dxgi_unittest.cc",
426 "ipc/service/gpu_memory_buffer_factory_dxgi_unittest.cc",
Sunny Sachanandanid312f222018-03-27 03:36:44427 ]
Bill Orrb54509c2017-10-26 21:57:30428 }
429
Klaus Weidner3824a8882017-11-03 06:24:57430 if (is_android) {
Klaus Weidnera81592e2017-12-09 19:13:18431 sources += [
Michael Spang4d2bcd1e2018-03-08 02:26:47432 "ipc/common/gpu_memory_buffer_impl_android_hardware_buffer_unittest.cc",
Klaus Weidnera81592e2017-12-09 19:13:18433 ]
434 }
435
Fabrice de Gans-Riberif07821b2018-04-04 19:55:53436 if (is_fuchsia || (is_posix && !is_mac)) {
Klaus Weidnera81592e2017-12-09 19:13:18437 sources += [ "command_buffer/service/gpu_fence_manager_unittest.cc" ]
Klaus Weidner3824a8882017-11-03 06:24:57438 }
439
Geoff Lang6a7d4762017-08-24 15:05:50440 # TODO(geofflang): Run passthrough command decoder unittests on more platforms
441 # once initialization of ANGLE's NULL context is supported
442 if ((is_win || (is_linux && !use_ozone)) && !is_asan) {
Corentin Wallez9527cb22017-10-02 20:07:09443 sources += [
444 "command_buffer/service/gles2_cmd_decoder_passthrough_unittest_buffers.cc",
Geoff Lang83b310b2017-10-30 21:51:47445 "command_buffer/service/gles2_cmd_decoder_passthrough_unittest_commands.cc",
Corentin Wallezc19bed12017-10-11 21:10:57446 "command_buffer/service/gles2_cmd_decoder_passthrough_unittest_drawing.cc",
Corentin Wallez9527cb22017-10-02 20:07:09447 "command_buffer/service/gles2_cmd_decoder_passthrough_unittest_framebuffers.cc",
448 ]
Geoff Lang6a7d4762017-08-24 15:05:50449 }
450
Rijubrata Bhaumikda53e7232017-11-03 11:10:11451 configs += [ "//build/config:precompiled_headers" ]
[email protected]d5ba08c2014-06-18 07:01:08452
brettw4897a612015-03-02 23:13:15453 deps = [
Antoine Labour83a0aed12018-01-10 04:52:38454 ":gles2",
brettw4897a612015-03-02 23:13:15455 ":gpu",
456 ":test_support",
457 "//base",
458 "//base/test:test_support",
459 "//base/third_party/dynamic_annotations",
Eric Karl16711ec2017-11-18 00:58:11460 "//cc/paint",
Victor Miura3a4ad4f82017-12-13 06:03:45461 "//components/viz/common:resource_format",
agrieved7a71c882015-11-20 19:53:28462 "//gpu/command_buffer/client:gles2_c_lib",
463 "//gpu/command_buffer/client:gles2_implementation",
Antoine Labour011cf772018-01-23 00:38:39464 "//gpu/command_buffer/client:raster",
Sunny Sachanandanid312f222018-03-27 03:36:44465 "//gpu/command_buffer/common",
agrieved7a71c882015-11-20 19:53:28466 "//gpu/command_buffer/common:gles2_utils",
Sunny Sachanandanid312f222018-03-27 03:36:44467 "//gpu/command_buffer/service",
fsamuel600b99e2016-11-11 07:50:26468 "//gpu/ipc:gl_in_process_context",
Sunny Sachanandanidde88772018-03-23 03:37:10469 "//gpu/ipc/client",
Sunny Sachanandanid312f222018-03-27 03:36:44470 "//gpu/ipc/common",
fsamuel3de22242016-06-01 05:37:04471 "//gpu/ipc/common:test_interfaces",
sadrul9095a6d2016-12-13 14:35:47472 "//gpu/ipc/host",
Sunny Sachanandanid312f222018-03-27 03:36:44473 "//gpu/ipc/service",
Sunny Sachanandanidde88772018-03-23 03:37:10474 "//ipc:test_support",
Ken Rockotec287c82018-03-15 23:05:49475 "//mojo/edk",
fsamuel3de22242016-06-01 05:37:04476 "//mojo/public/cpp/bindings",
sadrul9095a6d2016-12-13 14:35:47477 "//net:test_support",
Sunny Sachanandanid312f222018-03-27 03:36:44478 "//skia",
brettw4897a612015-03-02 23:13:15479 "//testing/gmock",
480 "//testing/gtest",
481 "//third_party/angle:translator",
Sunny Sachanandanid312f222018-03-27 03:36:44482 "//third_party/mesa:mesa_headers",
Khushaldb2d4ad72018-07-03 22:36:27483 "//third_party/mesa:osmesa",
brettw4897a612015-03-02 23:13:15484 "//ui/gfx",
tfarinaf89722432015-05-15 19:30:19485 "//ui/gfx:test_support",
agrieved7a71c882015-11-20 19:53:28486 "//ui/gfx/geometry",
brettw4897a612015-03-02 23:13:15487 "//ui/gl",
tfarinaf89722432015-05-15 19:30:19488 "//ui/gl:gl_unittest_utils",
sadrulba162cd2015-07-20 22:34:26489 "//ui/gl:test_support",
Sunny Sachanandanid312f222018-03-27 03:36:44490 "//url",
brettw4897a612015-03-02 23:13:15491 ]
dongseong.hwangd4a00dd72016-04-08 07:09:00492
penghuangc9c73f482016-04-26 18:52:17493 if (is_android) {
494 deps += [
495 "//ui/android:ui_java",
496 "//ui/gl:gl_jni_headers",
497 ]
498 }
499
dongseong.hwangd4a00dd72016-04-08 07:09:00500 if (use_ozone) {
501 deps += [ "//ui/ozone" ]
dongseong.hwangd4a00dd72016-04-08 07:09:00502 }
brettw4897a612015-03-02 23:13:15503}
[email protected]c7990dbf2014-07-23 22:35:10504
brettw4897a612015-03-02 23:13:15505test("gpu_perftests") {
506 sources = [
507 "perftests/measurements.cc",
wychen589d05e2017-03-31 00:06:36508 "perftests/measurements.h",
brettw4897a612015-03-02 23:13:15509 "perftests/run_all_tests.cc",
510 "perftests/texture_upload_perftest.cc",
511 ]
dcastagna3e60aaa92015-01-29 19:23:45512
brettw4897a612015-03-02 23:13:15513 deps = [
Antoine Labourc6ade252017-10-19 01:01:16514 ":gpu",
brettw4897a612015-03-02 23:13:15515 "//base",
516 "//base/test:test_support",
Antoine Labourc6ade252017-10-19 01:01:16517 "//gpu/command_buffer/client:gles2_implementation",
dcastagnaac138e52015-03-10 00:22:09518 "//testing/gmock",
brettw4897a612015-03-02 23:13:15519 "//testing/gtest",
520 "//testing/perf",
521 "//ui/gfx/geometry",
522 "//ui/gl",
kylechar5b9dec12016-05-16 15:40:57523 "//ui/gl/init",
brettw4897a612015-03-02 23:13:15524 ]
krasinca63e412016-05-12 02:53:25525
Emily Hanleyea23f352018-05-31 19:33:33526 data_deps = [
eyaichd3e023c12016-11-14 22:41:01527 # Needed for isolate script to execute.
Emily Hanleyea23f352018-05-31 19:33:33528 "//testing:run_perf_test",
Khushaldb2d4ad72018-07-03 22:36:27529 "//third_party/mesa:osmesa",
eyaichd3e023c12016-11-14 22:41:01530 ]
531
krasinca63e412016-05-12 02:53:25532 # This target should not require the Chrome executable to run.
533 assert_no_deps = [ "//chrome" ]
brettw4897a612015-03-02 23:13:15534}
piman5adadcfc2016-07-14 23:52:35535
Antoine Labourc6ade252017-10-19 01:01:16536test("command_buffer_perftests") {
537 sources = [
538 "command_buffer/tests/decoder_perftest.cc",
539 "perftests/run_all_tests.cc",
540 ]
541
542 deps = [
543 ":gpu",
544 "//base",
545 "//base/test:test_support",
Antoine Labour83a0aed12018-01-10 04:52:38546 "//gpu/command_buffer/client:gles2_cmd_helper",
Antoine Labourc6ade252017-10-19 01:01:16547 "//gpu/command_buffer/client:gles2_implementation",
Antoine Labour83a0aed12018-01-10 04:52:38548 "//gpu/command_buffer/service:gles2",
Antoine Labourc6ade252017-10-19 01:01:16549 "//testing/gtest",
550 "//testing/perf",
551 "//ui/gfx/geometry",
552 "//ui/gl",
553 "//ui/gl/init",
554 ]
555
Emily Hanleyea23f352018-05-31 19:33:33556 data_deps = [
Antoine Labourc6ade252017-10-19 01:01:16557 # Needed for isolate script to execute.
Emily Hanleyea23f352018-05-31 19:33:33558 "//testing:run_perf_test",
Antoine Labourc6ade252017-10-19 01:01:16559 ]
560
561 # This target should not require the Chrome executable to run.
562 assert_no_deps = [ "//chrome" ]
563}
564
piman5adadcfc2016-07-14 23:52:35565fuzzer_test("gpu_fuzzer") {
566 sources = [
567 "command_buffer/tests/fuzzer_main.cc",
568 ]
569
570 deps = [
Antoine Labour83a0aed12018-01-10 04:52:38571 ":gles2",
piman5adadcfc2016-07-14 23:52:35572 ":gpu",
573 "//base",
574 "//base/third_party/dynamic_annotations",
piman5adadcfc2016-07-14 23:52:35575 "//ui/gfx/geometry",
576 "//ui/gl",
577 "//ui/gl:test_support",
578 ]
579
piman450231b42016-12-09 02:13:03580 libfuzzer_options = [ "max_len=16384" ]
581}
582
cwallez689d5622016-12-13 17:54:19583if (is_linux) {
584 fuzzer_test("gpu_angle_fuzzer") {
585 sources = [
586 "command_buffer/tests/fuzzer_main.cc",
587 ]
piman450231b42016-12-09 02:13:03588
cwallez689d5622016-12-13 17:54:19589 defines = [ "GPU_FUZZER_USE_ANGLE" ]
piman450231b42016-12-09 02:13:03590
cwallez689d5622016-12-13 17:54:19591 deps = [
Antoine Labour83a0aed12018-01-10 04:52:38592 ":gles2",
cwallez689d5622016-12-13 17:54:19593 ":gpu",
594 "//base",
595 "//base/third_party/dynamic_annotations",
cwallez689d5622016-12-13 17:54:19596 "//ui/gfx/geometry",
597 "//ui/gl",
598 "//ui/gl:test_support",
599 ]
piman450231b42016-12-09 02:13:03600
cwallez689d5622016-12-13 17:54:19601 libfuzzer_options = [ "max_len=16384" ]
602 }
geofflang547de952017-03-20 17:05:49603
604 fuzzer_test("gpu_angle_passthrough_fuzzer") {
605 sources = [
606 "command_buffer/tests/fuzzer_main.cc",
607 ]
608
609 defines = [
610 "GPU_FUZZER_USE_ANGLE",
611 "GPU_FUZZER_USE_PASSTHROUGH_CMD_DECODER",
612 ]
613
614 deps = [
Antoine Labour83a0aed12018-01-10 04:52:38615 ":gles2",
geofflang547de952017-03-20 17:05:49616 ":gpu",
617 "//base",
618 "//base/third_party/dynamic_annotations",
geofflang547de952017-03-20 17:05:49619 "//ui/gfx/geometry",
620 "//ui/gl",
621 "//ui/gl:test_support",
622 ]
623
624 libfuzzer_options = [ "max_len=16384" ]
625 }
Antoine Labour8057b672017-06-10 01:18:05626
627 fuzzer_test("gpu_swiftshader_fuzzer") {
628 sources = [
629 "command_buffer/tests/fuzzer_main.cc",
630 ]
631
632 defines = [ "GPU_FUZZER_USE_SWIFTSHADER" ]
633
634 deps = [
Antoine Labour83a0aed12018-01-10 04:52:38635 ":gles2",
Antoine Labour8057b672017-06-10 01:18:05636 ":gpu",
637 "//base",
638 "//base/third_party/dynamic_annotations",
Antoine Labour8057b672017-06-10 01:18:05639 "//ui/gfx/geometry",
640 "//ui/gl",
641 "//ui/gl:test_support",
642 ]
643
644 libfuzzer_options = [ "max_len=16384" ]
645 }
Jonathan Backera210e802018-05-16 13:30:27646
647 fuzzer_test("gpu_raster_fuzzer") {
648 sources = [
649 "command_buffer/tests/fuzzer_main.cc",
650 ]
651
652 defines = [ "GPU_FUZZER_USE_RASTER_DECODER" ]
653
654 deps = [
655 ":gles2",
656 ":gpu",
657 "//base",
658 "//base/third_party/dynamic_annotations",
659 "//ui/gfx/geometry",
660 "//ui/gl",
661 "//ui/gl:test_support",
662 ]
663
664 libfuzzer_options = [ "max_len=16384" ]
665 }
Jonathan Backer1874b892018-07-04 16:19:20666
667 fuzzer_test("gpu_raster_swiftshader_fuzzer") {
668 sources = [
669 "command_buffer/tests/fuzzer_main.cc",
670 ]
671
672 defines = [
673 "GPU_FUZZER_USE_RASTER_DECODER",
674 "GPU_FUZZER_USE_SWIFTSHADER",
675 ]
676
677 deps = [
678 ":gles2",
679 ":gpu",
680 "//base",
681 "//base/third_party/dynamic_annotations",
682 "//ui/gfx/geometry",
683 "//ui/gl",
684 "//ui/gl:test_support",
685 ]
686
687 libfuzzer_options = [ "max_len=16384" ]
688 }
689
690 fuzzer_test("gpu_raster_angle_fuzzer") {
691 sources = [
692 "command_buffer/tests/fuzzer_main.cc",
693 ]
694
695 defines = [
696 "GPU_FUZZER_USE_RASTER_DECODER",
697 "GPU_FUZZER_USE_ANGLE",
698 ]
699
700 deps = [
701 ":gles2",
702 ":gpu",
703 "//base",
704 "//base/third_party/dynamic_annotations",
705 "//ui/gfx/geometry",
706 "//ui/gl",
707 "//ui/gl:test_support",
708 ]
709
710 libfuzzer_options = [ "max_len=16384" ]
711 }
piman5adadcfc2016-07-14 23:52:35712}