mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-11-24 14:26:09 +03:00
292 lines
6.8 KiB
Plaintext
292 lines
6.8 KiB
Plaintext
# Copyright (c) 2013 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.
|
|
|
|
# The files here go into the "gpu" component in a component build (with
|
|
# "command_buffer_client" and "gles2_cmd_helper" just forwarding) and goes into
|
|
# separate static libraries in non-component build.
|
|
group("client") {
|
|
if (is_component_build) {
|
|
public_deps = [
|
|
"//gpu",
|
|
]
|
|
} else {
|
|
public_deps = [
|
|
":client_sources",
|
|
]
|
|
}
|
|
}
|
|
|
|
group("gles2_cmd_helper") {
|
|
if (is_component_build) {
|
|
public_deps = [
|
|
"//gpu:gles2",
|
|
]
|
|
} else {
|
|
public_deps = [
|
|
":gles2_cmd_helper_sources",
|
|
]
|
|
}
|
|
}
|
|
|
|
group("raster") {
|
|
if (is_component_build) {
|
|
public_deps = [
|
|
"//gpu:raster",
|
|
]
|
|
} else {
|
|
public_deps = [
|
|
":raster_sources",
|
|
]
|
|
}
|
|
}
|
|
|
|
source_set("client_sources") {
|
|
# External code should depend on this via //gpu/client above rather than
|
|
# depending on this directly or the component build will break.
|
|
visibility = [ "//gpu/*" ]
|
|
|
|
sources = [
|
|
"client_discardable_manager.cc",
|
|
"client_discardable_manager.h",
|
|
"client_discardable_texture_manager.cc",
|
|
"client_discardable_texture_manager.h",
|
|
"cmd_buffer_helper.cc",
|
|
"cmd_buffer_helper.h",
|
|
"fenced_allocator.cc",
|
|
"fenced_allocator.h",
|
|
"gpu_control.h",
|
|
"gpu_memory_buffer_manager.cc",
|
|
"gpu_memory_buffer_manager.h",
|
|
"mapped_memory.cc",
|
|
"mapped_memory.h",
|
|
"ring_buffer.cc",
|
|
"ring_buffer.h",
|
|
"transfer_buffer.cc",
|
|
"transfer_buffer.h",
|
|
]
|
|
|
|
configs += [ "//gpu:gpu_implementation" ]
|
|
|
|
all_dependent_configs = [ "//third_party/khronos:khronos_headers" ]
|
|
|
|
public_deps = [
|
|
"//base",
|
|
]
|
|
deps = [
|
|
"//gpu/command_buffer/common:common_sources",
|
|
"//gpu/ipc/common:surface_handle_type",
|
|
"//ui/gfx:memory_buffer",
|
|
"//ui/gfx/geometry",
|
|
]
|
|
}
|
|
|
|
source_set("gles2_cmd_helper_sources") {
|
|
visibility = [ "//gpu/*" ]
|
|
sources = [
|
|
"gles2_cmd_helper.cc",
|
|
"gles2_cmd_helper.h",
|
|
"gles2_cmd_helper_autogen.h",
|
|
]
|
|
|
|
configs += [ "//gpu:gpu_gles2_implementation" ]
|
|
|
|
deps = [
|
|
":client",
|
|
"//base",
|
|
"//gpu/command_buffer/common",
|
|
"//gpu/command_buffer/common:gles2_sources",
|
|
]
|
|
}
|
|
|
|
gles2_c_lib_source_files = [
|
|
"gles2_c_lib.cc",
|
|
"gles2_c_lib_autogen.h",
|
|
"gles2_c_lib_export.h",
|
|
"gles2_lib.cc",
|
|
"gles2_lib.h",
|
|
]
|
|
|
|
gles2_implementation_source_files = [
|
|
"buffer_tracker.cc",
|
|
"buffer_tracker.h",
|
|
"client_context_state.cc",
|
|
"client_context_state.h",
|
|
"client_context_state_autogen.h",
|
|
"client_context_state_impl_autogen.h",
|
|
"client_transfer_cache.cc",
|
|
"client_transfer_cache.h",
|
|
"gles2_impl_export.h",
|
|
"gles2_implementation.cc",
|
|
"gles2_implementation.h",
|
|
"gles2_implementation_autogen.h",
|
|
"gles2_implementation_impl_autogen.h",
|
|
"gles2_trace_implementation.cc",
|
|
"gles2_trace_implementation.h",
|
|
"gles2_trace_implementation_autogen.h",
|
|
"gles2_trace_implementation_impl_autogen.h",
|
|
"gpu_switches.cc",
|
|
"gpu_switches.h",
|
|
"implementation_base.cc",
|
|
"implementation_base.h",
|
|
"logging.cc",
|
|
"logging.h",
|
|
"program_info_manager.cc",
|
|
"program_info_manager.h",
|
|
"query_tracker.cc",
|
|
"query_tracker.h",
|
|
"share_group.cc",
|
|
"share_group.h",
|
|
"vertex_array_object_manager.cc",
|
|
"vertex_array_object_manager.h",
|
|
]
|
|
|
|
# Provides GLES2 interface, but does not cause any implementation to be linked
|
|
# in. Useful when a target uses the interface, but permits its users to choose
|
|
# an implementation.
|
|
source_set("gles2_interface") {
|
|
sources = [
|
|
"gles2_interface.h",
|
|
]
|
|
public_configs = [ "//third_party/khronos:khronos_headers" ]
|
|
deps = [
|
|
"//base",
|
|
]
|
|
}
|
|
|
|
source_set("raster_interface") {
|
|
sources = [
|
|
"raster_interface.h",
|
|
]
|
|
public_configs = [ "//third_party/khronos:khronos_headers" ]
|
|
deps = [
|
|
"//base",
|
|
"//components/viz/common:resource_format",
|
|
"//ui/gfx:buffer_types",
|
|
]
|
|
}
|
|
|
|
# Library emulates GLES2 using command_buffers.
|
|
component("gles2_implementation") {
|
|
sources = gles2_implementation_source_files
|
|
|
|
defines = [ "GLES2_IMPL_IMPLEMENTATION" ]
|
|
all_dependent_configs = [ "//third_party/khronos:khronos_headers" ]
|
|
|
|
deps = [
|
|
":client",
|
|
":gles2_cmd_helper",
|
|
":gles2_interface",
|
|
"//base",
|
|
"//gpu/command_buffer/common",
|
|
"//gpu/command_buffer/common:gles2",
|
|
"//gpu/command_buffer/common:gles2_utils",
|
|
"//ui/gfx/geometry",
|
|
]
|
|
|
|
if (!is_nacl) {
|
|
deps += [
|
|
"//components/viz/common:resource_format",
|
|
"//ui/gfx:color_space",
|
|
"//ui/gfx/ipc/color",
|
|
]
|
|
}
|
|
}
|
|
|
|
source_set("raster_sources") {
|
|
# External code should depend on this via //gpu:raster above rather than
|
|
# depending on this directly or the component build will break.
|
|
visibility = [ "//gpu/*" ]
|
|
all_dependent_configs = [ "//third_party/khronos:khronos_headers" ]
|
|
|
|
configs += [ "//gpu:raster_implementation" ]
|
|
deps = [
|
|
":client",
|
|
":gles2_implementation",
|
|
":gles2_interface",
|
|
":raster_interface",
|
|
"//base",
|
|
"//cc/paint",
|
|
"//components/viz/common:resource_format",
|
|
"//gpu/command_buffer/common",
|
|
"//gpu/command_buffer/common:gles2",
|
|
"//gpu/command_buffer/common:gles2_utils",
|
|
"//gpu/command_buffer/common:raster",
|
|
"//ui/gfx:color_space",
|
|
"//ui/gfx/geometry",
|
|
"//ui/gfx/ipc/color",
|
|
]
|
|
sources = [
|
|
"client_font_manager.cc",
|
|
"client_font_manager.h",
|
|
"raster_cmd_helper.cc",
|
|
"raster_cmd_helper.h",
|
|
"raster_cmd_helper_autogen.h",
|
|
"raster_implementation.cc",
|
|
"raster_implementation.h",
|
|
"raster_implementation_autogen.h",
|
|
"raster_implementation_gles.cc",
|
|
"raster_implementation_gles.h",
|
|
"raster_implementation_impl_autogen.h",
|
|
]
|
|
}
|
|
|
|
# Library emulates GLES2 using command_buffers.
|
|
component("gles2_implementation_no_check") {
|
|
sources = gles2_implementation_source_files
|
|
|
|
defines = [
|
|
"GLES2_IMPL_IMPLEMENTATION",
|
|
"GLES2_CONFORMANCE_TESTS=1",
|
|
]
|
|
|
|
deps = [
|
|
":client",
|
|
":gles2_cmd_helper",
|
|
":gles2_interface",
|
|
"//base",
|
|
"//gpu/command_buffer/common",
|
|
"//gpu/command_buffer/common:gles2",
|
|
"//gpu/command_buffer/common:gles2_utils",
|
|
"//ui/gfx",
|
|
"//ui/gfx/geometry",
|
|
]
|
|
|
|
if (!is_nacl) {
|
|
deps += [
|
|
"//cc/paint",
|
|
"//ui/gfx:color_space",
|
|
"//ui/gfx/ipc/color",
|
|
]
|
|
}
|
|
}
|
|
|
|
component("gles2_c_lib") {
|
|
sources = gles2_c_lib_source_files
|
|
defines = [ "GLES2_C_LIB_IMPLEMENTATION" ]
|
|
|
|
deps = [
|
|
":gles2_interface",
|
|
"//base",
|
|
"//base/third_party/dynamic_annotations",
|
|
"//gpu/command_buffer/common",
|
|
]
|
|
}
|
|
|
|
# Same as gles2_c_lib except with no parameter checking. Required for
|
|
# OpenGL ES 2.0 conformance tests.
|
|
component("gles2_c_lib_nocheck") {
|
|
sources = gles2_c_lib_source_files
|
|
|
|
defines = [
|
|
"GLES2_C_LIB_IMPLEMENTATION",
|
|
"GLES2_CONFORMANCE_TESTS=1",
|
|
]
|
|
deps = [
|
|
":gles2_interface",
|
|
"//base",
|
|
"//base/third_party/dynamic_annotations",
|
|
"//gpu/command_buffer/common",
|
|
]
|
|
}
|