| # 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("../tools/impeller.gni") |
| |
| config("impeller_canvas_recorder_config") { |
| defines = [ "IMPELLER_TRACE_CANVAS" ] |
| } |
| |
| impeller_component("aiks") { |
| sources = [ |
| "aiks_context.cc", |
| "aiks_context.h", |
| "canvas.cc", |
| "canvas.h", |
| "canvas_recorder.h", |
| "canvas_type.h", |
| "color_filter.cc", |
| "color_filter.h", |
| "color_source.cc", |
| "color_source.h", |
| "image.cc", |
| "image.h", |
| "image_filter.cc", |
| "image_filter.h", |
| "paint.cc", |
| "paint.h", |
| "paint_pass_delegate.cc", |
| "paint_pass_delegate.h", |
| "picture.cc", |
| "picture.h", |
| "picture_recorder.cc", |
| "picture_recorder.h", |
| "trace_serializer.h", |
| ] |
| |
| public_deps = [ |
| "../base", |
| "../entity", |
| "../geometry", |
| ] |
| |
| deps = [ "//flutter/fml" ] |
| |
| if (impeller_trace_canvas) { |
| sources += [ "trace_serializer.cc" ] |
| public_configs = [ ":impeller_canvas_recorder_config" ] |
| } |
| } |
| |
| impeller_component("aiks_playground") { |
| testonly = true |
| |
| sources = [ |
| "aiks_playground.cc", |
| "aiks_playground.h", |
| "aiks_playground_inspector.cc", |
| "aiks_playground_inspector.h", |
| ] |
| deps = [ |
| ":aiks", |
| "../playground:playground_test", |
| ] |
| public_deps = [ |
| "//flutter/impeller/typographer/backends/skia:typographer_skia_backend", |
| ] |
| } |
| |
| impeller_component("context_spy") { |
| testonly = true |
| |
| sources = [ |
| "testing/context_mock.h", |
| "testing/context_spy.cc", |
| "testing/context_spy.h", |
| ] |
| deps = [ |
| "//flutter/impeller/entity:entity_test_helpers", |
| "//flutter/impeller/renderer", |
| "//flutter/testing:testing_lib", |
| ] |
| } |
| |
| template("aiks_unittests_component") { |
| target_name = invoker.target_name |
| predefined_sources = [ |
| "aiks_blend_unittests.cc", |
| "aiks_blur_unittests.cc", |
| "aiks_gradient_unittests.cc", |
| "aiks_path_unittests.cc", |
| "aiks_unittests.cc", |
| "aiks_unittests.h", |
| ] |
| additional_sources = [] |
| if (defined(invoker.sources)) { |
| additional_sources = invoker.sources |
| } |
| impeller_component(target_name) { |
| testonly = true |
| if (defined(invoker.defines)) { |
| defines = invoker.defines |
| } else { |
| defines = [] |
| } |
| defines += [ "_USE_MATH_DEFINES" ] |
| |
| sources = predefined_sources + additional_sources |
| deps = [ |
| ":aiks", |
| ":aiks_playground", |
| ":context_spy", |
| "//flutter/impeller/geometry:geometry_asserts", |
| "//flutter/impeller/golden_tests:golden_playground_test", |
| "//flutter/impeller/playground:playground_test", |
| "//flutter/impeller/scene", |
| "//flutter/impeller/typographer/backends/stb:typographer_stb_backend", |
| "//flutter/testing:testing_lib", |
| "//flutter/third_party/txt", |
| ] |
| if (defined(invoker.public_configs)) { |
| public_configs = invoker.public_configs |
| } |
| } |
| } |
| |
| aiks_unittests_component("aiks_unittests") { |
| sources = [ |
| "canvas_recorder_unittests.cc", |
| "canvas_unittests.cc", |
| "trace_serializer_unittests.cc", |
| ] |
| |
| if (!impeller_trace_canvas) { |
| sources += [ "trace_serializer.cc" ] |
| public_configs = [ ":impeller_canvas_recorder_config" ] |
| } |
| } |
| |
| aiks_unittests_component("aiks_unittests_golden") { |
| defines = [ |
| "IMPELLER_GOLDEN_TESTS", |
| "IMPELLER_ENABLE_VALIDATION=1", |
| ] |
| } |
| |
| executable("canvas_benchmarks") { |
| testonly = true |
| sources = [ "canvas_benchmarks.cc" ] |
| deps = [ |
| ":aiks", |
| "//flutter/benchmarking", |
| ] |
| } |