180922886Sopenharmony_ci# Copyright (c) 2022-2023 Huawei Device Co., Ltd. 280922886Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 380922886Sopenharmony_ci# you may not use this file except in compliance with the License. 480922886Sopenharmony_ci# You may obtain a copy of the License at 580922886Sopenharmony_ci# 680922886Sopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 780922886Sopenharmony_ci# 880922886Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software 980922886Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 1080922886Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1180922886Sopenharmony_ci# See the License for the specific language governing permissions and 1280922886Sopenharmony_ci# limitations under the License. 1380922886Sopenharmony_ci 1480922886Sopenharmony_ciimport("//build/ohos.gni") 1580922886Sopenharmony_ciimport("../../../castplus_cast_engine_part.gni") 1680922886Sopenharmony_ciimport("../../../config.gni") 1780922886Sopenharmony_ci 1880922886Sopenharmony_ciconfig("avsession_client_config") { 1980922886Sopenharmony_ci include_dirs = [ 2080922886Sopenharmony_ci "include", 2180922886Sopenharmony_ci "../../../interfaces/inner_api/native/session/include", 2280922886Sopenharmony_ci "../../../services/session/ipc/base", 2380922886Sopenharmony_ci "../../../services/session/ipc/proxy", 2480922886Sopenharmony_ci "../../../services/session/ipc/stub", 2580922886Sopenharmony_ci ] 2680922886Sopenharmony_ci} 2780922886Sopenharmony_ci 2880922886Sopenharmony_ciohos_shared_library("avsession_client") { 2980922886Sopenharmony_ci install_enable = true 3080922886Sopenharmony_ci ipc_sources = [ 3180922886Sopenharmony_ci "../../../services/session/ipc/proxy/avsession_controller_proxy.cpp", 3280922886Sopenharmony_ci "../../../services/session/ipc/proxy/avsession_proxy.cpp", 3380922886Sopenharmony_ci "../../../services/session/ipc/proxy/avsession_service_proxy.cpp", 3480922886Sopenharmony_ci "../../../services/session/ipc/stub/avcontroller_callback_stub.cpp", 3580922886Sopenharmony_ci "../../../services/session/ipc/stub/avsession_callback_stub.cpp", 3680922886Sopenharmony_ci "../../../services/session/ipc/stub/session_listener_stub.cpp", 3780922886Sopenharmony_ci ] 3880922886Sopenharmony_ci 3980922886Sopenharmony_ci client_sources = [ 4080922886Sopenharmony_ci "src/avcontroller_callback_client.cpp", 4180922886Sopenharmony_ci "src/avsession_callback_client.cpp", 4280922886Sopenharmony_ci "src/avsession_manager.cpp", 4380922886Sopenharmony_ci "src/avsession_manager_impl.cpp", 4480922886Sopenharmony_ci "src/avsession_pixel_map_adapter.cpp", 4580922886Sopenharmony_ci "src/session_listener_client.cpp", 4680922886Sopenharmony_ci ] 4780922886Sopenharmony_ci 4880922886Sopenharmony_ci sanitize = { 4980922886Sopenharmony_ci cfi = true 5080922886Sopenharmony_ci cfi_cross_dso = true 5180922886Sopenharmony_ci debug = false 5280922886Sopenharmony_ci } 5380922886Sopenharmony_ci 5480922886Sopenharmony_ci sources = ipc_sources + client_sources 5580922886Sopenharmony_ci 5680922886Sopenharmony_ci public_configs = [ ":avsession_client_config" ] 5780922886Sopenharmony_ci 5880922886Sopenharmony_ci public_deps = [ 5980922886Sopenharmony_ci "../../../utils:avsession_utils", 6080922886Sopenharmony_ci "../../common:avsession_common", 6180922886Sopenharmony_ci ] 6280922886Sopenharmony_ci 6380922886Sopenharmony_ci external_deps = [ 6480922886Sopenharmony_ci "ability_base:want", 6580922886Sopenharmony_ci "ability_runtime:wantagent_innerkits", 6680922886Sopenharmony_ci "audio_framework:audio_client", 6780922886Sopenharmony_ci "c_utils:utils", 6880922886Sopenharmony_ci "hilog:libhilog", 6980922886Sopenharmony_ci "image_framework:image_native", 7080922886Sopenharmony_ci "input:libmmi-client", 7180922886Sopenharmony_ci "ipc:ipc_single", 7280922886Sopenharmony_ci "samgr:samgr_proxy", 7380922886Sopenharmony_ci ] 7480922886Sopenharmony_ci 7580922886Sopenharmony_ci cflags = [] 7680922886Sopenharmony_ci 7780922886Sopenharmony_ci if (castplus_cast_engine_enable) { 7880922886Sopenharmony_ci cflags += [ "-DCASTPLUS_CAST_ENGINE_ENABLE" ] 7980922886Sopenharmony_ci public_deps += [ "./../session:avsession_cast_client" ] 8080922886Sopenharmony_ci } 8180922886Sopenharmony_ci 8280922886Sopenharmony_ci if (multimedia_av_session_enable_trace_control) { 8380922886Sopenharmony_ci cflags += [ "-DENBABLE_AVSESSION_TRACE_CONTROL" ] 8480922886Sopenharmony_ci external_deps += [ "hitrace:hitrace_meter" ] 8580922886Sopenharmony_ci } 8680922886Sopenharmony_ci if (multimedia_av_session_enable_sysevent_control) { 8780922886Sopenharmony_ci cflags += [ "-DENABLE_AVSESSION_SYSEVENT_CONTROL" ] 8880922886Sopenharmony_ci external_deps += [ "hisysevent:libhisysevent" ] 8980922886Sopenharmony_ci } 9080922886Sopenharmony_ci 9180922886Sopenharmony_ci innerapi_tags = [ "platformsdk" ] 9280922886Sopenharmony_ci subsystem_name = "multimedia" 9380922886Sopenharmony_ci part_name = "av_session" 9480922886Sopenharmony_ci} 9580922886Sopenharmony_ci 9680922886Sopenharmony_ciohos_shared_library("avsession_cast_client") { 9780922886Sopenharmony_ci install_enable = true 9880922886Sopenharmony_ci sanitize = { 9980922886Sopenharmony_ci cfi = true 10080922886Sopenharmony_ci cfi_cross_dso = true 10180922886Sopenharmony_ci debug = false 10280922886Sopenharmony_ci } 10380922886Sopenharmony_ci ipc_sources = [ 10480922886Sopenharmony_ci "../../../services/session/ipc/proxy/avcast_controller_proxy.cpp", 10580922886Sopenharmony_ci "../../../services/session/ipc/stub/avcast_controller_callback_stub.cpp", 10680922886Sopenharmony_ci ] 10780922886Sopenharmony_ci 10880922886Sopenharmony_ci client_sources = [ "src/avcast_controller_callback_client.cpp" ] 10980922886Sopenharmony_ci 11080922886Sopenharmony_ci sources = ipc_sources + client_sources 11180922886Sopenharmony_ci 11280922886Sopenharmony_ci public_configs = [ ":avsession_client_config" ] 11380922886Sopenharmony_ci 11480922886Sopenharmony_ci public_deps = [ 11580922886Sopenharmony_ci "../../../utils:avsession_utils", 11680922886Sopenharmony_ci "../../common:avsession_common", 11780922886Sopenharmony_ci ] 11880922886Sopenharmony_ci 11980922886Sopenharmony_ci external_deps = [ 12080922886Sopenharmony_ci "ability_base:want", 12180922886Sopenharmony_ci "ability_runtime:wantagent_innerkits", 12280922886Sopenharmony_ci "audio_framework:audio_client", 12380922886Sopenharmony_ci "c_utils:utils", 12480922886Sopenharmony_ci "graphic_surface:surface", 12580922886Sopenharmony_ci "hilog:libhilog", 12680922886Sopenharmony_ci "image_framework:image_native", 12780922886Sopenharmony_ci "input:libmmi-client", 12880922886Sopenharmony_ci "ipc:ipc_single", 12980922886Sopenharmony_ci "samgr:samgr_proxy", 13080922886Sopenharmony_ci ] 13180922886Sopenharmony_ci 13280922886Sopenharmony_ci cflags = [] 13380922886Sopenharmony_ci 13480922886Sopenharmony_ci if (multimedia_av_session_enable_trace_control) { 13580922886Sopenharmony_ci cflags += [ "-DENBABLE_AVSESSION_TRACE_CONTROL" ] 13680922886Sopenharmony_ci external_deps += [ "hitrace:hitrace_meter" ] 13780922886Sopenharmony_ci } 13880922886Sopenharmony_ci 13980922886Sopenharmony_ci if (multimedia_av_session_enable_sysevent_control) { 14080922886Sopenharmony_ci cflags += [ "-DENABLE_AVSESSION_SYSEVENT_CONTROL" ] 14180922886Sopenharmony_ci external_deps += [ "hisysevent:libhisysevent" ] 14280922886Sopenharmony_ci } 14380922886Sopenharmony_ci 14480922886Sopenharmony_ci innerapi_tags = [ "platformsdk" ] 14580922886Sopenharmony_ci subsystem_name = "multimedia" 14680922886Sopenharmony_ci part_name = "av_session" 14780922886Sopenharmony_ci} 148