12e147c35Sopenharmony_ci# Copyright (C) 2023-2023 Huawei Device Co., Ltd.
22e147c35Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
32e147c35Sopenharmony_ci# you may not use this file except in compliance with the License.
42e147c35Sopenharmony_ci# You may obtain a copy of the License at
52e147c35Sopenharmony_ci#
62e147c35Sopenharmony_ci#      http://www.apache.org/licenses/LICENSE-2.0
72e147c35Sopenharmony_ci#
82e147c35Sopenharmony_ci#  Unless required by applicable law or agreed to in writing, software
92e147c35Sopenharmony_ci#  distributed under the License is distributed on an "AS IS" BASIS,
102e147c35Sopenharmony_ci#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
112e147c35Sopenharmony_ci#  See the License for the specific language governing permissions and
122e147c35Sopenharmony_ci#  limitations under the License.
132e147c35Sopenharmony_ci
142e147c35Sopenharmony_ciimport("//foundation/CastEngine/castengine_cast_framework/cast_engine.gni")
152e147c35Sopenharmony_ci
162e147c35Sopenharmony_ciconfig("cast_service_config") {
172e147c35Sopenharmony_ci  include_dirs = [
182e147c35Sopenharmony_ci    "include",
192e147c35Sopenharmony_ci    "src/include",
202e147c35Sopenharmony_ci  ]
212e147c35Sopenharmony_ci}
222e147c35Sopenharmony_ci
232e147c35Sopenharmony_ciohos_shared_library("cast_engine_service") {
242e147c35Sopenharmony_ci  install_enable = true
252e147c35Sopenharmony_ci  sources = [
262e147c35Sopenharmony_ci    "src/cast_service_listener_impl_proxy.cpp",
272e147c35Sopenharmony_ci    "src/cast_session_manager_service.cpp",
282e147c35Sopenharmony_ci    "src/cast_session_manager_service_stub.cpp",
292e147c35Sopenharmony_ci  ]
302e147c35Sopenharmony_ci
312e147c35Sopenharmony_ci  configs = [
322e147c35Sopenharmony_ci    ":cast_service_config",
332e147c35Sopenharmony_ci    "${cast_engine_root}:cast_engine_default_config",
342e147c35Sopenharmony_ci  ]
352e147c35Sopenharmony_ci
362e147c35Sopenharmony_ci  deps = [
372e147c35Sopenharmony_ci    "${cast_engine_client}:cast_client_inner",
382e147c35Sopenharmony_ci    "${cast_engine_common}:cast_engine_common_sources",
392e147c35Sopenharmony_ci    "src/device_manager:cast_discovery",
402e147c35Sopenharmony_ci    "src/session:cast_session",
412e147c35Sopenharmony_ci    "//third_party/openssl:libcrypto_shared",
422e147c35Sopenharmony_ci  ]
432e147c35Sopenharmony_ci
442e147c35Sopenharmony_ci  external_deps = [
452e147c35Sopenharmony_ci    "c_utils:utils",
462e147c35Sopenharmony_ci    "device_manager:devicemanagersdk",
472e147c35Sopenharmony_ci    "dsoftbus:softbus_client",
482e147c35Sopenharmony_ci    "graphic_surface:surface",
492e147c35Sopenharmony_ci    "hilog:libhilog",
502e147c35Sopenharmony_ci    "hisysevent:libhisysevent",
512e147c35Sopenharmony_ci    "input:libmmi-client",
522e147c35Sopenharmony_ci    "ipc:ipc_core",
532e147c35Sopenharmony_ci    "player_framework:media_client",
542e147c35Sopenharmony_ci    "safwk:system_ability_fwk",
552e147c35Sopenharmony_ci    "samgr:samgr_proxy",
562e147c35Sopenharmony_ci    "ability_runtime:app_manager",
572e147c35Sopenharmony_ci    "image_framework:image_native",
582e147c35Sopenharmony_ci  ]
592e147c35Sopenharmony_ci
602e147c35Sopenharmony_ci  subsystem_name = "castplus"
612e147c35Sopenharmony_ci  part_name = "cast_engine"
622e147c35Sopenharmony_ci  sanitize = {
632e147c35Sopenharmony_ci      cfi = true
642e147c35Sopenharmony_ci      cfi_cross_dso = true
652e147c35Sopenharmony_ci      debug = false
662e147c35Sopenharmony_ci  }
672e147c35Sopenharmony_ci  branch_protector_ret = "pac_ret"
682e147c35Sopenharmony_ci}
69