1e0e9324cSopenharmony_ci# Copyright (c) 2023 Shenzhen Kaihong Digital Industry Development Co., Ltd.
2e0e9324cSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
3e0e9324cSopenharmony_ci# you may not use this file except in compliance with the License.
4e0e9324cSopenharmony_ci# You may obtain a copy of the License at
5e0e9324cSopenharmony_ci#
6e0e9324cSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
7e0e9324cSopenharmony_ci#
8e0e9324cSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
9e0e9324cSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
10e0e9324cSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11e0e9324cSopenharmony_ci# See the License for the specific language governing permissions and
12e0e9324cSopenharmony_ci# limitations under the License.
13e0e9324cSopenharmony_ci
14e0e9324cSopenharmony_ciimport("//build/ohos.gni")
15e0e9324cSopenharmony_ciimport("//foundation/CastEngine/castengine_wifi_display/config.gni")
16e0e9324cSopenharmony_ci
17e0e9324cSopenharmony_ciohos_source_set("sharing_media_channel_srcs") {
18e0e9324cSopenharmony_ci  cflags = [
19e0e9324cSopenharmony_ci    "-Wno-invalid-noreturn",
20e0e9324cSopenharmony_ci    "-Wno-deprecated-builtins",
21e0e9324cSopenharmony_ci  ]
22e0e9324cSopenharmony_ci
23e0e9324cSopenharmony_ci  sanitize = {
24e0e9324cSopenharmony_ci    cfi = true
25e0e9324cSopenharmony_ci    cfi_cross_dso = true
26e0e9324cSopenharmony_ci    debug = false
27e0e9324cSopenharmony_ci  }
28e0e9324cSopenharmony_ci
29e0e9324cSopenharmony_ci  sources = [
30e0e9324cSopenharmony_ci    "base_consumer.cpp",
31e0e9324cSopenharmony_ci    "base_producer.cpp",
32e0e9324cSopenharmony_ci    "buffer_dispatcher.cpp",
33e0e9324cSopenharmony_ci    "channel_manager.cpp",
34e0e9324cSopenharmony_ci    "media_channel.cpp",
35e0e9324cSopenharmony_ci  ]
36e0e9324cSopenharmony_ci
37e0e9324cSopenharmony_ci  configs = [ "$SHARING_ROOT_DIR/tests:coverage_flags" ]
38e0e9324cSopenharmony_ci
39e0e9324cSopenharmony_ci  include_dirs = [
40e0e9324cSopenharmony_ci    "//utils/native/base/include",
41e0e9324cSopenharmony_ci    "$SHARING_ROOT_DIR/services",
42e0e9324cSopenharmony_ci    "$SHARING_ROOT_DIR/services/mediaplayer/include",
43e0e9324cSopenharmony_ci    "$SHARING_ROOT_DIR/services/mediachannel",
44e0e9324cSopenharmony_ci    "$SHARING_ROOT_DIR/services/utils",
45e0e9324cSopenharmony_ci    "$SHARING_ROOT_DIR/services/common",
46e0e9324cSopenharmony_ci    "$SHARING_ROOT_DIR/services/codec/include",
47e0e9324cSopenharmony_ci    "$SHARING_ROOT_DIR/services/protocol",
48e0e9324cSopenharmony_ci    "$SHARING_ROOT_DIR/services/protocol/frame",
49e0e9324cSopenharmony_ci    "$SHARING_ROOT_DIR/services/protocol/rtp",
50e0e9324cSopenharmony_ci    "$SHARING_ROOT_DIR/services/protocol/rtp/interfaces",
51e0e9324cSopenharmony_ci    "$SHARING_ROOT_DIR/services/extend/magic_enum",
52e0e9324cSopenharmony_ci    "//base/security/access_token/interfaces/innerkits/accesstoken/include",
53e0e9324cSopenharmony_ci    "//base/security/access_token/interfaces/innerkits/token_setproc/include",
54e0e9324cSopenharmony_ci    "//drivers/peripheral/camera/interfaces/metadata/include",
55e0e9324cSopenharmony_ci    "//utils/system/safwk/native/include",
56e0e9324cSopenharmony_ci  ]
57e0e9324cSopenharmony_ci
58e0e9324cSopenharmony_ci  external_deps = [
59e0e9324cSopenharmony_ci    "access_token:libaccesstoken_sdk",
60e0e9324cSopenharmony_ci    "access_token:libnativetoken",
61e0e9324cSopenharmony_ci    "access_token:libtoken_setproc",
62e0e9324cSopenharmony_ci    "audio_framework:audio_capturer",
63e0e9324cSopenharmony_ci    "audio_framework:audio_client",
64e0e9324cSopenharmony_ci    "audio_framework:audio_renderer",
65e0e9324cSopenharmony_ci    "av_codec:av_codec_client",
66e0e9324cSopenharmony_ci    "camera_framework:camera_framework",
67e0e9324cSopenharmony_ci    "drivers_interface_camera:metadata",
68e0e9324cSopenharmony_ci    "graphic_surface:surface",
69e0e9324cSopenharmony_ci    "hilog:libhilog",
70e0e9324cSopenharmony_ci  ]
71e0e9324cSopenharmony_ci
72e0e9324cSopenharmony_ci  subsystem_name = "castplus"
73e0e9324cSopenharmony_ci  part_name = "sharing_framework"
74e0e9324cSopenharmony_ci}
75