• 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/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    "$camera_device_name_path/camera/src/pipeline_core/node/rk_codec_node.cpp",
49    "$camera_path/adapter/platform/v4l2/src/pipeline_core/nodes/uvc_node/uvc_node.cpp",
50    "$camera_path/adapter/platform/v4l2/src/pipeline_core/nodes/v4l2_source_node/v4l2_source_node.cpp",
51    "$camera_path/pipeline_core/host_stream/src/host_stream_impl.cpp",
52    "$camera_path/pipeline_core/host_stream/src/host_stream_mgr_impl.cpp",
53    "$camera_path/pipeline_core/ipp/src/algo_plugin.cpp",
54    "$camera_path/pipeline_core/ipp/src/algo_plugin_manager.cpp",
55    "$camera_path/pipeline_core/ipp/src/ipp_algo_parser.cpp",
56    "$camera_path/pipeline_core/ipp/src/ipp_node.cpp",
57    "$camera_path/pipeline_core/ipp/src/offline_pipeline.cpp",
58    "$camera_path/pipeline_core/ipp/src/offline_pipeline_manager.cpp",
59    "$camera_path/pipeline_core/nodes/src/dummy_node/dummy_node.cpp",
60    "$camera_path/pipeline_core/nodes/src/fork_node/fork_node.cpp",
61    "$camera_path/pipeline_core/nodes/src/merge_node/merge_node.cpp",
62    "$camera_path/pipeline_core/nodes/src/node_base/node_base.cpp",
63    "$camera_path/pipeline_core/nodes/src/sensor_node/sensor_node.cpp",
64    "$camera_path/pipeline_core/nodes/src/sink_node/sink_node.cpp",
65    "$camera_path/pipeline_core/nodes/src/source_node/source_node.cpp",
66    "$camera_path/pipeline_core/pipeline_impl/src/builder/stream_pipeline_builder.cpp",
67    "$camera_path/pipeline_core/pipeline_impl/src/dispatcher/stream_pipeline_dispatcher.cpp",
68    "$camera_path/pipeline_core/pipeline_impl/src/parser/config_parser.cpp",
69    "$camera_path/pipeline_core/pipeline_impl/src/strategy/config/config.c",
70    "$camera_path/pipeline_core/pipeline_impl/src/strategy/config/params.c",
71    "$camera_path/pipeline_core/pipeline_impl/src/strategy/stream_pipeline_strategy.cpp",
72    "$camera_path/pipeline_core/pipeline_impl/src/stream_pipeline_core.cpp",
73    "$camera_path/pipeline_core/src/pipeline_core.cpp",
74    "//device/hihope/hardware/mpp/src/mpi_enc_utils.c",
75  ]
76  include_dirs = [
77    "//utils/native/base/include",
78    "//base/hiviewdfx/interfaces/innerkits/libhilog/include",
79    "$camera_path/../interfaces/include",
80    "$camera_path/../interfaces/hdi_ipc",
81    "$camera_path/include",
82    "$camera_path/hdi_impl",
83    "$camera_path/hdi_impl/camera_host/include",
84    "$camera_path/hdi_impl/camera_device/include",
85    "$camera_path/hdi_impl/stream_operator/include",
86    "$camera_path/hdi_impl/include",
87    "$camera_path/device_manager",
88    "$camera_path/device_manager/include",
89    "$camera_path/pipeline_core",
90    "$camera_path/pipeline_core/host_stream/include",
91    "$camera_path/pipeline_core/utils",
92    "$camera_path/pipeline_core/nodes/include",
93    "$camera_path/pipeline_core/nodes/src/sensor_node",
94    "$camera_path/pipeline_core/nodes/src/node_base",
95    "$camera_path/pipeline_core/nodes/src/sink_node",
96    "$camera_path/pipeline_core/nodes/src/source_node",
97    "$camera_path/pipeline_core/nodes/src/merge_node",
98    "$camera_path/pipeline_core/nodes/src/dummy_node",
99    "$camera_path/pipeline_core/pipeline_impl/include",
100    "$camera_path/pipeline_core/pipeline_impl/src",
101    "$camera_path/pipeline_core/include",
102    "$camera_path/pipeline_core/pipeline_impl/src/builder",
103    "$camera_path/pipeline_core/pipeline_impl/src/dispatcher",
104    "$camera_path/pipeline_core/pipeline_impl/src/parser",
105    "$camera_path/pipeline_core/pipeline_impl/src/strategy",
106    "$camera_path/pipeline_core/pipeline_impl/src/strategy/config",
107    "$camera_path/pipeline_core/ipp/include",
108    "$camera_path/interfaces/hdi",
109    "$camera_path/utils/event",
110    "$camera_path/adapter/platform/v4l2/src/device_manager/include",
111    "$camera_device_name_path/camera/include/device_manager",
112    "$camera_path/adapter/platform/v4l2/src/pipeline_core/nodes/v4l2_source_node",
113    "$camera_path/adapter/platform/v4l2/src/pipeline_core/nodes/uvc_node",
114    "//drivers/peripheral/camera/hal/adapter/platform/v4l2/src/driver_adapter/include/",
115    "//foundation/communication/ipc/ipc/native/src/core/include",
116    "//utils/native/base/include",
117    "//drivers/peripheral/camera/interfaces/metadata/include",
118    "$camera_device_name_path/camera/src/pipeline_core/node",
119    "//device/hihope/hardware/rga/include",
120    "//device/hihope/hardware/mpp/include",
121    "//third_party/libjpeg",
122
123    # hcs parser
124    "//drivers/framework/include/osal",
125    "//drivers/framework/include/utils",
126    "//drivers/adapter/uhdf2/osal/include",
127    "//system/core/include/cutils",
128    "//drivers/framework/utils/include",
129    "//drivers/adapter/uhdf2/osal/include",
130  ]
131
132  deps = [
133    "$camera_path/buffer_manager:camera_buffer_manager",
134    "$camera_path/device_manager:camera_device_manager",
135    "//device/hihope/hardware/mpp:libmpp",
136    "//device/hihope/hardware/rga:librga",
137    "//drivers/peripheral/camera/interfaces/metadata:metadata",
138    "//third_party/libjpeg:libjpeg_static",
139
140    # hcs parser
141    "$hdf_uhdf_path/utils:libhdf_utils",
142    "//foundation/graphic/standard:libsurface",
143  ]
144
145  if (is_standard_system) {
146    external_deps = [ "hiviewdfx_hilog_native:libhilog" ]
147  } else {
148    external_deps = [ "hilog:libhilog" ]
149  }
150  external_deps += [ "ipc:ipc_single" ]
151
152  public_configs = [ ":pipe_config" ]
153  install_images = [ chipset_base_dir ]
154  subsystem_name = "hdf"
155  part_name = "camera_device_driver"
156}
157
158config("example_config") {
159  visibility = [ ":*" ]
160
161  cflags = [
162    "-Wno-error",
163    "-Wno-unused-function",
164    "-Wno-unused-parameter",
165  ]
166}
167
168ohos_shared_library("camera_ipp_algo_example") {
169  sources = [ "$camera_device_name_path/camera/src/pipeline_core/ipp_algo_example/ipp_algo_example.c" ]
170
171  include_dirs = [
172    "$camera_path/pipeline_core/ipp/include",
173    "//utils/native/base/include",
174  ]
175  deps = [ "//utils/native/base:utils" ]
176  public_configs = [ ":example_config" ]
177  install_images = [ chipset_base_dir ]
178  subsystem_name = "hdf"
179  part_name = "camera_device_driver"
180}
181