1094332d3Sopenharmony_ci# Copyright (c) 2023 Huawei Device Co., Ltd. 2094332d3Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 3094332d3Sopenharmony_ci# you may not use this file except in compliance with the License. 4094332d3Sopenharmony_ci# You may obtain a copy of the License at 5094332d3Sopenharmony_ci# 6094332d3Sopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 7094332d3Sopenharmony_ci# 8094332d3Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software 9094332d3Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 10094332d3Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11094332d3Sopenharmony_ci# See the License for the specific language governing permissions and 12094332d3Sopenharmony_ci# limitations under the License. 13094332d3Sopenharmony_ciimport("//build/ohos.gni") 14094332d3Sopenharmony_ci 15094332d3Sopenharmony_ci# NOSORT 16094332d3Sopenharmony_ciimport("../../../camera.gni") 17094332d3Sopenharmony_ci 18094332d3Sopenharmony_ci# NOSORT 19094332d3Sopenharmony_ciimport("//build/config/components/hdi/hdi.gni") 20094332d3Sopenharmony_ciimport("$hdf_fwk_path/tools/hc-gen/hc_gen.gni") 21094332d3Sopenharmony_ciimport("../camera_usb.gni") 22094332d3Sopenharmony_cihc_gen_c("generate_source") { 23094332d3Sopenharmony_ci sources = [ 24094332d3Sopenharmony_ci "./pipeline_core/config.hcs", 25094332d3Sopenharmony_ci "./pipeline_core/params.hcs", 26094332d3Sopenharmony_ci ] 27094332d3Sopenharmony_ci} 28094332d3Sopenharmony_ci 29094332d3Sopenharmony_ciaction("copy_source") { 30094332d3Sopenharmony_ci script = "/usr/bin/env" 31094332d3Sopenharmony_ci outputs = [ "$target_out_dir/tmp.c" ] # no use, just for gn complains 32094332d3Sopenharmony_ci args = [ 33094332d3Sopenharmony_ci "cp", 34094332d3Sopenharmony_ci "-f", 35094332d3Sopenharmony_ci ] 36094332d3Sopenharmony_ci args += rebase_path(get_target_outputs(":generate_source")) 37094332d3Sopenharmony_ci args += [ rebase_path( 38094332d3Sopenharmony_ci "$camera_path_usb/pipeline_core/pipeline_impl/src/strategy/config/") ] 39094332d3Sopenharmony_ci deps = [ ":generate_source" ] 40094332d3Sopenharmony_ci} 41094332d3Sopenharmony_ci 42094332d3Sopenharmony_ciohos_prebuilt_etc("config.c") { 43094332d3Sopenharmony_ci deps = [ ":copy_source" ] 44094332d3Sopenharmony_ci source = "$camera_path_usb/pipeline_core/pipeline_impl/src/strategy/config/config.c" 45094332d3Sopenharmony_ci exec_script( 46094332d3Sopenharmony_ci "/usr/bin/env", 47094332d3Sopenharmony_ci [ 48094332d3Sopenharmony_ci "touch", 49094332d3Sopenharmony_ci rebase_path( 50094332d3Sopenharmony_ci "$camera_path_usb/pipeline_core/pipeline_impl/src/strategy/config/config.c"), 51094332d3Sopenharmony_ci ]) 52094332d3Sopenharmony_ci subsystem_name = "hdf" 53094332d3Sopenharmony_ci part_name = "drivers_peripheral_camera" 54094332d3Sopenharmony_ci} 55094332d3Sopenharmony_ci 56094332d3Sopenharmony_ciohos_prebuilt_etc("params.c") { 57094332d3Sopenharmony_ci deps = [ ":copy_source" ] 58094332d3Sopenharmony_ci source = "$camera_path_usb/pipeline_core/pipeline_impl/src/strategy/config/params.c" 59094332d3Sopenharmony_ci exec_script( 60094332d3Sopenharmony_ci "/usr/bin/env", 61094332d3Sopenharmony_ci [ 62094332d3Sopenharmony_ci "touch", 63094332d3Sopenharmony_ci rebase_path( 64094332d3Sopenharmony_ci "$camera_path_usb/pipeline_core/pipeline_impl/src/strategy/config/params.c"), 65094332d3Sopenharmony_ci ]) 66094332d3Sopenharmony_ci subsystem_name = "hdf" 67094332d3Sopenharmony_ci part_name = "drivers_peripheral_camera" 68094332d3Sopenharmony_ci} 69094332d3Sopenharmony_ci 70094332d3Sopenharmony_cihc_gen("build_ipp_algo_config") { 71094332d3Sopenharmony_ci sources = [ rebase_path("./pipeline_core/ipp_algo_config.hcs") ] 72094332d3Sopenharmony_ci} 73094332d3Sopenharmony_ci 74094332d3Sopenharmony_ciohos_prebuilt_etc("ipp_algo_config.hcb") { 75094332d3Sopenharmony_ci deps = [ ":build_ipp_algo_config" ] 76094332d3Sopenharmony_ci hcs_outputs = get_target_outputs(":build_ipp_algo_config") 77094332d3Sopenharmony_ci source = hcs_outputs[0] 78094332d3Sopenharmony_ci relative_install_dir = "hdfconfig" 79094332d3Sopenharmony_ci install_images = [ chipset_base_dir ] 80094332d3Sopenharmony_ci subsystem_name = "hdf" 81094332d3Sopenharmony_ci part_name = "drivers_peripheral_camera" 82094332d3Sopenharmony_ci} 83094332d3Sopenharmony_ci 84094332d3Sopenharmony_ciconfig("example_config") { 85094332d3Sopenharmony_ci visibility = [ ":*" ] 86094332d3Sopenharmony_ci 87094332d3Sopenharmony_ci cflags = [ 88094332d3Sopenharmony_ci "-Wno-error", 89094332d3Sopenharmony_ci "-Wno-unused-function", 90094332d3Sopenharmony_ci "-Wno-unused-parameter", 91094332d3Sopenharmony_ci ] 92094332d3Sopenharmony_ci} 93094332d3Sopenharmony_ci 94094332d3Sopenharmony_cigroup("chipset_build") { 95094332d3Sopenharmony_ci public_deps = [ 96094332d3Sopenharmony_ci ":config.c", 97094332d3Sopenharmony_ci ":ipp_algo_config.hcb", 98094332d3Sopenharmony_ci ":params.c", 99094332d3Sopenharmony_ci "$camera_path_usb/adapter/platform/v4l2/src/driver_adapter:usb_camera_v4l2_adapter", 100094332d3Sopenharmony_ci ] 101094332d3Sopenharmony_ci} 102