| # Copyright 2014 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//build/config/jumbo.gni") |
| import("//build/config/ui.gni") |
| import("//testing/libfuzzer/fuzzer_test.gni") |
| import("//testing/test.gni") |
| import("//ui/gl/features.gni") |
| |
| config("gpu_implementation") { |
| defines = [ "GPU_IMPLEMENTATION" ] |
| configs = [ "//build/config/compiler:wexit_time_destructors" ] |
| } |
| |
| config("gpu_gles2_implementation") { |
| defines = [ "GPU_GLES2_IMPLEMENTATION" ] |
| configs = [ "//build/config/compiler:wexit_time_destructors" ] |
| } |
| |
| config("gpu_util_implementation") { |
| defines = [ "GPU_UTIL_IMPLEMENTATION" ] |
| configs = [ "//build/config/compiler:wexit_time_destructors" ] |
| } |
| |
| config("raster_implementation") { |
| defines = [ "RASTER_IMPLEMENTATION" ] |
| configs = [ "//build/config/compiler:wexit_time_destructors" ] |
| } |
| |
| config("webgpu_implementation") { |
| defines = [ "WEBGPU_IMPLEMENTATION" ] |
| configs = [ "//build/config/compiler:wexit_time_destructors" ] |
| } |
| |
| component("gpu") { |
| public_deps = [ |
| "//gpu/command_buffer/client:client_sources", |
| "//gpu/command_buffer/common:common_sources", |
| "//gpu/command_buffer/service:service_sources", |
| "//gpu/config:config_sources", |
| "//gpu/ipc/client:ipc_client_sources", |
| "//gpu/ipc/common:ipc_common_sources", |
| ] |
| } |
| |
| component("gles2") { |
| public_deps = [ |
| "//gpu/command_buffer/client:gles2_cmd_helper_sources", |
| "//gpu/command_buffer/common:gles2_sources", |
| "//gpu/command_buffer/common:raster_sources", |
| "//gpu/command_buffer/service:gles2_sources", |
| ] |
| } |
| |
| component("raster") { |
| public_deps = [ |
| "//gpu/command_buffer/client:raster_sources", |
| ] |
| } |
| |
| component("webgpu") { |
| public_deps = [ |
| "//gpu/command_buffer/client:webgpu_sources", |
| ] |
| } |
| |
| if (!use_static_angle) { |
| shared_library("command_buffer_gles2") { |
| sources = [ |
| # TODO(hendrikw): Move egl out of gles2_conform_support. |
| "gles2_conform_support/egl/config.cc", |
| "gles2_conform_support/egl/config.h", |
| "gles2_conform_support/egl/context.cc", |
| "gles2_conform_support/egl/context.h", |
| "gles2_conform_support/egl/display.cc", |
| "gles2_conform_support/egl/display.h", |
| "gles2_conform_support/egl/egl.cc", |
| "gles2_conform_support/egl/surface.cc", |
| "gles2_conform_support/egl/surface.h", |
| "gles2_conform_support/egl/test_support.cc", |
| "gles2_conform_support/egl/test_support.h", |
| "gles2_conform_support/egl/thread_state.cc", |
| "gles2_conform_support/egl/thread_state.h", |
| ] |
| |
| deps = [ |
| ":gpu", |
| "//base", |
| "//gpu/command_buffer/client:gles2_c_lib", |
| "//gpu/command_buffer/client:gles2_cmd_helper", |
| "//gpu/command_buffer/client:gles2_implementation", |
| "//gpu/command_buffer/service:gles2", |
| "//ui/gl", |
| "//ui/gl/init", |
| ] |
| |
| defines = [ |
| "COMMAND_BUFFER_GLES_LIB_SUPPORT_ONLY", |
| "EGLAPIENTRY=", |
| ] |
| if (is_android) { |
| configs -= [ "//build/config/android:hide_all_but_jni_onload" ] |
| } |
| if (current_os == "win") { |
| defines += [ "EGLAPI=__declspec(dllexport)" ] |
| } else { |
| defines += [ "EGLAPI=__attribute__((visibility(\"default\")))" ] |
| } |
| } |
| |
| test("command_buffer_gles2_tests") { |
| sources = [ |
| "command_buffer/tests/command_buffer_gles2_tests_main.cc", |
| "command_buffer/tests/egl_test.cc", |
| ] |
| |
| deps = [ |
| ":command_buffer_gles2", |
| "//base", |
| "//base/test:test_support", |
| "//base/third_party/dynamic_annotations", |
| "//testing/gmock", |
| "//testing/gtest", |
| ] |
| |
| defines = [ |
| "COMMAND_BUFFER_GLES_LIB_SUPPORT_ONLY", |
| "EGLAPIENTRY=", |
| ] |
| if (current_os == "win") { |
| defines += [ "EGLAPI=__declspec(dllimport)" ] |
| } else { |
| defines += [ "EGLAPI=" ] |
| } |
| |
| libs = [] |
| |
| if (is_android) { |
| libs += [ "android" ] |
| deps += [ "//ui/android:ui_java" ] |
| } |
| if (is_linux && !is_component_build) { |
| configs += [ "//build/config/gcc:rpath_for_built_shared_libraries" ] |
| } |
| } |
| } # if (!use_static_angle) |
| |
| jumbo_static_library("test_support") { |
| testonly = true |
| sources = [ |
| "command_buffer/client/client_test_helper.cc", |
| "command_buffer/client/client_test_helper.h", |
| "command_buffer/client/gles2_interface_stub.cc", |
| "command_buffer/client/gles2_interface_stub.h", |
| "command_buffer/client/gles2_interface_stub_autogen.h", |
| "command_buffer/client/gles2_interface_stub_impl_autogen.h", |
| "command_buffer/client/webgpu_interface_stub.cc", |
| "command_buffer/client/webgpu_interface_stub.h", |
| "command_buffer/client/webgpu_interface_stub_autogen.h", |
| "command_buffer/client/webgpu_interface_stub_impl_autogen.h", |
| "command_buffer/service/copy_texture_chromium_mock.cc", |
| "command_buffer/service/copy_texture_chromium_mock.h", |
| "command_buffer/service/error_state_mock.cc", |
| "command_buffer/service/error_state_mock.h", |
| "command_buffer/service/gles2_cmd_decoder_mock.cc", |
| "command_buffer/service/gles2_cmd_decoder_mock.h", |
| "ipc/raster_in_process_context.cc", |
| "ipc/raster_in_process_context.h", |
| "ipc/service/gpu_memory_buffer_factory_test_template.h", |
| "ipc/webgpu_in_process_context.cc", |
| "ipc/webgpu_in_process_context.h", |
| ] |
| |
| public_deps = [ |
| ":gles2", |
| ":gpu", |
| ":webgpu", |
| "//gpu/command_buffer/client:gles2_interface", |
| "//gpu/command_buffer/client:webgpu_interface", |
| "//gpu/ipc:gpu_thread_holder", |
| ] |
| deps = [ |
| "//base/test:test_support", |
| "//gpu/command_buffer/client:raster", |
| "//gpu/command_buffer/common", |
| "//gpu/ipc:gl_in_process_context", |
| "//gpu/ipc/common", |
| "//gpu/ipc/service", |
| "//gpu/skia_bindings:skia_bindings", |
| "//testing/gmock", |
| "//testing/gtest", |
| "//ui/gfx:test_support", |
| "//ui/gl:gl_unittest_utils", |
| "//ui/gl:test_support", |
| ] |
| } |
| |
| test("gl_tests") { |
| sources = [ |
| "command_buffer/service/shared_image_backing_factory_gl_texture_unittest.cc", |
| "command_buffer/service/shared_image_factory_unittest.cc", |
| "command_buffer/service/shared_image_manager_unittest.cc", |
| "command_buffer/tests/compressed_texture_test.cc", |
| "command_buffer/tests/es3_misc_functions_unittest.cc", |
| "command_buffer/tests/gl_apply_screen_space_antialiasing_CHROMIUM_unittest.cc", |
| "command_buffer/tests/gl_bgra_mipmap_unittest.cc", |
| "command_buffer/tests/gl_bind_uniform_location_unittest.cc", |
| "command_buffer/tests/gl_chromium_framebuffer_mixed_samples_unittest.cc", |
| "command_buffer/tests/gl_chromium_framebuffer_multisample_unittest.cc", |
| "command_buffer/tests/gl_chromium_path_rendering_unittest.cc", |
| "command_buffer/tests/gl_clear_framebuffer_unittest.cc", |
| "command_buffer/tests/gl_copy_tex_image_2d_workaround_unittest.cc", |
| "command_buffer/tests/gl_copy_texture_CHROMIUM_unittest.cc", |
| "command_buffer/tests/gl_cube_map_texture_unittest.cc", |
| "command_buffer/tests/gl_depth_texture_unittest.cc", |
| "command_buffer/tests/gl_deschedule_unittest.cc", |
| "command_buffer/tests/gl_discardable_textures_unittest.cc", |
| "command_buffer/tests/gl_dynamic_config_unittest.cc", |
| "command_buffer/tests/gl_ext_blend_func_extended_unittest.cc", |
| "command_buffer/tests/gl_ext_multisample_compatibility_unittest.cc", |
| "command_buffer/tests/gl_ext_srgb_unittest.cc", |
| "command_buffer/tests/gl_ext_window_rectangles_unittest.cc", |
| "command_buffer/tests/gl_gpu_memory_buffer_unittest.cc", |
| "command_buffer/tests/gl_iosurface_readback_workaround_unittest.cc", |
| "command_buffer/tests/gl_lose_context_chromium_unittest.cc", |
| "command_buffer/tests/gl_manager.cc", |
| "command_buffer/tests/gl_manager.h", |
| "command_buffer/tests/gl_map_buffer_range_unittest.cc", |
| "command_buffer/tests/gl_native_gmb_backbuffer_unittest.cc", |
| "command_buffer/tests/gl_object_bindings_unittest.cc", |
| "command_buffer/tests/gl_oes_egl_image_unittest.cc", |
| "command_buffer/tests/gl_offscreen_surface_unittest.cc", |
| "command_buffer/tests/gl_oob_attrib_unittest.cc", |
| "command_buffer/tests/gl_pointcoord_unittest.cc", |
| "command_buffer/tests/gl_program_unittest.cc", |
| "command_buffer/tests/gl_query_unittest.cc", |
| "command_buffer/tests/gl_readback_unittest.cc", |
| "command_buffer/tests/gl_request_extension_unittest.cc", |
| "command_buffer/tests/gl_set_aggressively_free_resources_unittest.cc", |
| "command_buffer/tests/gl_shared_resources_unittest.cc", |
| "command_buffer/tests/gl_stream_draw_unittest.cc", |
| "command_buffer/tests/gl_test_utils.cc", |
| "command_buffer/tests/gl_test_utils.h", |
| "command_buffer/tests/gl_tests_main.cc", |
| "command_buffer/tests/gl_texture_mailbox_unittest.cc", |
| "command_buffer/tests/gl_texture_storage_unittest.cc", |
| "command_buffer/tests/gl_unittest.cc", |
| "command_buffer/tests/gl_unittests_android.cc", |
| "command_buffer/tests/gl_virtual_contexts_ext_window_rectangles_unittest.cc", |
| "command_buffer/tests/gl_virtual_contexts_unittest.cc", |
| "command_buffer/tests/gl_webgl_multi_draw_test.cc", |
| "command_buffer/tests/occlusion_query_unittest.cc", |
| "command_buffer/tests/texture_image_factory.cc", |
| "command_buffer/tests/texture_image_factory.h", |
| "ipc/client/gpu_context_tests.h", |
| "ipc/client/gpu_in_process_context_tests.cc", |
| "ipc/client/raster_in_process_context_tests.cc", |
| "ipc/service/direct_composition_surface_win_unittest.cc", |
| ] |
| |
| if (use_dawn) { |
| sources += [ |
| "command_buffer/tests/webgpu_fence_unittest.cc", |
| "command_buffer/tests/webgpu_mailbox_unittest.cc", |
| "command_buffer/tests/webgpu_test.cc", |
| "command_buffer/tests/webgpu_test.h", |
| ] |
| } |
| |
| defines = [ "GL_GLEXT_PROTOTYPES" ] |
| |
| configs += [ "//build/config/compiler:no_size_t_to_int_warning" ] |
| |
| deps = [ |
| ":gles2", |
| ":gpu", |
| ":test_support", |
| "//base", |
| "//base/test:test_support", |
| "//base/third_party/dynamic_annotations", |
| "//cc/paint", |
| "//components/viz/test:test_support", |
| "//gpu/command_buffer/client:gles2_c_lib", |
| "//gpu/command_buffer/client:gles2_implementation", |
| "//gpu/command_buffer/client:raster", |
| "//gpu/command_buffer/client:webgpu", |
| "//gpu/command_buffer/common:gles2_utils", |
| "//gpu/ipc:gl_in_process_context", |
| "//gpu/ipc/host", |
| "//gpu/ipc/service", |
| "//testing/gmock", |
| "//testing/gtest", |
| "//third_party/angle:translator", |
| "//third_party/libyuv", |
| "//ui/gfx", |
| "//ui/gfx:test_support", |
| "//ui/gfx/geometry", |
| "//ui/gl", |
| "//ui/gl:test_support", |
| "//ui/gl/init", |
| ] |
| |
| if (use_dawn) { |
| deps += [ "//third_party/dawn/src/dawn:libdawn" ] |
| } |
| |
| libs = [] |
| |
| if (is_android) { |
| libs += [ "android" ] |
| deps += [ "//ui/android:ui_java" ] |
| sources += [ "command_buffer/service/shared_image_backing_factory_ahardwarebuffer_unittest.cc" ] |
| } else if (is_mac) { |
| libs += [ "IOSurface.framework" ] |
| sources += [ "command_buffer/service/shared_image_backing_factory_iosurface_unittest.cc" ] |
| } else if (is_win) { |
| deps += [ |
| "//ui/platform_window", |
| "//ui/platform_window:platform_impls", |
| ] |
| } |
| |
| if (use_dawn) { |
| deps += [ |
| "//third_party/dawn:libdawn_native", |
| "//third_party/dawn/src/dawn:libdawn", |
| ] |
| } |
| } |
| |
| test("gpu_unittests") { |
| sources = [ |
| "command_buffer/client/buffer_tracker_unittest.cc", |
| "command_buffer/client/client_discardable_manager_unittest.cc", |
| "command_buffer/client/cmd_buffer_helper_test.cc", |
| "command_buffer/client/command_buffer_direct_locked.cc", |
| "command_buffer/client/command_buffer_direct_locked.h", |
| "command_buffer/client/fenced_allocator_test.cc", |
| "command_buffer/client/gles2_implementation_unittest.cc", |
| "command_buffer/client/gles2_implementation_unittest_autogen.h", |
| "command_buffer/client/mapped_memory_unittest.cc", |
| "command_buffer/client/mock_transfer_buffer.cc", |
| "command_buffer/client/mock_transfer_buffer.h", |
| "command_buffer/client/program_info_manager_unittest.cc", |
| "command_buffer/client/query_tracker_unittest.cc", |
| "command_buffer/client/raster_implementation_gles_unittest.cc", |
| "command_buffer/client/raster_implementation_unittest.cc", |
| "command_buffer/client/raster_implementation_unittest_autogen.h", |
| "command_buffer/client/ring_buffer_test.cc", |
| "command_buffer/client/transfer_buffer_cmd_copy_helpers_unittest.cc", |
| "command_buffer/client/transfer_buffer_unittest.cc", |
| "command_buffer/client/vertex_array_object_manager_unittest.cc", |
| "command_buffer/client/webgpu_implementation_unittest.cc", |
| "command_buffer/client/webgpu_implementation_unittest_autogen.h", |
| "command_buffer/common/activity_flags_unittest.cc", |
| "command_buffer/common/bitfield_helpers_test.cc", |
| "command_buffer/common/buffer_unittest.cc", |
| "command_buffer/common/command_buffer_shared_test.cc", |
| "command_buffer/common/debug_marker_manager_unittest.cc", |
| "command_buffer/common/discardable_handle_unittest.cc", |
| "command_buffer/common/gles2_cmd_format_test.cc", |
| "command_buffer/common/gles2_cmd_format_test_autogen.h", |
| "command_buffer/common/gles2_cmd_utils_unittest.cc", |
| "command_buffer/common/id_allocator_test.cc", |
| "command_buffer/common/id_type_unittest.cc", |
| "command_buffer/common/raster_cmd_format_test.cc", |
| "command_buffer/common/raster_cmd_format_test_autogen.h", |
| "command_buffer/common/unittest_main.cc", |
| "command_buffer/common/webgpu_cmd_format_test.cc", |
| "command_buffer/common/webgpu_cmd_format_test_autogen.h", |
| "command_buffer/service/buffer_manager_unittest.cc", |
| "command_buffer/service/client_service_map_unittest.cc", |
| "command_buffer/service/command_buffer_service_unittest.cc", |
| "command_buffer/service/common_decoder_unittest.cc", |
| "command_buffer/service/context_group_unittest.cc", |
| "command_buffer/service/context_state_unittest.cc", |
| "command_buffer/service/feature_info_unittest.cc", |
| "command_buffer/service/framebuffer_manager_unittest.cc", |
| "command_buffer/service/gl_context_mock.cc", |
| "command_buffer/service/gl_context_mock.h", |
| "command_buffer/service/gl_context_virtual_unittest.cc", |
| "command_buffer/service/gl_stream_texture_image_stub.cc", |
| "command_buffer/service/gl_stream_texture_image_stub.h", |
| "command_buffer/service/gl_surface_mock.cc", |
| "command_buffer/service/gl_surface_mock.h", |
| "command_buffer/service/gles2_cmd_decoder_unittest.cc", |
| "command_buffer/service/gles2_cmd_decoder_unittest.h", |
| "command_buffer/service/gles2_cmd_decoder_unittest_0_autogen.h", |
| "command_buffer/service/gles2_cmd_decoder_unittest_1.cc", |
| "command_buffer/service/gles2_cmd_decoder_unittest_1_autogen.h", |
| "command_buffer/service/gles2_cmd_decoder_unittest_2.cc", |
| "command_buffer/service/gles2_cmd_decoder_unittest_2_autogen.h", |
| "command_buffer/service/gles2_cmd_decoder_unittest_3.cc", |
| "command_buffer/service/gles2_cmd_decoder_unittest_3_autogen.h", |
| "command_buffer/service/gles2_cmd_decoder_unittest_4.cc", |
| "command_buffer/service/gles2_cmd_decoder_unittest_4_autogen.h", |
| "command_buffer/service/gles2_cmd_decoder_unittest_attribs.cc", |
| "command_buffer/service/gles2_cmd_decoder_unittest_base.cc", |
| "command_buffer/service/gles2_cmd_decoder_unittest_base.h", |
| "command_buffer/service/gles2_cmd_decoder_unittest_buffers.cc", |
| "command_buffer/service/gles2_cmd_decoder_unittest_context_lost.cc", |
| "command_buffer/service/gles2_cmd_decoder_unittest_context_state.cc", |
| "command_buffer/service/gles2_cmd_decoder_unittest_drawing.cc", |
| "command_buffer/service/gles2_cmd_decoder_unittest_extensions.cc", |
| "command_buffer/service/gles2_cmd_decoder_unittest_framebuffers.cc", |
| "command_buffer/service/gles2_cmd_decoder_unittest_programs.cc", |
| "command_buffer/service/gles2_cmd_decoder_unittest_textures.cc", |
| "command_buffer/service/gpu_service_test.cc", |
| "command_buffer/service/gpu_service_test.h", |
| "command_buffer/service/gpu_tracer_unittest.cc", |
| "command_buffer/service/gr_cache_controller_unittest.cc", |
| "command_buffer/service/gr_shader_cache_unittest.cc", |
| "command_buffer/service/id_manager_unittest.cc", |
| "command_buffer/service/indexed_buffer_binding_host_unittest.cc", |
| "command_buffer/service/mailbox_manager_unittest.cc", |
| "command_buffer/service/memory_program_cache_unittest.cc", |
| "command_buffer/service/mocks.cc", |
| "command_buffer/service/mocks.h", |
| "command_buffer/service/multi_draw_manager_unittest.cc", |
| "command_buffer/service/passthrough_program_cache_unittest.cc", |
| "command_buffer/service/path_manager_unittest.cc", |
| "command_buffer/service/program_cache_unittest.cc", |
| "command_buffer/service/program_manager_unittest.cc", |
| "command_buffer/service/query_manager_unittest.cc", |
| "command_buffer/service/raster_decoder_unittest.cc", |
| "command_buffer/service/raster_decoder_unittest_1.cc", |
| "command_buffer/service/raster_decoder_unittest_base.cc", |
| "command_buffer/service/raster_decoder_unittest_base.h", |
| "command_buffer/service/raster_decoder_unittest_context_lost.cc", |
| "command_buffer/service/renderbuffer_manager_unittest.cc", |
| "command_buffer/service/scheduler_unittest.cc", |
| "command_buffer/service/service_discardable_manager_unittest.cc", |
| "command_buffer/service/service_transfer_cache_unittest.cc", |
| "command_buffer/service/shader_manager_unittest.cc", |
| "command_buffer/service/shader_translator_cache_unittest.cc", |
| "command_buffer/service/shader_translator_unittest.cc", |
| "command_buffer/service/sync_point_manager_unittest.cc", |
| "command_buffer/service/test_helper.cc", |
| "command_buffer/service/test_helper.h", |
| "command_buffer/service/texture_manager_unittest.cc", |
| "command_buffer/service/transfer_buffer_manager_unittest.cc", |
| "command_buffer/service/transform_feedback_manager_unittest.cc", |
| "command_buffer/service/vertex_array_manager_unittest.cc", |
| "command_buffer/service/vertex_attrib_manager_unittest.cc", |
| "config/gpu_blacklist_unittest.cc", |
| "config/gpu_control_list_entry_unittest.cc", |
| "config/gpu_control_list_testing_arrays_and_structs_autogen.h", |
| "config/gpu_control_list_testing_autogen.cc", |
| "config/gpu_control_list_testing_autogen.h", |
| "config/gpu_control_list_testing_data.h", |
| "config/gpu_control_list_testing_entry_enums_autogen.h", |
| "config/gpu_control_list_testing_exceptions_autogen.h", |
| "config/gpu_control_list_unittest.cc", |
| "config/gpu_control_list_version_unittest.cc", |
| "config/gpu_driver_bug_list_unittest.cc", |
| "config/gpu_info_collector_unittest.cc", |
| "config/gpu_preferences_unittest.cc", |
| "config/gpu_test_config_unittest.cc", |
| "config/gpu_test_expectations_parser_unittest.cc", |
| "config/gpu_util_unittest.cc", |
| "ipc/client/command_buffer_proxy_impl_unittest.cc", |
| "ipc/common/gpu_memory_buffer_impl_shared_memory_unittest.cc", |
| "ipc/common/gpu_memory_buffer_impl_test_template.h", |
| "ipc/common/struct_traits_unittest.cc", |
| "ipc/host/shader_disk_cache_unittest.cc", |
| "ipc/service/gpu_channel_manager_unittest.cc", |
| "ipc/service/gpu_channel_test_common.cc", |
| "ipc/service/gpu_channel_test_common.h", |
| "ipc/service/gpu_channel_unittest.cc", |
| "ipc/service/image_decode_accelerator_stub_unittest.cc", |
| ] |
| |
| if (use_dawn) { |
| sources += [ "command_buffer/service/webgpu_decoder_unittest.cc" ] |
| } |
| |
| if (is_mac) { |
| sources += [ |
| "ipc/common/gpu_memory_buffer_impl_io_surface_unittest.cc", |
| "ipc/service/gpu_memory_buffer_factory_io_surface_unittest.cc", |
| ] |
| } |
| |
| if (is_linux || use_ozone) { |
| sources += [ |
| "ipc/common/gpu_memory_buffer_impl_native_pixmap_unittest.cc", |
| "ipc/service/gpu_memory_buffer_factory_native_pixmap_unittest.cc", |
| ] |
| } |
| |
| if (is_win) { |
| sources += [ |
| "ipc/common/gpu_memory_buffer_impl_dxgi_unittest.cc", |
| "ipc/service/gpu_memory_buffer_factory_dxgi_unittest.cc", |
| ] |
| } |
| |
| if (is_android) { |
| sources += [ |
| "ipc/common/gpu_memory_buffer_impl_android_hardware_buffer_unittest.cc", |
| ] |
| } |
| |
| if (is_linux || is_android || is_chromeos) { |
| sources += [ "command_buffer/service/gpu_fence_manager_unittest.cc" ] |
| } |
| |
| # TODO(geofflang): Run passthrough command decoder unittests on more platforms |
| # once initialization of ANGLE's NULL context is supported |
| if ((is_win || (is_linux && !use_ozone)) && !is_asan) { |
| sources += [ |
| "command_buffer/service/gles2_cmd_decoder_passthrough_unittest_buffers.cc", |
| "command_buffer/service/gles2_cmd_decoder_passthrough_unittest_commands.cc", |
| "command_buffer/service/gles2_cmd_decoder_passthrough_unittest_discardable_textures.cc", |
| "command_buffer/service/gles2_cmd_decoder_passthrough_unittest_drawing.cc", |
| "command_buffer/service/gles2_cmd_decoder_passthrough_unittest_framebuffers.cc", |
| "command_buffer/service/gles2_cmd_decoder_passthrough_unittest_textures.cc", |
| ] |
| } |
| |
| configs += [ "//build/config:precompiled_headers" ] |
| |
| deps = [ |
| ":gles2", |
| ":gpu", |
| ":test_support", |
| "//base", |
| "//base/test:test_support", |
| "//base/third_party/dynamic_annotations", |
| "//cc/paint", |
| "//components/viz/common:resource_format", |
| "//gpu/command_buffer/client:gles2_c_lib", |
| "//gpu/command_buffer/client:gles2_implementation", |
| "//gpu/command_buffer/client:raster", |
| "//gpu/command_buffer/client:webgpu", |
| "//gpu/command_buffer/common", |
| "//gpu/command_buffer/common:gles2_utils", |
| "//gpu/command_buffer/service", |
| "//gpu/config", |
| "//gpu/ipc:gl_in_process_context", |
| "//gpu/ipc/client", |
| "//gpu/ipc/common", |
| "//gpu/ipc/common:test_interfaces", |
| "//gpu/ipc/host", |
| "//gpu/ipc/service", |
| "//ipc:test_support", |
| "//mojo/core/embedder", |
| "//mojo/public/cpp/bindings", |
| "//mojo/public/cpp/test_support:test_utils", |
| "//net:test_support", |
| "//skia", |
| "//testing/gmock", |
| "//testing/gtest", |
| "//third_party/angle:translator", |
| "//third_party/mesa_headers", |
| "//ui/gfx", |
| "//ui/gfx:test_support", |
| "//ui/gfx/geometry", |
| "//ui/gl", |
| "//ui/gl:gl_unittest_utils", |
| "//ui/gl:test_support", |
| "//url", |
| ] |
| |
| if (is_android) { |
| deps += [ |
| "//ui/android:ui_java", |
| "//ui/gl:gl_jni_headers", |
| ] |
| } |
| |
| if (use_ozone) { |
| deps += [ "//ui/ozone" ] |
| } |
| } |
| |
| test("gpu_perftests") { |
| sources = [ |
| "perftests/measurements.cc", |
| "perftests/measurements.h", |
| "perftests/run_all_tests.cc", |
| "perftests/texture_upload_perftest.cc", |
| ] |
| |
| deps = [ |
| ":gpu", |
| "//base", |
| "//base/test:test_support", |
| "//gpu/command_buffer/client:gles2_implementation", |
| "//testing/gmock", |
| "//testing/gtest", |
| "//testing/perf", |
| "//ui/gfx/geometry", |
| "//ui/gl", |
| "//ui/gl/init", |
| ] |
| |
| if (use_ozone) { |
| deps += [ "//ui/ozone" ] |
| } |
| |
| data_deps = [ |
| # Needed for isolate script to execute. |
| "//testing:run_perf_test", |
| "//third_party/mesa_headers", |
| ] |
| |
| # This target should not require the Chrome executable to run. |
| assert_no_deps = [ "//chrome" ] |
| } |
| |
| test("command_buffer_perftests") { |
| sources = [ |
| "command_buffer/tests/decoder_perftest.cc", |
| "perftests/run_all_tests.cc", |
| ] |
| |
| deps = [ |
| ":gpu", |
| "//base", |
| "//base/test:test_support", |
| "//gpu/command_buffer/client:gles2_cmd_helper", |
| "//gpu/command_buffer/client:gles2_implementation", |
| "//gpu/command_buffer/service:gles2", |
| "//testing/gtest", |
| "//testing/perf", |
| "//ui/gfx/geometry", |
| "//ui/gl", |
| "//ui/gl/init", |
| ] |
| |
| if (use_ozone) { |
| deps += [ "//ui/ozone" ] |
| } |
| |
| data_deps = [ |
| # Needed for isolate script to execute. |
| "//testing:run_perf_test", |
| ] |
| |
| # This target should not require the Chrome executable to run. |
| assert_no_deps = [ "//chrome" ] |
| } |
| |
| fuzzer_test("gpu_fuzzer") { |
| sources = [ |
| "command_buffer/tests/fuzzer_main.cc", |
| ] |
| |
| deps = [ |
| ":gles2", |
| ":gpu", |
| "//base", |
| "//base:i18n", |
| "//base/third_party/dynamic_annotations", |
| "//ui/gfx/geometry", |
| "//ui/gl", |
| "//ui/gl:test_support", |
| ] |
| |
| libfuzzer_options = [ "max_len=16384" ] |
| } |
| |
| if (is_linux) { |
| fuzzer_test("gpu_angle_fuzzer") { |
| sources = [ |
| "command_buffer/tests/fuzzer_main.cc", |
| ] |
| |
| defines = [ "GPU_FUZZER_USE_ANGLE" ] |
| |
| deps = [ |
| ":gles2", |
| ":gpu", |
| "//base", |
| "//base/third_party/dynamic_annotations", |
| "//ui/gfx/geometry", |
| "//ui/gl", |
| "//ui/gl:test_support", |
| ] |
| |
| libfuzzer_options = [ "max_len=16384" ] |
| } |
| |
| fuzzer_test("gpu_angle_passthrough_fuzzer") { |
| sources = [ |
| "command_buffer/tests/fuzzer_main.cc", |
| ] |
| |
| defines = [ |
| "GPU_FUZZER_USE_ANGLE", |
| "GPU_FUZZER_USE_PASSTHROUGH_CMD_DECODER", |
| ] |
| |
| deps = [ |
| ":gles2", |
| ":gpu", |
| "//base", |
| "//base/third_party/dynamic_annotations", |
| "//ui/gfx/geometry", |
| "//ui/gl", |
| "//ui/gl:test_support", |
| ] |
| |
| libfuzzer_options = [ "max_len=16384" ] |
| } |
| |
| fuzzer_test("gpu_swiftshader_fuzzer") { |
| sources = [ |
| "command_buffer/tests/fuzzer_main.cc", |
| ] |
| |
| defines = [ "GPU_FUZZER_USE_SWIFTSHADER" ] |
| |
| deps = [ |
| ":gles2", |
| ":gpu", |
| "//base", |
| "//base/third_party/dynamic_annotations", |
| "//ui/gfx/geometry", |
| "//ui/gl", |
| "//ui/gl:test_support", |
| ] |
| |
| libfuzzer_options = [ "max_len=16384" ] |
| } |
| |
| fuzzer_test("gpu_raster_fuzzer") { |
| sources = [ |
| "command_buffer/tests/fuzzer_main.cc", |
| ] |
| |
| defines = [ "GPU_FUZZER_USE_RASTER_DECODER" ] |
| |
| deps = [ |
| ":gles2", |
| ":gpu", |
| "//base", |
| "//base/third_party/dynamic_annotations", |
| "//ui/gfx/geometry", |
| "//ui/gl", |
| "//ui/gl:test_support", |
| ] |
| |
| libfuzzer_options = [ "max_len=16384" ] |
| } |
| |
| fuzzer_test("gpu_raster_passthrough_fuzzer") { |
| sources = [ |
| "command_buffer/tests/fuzzer_main.cc", |
| ] |
| |
| defines = [ |
| "GPU_FUZZER_USE_ANGLE", |
| "GPU_FUZZER_USE_RASTER_DECODER", |
| "GPU_FUZZER_USE_PASSTHROUGH_CMD_DECODER", |
| ] |
| |
| deps = [ |
| ":gles2", |
| ":gpu", |
| "//base", |
| "//base/third_party/dynamic_annotations", |
| "//ui/gfx/geometry", |
| "//ui/gl", |
| "//ui/gl:test_support", |
| ] |
| |
| libfuzzer_options = [ "max_len=16384" ] |
| } |
| |
| fuzzer_test("gpu_raster_swiftshader_fuzzer") { |
| sources = [ |
| "command_buffer/tests/fuzzer_main.cc", |
| ] |
| |
| defines = [ |
| "GPU_FUZZER_USE_RASTER_DECODER", |
| "GPU_FUZZER_USE_SWIFTSHADER", |
| ] |
| |
| deps = [ |
| ":gles2", |
| ":gpu", |
| "//base", |
| "//base/third_party/dynamic_annotations", |
| "//ui/gfx/geometry", |
| "//ui/gl", |
| "//ui/gl:test_support", |
| ] |
| |
| libfuzzer_options = [ "max_len=16384" ] |
| } |
| |
| fuzzer_test("gpu_raster_angle_fuzzer") { |
| sources = [ |
| "command_buffer/tests/fuzzer_main.cc", |
| ] |
| |
| defines = [ |
| "GPU_FUZZER_USE_RASTER_DECODER", |
| "GPU_FUZZER_USE_ANGLE", |
| ] |
| |
| deps = [ |
| ":gles2", |
| ":gpu", |
| "//base", |
| "//base/third_party/dynamic_annotations", |
| "//ui/gfx/geometry", |
| "//ui/gl", |
| "//ui/gl:test_support", |
| ] |
| |
| libfuzzer_options = [ "max_len=16384" ] |
| } |
| } |