1094332d3Sopenharmony_ci# Copyright (c) 2023 Shenzhen Kaihong DID 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_ci
14094332d3Sopenharmony_ciimport("//build/ohos.gni")
15094332d3Sopenharmony_ci
16094332d3Sopenharmony_ciohos_executable("codec_idl_omx_decode") {
17094332d3Sopenharmony_ci  include_dirs = [
18094332d3Sopenharmony_ci    "./include",
19094332d3Sopenharmony_ci    "../../../interfaces/include",
20094332d3Sopenharmony_ci  ]
21094332d3Sopenharmony_ci
22094332d3Sopenharmony_ci  sources = [
23094332d3Sopenharmony_ci    "src/codec_hdi_callback.cpp",
24094332d3Sopenharmony_ci    "src/codec_hdi_decode.cpp",
25094332d3Sopenharmony_ci    "src/command_parse.cpp",
26094332d3Sopenharmony_ci  ]
27094332d3Sopenharmony_ci
28094332d3Sopenharmony_ci  if (is_standard_system) {
29094332d3Sopenharmony_ci    external_deps = [
30094332d3Sopenharmony_ci      "c_utils:utils",
31094332d3Sopenharmony_ci      "drivers_interface_codec:libcodec_proxy_3.0",
32094332d3Sopenharmony_ci      "drivers_interface_display:libdisplay_buffer_hdi_impl",
33094332d3Sopenharmony_ci      "drivers_interface_display:libdisplay_buffer_proxy_1.0",
34094332d3Sopenharmony_ci      "drivers_interface_display:libdisplay_composer_hdi_impl_1.2",
35094332d3Sopenharmony_ci      "drivers_interface_display:libdisplay_composer_proxy_1.0",
36094332d3Sopenharmony_ci      "graphic_surface:buffer_handle",
37094332d3Sopenharmony_ci      "hdf_core:libhdf_host",
38094332d3Sopenharmony_ci      "hdf_core:libhdf_ipc_adapter",
39094332d3Sopenharmony_ci      "hdf_core:libhdf_utils",
40094332d3Sopenharmony_ci      "hdf_core:libhdi",
41094332d3Sopenharmony_ci      "hilog:libhilog",
42094332d3Sopenharmony_ci      "ipc:ipc_single",
43094332d3Sopenharmony_ci    ]
44094332d3Sopenharmony_ci  } else {
45094332d3Sopenharmony_ci    external_deps = [ "hilog:libhilog" ]
46094332d3Sopenharmony_ci  }
47094332d3Sopenharmony_ci  external_deps += [ "openmax:libopenmax_static" ]
48094332d3Sopenharmony_ci  install_enable = false
49094332d3Sopenharmony_ci  install_images = [ chipset_base_dir ]
50094332d3Sopenharmony_ci  subsystem_name = "hdf"
51094332d3Sopenharmony_ci  part_name = "drivers_peripheral_codec"
52094332d3Sopenharmony_ci}
53094332d3Sopenharmony_ci
54094332d3Sopenharmony_ciohos_executable("codec_idl_omx_encode") {
55094332d3Sopenharmony_ci  include_dirs = [
56094332d3Sopenharmony_ci    "./include",
57094332d3Sopenharmony_ci    "../../../interfaces/include",
58094332d3Sopenharmony_ci  ]
59094332d3Sopenharmony_ci
60094332d3Sopenharmony_ci  sources = [
61094332d3Sopenharmony_ci    "src/codec_hdi_callback.cpp",
62094332d3Sopenharmony_ci    "src/codec_hdi_encode.cpp",
63094332d3Sopenharmony_ci    "src/command_parse.cpp",
64094332d3Sopenharmony_ci  ]
65094332d3Sopenharmony_ci
66094332d3Sopenharmony_ci  if (is_standard_system) {
67094332d3Sopenharmony_ci    external_deps = [
68094332d3Sopenharmony_ci      "c_utils:utils",
69094332d3Sopenharmony_ci      "drivers_interface_codec:libcodec_proxy_3.0",
70094332d3Sopenharmony_ci      "drivers_interface_display:libdisplay_buffer_hdi_impl",
71094332d3Sopenharmony_ci      "drivers_interface_display:libdisplay_buffer_proxy_1.0",
72094332d3Sopenharmony_ci      "drivers_interface_display:libdisplay_composer_hdi_impl_1.2",
73094332d3Sopenharmony_ci      "drivers_interface_display:libdisplay_composer_proxy_1.0",
74094332d3Sopenharmony_ci      "graphic_surface:buffer_handle",
75094332d3Sopenharmony_ci      "hdf_core:libhdf_host",
76094332d3Sopenharmony_ci      "hdf_core:libhdf_ipc_adapter",
77094332d3Sopenharmony_ci      "hdf_core:libhdf_utils",
78094332d3Sopenharmony_ci      "hdf_core:libhdi",
79094332d3Sopenharmony_ci      "hilog:libhilog",
80094332d3Sopenharmony_ci      "ipc:ipc_single",
81094332d3Sopenharmony_ci    ]
82094332d3Sopenharmony_ci  } else {
83094332d3Sopenharmony_ci    external_deps = [ "hilog:libhilog" ]
84094332d3Sopenharmony_ci  }
85094332d3Sopenharmony_ci  external_deps += [ "openmax:libopenmax_static" ]
86094332d3Sopenharmony_ci  install_enable = false
87094332d3Sopenharmony_ci  install_images = [ chipset_base_dir ]
88094332d3Sopenharmony_ci  subsystem_name = "hdf"
89094332d3Sopenharmony_ci  part_name = "drivers_peripheral_codec"
90094332d3Sopenharmony_ci}
91094332d3Sopenharmony_ci
92094332d3Sopenharmony_cigroup("codec_idl_omx_demo") {
93094332d3Sopenharmony_ci  deps = [
94094332d3Sopenharmony_ci    ":codec_idl_omx_decode",
95094332d3Sopenharmony_ci    ":codec_idl_omx_encode",
96094332d3Sopenharmony_ci  ]
97094332d3Sopenharmony_ci}
98