1# Copyright 2013 The Flutter 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. 4 5import("//build/fuchsia/sdk.gni") 6import("$flutter_root/common/config.gni") 7import("$flutter_root/testing/testing.gni") 8 9source_set("ui") { 10 sources = [ 11 "compositing/scene.cc", 12 "compositing/scene.h", 13 "compositing/scene_builder.cc", 14 "compositing/scene_builder.h", 15 "dart_runtime_hooks.cc", 16 "dart_runtime_hooks.h", 17 "dart_ui.cc", 18 "dart_ui.h", 19 "dart_wrapper.h", 20 "io_manager.h", 21 "isolate_name_server/isolate_name_server.cc", 22 "isolate_name_server/isolate_name_server.h", 23 "isolate_name_server/isolate_name_server_natives.cc", 24 "isolate_name_server/isolate_name_server_natives.h", 25 "painting/canvas.cc", 26 "painting/canvas.h", 27 "painting/codec.cc", 28 "painting/codec.h", 29 "painting/color_filter.cc", 30 "painting/color_filter.h", 31 "painting/engine_layer.cc", 32 "painting/engine_layer.h", 33 "painting/frame_info.cc", 34 "painting/frame_info.h", 35 "painting/gradient.cc", 36 "painting/gradient.h", 37 "painting/image.cc", 38 "painting/image.h", 39 "painting/image_decoder.cc", 40 "painting/image_decoder.h", 41 "painting/image_encoding.cc", 42 "painting/image_encoding.h", 43 "painting/image_filter.cc", 44 "painting/image_filter.h", 45 "painting/image_shader.cc", 46 "painting/image_shader.h", 47 "painting/matrix.cc", 48 "painting/matrix.h", 49 "painting/multi_frame_codec.cc", 50 "painting/multi_frame_codec.h", 51 "painting/paint.cc", 52 "painting/paint.h", 53 "painting/path.cc", 54 "painting/path.h", 55 "painting/path_measure.cc", 56 "painting/path_measure.h", 57 "painting/picture.cc", 58 "painting/picture.h", 59 "painting/picture_recorder.cc", 60 "painting/picture_recorder.h", 61 "painting/rrect.cc", 62 "painting/rrect.h", 63 "painting/shader.cc", 64 "painting/shader.h", 65 "painting/single_frame_codec.cc", 66 "painting/single_frame_codec.h", 67 "painting/vertices.cc", 68 "painting/vertices.h", 69 "plugins/callback_cache.cc", 70 "plugins/callback_cache.h", 71 "semantics/custom_accessibility_action.cc", 72 "semantics/custom_accessibility_action.h", 73 "semantics/semantics_node.cc", 74 "semantics/semantics_node.h", 75 "semantics/semantics_update.cc", 76 "semantics/semantics_update.h", 77 "semantics/semantics_update_builder.cc", 78 "semantics/semantics_update_builder.h", 79 "text/asset_manager_font_provider.cc", 80 "text/asset_manager_font_provider.h", 81 "text/font_collection.cc", 82 "text/font_collection.h", 83 "text/paragraph.cc", 84 "text/paragraph.h", 85 "text/paragraph_builder.cc", 86 "text/paragraph_builder.h", 87 "text/text_box.cc", 88 "text/text_box.h", 89 "ui_dart_state.cc", 90 "ui_dart_state.h", 91 "window/platform_message.cc", 92 "window/platform_message.h", 93 "window/platform_message_response.cc", 94 "window/platform_message_response.h", 95 "window/platform_message_response_dart.cc", 96 "window/platform_message_response_dart.h", 97 "window/pointer_data.cc", 98 "window/pointer_data.h", 99 "window/pointer_data_packet.cc", 100 "window/pointer_data_packet.h", 101 "window/viewport_metrics.cc", 102 "window/viewport_metrics.h", 103 "window/window.cc", 104 "window/window.h", 105 ] 106 107 public_configs = [ "$flutter_root:config" ] 108 109 deps = [ 110 "$flutter_root/assets", 111 "$flutter_root/common", 112 "$flutter_root/flow", 113 "$flutter_root/fml", 114 "$flutter_root/runtime:test_font", 115 "//third_party/dart/runtime/bin:dart_io_api", 116 "//third_party/rapidjson", 117 "//third_party/skia", 118 "//third_party/tonic", 119 ] 120 121 public_deps = [ "$flutter_root/third_party/txt" ] 122 123 if (flutter_enable_skshaper) { 124 defines = [ "FLUTTER_ENABLE_SKSHAPER" ] 125 } 126 127 if (is_fuchsia) { 128 sources += [ 129 "compositing/scene_host.cc", 130 "compositing/scene_host.h", 131 ] 132 133 if (using_fuchsia_sdk) { 134 deps += [ 135 "$flutter_root/shell/platform/fuchsia/dart-pkg/fuchsia", 136 "$flutter_root/shell/platform/fuchsia/dart-pkg/zircon", 137 "$fuchsia_sdk_root/pkg:async-cpp", 138 ] 139 } else { 140 deps += [ "//topaz/public/dart-pkg/zircon" ] 141 } 142 } 143} 144 145if (current_toolchain == host_toolchain) { 146 test_fixtures("ui_unittests_fixtures") { 147 dart_main = "fixtures/ui_test.dart" 148 fixtures = [ 149 "fixtures/DashInNooglerHat.jpg", 150 "fixtures/Horizontal.jpg", 151 ] 152 } 153 154 executable("ui_unittests") { 155 testonly = true 156 157 sources = [ "painting/image_decoder_unittests.cc" ] 158 159 deps = [ 160 ":ui", 161 ":ui_unittests_fixtures", 162 "$flutter_root/common", 163 "$flutter_root/testing:dart", 164 "$flutter_root/testing:opengl", 165 ] 166 } 167} 168