1 # Copyright (c) 2012 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.
7 'nacl_win64_target': 0,
14 # Library emulates GLES2 using command_buffers.
15 'target_name': 'gles2_implementation',
16 'type': '<(component)',
18 '../base/base.gyp:base',
19 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
20 '../third_party/khronos/khronos.gyp:khronos_headers',
22 '../ui/gfx/gfx.gyp:gfx',
23 '../ui/gfx/gfx.gyp:gfx_geometry',
24 'command_buffer/command_buffer.gyp:gles2_utils',
28 'GLES2_IMPL_IMPLEMENTATION',
31 '<@(gles2_implementation_source_files)',
32 'command_buffer/client/gl_in_process_context.h',
33 'command_buffer/client/gl_in_process_context.cc',
35 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
36 'msvs_disabled_warnings': [4267, ],
39 # Library emulates GLES2 using command_buffers.
40 'target_name': 'gles2_implementation_client_side_arrays',
41 'type': '<(component)',
43 'GLES2_IMPL_IMPLEMENTATION',
44 'GLES2_SUPPORT_CLIENT_SIDE_ARRAYS=1',
47 '../base/base.gyp:base',
48 '../third_party/khronos/khronos.gyp:khronos_headers',
50 '../ui/gfx/gfx.gyp:gfx_geometry',
51 '../ui/gfx/gfx.gyp:gfx',
52 'command_buffer/command_buffer.gyp:gles2_utils',
56 '<@(gles2_implementation_source_files)',
58 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
59 'msvs_disabled_warnings': [ 4267, ],
62 # Library emulates GLES2 using command_buffers.
63 'target_name': 'gles2_implementation_client_side_arrays_no_check',
64 'type': '<(component)',
66 'GLES2_IMPL_IMPLEMENTATION',
67 'GLES2_SUPPORT_CLIENT_SIDE_ARRAYS=1',
68 'GLES2_CONFORMANCE_TESTS=1',
71 '../base/base.gyp:base',
72 '../third_party/khronos/khronos.gyp:khronos_headers',
73 '../ui/gfx/gfx.gyp:gfx',
74 '../ui/gfx/gfx.gyp:gfx_geometry',
75 'command_buffer/command_buffer.gyp:gles2_utils',
79 '<@(gles2_implementation_source_files)',
81 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
82 'msvs_disabled_warnings': [ 4267, ],
85 # Stub to expose gles2_implemenation in C instead of C++.
86 # so GLES2 C programs can work with no changes.
87 'target_name': 'gles2_c_lib',
88 'type': '<(component)',
90 '../base/base.gyp:base',
91 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
92 'command_buffer/command_buffer.gyp:gles2_utils',
93 'command_buffer_client',
94 'gles2_implementation',
97 'GLES2_C_LIB_IMPLEMENTATION',
100 '<@(gles2_c_lib_source_files)',
102 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
103 'msvs_disabled_warnings': [4267, ],
106 # Same as gles2_c_lib except with no parameter checking. Required for
107 # OpenGL ES 2.0 conformance tests.
108 'target_name': 'gles2_c_lib_nocheck',
109 'type': '<(component)',
111 'GLES2_C_LIB_IMPLEMENTATION',
112 'GLES2_CONFORMANCE_TESTS=1',
115 '../base/base.gyp:base',
116 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
117 'command_buffer/command_buffer.gyp:gles2_utils',
118 'command_buffer_client',
119 'gles2_implementation_client_side_arrays_no_check',
122 '<@(gles2_c_lib_source_files)',
126 'target_name': 'angle_unittests',
127 'type': '<(gtest_target_type)',
129 '../base/base.gyp:base',
130 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
131 '../testing/gmock.gyp:gmock',
132 '../testing/gtest.gyp:gtest',
133 '<(angle_path)/src/build_angle.gyp:translator_static',
136 'ANGLE_DIR': '<(angle_path)',
139 '../third_party/angle/tests/preprocessor_tests/preprocessor_tests.gypi',
140 '../third_party/angle/tests/compiler_tests/compiler_tests.gypi',
144 '<(angle_path)/include',
146 '<(angle_path)/src/compiler/preprocessor',
147 '<(angle_path)/tests',
150 'angle_unittest_main.cc',
154 'target_name': 'gpu_unittests',
155 'type': '<(gtest_target_type)',
157 '../base/base.gyp:base',
158 '../base/base.gyp:test_support_base',
159 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
160 '../testing/gmock.gyp:gmock',
161 '../testing/gtest.gyp:gtest',
162 '<(angle_path)/src/build_angle.gyp:translator',
163 '../ui/gl/gl.gyp:gl',
164 '../ui/gfx/gfx.gyp:gfx',
165 '../ui/gfx/gfx.gyp:gfx_geometry',
166 'command_buffer/command_buffer.gyp:gles2_utils',
167 'command_buffer_client',
168 'command_buffer_common',
169 'command_buffer_service',
171 'gpu_unittest_utils',
172 'gles2_implementation_client_side_arrays',
176 'GLES2_C_LIB_IMPLEMENTATION',
179 '<@(gles2_c_lib_source_files)',
180 'command_buffer/client/buffer_tracker_unittest.cc',
181 'command_buffer/client/client_test_helper.cc',
182 'command_buffer/client/client_test_helper.h',
183 'command_buffer/client/cmd_buffer_helper_test.cc',
184 'command_buffer/client/fenced_allocator_test.cc',
185 'command_buffer/client/gles2_implementation_unittest.cc',
186 'command_buffer/client/mapped_memory_unittest.cc',
187 'command_buffer/client/query_tracker_unittest.cc',
188 'command_buffer/client/program_info_manager_unittest.cc',
189 'command_buffer/client/ring_buffer_test.cc',
190 'command_buffer/client/transfer_buffer_unittest.cc',
191 'command_buffer/client/vertex_array_object_manager_unittest.cc',
192 'command_buffer/common/bitfield_helpers_test.cc',
193 'command_buffer/common/command_buffer_mock.cc',
194 'command_buffer/common/command_buffer_mock.h',
195 'command_buffer/common/command_buffer_shared_test.cc',
196 'command_buffer/common/debug_marker_manager_unittest.cc',
197 'command_buffer/common/gles2_cmd_format_test.cc',
198 'command_buffer/common/gles2_cmd_format_test_autogen.h',
199 'command_buffer/common/gles2_cmd_utils_unittest.cc',
200 'command_buffer/common/id_allocator_test.cc',
201 'command_buffer/common/trace_event.h',
202 'command_buffer/common/unittest_main.cc',
203 'command_buffer/service/async_pixel_transfer_delegate_mock.h',
204 'command_buffer/service/async_pixel_transfer_delegate_mock.cc',
205 'command_buffer/service/async_pixel_transfer_manager_mock.h',
206 'command_buffer/service/async_pixel_transfer_manager_mock.cc',
207 'command_buffer/service/buffer_manager_unittest.cc',
208 'command_buffer/service/cmd_parser_test.cc',
209 'command_buffer/service/command_buffer_service_unittest.cc',
210 'command_buffer/service/common_decoder_unittest.cc',
211 'command_buffer/service/context_group_unittest.cc',
212 'command_buffer/service/feature_info_unittest.cc',
213 'command_buffer/service/framebuffer_manager_unittest.cc',
214 'command_buffer/service/gles2_cmd_decoder_unittest.cc',
215 'command_buffer/service/gles2_cmd_decoder_unittest_0_autogen.h',
216 'command_buffer/service/gles2_cmd_decoder_unittest_1.cc',
217 'command_buffer/service/gles2_cmd_decoder_unittest_1_autogen.h',
218 'command_buffer/service/gles2_cmd_decoder_unittest_2.cc',
219 'command_buffer/service/gles2_cmd_decoder_unittest_2_autogen.h',
220 'command_buffer/service/gles2_cmd_decoder_unittest_3.cc',
221 'command_buffer/service/gles2_cmd_decoder_unittest_3_autogen.h',
222 'command_buffer/service/gles2_cmd_decoder_unittest_base.cc',
223 'command_buffer/service/gles2_cmd_decoder_unittest_base.h',
224 'command_buffer/service/gl_surface_mock.cc',
225 'command_buffer/service/gl_surface_mock.h',
226 'command_buffer/service/gpu_scheduler_unittest.cc',
227 'command_buffer/service/id_manager_unittest.cc',
228 'command_buffer/service/mailbox_manager_unittest.cc',
229 'command_buffer/service/memory_program_cache_unittest.cc',
230 'command_buffer/service/mocks.cc',
231 'command_buffer/service/mocks.h',
232 'command_buffer/service/program_manager_unittest.cc',
233 'command_buffer/service/query_manager_unittest.cc',
234 'command_buffer/service/renderbuffer_manager_unittest.cc',
235 'command_buffer/service/program_cache_unittest.cc',
236 'command_buffer/service/shader_manager_unittest.cc',
237 'command_buffer/service/shader_translator_unittest.cc',
238 'command_buffer/service/test_helper.cc',
239 'command_buffer/service/test_helper.h',
240 'command_buffer/service/texture_manager_unittest.cc',
241 'command_buffer/service/transfer_buffer_manager_unittest.cc',
242 'command_buffer/service/vertex_attrib_manager_unittest.cc',
243 'command_buffer/service/vertex_array_manager_unittest.cc',
244 'command_buffer/service/gpu_tracer_unittest.cc',
245 'config/gpu_blacklist_unittest.cc',
246 'config/gpu_control_list_entry_unittest.cc',
247 'config/gpu_control_list_machine_model_info_unittest.cc',
248 'config/gpu_control_list_number_info_unittest.cc',
249 'config/gpu_control_list_os_info_unittest.cc',
250 'config/gpu_control_list_string_info_unittest.cc',
251 'config/gpu_control_list_unittest.cc',
252 'config/gpu_control_list_version_info_unittest.cc',
253 'config/gpu_driver_bug_list_unittest.cc',
254 'config/gpu_info_collector_unittest.cc',
255 'config/gpu_info_unittest.cc',
256 'config/gpu_test_config_unittest.cc',
257 'config/gpu_test_expectations_parser_unittest.cc',
258 'config/gpu_util_unittest.cc',
261 ['OS == "android" and gtest_target_type == "shared_library"', {
263 '../testing/android/native_test.gyp:native_test_native_code',
266 # See http://crbug.com/162998#c4 for why this is needed.
267 ['OS=="linux" and linux_use_tcmalloc==1', {
269 '../base/allocator/allocator.gyp:allocator',
273 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
274 'msvs_disabled_warnings': [ 4267, ],
277 'target_name': 'gl_tests',
278 'type': '<(gtest_target_type)',
280 '../base/base.gyp:base',
281 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
282 '../testing/gmock.gyp:gmock',
283 '../testing/gtest.gyp:gtest',
284 '<(angle_path)/src/build_angle.gyp:translator',
285 '../ui/gfx/gfx.gyp:gfx',
286 '../ui/gfx/gfx.gyp:gfx_geometry',
287 'command_buffer/command_buffer.gyp:gles2_utils',
288 'command_buffer_client',
289 'command_buffer_common',
290 'command_buffer_service',
292 'gpu_unittest_utils',
293 'gles2_implementation_client_side_arrays',
298 'GLES2_C_LIB_IMPLEMENTATION',
299 'GL_GLEXT_PROTOTYPES',
302 '<@(gles2_c_lib_source_files)',
303 'command_buffer/tests/compressed_texture_test.cc',
304 'command_buffer/tests/gl_bind_uniform_location_unittest.cc',
305 'command_buffer/tests/gl_chromium_framebuffer_multisample_unittest.cc',
306 'command_buffer/tests/gl_copy_texture_CHROMIUM_unittest.cc',
307 'command_buffer/tests/gl_depth_texture_unittest.cc',
308 'command_buffer/tests/gl_gpu_memory_buffer_unittest.cc',
309 'command_buffer/tests/gl_lose_context_chromium_unittest.cc',
310 'command_buffer/tests/gl_manager.cc',
311 'command_buffer/tests/gl_manager.h',
312 'command_buffer/tests/gl_pointcoord_unittest.cc',
313 'command_buffer/tests/gl_program_unittest.cc',
314 'command_buffer/tests/gl_query_unittest.cc',
315 'command_buffer/tests/gl_readback_unittest.cc',
316 'command_buffer/tests/gl_shared_resources_unittest.cc',
317 'command_buffer/tests/gl_stream_draw_unittest.cc',
318 'command_buffer/tests/gl_test_utils.cc',
319 'command_buffer/tests/gl_test_utils.h',
320 'command_buffer/tests/gl_tests_main.cc',
321 'command_buffer/tests/gl_texture_mailbox_unittest.cc',
322 'command_buffer/tests/gl_texture_storage_unittest.cc',
323 'command_buffer/tests/gl_unittest.cc',
324 'command_buffer/tests/gl_unittests_android.cc',
325 'command_buffer/tests/gl_virtual_contexts_unittest.cc',
326 'command_buffer/tests/occlusion_query_unittest.cc',
329 ['OS == "android" and gtest_target_type == "shared_library"', {
331 '../testing/android/native_test.gyp:native_test_native_code',
336 '../third_party/angle/src/build_angle.gyp:libEGL',
337 '../third_party/angle/src/build_angle.gyp:libGLESv2',
341 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
342 'msvs_disabled_warnings': [ 4267, ],
345 'target_name': 'gpu_unittest_utils',
346 'type': 'static_library',
348 '../testing/gmock.gyp:gmock',
349 '../testing/gtest.gyp:gtest',
350 '../third_party/khronos/khronos.gyp:khronos_headers',
351 '../ui/gl/gl.gyp:gl_unittest_utils',
358 'command_buffer/service/gles2_cmd_decoder_mock.cc',
359 'command_buffer/service/error_state_mock.cc',
360 'command_buffer/client/gles2_interface_stub.cc',
361 'command_buffer/client/gles2_interface_stub.h',
366 ['component=="static_library"', {
369 'target_name': 'disk_cache_proto',
370 'type': 'static_library',
371 'sources': [ 'command_buffer/service/disk_cache_proto.proto' ],
373 'proto_in_dir': 'command_buffer/service',
374 'proto_out_dir': 'gpu/command_buffer/service',
376 'includes': [ '../build/protoc.gypi' ],
379 'target_name': 'gpu',
382 'command_buffer_client',
383 'command_buffer_common',
384 'command_buffer_service',
392 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
393 'msvs_disabled_warnings': [4267, ],
396 'target_name': 'command_buffer_common',
397 'type': 'static_library',
399 'command_buffer_common.gypi',
402 '../base/base.gyp:base',
403 'command_buffer/command_buffer.gyp:gles2_utils',
405 'export_dependent_settings': [
406 '../base/base.gyp:base',
410 # Library helps make GLES2 command buffers.
411 'target_name': 'gles2_cmd_helper',
412 'type': 'static_library',
414 'gles2_cmd_helper.gypi',
417 'command_buffer_client',
419 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
420 'msvs_disabled_warnings': [4267, ],
423 'target_name': 'command_buffer_client',
424 'type': 'static_library',
426 'command_buffer_client.gypi',
429 'command_buffer_common',
431 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
432 'msvs_disabled_warnings': [4267, ],
435 'target_name': 'command_buffer_service',
436 'type': 'static_library',
438 'command_buffer_service.gypi',
441 'command_buffer_common',
444 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
445 'msvs_disabled_warnings': [4267, ],
448 'target_name': 'gpu_ipc',
449 'type': 'static_library',
454 'command_buffer_common',
458 'target_name': 'gpu_config',
459 'type': 'static_library',
466 { # component != static_library
469 'target_name': 'disk_cache_proto',
470 'type': 'static_library',
471 'sources': [ 'command_buffer/service/disk_cache_proto.proto' ],
473 'proto_in_dir': 'command_buffer/service',
474 'proto_out_dir': 'gpu/command_buffer/service',
476 'includes': [ '../build/protoc.gypi' ],
479 'target_name': 'gpu',
480 'type': 'shared_library',
482 'command_buffer_client.gypi',
483 'command_buffer_common.gypi',
484 'command_buffer_service.gypi',
485 'gles2_cmd_helper.gypi',
490 'GPU_IMPLEMENTATION',
496 '../base/base.gyp:base',
497 'command_buffer/command_buffer.gyp:gles2_utils',
500 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
501 'msvs_disabled_warnings': [4267, ],
504 'target_name': 'command_buffer_common',
511 # Library helps make GLES2 command buffers.
512 'target_name': 'gles2_cmd_helper',
517 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
518 'msvs_disabled_warnings': [4267, ],
521 'target_name': 'command_buffer_client',
528 'target_name': 'command_buffer_service',
535 'target_name': 'gpu_ipc',
543 ['disable_nacl!=1 and OS=="win" and target_arch=="ia32"', {
546 'target_name': 'gpu_ipc_win64',
547 'type': 'static_library',
549 'nacl_win64_target': 1,
555 '../base/base.gyp:base_win64',
556 '../ipc/ipc.gyp:ipc_win64',
559 '<@(nacl_win64_defines)',
560 'GPU_IMPLEMENTATION',
564 'msvs_target_platform': 'x64',
570 ['OS == "android" and gtest_target_type == "shared_library"', {
573 'target_name': 'gl_tests_apk',
579 'test_suite_name': 'gl_tests',
580 'input_shlib_path': '<(SHARED_LIB_DIR)/<(SHARED_LIB_PREFIX)gl_tests<(SHARED_LIB_SUFFIX)',
583 '../build/apk_test.gypi',