• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2021 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.
13import("//build/ohos.gni")
14import("//drivers/hdf_core/adapter/uhdf2/uhdf.gni")
15import("//drivers/peripheral/camera/hal/camera.gni")
16
17config("pipe_config") {
18  visibility = [ ":*" ]
19
20  cflags_cc = [
21    "-Wall",
22    "-Wextra",
23    "-Werror",
24    "-Wno-error",
25    "-DGST_DISABLE_DEPRECATED",
26    "-DHAVE_CONFIG_H",
27    "-DCOLORSPACE=\"videoconvert\"",
28    "-fno-strict-aliasing",
29    "-Wno-sign-compare",
30    "-Wno-builtin-requires-header",
31    "-Wno-unused-variable",
32    "-Wno-unused-label",
33    "-Wno-implicit-function-declaration",
34    "-Wno-format",
35    "-Wno-int-conversion",
36    "-Wno-unused-function",
37    "-Wno-thread-safety-attributes",
38    "-Wno-inconsistent-missing-override",
39    "-fno-rtti",
40    "-fno-exceptions",
41    "-ffunction-sections",
42    "-fdata-sections",
43  ]
44}
45
46ohos_shared_library("camera_pipeline_core") {
47  sources = [
48    "$board_camera_path/pipeline_core/src/node/rk_codec_node.cpp",
49    "$board_camera_path/pipeline_core/src/node/rk_exif_node.cpp",
50    "$board_camera_path/pipeline_core/src/node/rk_face_node.cpp",
51    "$camera_path/adapter/platform/v4l2/src/pipeline_core/nodes/uvc_node/uvc_node.cpp",
52    "$camera_path/adapter/platform/v4l2/src/pipeline_core/nodes/v4l2_source_node/v4l2_source_node.cpp",
53    "$camera_path/pipeline_core/host_stream/src/host_stream_impl.cpp",
54    "$camera_path/pipeline_core/host_stream/src/host_stream_mgr_impl.cpp",
55    "$camera_path/pipeline_core/ipp/src/algo_plugin.cpp",
56    "$camera_path/pipeline_core/ipp/src/algo_plugin_manager.cpp",
57    "$camera_path/pipeline_core/ipp/src/ipp_algo_parser.cpp",
58    "$camera_path/pipeline_core/ipp/src/ipp_node.cpp",
59    "$camera_path/pipeline_core/ipp/src/offline_pipeline.cpp",
60    "$camera_path/pipeline_core/ipp/src/offline_pipeline_manager.cpp",
61    "$camera_path/pipeline_core/nodes/src/dummy_node/dummy_node.cpp",
62    "$camera_path/pipeline_core/nodes/src/fork_node/fork_node.cpp",
63    "$camera_path/pipeline_core/nodes/src/merge_node/merge_node.cpp",
64    "$camera_path/pipeline_core/nodes/src/node_base/node_base.cpp",
65    "$camera_path/pipeline_core/nodes/src/sensor_node/sensor_node.cpp",
66    "$camera_path/pipeline_core/nodes/src/sink_node/sink_node.cpp",
67    "$camera_path/pipeline_core/nodes/src/source_node/source_node.cpp",
68    "$camera_path/pipeline_core/pipeline_impl/src/builder/stream_pipeline_builder.cpp",
69    "$camera_path/pipeline_core/pipeline_impl/src/dispatcher/stream_pipeline_dispatcher.cpp",
70    "$camera_path/pipeline_core/pipeline_impl/src/parser/config_parser.cpp",
71    "$camera_path/pipeline_core/pipeline_impl/src/strategy/config/config.c",
72    "$camera_path/pipeline_core/pipeline_impl/src/strategy/config/params.c",
73    "$camera_path/pipeline_core/pipeline_impl/src/strategy/stream_pipeline_strategy.cpp",
74    "$camera_path/pipeline_core/pipeline_impl/src/stream_pipeline_core.cpp",
75    "$camera_path/pipeline_core/src/pipeline_core.cpp",
76    "//device/soc/rockchip/rk3568/hardware/mpp/src/mpi_enc_utils.c",
77  ]
78  include_dirs = [
79    "//commonlibrary/c_utils/base/include",
80    "//base/hiviewdfx/interfaces/innerkits/libhilog/include",
81    "//drivers/peripheral/camera/hal/utils/exif",
82    "$camera_path/../interfaces/include",
83    "$camera_path/../interfaces/hdi_ipc",
84    "$camera_path/include",
85    "$camera_path/hdi_impl",
86    "$camera_path/hdi_impl/camera_host/include",
87    "$camera_path/hdi_impl/camera_device/include",
88    "$camera_path/hdi_impl/stream_operator/include",
89    "$camera_path/hdi_impl/include",
90    "$camera_path/device_manager",
91    "$camera_path/device_manager/include",
92    "$camera_path/pipeline_core",
93    "$camera_path/pipeline_core/host_stream/include",
94    "$camera_path/pipeline_core/utils",
95    "$camera_path/pipeline_core/nodes/include",
96    "$camera_path/pipeline_core/nodes/src/sensor_node",
97    "$camera_path/pipeline_core/nodes/src/node_base",
98    "$camera_path/pipeline_core/nodes/src/sink_node",
99    "$camera_path/pipeline_core/nodes/src/source_node",
100    "$camera_path/pipeline_core/nodes/src/merge_node",
101    "$camera_path/pipeline_core/nodes/src/dummy_node",
102    "$camera_path/pipeline_core/pipeline_impl/include",
103    "$camera_path/pipeline_core/pipeline_impl/src",
104    "$camera_path/pipeline_core/include",
105    "$camera_path/pipeline_core/pipeline_impl/src/builder",
106    "$camera_path/pipeline_core/pipeline_impl/src/dispatcher",
107    "$camera_path/pipeline_core/pipeline_impl/src/parser",
108    "$camera_path/pipeline_core/pipeline_impl/src/strategy",
109    "$camera_path/pipeline_core/pipeline_impl/src/strategy/config",
110    "$camera_path/pipeline_core/ipp/include",
111    "$camera_path/interfaces/hdi",
112    "$camera_path/utils/event",
113    "$camera_path/adapter/platform/v4l2/src/device_manager/include",
114    "../device_manager/include",
115    "$camera_path/adapter/platform/v4l2/src/pipeline_core/nodes/v4l2_source_node",
116    "$camera_path/adapter/platform/v4l2/src/pipeline_core/nodes/uvc_node",
117    "//drivers/peripheral/camera/hal/adapter/platform/v4l2/src/driver_adapter/include/",
118    "//foundation/communication/ipc/ipc/native/src/core/include",
119    "//commonlibrary/c_utils/base/include",
120    "//drivers/peripheral/camera/interfaces/metadata/include",
121    "src/node",
122    "//device/soc/rockchip/rk3568/hardware/rga/include",
123    "//device/soc/rockchip/rk3568/hardware/mpp/include",
124    "//third_party/libexif",
125
126    # hcs parser
127    "//drivers/hdf_core/framework/include/osal",
128    "//drivers/hdf_core/framework/include/utils",
129    "//drivers/hdf_core/adapter/uhdf2/osal/include",
130    "//system/core/include/cutils",
131    "//drivers/hdf_core/framework/utils/include",
132    "//drivers/hdf_core/adapter/uhdf2/osal/include",
133  ]
134
135  deps = [
136    "$board_camera_path:config.c",
137    "$board_camera_path:params.c",
138    "$camera_path/buffer_manager:camera_buffer_manager",
139    "$camera_path/device_manager:camera_device_manager",
140    "$hdf_uhdf_path/utils:libhdf_utils",
141    "//device/soc/rockchip/rk3568/hardware/mpp:libmpp",
142    "//device/soc/rockchip/rk3568/hardware/rga:librga",
143    "//drivers/interface/camera/v1_0:libcamera_stub_1.0",
144    "//drivers/peripheral/camera/hal/utils:camera_utils",
145    "//drivers/peripheral/camera/interfaces/metadata:metadata",
146    "//third_party/libjpeg-turbo:turbojpeg_static",
147  ]
148
149  if (is_standard_system) {
150    external_deps = [ "hiviewdfx_hilog_native:libhilog" ]
151  } else {
152    external_deps = [ "hilog:libhilog" ]
153  }
154  external_deps += [
155    "graphic_chipsetsdk:surface",
156    "ipc:ipc_single",
157  ]
158
159  public_configs = [ ":pipe_config" ]
160  install_images = [ chipset_base_dir ]
161  subsystem_name = "hdf"
162  part_name = "drivers_peripheral_camera"
163}
164
165config("example_config") {
166  visibility = [ ":*" ]
167
168  cflags = [
169    "-Wno-error",
170    "-Wno-unused-function",
171    "-Wno-unused-parameter",
172  ]
173}
174
175ohos_shared_library("camera_ipp_algo_example") {
176  sources = [ "src/ipp_algo_example/ipp_algo_example.c" ]
177
178  include_dirs = [
179    "$camera_path/pipeline_core/ipp/include",
180    "//commonlibrary/c_utils/base/include",
181  ]
182  external_deps = [ "c_utils:utils" ]
183  public_configs = [ ":example_config" ]
184  install_images = [ chipset_base_dir ]
185  subsystem_name = "hdf"
186  part_name = "drivers_peripheral_camera"
187}
188