# Copyright (c) 2023 Huawei Device Co., Ltd. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. import("//build/ohos.gni") # NOSORT import("../../../camera.gni") # NOSORT import("$hdf_core_path/adapter/uhdf2/uhdf.gni") config("pipe_config") { visibility = [ ":*" ] defines = [] if (drivers_peripheral_camera_feature_usb) { defines += [ "CAMERA_BUILT_ON_USB" ] } if (target_cpu == "arm64" || target_cpu == "x86_64") { defines += [ "__ARCH64__" ] } cflags_cc = [ "-Wall", "-Wextra", "-Werror", "-Wno-error", "-DGST_DISABLE_DEPRECATED", "-DHAVE_CONFIG_H", "-DCOLORSPACE=\"videoconvert\"", "-fno-strict-aliasing", "-Wno-sign-compare", "-Wno-builtin-requires-header", "-Wno-unused-variable", "-Wno-unused-label", "-Wno-implicit-function-declaration", "-Wno-format", "-Wno-int-conversion", "-Wno-unused-function", "-Wno-thread-safety-attributes", "-Wno-inconsistent-missing-override", "-fno-rtti", "-fno-exceptions", "-ffunction-sections", "-fdata-sections", ] include_dirs = [ "$camera_path/pipeline_core", "$camera_path/pipeline_core/host_stream/include", "$camera_path/pipeline_core/utils", "$camera_path/pipeline_core/nodes/include", "$camera_path/pipeline_core/nodes/src/sensor_node", "$camera_path/pipeline_core/nodes/src/node_base", "$camera_path/pipeline_core/nodes/src/sink_node", "$camera_path/pipeline_core/nodes/src/source_node", "$camera_path/pipeline_core/nodes/src/merge_node", "$camera_path/pipeline_core/nodes/src/dummy_node", "$camera_path/pipeline_core/pipeline_impl/include", "$camera_path/pipeline_core/pipeline_impl/src", "$camera_path/pipeline_core/include", "$camera_path/pipeline_core/pipeline_impl/src/builder", "$camera_path/pipeline_core/pipeline_impl/src/dispatcher", "$camera_path/pipeline_core/pipeline_impl/src/parser", "$camera_path/pipeline_core/pipeline_impl/src/strategy", "$camera_path/pipeline_core/pipeline_impl/src/strategy/config", "$camera_path/pipeline_core/ipp/include", ] } ohos_shared_library("peripheral_camera_pipeline_core") { sources = [ "$camera_path/adapter/platform/v4l2/src/pipeline_core/nodes/uvc_node/uvc_node.cpp", "$camera_path/adapter/platform/v4l2/src/pipeline_core/nodes/v4l2_source_node/v4l2_source_node.cpp", "$camera_path/pipeline_core/host_stream/src/host_stream_impl.cpp", "$camera_path/pipeline_core/host_stream/src/host_stream_mgr_impl.cpp", "$camera_path/pipeline_core/ipp/src/algo_plugin.cpp", "$camera_path/pipeline_core/ipp/src/algo_plugin_manager.cpp", "$camera_path/pipeline_core/ipp/src/ipp_algo_parser.cpp", "$camera_path/pipeline_core/ipp/src/ipp_node.cpp", "$camera_path/pipeline_core/ipp/src/offline_pipeline.cpp", "$camera_path/pipeline_core/ipp/src/offline_pipeline_manager.cpp", "$camera_path/pipeline_core/nodes/src/dummy_node/dummy_node.cpp", "$camera_path/pipeline_core/nodes/src/fork_node/fork_node.cpp", "$camera_path/pipeline_core/nodes/src/merge_node/merge_node.cpp", "$camera_path/pipeline_core/nodes/src/node_base/node_base.cpp", "$camera_path/pipeline_core/nodes/src/sensor_node/sensor_node.cpp", "$camera_path/pipeline_core/nodes/src/sink_node/sink_node.cpp", "$camera_path/pipeline_core/nodes/src/source_node/source_node.cpp", "$camera_path/pipeline_core/nodes/src/stability_node/stability_node.cpp", "$camera_path/pipeline_core/pipeline_impl/src/builder/stream_pipeline_builder.cpp", "$camera_path/pipeline_core/pipeline_impl/src/dispatcher/stream_pipeline_dispatcher.cpp", "$camera_path/pipeline_core/pipeline_impl/src/parser/config_parser.cpp", "$camera_path/pipeline_core/pipeline_impl/src/strategy/stream_pipeline_strategy.cpp", "$camera_path/pipeline_core/pipeline_impl/src/stream_pipeline_core.cpp", "$camera_path/pipeline_core/pipeline_impl/src/stream_pipeline_data_structure.cpp", ] include_dirs = [ "$camera_path/utils/exif", "$camera_path/../../interfaces/include", "$camera_path/../../interfaces/hdi_ipc", "$camera_path/include", "$camera_path/../interfaces", "$camera_path/../v4l2", "$camera_path/../v4l2/camera_host/include", "$camera_path/../v4l2/camera_device/include", "$camera_path/../v4l2/stream_operator/include", "$camera_path/../v4l2/include", "$camera_path/device_manager", "$camera_path/device_manager/include", "$camera_path/metadata_manager/include", "$camera_path/pipeline_core", "$camera_path/pipeline_core/host_stream/include", "$camera_path/pipeline_core/utils", "$camera_path/pipeline_core/nodes/include", "$camera_path/pipeline_core/nodes/src/sensor_node", "$camera_path/pipeline_core/nodes/src/node_base", "$camera_path/pipeline_core/nodes/src/sink_node", "$camera_path/pipeline_core/nodes/src/source_node", "$camera_path/pipeline_core/nodes/src/merge_node", "$camera_path/pipeline_core/nodes/src/dummy_node", "$camera_path/pipeline_core/pipeline_impl/include", "$camera_path/pipeline_core/pipeline_impl/src", "$camera_path/pipeline_core/include", "$camera_path/pipeline_core/pipeline_impl/src/builder", "$camera_path/pipeline_core/pipeline_impl/src/dispatcher", "$camera_path/pipeline_core/pipeline_impl/src/parser", "$camera_path/pipeline_core/pipeline_impl/src/strategy", "$camera_path/pipeline_core/ipp/include", "$camera_path/interfaces/hdi", "$camera_path/utils/event", "$camera_path/adapter/platform/v4l2/src/device_manager/include", "$camera_path/adapter/platform/v4l2/src/pipeline_core/nodes/v4l2_source_node", "$camera_path/adapter/platform/v4l2/src/pipeline_core/nodes/uvc_node", "$camera_path/adapter/platform/v4l2/src/driver_adapter/include/", "$camera_path/dump/include", "$camera_path/../interfaces", ] deps = [ "$camera_path/buffer_manager:peripheral_camera_buffer_manager", "$camera_path/device_manager:peripheral_camera_device_manager", "$camera_path/metadata_manager:peripheral_camera_metadata_manager", "$camera_path/utils:peripheral_camera_utils", ] if (is_standard_system) { external_deps = [ "hdf_core:libhdf_utils", "hilog:libhilog", ] } else { external_deps = [ "hilog:libhilog" ] } external_deps += [ "c_utils:utils", "drivers_interface_camera:libbuffer_producer_sequenceable_1.0", "drivers_interface_camera:metadata", "graphic_surface:surface", "hdf_core:libhdf_host", "ipc:ipc_single", ] public_configs = [ ":pipe_config" ] install_images = [ chipset_base_dir ] subsystem_name = "hdf" part_name = "drivers_peripheral_camera" } config("example_config") { visibility = [ ":*" ] cflags = [ "-Wno-error", "-Wno-unused-function", "-Wno-unused-parameter", ] } ohos_shared_library("camera_ipp_algo_example") { sources = [ "src/ipp_algo_example/ipp_algo_example.c" ] include_dirs = [ "$camera_path/pipeline_core/ipp/include" ] external_deps = [ "c_utils:utils" ] public_configs = [ ":example_config" ] install_images = [ chipset_base_dir ] subsystem_name = "hdf" part_name = "drivers_peripheral_camera" }