blob: edace2b7aab403279147eba52e1a44f1f713fea2 [file] [log] [blame]
# Copyright 2013 The Flutter 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("//flutter/vulkan/config.gni")
import("../../../tools/impeller.gni")
config("gles_config") {
# Generic GL/GLES/EGL/Vulkan headers. Any will do. We just pick one from Angle
# because they are there.
include_dirs = [ "//third_party/angle/include" ]
}
impeller_component("gles_unittests") {
testonly = true
sources = [
"test/capabilities_unittests.cc",
"test/formats_gles_unittests.cc",
"test/gpu_tracer_gles_unittests.cc",
"test/mock_gles.cc",
"test/mock_gles.h",
"test/mock_gles_unittests.cc",
"test/specialization_constants_unittests.cc",
]
deps = [
":gles",
"//flutter/testing:testing_lib",
]
}
impeller_component("gles") {
public_configs = []
sources = [
"allocator_gles.cc",
"allocator_gles.h",
"blit_command_gles.cc",
"blit_command_gles.h",
"blit_pass_gles.cc",
"blit_pass_gles.h",
"buffer_bindings_gles.cc",
"buffer_bindings_gles.h",
"capabilities_gles.cc",
"capabilities_gles.h",
"command_buffer_gles.cc",
"command_buffer_gles.h",
"context_gles.cc",
"context_gles.h",
"description_gles.cc",
"description_gles.h",
"device_buffer_gles.cc",
"device_buffer_gles.h",
"formats_gles.cc",
"formats_gles.h",
"gles.h",
"gpu_tracer_gles.cc",
"gpu_tracer_gles.h",
"handle_gles.cc",
"handle_gles.h",
"pipeline_gles.cc",
"pipeline_gles.h",
"pipeline_library_gles.cc",
"pipeline_library_gles.h",
"proc_table_gles.cc",
"proc_table_gles.h",
"reactor_gles.cc",
"reactor_gles.h",
"render_pass_gles.cc",
"render_pass_gles.h",
"sampler_gles.cc",
"sampler_gles.h",
"sampler_library_gles.cc",
"sampler_library_gles.h",
"shader_function_gles.cc",
"shader_function_gles.h",
"shader_library_gles.cc",
"shader_library_gles.h",
"surface_gles.cc",
"surface_gles.h",
"texture_gles.cc",
"texture_gles.h",
]
if (!is_android && !is_fuchsia) {
public_configs = [ ":gles_config" ]
sources += [
"//third_party/angle/include/GLES2/gl2ext.h",
# The GLES3 API is a superset of GLES2. Although we target GLES2, we use
# some GLES3 features if the driver supports them.
"//third_party/angle/include/GLES3/gl3.h",
]
}
public_deps = [
"../../:renderer",
"../../../shader_archive",
"//flutter/fml",
]
}