1# Copyright (c) 2022-2023 Shenzhen Kaihong DID 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("../..//codec.gni") 15 16ohos_shared_library("libcodec_component_manager_service_3.0") { 17 include_dirs = [ 18 "../../interfaces/include/", 19 "../../utils/include/", 20 "include", 21 ] 22 sources = [ 23 "../../utils/src/codec_hcb_util.c", 24 "src/codec_component_config.cpp", 25 "src/codec_component_manager_service.cpp", 26 "src/codec_component_service.cpp", 27 "src/codec_death_recipient.cpp", 28 "src/codec_dfx_service.cpp", 29 "src/codec_dma_buffer.cpp", 30 "src/codec_dyna_buffer.cpp", 31 "src/codec_handle_buffer.cpp", 32 "src/codec_omx_core.cpp", 33 "src/codec_share_buffer.cpp", 34 "src/component_mgr.cpp", 35 "src/component_node.cpp", 36 "src/icodec_buffer.cpp", 37 ] 38 39 if (is_standard_system) { 40 external_deps = [ 41 "c_utils:utils", 42 "drivers_interface_codec:libcodec_proxy_3.0", 43 "drivers_interface_display:libdisplay_buffer_proxy_1.0", 44 "drivers_interface_display:libdisplay_buffer_proxy_1.1", 45 "drivers_interface_display:libdisplay_composer_proxy_1.0", 46 "graphic_surface:buffer_handle", 47 "hdf_core:libhdf_host", 48 "hdf_core:libhdf_ipc_adapter", 49 "hdf_core:libhdf_utils", 50 "hdf_core:libhdi", 51 "hilog:libhilog", 52 "hitrace:hitrace_meter", 53 "ipc:ipc_single", 54 ] 55 } else { 56 external_deps = [ 57 "hilog:libhilog", 58 "ipc:ipc_single", 59 ] 60 } 61 external_deps += [ "openmax:libopenmax_static" ] 62 defines = [] 63 if (drivers_peripheral_codec_feature_set_omx_role) { 64 defines += [ "SUPPORT_ROLE" ] 65 } 66 if (use_musl && musl_use_jemalloc && musl_use_jemalloc_dfx_intf) { 67 defines += [ "CONFIG_USE_JEMALLOC_DFX_INTF" ] 68 } 69 innerapi_tags = [ "passthrough_indirect" ] 70 install_images = [ chipset_base_dir ] 71 subsystem_name = "hdf" 72 part_name = "drivers_peripheral_codec" 73} 74 75ohos_shared_library("libcodec_driver") { 76 include_dirs = [ 77 "../../interfaces/include/", 78 "../../utils/include/", 79 "include", 80 ] 81 82 sources = [ "src/codec_component_manager_driver.cpp" ] 83 84 deps = [ ":libcodec_component_manager_service_3.0" ] 85 86 if (is_standard_system) { 87 external_deps = [ 88 "c_utils:utils", 89 "drivers_interface_codec:libcodec_stub_3.0", 90 "drivers_interface_display:libdisplay_buffer_proxy_1.0", 91 "graphic_surface:buffer_handle", 92 "hdf_core:libhdf_host", 93 "hdf_core:libhdf_ipc_adapter", 94 "hdf_core:libhdf_utils", 95 "hdf_core:libhdi", 96 "hilog:libhilog", 97 "ipc:ipc_single", 98 ] 99 } else { 100 external_deps = [ 101 "hilog:libhilog", 102 "ipc:ipc_single", 103 ] 104 } 105 106 cflags_cc = [ "-fstack-protector-strong" ] 107 108 external_deps += [ "openmax:libopenmax_static" ] 109 install_images = [ chipset_base_dir ] 110 subsystem_name = "hdf" 111 part_name = "drivers_peripheral_codec" 112 shlib_type = "hdi" 113} 114 115group("codec_idl_omx_service") { 116 deps = [ 117 ":libcodec_component_manager_service_3.0", 118 ":libcodec_driver", 119 ] 120} 121