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