1# Copyright (c) 2023 Huawei Device Co., Ltd.
2# Licensed under the Apache License, Version 2.0 (the "License");
3# you may not use this file except in compliance with the License.
4# You may obtain a copy of the License at
5#
6#     http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13
14import("//build/ohos.gni")
15import("./../../display_config.gni")
16
17group("hdf_display_buffer_service") {
18  deps = [
19    ":liballocator_driver_1.0",
20    ":liballocator_service_1.0",
21    ":libmapper_driver_1.0",
22    ":libmapper_service_1.0",
23    ":libmapper_service_1.2",
24    ":libmetadata_driver_1.1",
25    ":libmetadata_service_1.1",
26  ]
27}
28
29ohos_shared_library("liballocator_service_1.0") {
30  include_dirs = [
31    "dfx",
32    "include",
33    "../../utils/include",
34  ]
35  sources = [
36    "dfx/display_buffer_dfx.cpp",
37    "src/allocator_service.cpp",
38  ]
39
40  external_deps = [
41    "c_utils:utils",
42    "drivers_interface_display:libdisplay_buffer_stub_1.0",
43    "drivers_interface_display:libdisplay_buffer_stub_1.2",
44    "graphic_surface:buffer_handle",
45    "hdf_core:libhdf_ipc_adapter",
46    "hdf_core:libhdf_utils",
47    "hdf_core:libhdi",
48    "hilog:libhilog",
49    "hitrace:hitrace_meter",
50    "ipc:ipc_single",
51  ]
52
53  if (drivers_peripheral_display_hicollie_enable) {
54    external_deps += [ "hicollie:libhicollie" ]
55  }
56
57  install_images = [ chipset_base_dir ]
58  subsystem_name = "hdf"
59  part_name = "drivers_peripheral_display"
60}
61
62ohos_shared_library("liballocator_driver_1.0") {
63  sources = [ "src/allocator_driver.cpp" ]
64
65  external_deps = [
66    "c_utils:utils",
67    "drivers_interface_display:libdisplay_buffer_stub_1.0",
68    "hdf_core:libhdf_host",
69    "hdf_core:libhdf_ipc_adapter",
70    "hdf_core:libhdf_utils",
71    "hdf_core:libhdi",
72    "hilog:libhilog",
73    "ipc:ipc_single",
74  ]
75
76  shlib_type = "hdi"
77  install_images = [ chipset_base_dir ]
78  subsystem_name = "hdf"
79  part_name = "drivers_peripheral_display"
80}
81
82ohos_shared_library("libmapper_service_1.0") {
83  include_dirs = [
84    "include",
85    "../../utils/include",
86  ]
87  sources = [ "src/mapper_service.cpp" ]
88
89  external_deps = [
90    "c_utils:utils",
91    "drivers_interface_display:libdisplay_buffer_stub_1.0",
92    "drivers_interface_display:libdisplay_buffer_stub_1.2",
93    "graphic_surface:buffer_handle",
94    "hdf_core:libhdf_ipc_adapter",
95    "hdf_core:libhdf_utils",
96    "hdf_core:libhdi",
97    "hilog:libhilog",
98    "hitrace:hitrace_meter",
99    "ipc:ipc_single",
100  ]
101
102  install_images = [ chipset_base_dir ]
103  subsystem_name = "hdf"
104  innerapi_tags = [ "passthrough_indirect" ]
105  part_name = "drivers_peripheral_display"
106}
107
108ohos_shared_library("libmapper_service_1.2") {
109  include_dirs = [ "include" ]
110  sources = [ "src/mapper_service_1_2.cpp" ]
111
112  deps = [ ":libmapper_service_1.0" ]
113
114  external_deps = [
115    "c_utils:utils",
116    "drivers_interface_display:libdisplay_buffer_stub_1.2",
117    "graphic_surface:buffer_handle",
118    "hdf_core:libhdf_ipc_adapter",
119    "hdf_core:libhdf_utils",
120    "hdf_core:libhdi",
121    "hilog:libhilog",
122    "hitrace:hitrace_meter",
123    "ipc:ipc_single",
124  ]
125
126  install_images = [ chipset_base_dir ]
127  subsystem_name = "hdf"
128  innerapi_tags = [ "passthrough_indirect" ]
129  part_name = "drivers_peripheral_display"
130}
131
132ohos_shared_library("libmapper_driver_1.0") {
133  sources = [ "src/mapper_driver.cpp" ]
134
135  external_deps = [
136    "c_utils:utils",
137    "drivers_interface_display:libdisplay_buffer_stub_1.0",
138    "drivers_interface_display:libdisplay_buffer_stub_1.2",
139    "hdf_core:libhdf_host",
140    "hdf_core:libhdf_ipc_adapter",
141    "hdf_core:libhdf_utils",
142    "hdf_core:libhdi",
143    "hilog:libhilog",
144    "ipc:ipc_single",
145  ]
146
147  shlib_type = "hdi"
148  install_images = [ chipset_base_dir ]
149  subsystem_name = "hdf"
150  part_name = "drivers_peripheral_display"
151}
152
153ohos_shared_library("libmetadata_service_1.1") {
154  include_dirs = [
155    "include",
156    "../../utils/include",
157  ]
158  sources = [ "src/metadata_service.cpp" ]
159
160  external_deps = [
161    "c_utils:utils",
162    "drivers_interface_display:libdisplay_buffer_stub_1.0",
163    "drivers_interface_display:libdisplay_buffer_stub_1.1",
164    "graphic_surface:buffer_handle",
165    "hdf_core:libhdf_ipc_adapter",
166    "hdf_core:libhdf_utils",
167    "hdf_core:libhdi",
168    "hilog:libhilog",
169    "hitrace:hitrace_meter",
170    "ipc:ipc_single",
171  ]
172
173  install_images = [ chipset_base_dir ]
174  subsystem_name = "hdf"
175  innerapi_tags = [ "passthrough_indirect" ]
176  part_name = "drivers_peripheral_display"
177}
178
179ohos_shared_library("libmetadata_driver_1.1") {
180  sources = [ "src/metadata_driver.cpp" ]
181
182  external_deps = [
183    "c_utils:utils",
184    "drivers_interface_display:libdisplay_buffer_stub_1.1",
185    "hdf_core:libhdf_host",
186    "hdf_core:libhdf_ipc_adapter",
187    "hdf_core:libhdf_utils",
188    "hdf_core:libhdi",
189    "hilog:libhilog",
190    "ipc:ipc_single",
191  ]
192
193  shlib_type = "hdi"
194  install_images = [ chipset_base_dir ]
195  subsystem_name = "hdf"
196  part_name = "drivers_peripheral_display"
197}
198