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/ui.gni")
6 import("//third_party/protobuf/proto_library.gni")
9 if (is_component_build) {
20 source_set("service_sources") {
29 "cmd_buffer_engine.h",
32 "command_buffer_service.cc",
33 "command_buffer_service.h",
40 "context_state_autogen.h",
41 "context_state_impl_autogen.h",
46 "framebuffer_completeness_cache.cc",
47 "framebuffer_completeness_cache.h",
48 "framebuffer_manager.cc",
49 "framebuffer_manager.h",
50 "gl_context_virtual.cc",
51 "gl_context_virtual.h",
52 "gl_state_restorer_impl.cc",
53 "gl_state_restorer_impl.h",
55 "gles2_cmd_clear_framebuffer.cc",
56 "gles2_cmd_clear_framebuffer.h",
57 "gles2_cmd_copy_texture_chromium.cc",
58 "gles2_cmd_copy_texture_chromium.h",
59 "gles2_cmd_decoder.cc",
60 "gles2_cmd_decoder.h",
61 "gles2_cmd_decoder_autogen.h",
62 "gles2_cmd_validation.cc",
63 "gles2_cmd_validation.h",
64 "gles2_cmd_validation_autogen.h",
65 "gles2_cmd_validation_implementation_autogen.h",
68 "gpu_state_tracer.cc",
80 "in_process_command_buffer.cc",
81 "in_process_command_buffer.h",
86 "mailbox_manager_impl.cc",
87 "mailbox_manager_impl.h",
88 "mailbox_manager_sync.cc",
89 "mailbox_manager_sync.h",
90 "memory_program_cache.cc",
91 "memory_program_cache.h",
100 "renderbuffer_manager.cc",
101 "renderbuffer_manager.h",
104 "shader_translator.cc",
105 "shader_translator.h",
106 "shader_translator_cache.cc",
107 "shader_translator_cache.h",
108 "stream_texture_manager_in_process_android.cc",
109 "stream_texture_manager_in_process_android.h",
110 "sync_point_manager.cc",
111 "sync_point_manager.h",
112 "texture_definition.cc",
113 "texture_definition.h",
114 "texture_manager.cc",
116 "transfer_buffer_manager.cc",
117 "transfer_buffer_manager.h",
118 "valuebuffer_manager.cc",
119 "valuebuffer_manager.h",
120 "vertex_array_manager.cc",
121 "vertex_array_manager.h",
122 "vertex_attrib_manager.cc",
123 "vertex_attrib_manager.h",
127 "//build/config:precompiled_headers",
128 "//gpu:gpu_implementation",
129 "//third_party/khronos:khronos_headers",
132 # Prefer mesa GL headers to system headers, which cause problems on Win.
133 include_dirs = [ "//third_party/mesa/src/include" ]
136 "//gpu/command_buffer/common:common_sources",
141 "//base/third_party/dynamic_annotations",
143 "//gpu/config:config_sources",
144 "//third_party/angle:commit_id",
145 "//third_party/angle:translator",
146 "//third_party/protobuf:protobuf_lite",
148 "//third_party/smhasher:cityhash",
155 # Required by gles2_cmd_decoder.cc on Mac.
157 "IOSurface.framework",
162 if (is_android && !is_debug) {
163 # On Android optimize more since this component can be a bottleneck.
164 configs -= [ "//build/config/compiler:default_optimization" ]
165 configs += [ "//build/config/compiler:optimize_max" ]
169 proto_library("disk_cache_proto") {
171 "disk_cache_proto.proto",