chromium/third_party/blink/renderer/modules/webgl/BUILD.gn

# Copyright 2016 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//third_party/blink/renderer/modules/modules.gni")

blink_modules_sources("webgl") {
  sources = [
    "angle_instanced_arrays.cc",
    "angle_instanced_arrays.h",
    "ext_blend_min_max.cc",
    "ext_blend_min_max.h",
    "ext_clip_control.cc",
    "ext_clip_control.h",
    "ext_color_buffer_float.cc",
    "ext_color_buffer_float.h",
    "ext_color_buffer_half_float.cc",
    "ext_color_buffer_half_float.h",
    "ext_conservative_depth.cc",
    "ext_conservative_depth.h",
    "ext_depth_clamp.cc",
    "ext_depth_clamp.h",
    "ext_disjoint_timer_query.cc",
    "ext_disjoint_timer_query.h",
    "ext_disjoint_timer_query_webgl2.cc",
    "ext_disjoint_timer_query_webgl2.h",
    "ext_float_blend.cc",
    "ext_float_blend.h",
    "ext_frag_depth.cc",
    "ext_frag_depth.h",
    "ext_polygon_offset_clamp.cc",
    "ext_polygon_offset_clamp.h",
    "ext_render_snorm.cc",
    "ext_render_snorm.h",
    "ext_shader_texture_lod.cc",
    "ext_shader_texture_lod.h",
    "ext_srgb.cc",
    "ext_srgb.h",
    "ext_texture_compression_bptc.cc",
    "ext_texture_compression_bptc.h",
    "ext_texture_compression_rgtc.cc",
    "ext_texture_compression_rgtc.h",
    "ext_texture_filter_anisotropic.cc",
    "ext_texture_filter_anisotropic.h",
    "ext_texture_mirror_clamp_to_edge.cc",
    "ext_texture_mirror_clamp_to_edge.h",
    "ext_texture_norm_16.cc",
    "ext_texture_norm_16.h",
    "gl_string_query.h",
    "khr_parallel_shader_compile.cc",
    "khr_parallel_shader_compile.h",
    "nv_shader_noperspective_interpolation.cc",
    "nv_shader_noperspective_interpolation.h",
    "oes_draw_buffers_indexed.cc",
    "oes_draw_buffers_indexed.h",
    "oes_element_index_uint.cc",
    "oes_element_index_uint.h",
    "oes_fbo_render_mipmap.cc",
    "oes_fbo_render_mipmap.h",
    "oes_sample_variables.cc",
    "oes_sample_variables.h",
    "oes_shader_multisample_interpolation.cc",
    "oes_shader_multisample_interpolation.h",
    "oes_standard_derivatives.cc",
    "oes_standard_derivatives.h",
    "oes_texture_float.cc",
    "oes_texture_float.h",
    "oes_texture_float_linear.cc",
    "oes_texture_float_linear.h",
    "oes_texture_half_float.cc",
    "oes_texture_half_float.h",
    "oes_texture_half_float_linear.cc",
    "oes_texture_half_float_linear.h",
    "oes_vertex_array_object.cc",
    "oes_vertex_array_object.h",
    "ovr_multiview_2.cc",
    "ovr_multiview_2.h",
    "webgl2_rendering_context.cc",
    "webgl2_rendering_context.h",
    "webgl2_rendering_context_base.cc",
    "webgl2_rendering_context_base.h",
    "webgl_active_info.h",
    "webgl_blend_func_extended.cc",
    "webgl_blend_func_extended.h",
    "webgl_buffer.cc",
    "webgl_buffer.h",
    "webgl_clip_cull_distance.cc",
    "webgl_clip_cull_distance.h",
    "webgl_color_buffer_float.cc",
    "webgl_color_buffer_float.h",
    "webgl_compressed_texture_astc.cc",
    "webgl_compressed_texture_astc.h",
    "webgl_compressed_texture_etc.cc",
    "webgl_compressed_texture_etc.h",
    "webgl_compressed_texture_etc1.cc",
    "webgl_compressed_texture_etc1.h",
    "webgl_compressed_texture_pvrtc.cc",
    "webgl_compressed_texture_pvrtc.h",
    "webgl_compressed_texture_s3tc.cc",
    "webgl_compressed_texture_s3tc.h",
    "webgl_compressed_texture_s3tc_srgb.cc",
    "webgl_compressed_texture_s3tc_srgb.h",
    "webgl_context_attribute_helpers.cc",
    "webgl_context_attribute_helpers.h",
    "webgl_context_event.cc",
    "webgl_context_event.h",
    "webgl_context_group.cc",
    "webgl_context_group.h",
    "webgl_context_object.cc",
    "webgl_context_object.h",
    "webgl_debug_renderer_info.cc",
    "webgl_debug_renderer_info.h",
    "webgl_debug_shaders.cc",
    "webgl_debug_shaders.h",
    "webgl_depth_texture.cc",
    "webgl_depth_texture.h",
    "webgl_draw_buffers.cc",
    "webgl_draw_buffers.h",
    "webgl_draw_instanced_base_vertex_base_instance.cc",
    "webgl_draw_instanced_base_vertex_base_instance.h",
    "webgl_extension.cc",
    "webgl_extension.h",
    "webgl_extension_name.h",
    "webgl_fence_sync.cc",
    "webgl_fence_sync.h",
    "webgl_framebuffer.cc",
    "webgl_framebuffer.h",
    "webgl_lose_context.cc",
    "webgl_lose_context.h",
    "webgl_multi_draw.cc",
    "webgl_multi_draw.h",
    "webgl_multi_draw_common.cc",
    "webgl_multi_draw_common.h",
    "webgl_multi_draw_instanced_base_vertex_base_instance.cc",
    "webgl_multi_draw_instanced_base_vertex_base_instance.h",
    "webgl_object.cc",
    "webgl_object.h",
    "webgl_polygon_mode.cc",
    "webgl_polygon_mode.h",
    "webgl_program.cc",
    "webgl_program.h",
    "webgl_provoking_vertex.cc",
    "webgl_provoking_vertex.h",
    "webgl_query.cc",
    "webgl_query.h",
    "webgl_render_shared_exponent.cc",
    "webgl_render_shared_exponent.h",
    "webgl_renderbuffer.cc",
    "webgl_renderbuffer.h",
    "webgl_rendering_context.cc",
    "webgl_rendering_context.h",
    "webgl_rendering_context_base.cc",
    "webgl_rendering_context_base.h",
    "webgl_sampler.cc",
    "webgl_sampler.h",
    "webgl_shader.cc",
    "webgl_shader.h",
    "webgl_shader_pixel_local_storage.cc",
    "webgl_shader_pixel_local_storage.h",
    "webgl_shader_precision_format.cc",
    "webgl_shader_precision_format.h",
    "webgl_shared_object.cc",
    "webgl_shared_object.h",
    "webgl_shared_platform_3d_object.cc",
    "webgl_shared_platform_3d_object.h",
    "webgl_stencil_texturing.cc",
    "webgl_stencil_texturing.h",
    "webgl_sync.cc",
    "webgl_sync.h",
    "webgl_texture.cc",
    "webgl_texture.h",
    "webgl_timer_query_ext.cc",
    "webgl_timer_query_ext.h",
    "webgl_transform_feedback.cc",
    "webgl_transform_feedback.h",
    "webgl_uniform_location.cc",
    "webgl_uniform_location.h",
    "webgl_unowned_texture.cc",
    "webgl_unowned_texture.h",
    "webgl_vertex_array_object.cc",
    "webgl_vertex_array_object.h",
    "webgl_vertex_array_object_base.cc",
    "webgl_vertex_array_object_base.h",
    "webgl_vertex_array_object_oes.cc",
    "webgl_vertex_array_object_oes.h",
  ]

  # The modules/webgl/ directly is a larger module, and
  # the implementation depends on a fair chunk of core/ --
  # include the core pch for faster Windows compilation times.
  configs += [ "//third_party/blink/renderer/core:blink_core_pch" ]

  public_deps = [ "//device/vr/public/mojom:vr_service_blink" ]
  deps = [
    "//build:chromeos_buildflags",
    "//device/vr/buildflags:buildflags",
    "//third_party/blink/renderer/modules/xr:xr",
  ]
  deps += [ "//third_party/blink/renderer/modules/webcodecs:webcodecs" ]
  allow_circular_includes_from = deps
}