• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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