1# Copyright (c) 2022 - 2024 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("//drivers/peripheral/distributed_camera/distributedcamera.gni")
16
17ohos_shared_library("libdistributed_camera_provider_config") {
18  include_dirs =
19      [ "${distributedcamera_hdf_path}/hdi_service/include/dcamera_provider" ]
20  sources = [ "./src/config/dcamera_provider_config.cpp" ]
21  deps = [ "${distributedcamera_hdf_path}/hdi_service:libdistributed_camera_hdf_service_1.1" ]
22
23  external_deps = [
24    "cJSON:cjson",
25    "c_utils:utils",
26    "drivers_interface_camera:libbuffer_producer_sequenceable_1.0",
27    "drivers_interface_distributed_camera:libdistributed_camera_provider_stub_1.1",
28    "graphic_surface:surface",
29    "hdf_core:libhdf_host",
30    "hdf_core:libhdf_ipc_adapter",
31    "hdf_core:libhdf_utils",
32    "hdf_core:libhdi",
33    "hilog:libhilog",
34    "ipc:ipc_single",
35  ]
36
37  shlib_type = "hdi"
38  install_images = [ chipset_base_dir ]
39  subsystem_name = "hdf"
40  part_name = "drivers_peripheral_distributed_camera"
41}
42
43ohos_shared_library("libdistributed_camera_host_config") {
44  include_dirs = [
45    "${distributedcamera_hdf_path}/hdi_service/include/dcamera_device",
46    "${distributedcamera_hdf_path}/hdi_service/include/dcamera_host",
47    "${distributedcamera_hdf_path}/hdi_service/include/dstream_operator",
48    "${distributedcamera_hdf_path}/hdi_service/include/utils",
49  ]
50  sources = [ "./src/config/dcamera_host_config.cpp" ]
51  deps = [ "${distributedcamera_hdf_path}/hdi_service:libdistributed_camera_hdf_service_1.1" ]
52  external_deps = [
53    "cJSON:cjson",
54    "c_utils:utils",
55    "drivers_interface_camera:libbuffer_producer_sequenceable_1.0",
56    "drivers_interface_camera:libcamera_stub_1.3",
57    "drivers_interface_display:libdisplay_composer_stub_1.0",
58    "drivers_interface_distributed_camera:libdistributed_camera_provider_stub_1.1",
59    "graphic_surface:surface",
60    "graphic_surface:sync_fence",
61    "hdf_core:libhdf_host",
62    "hdf_core:libhdf_ipc_adapter",
63    "hdf_core:libhdf_utils",
64    "hdf_core:libhdi",
65    "hilog:libhilog",
66    "ipc:ipc_single",
67  ]
68
69  shlib_type = "hdi"
70  install_images = [ chipset_base_dir ]
71  subsystem_name = "hdf"
72  part_name = "drivers_peripheral_distributed_camera"
73}
74
75ohos_shared_library("libdistributed_camera_hdf_service_1.1") {
76  include_dirs = [
77    "include/dcamera_device",
78    "include/dcamera_host",
79    "include/dcamera_provider",
80    "include/dstream_operator",
81    "include/utils",
82  ]
83
84  sources = [
85    "src/dcamera_device/dcamera_device.cpp",
86    "src/dcamera_device/dmetadata_processor.cpp",
87    "src/dcamera_host/dcamera_host.cpp",
88    "src/dcamera_provider/dcamera_provider.cpp",
89    "src/dstream_operator/dbuffer_manager.cpp",
90    "src/dstream_operator/dcamera_stream.cpp",
91    "src/dstream_operator/dimage_buffer.cpp",
92    "src/dstream_operator/doffline_stream_operator.cpp",
93    "src/dstream_operator/dstream_operator.cpp",
94    "src/utils/anonymous_string.cpp",
95    "src/utils/dcamera.cpp",
96  ]
97
98  defines = [
99    "HI_LOG_ENABLE",
100    "DH_LOG_TAG=\"distributedcamerahdf\"",
101    "LOG_DOMAIN=0xD004150",
102  ]
103
104  external_deps = [
105    "cJSON:cjson",
106    "c_utils:utils",
107    "drivers_interface_camera:libbuffer_producer_sequenceable_1.0",
108    "drivers_interface_camera:libcamera_stub_1.3",
109    "drivers_interface_camera:metadata",
110    "drivers_interface_display:libdisplay_composer_stub_1.0",
111    "drivers_interface_distributed_camera:libdistributed_camera_provider_stub_1.1",
112    "graphic_surface:buffer_handle",
113    "graphic_surface:surface",
114    "graphic_surface:sync_fence",
115    "hdf_core:libhdf_host",
116    "hdf_core:libhdf_ipc_adapter",
117    "hdf_core:libhdf_utils",
118    "hdf_core:libhdi",
119    "hilog:libhilog",
120    "ipc:ipc_single",
121    "samgr:samgr_proxy",
122  ]
123
124  install_images = [ chipset_base_dir ]
125  subsystem_name = "hdf"
126  part_name = "drivers_peripheral_distributed_camera"
127}
128
129group("hdf_distributed_camera_service") {
130  deps = [
131    ":libdistributed_camera_hdf_service_1.1",
132    ":libdistributed_camera_host_config",
133    ":libdistributed_camera_provider_config",
134  ]
135}
136