[M120 Migration][VD] Enable direct rendering for TVPlus
[platform/framework/web/chromium-efl.git] / components / fuchsia_component_support / BUILD.gn
1 # Copyright 2022 The Chromium Authors
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
4
5 assert(is_fuchsia)
6
7 visibility = []
8
9 # Integration helpers for fuchsia.* FIDL APIs used by Fuchsia Components.
10 source_set("fuchsia_component_support") {
11   # Only for use by Fuchsia Components.
12   visibility += [
13     ":unit_tests",
14     "//chrome/browser",
15     "//chromecast/internal/*",
16     "//fuchsia_web/runners/*",
17     "//fuchsia_web/webengine/*",
18     "//fuchsia_web/webinstance_host/*",
19   ]
20   public = [
21     "append_arguments_from_file.h",
22     "config_reader.h",
23     "feedback_registration.h",
24     "inspect.h",
25     "serialize_arguments.h",
26   ]
27   sources = [
28     "append_arguments_from_file.cc",
29     "config_reader.cc",
30     "feedback_registration.cc",
31     "inspect.cc",
32     "serialize_arguments.cc",
33   ]
34   public_deps = [
35     "//base",
36     "//third_party/abseil-cpp:absl",
37   ]
38   deps = [
39     "//build:branding_buildflags",
40     "//components/version_info",
41     "//third_party/fuchsia-sdk/sdk/fidl/fuchsia.feedback:fuchsia.feedback_hlcpp",
42     "//third_party/fuchsia-sdk/sdk/pkg/fidl_cpp_base",
43     "//third_party/fuchsia-sdk/sdk/pkg/sys_cpp",
44     "//third_party/fuchsia-sdk/sdk/pkg/sys_inspect_cpp",
45   ]
46 }
47
48 source_set("annotations_manager") {
49   visibility = [ "*" ]
50   public = [ "annotations_manager.h" ]
51   sources = [ "annotations_manager.cc" ]
52   public_deps = [
53     "//base",
54     "//third_party/fuchsia-sdk/sdk/fidl/fuchsia.element:fuchsia.element_hlcpp",
55     "//third_party/fuchsia-sdk/sdk/pkg/fidl_cpp",
56   ]
57 }
58
59 # Integration helper for components which host child components.
60 source_set("dynamic_component_host") {
61   visibility = [ "*" ]
62
63   sources = [
64     "dynamic_component_host.cc",
65     "dynamic_component_host.h",
66   ]
67
68   deps = [
69     "//base",
70     "//third_party/fuchsia-sdk/sdk/fidl/fuchsia.io:fuchsia.io_hlcpp",
71     "//third_party/fuchsia-sdk/sdk/pkg/sys_cpp",
72     "//third_party/fuchsia-sdk/sdk/pkg/vfs_cpp",
73   ]
74
75   public_deps = [ "//third_party/fuchsia-sdk/sdk/fidl/fuchsia.component:fuchsia.component_hlcpp" ]
76 }
77
78 source_set("test_support") {
79   testonly = true
80
81   # Only for use by Fuchsia Components.
82   visibility += [
83     ":unit_tests",
84     "//fuchsia_web/*",
85   ]
86   public = [ "mock_realm.h" ]
87   sources = [ "mock_realm.cc" ]
88   public_deps = [
89     "//base",
90     "//testing/gmock",
91     "//third_party/fuchsia-sdk/sdk/fidl/fuchsia.component",
92   ]
93   deps = [ "//testing/gtest" ]
94 }
95
96 source_set("unit_tests") {
97   testonly = true
98   visibility += [ "//components:components_unittests__exec" ]
99   sources = [
100     "annotations_manager_unittest.cc",
101     "config_reader_unittest.cc",
102     "dynamic_component_host_unittest.cc",
103     "inspect_unittest.cc",
104   ]
105   deps = [
106     ":annotations_manager",
107     ":dynamic_component_host",
108     ":fuchsia_component_support",
109     ":test_support",
110     "//base",
111     "//base/test:test_support",
112     "//components/version_info",
113     "//testing/gtest",
114     "//third_party/fuchsia-sdk/sdk/fidl/fuchsia.component:fuchsia.component_hlcpp",
115     "//third_party/fuchsia-sdk/sdk/pkg/fdio",
116     "//third_party/fuchsia-sdk/sdk/pkg/sys_cpp",
117     "//third_party/fuchsia-sdk/sdk/pkg/sys_inspect_cpp",
118   ]
119 }