• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (C) 2022 Huawei Device 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.
13
14import("//build/ohos.gni")
15import("//build/ohos/ace/ace.gni")
16import("//foundation/multimedia/player_framework/config.gni")
17
18ohos_shared_library("media_avplayer") {
19  sanitize = {
20    cfi = true
21    cfi_cross_dso = true
22    debug = false
23  }
24
25  include_dirs = [
26    "//foundation/multimedia/player_framework/interfaces/inner_api",
27    "//foundation/multimedia/player_framework/frameworks/js/avplayer",
28    "//foundation/multimedia/player_framework/frameworks/js/common",
29    "//foundation/multimedia/player_framework/services/utils/include",
30    "//third_party/libuv/include",
31  ]
32
33  sources = [
34    "./media_data_source_callback.cpp",
35    "//foundation/multimedia/player_framework/frameworks/js/avplayer/avplayer_callback.cpp",
36    "//foundation/multimedia/player_framework/frameworks/js/avplayer/avplayer_napi.cpp",
37    "//foundation/multimedia/player_framework/frameworks/js/common/common_napi.cpp",
38  ]
39
40  cflags = [
41    "-std=c++17",
42    "-fno-rtti",
43    "-fno-exceptions",
44    "-Wall",
45    "-fno-common",
46    "-fstack-protector-strong",
47    "-Wshadow",
48    "-FPIC",
49    "-FS",
50    "-O2",
51    "-D_FORTIFY_SOURCE=2",
52    "-fvisibility=hidden",
53    "-Wformat=2",
54    "-Wfloat-equal",
55    "-Wdate-time",
56    "-Werror",
57    "-Wextra",
58    "-Wimplicit-fallthrough",
59    "-Wsign-compare",
60    "-Wunused-parameter",
61  ]
62
63  deps = [
64    "../../../../../../foundation/multimedia/player_framework/interfaces/inner_api/native:media_client",
65    "../../../../../../foundation/multimedia/player_framework/services/utils:media_service_utils",
66    "../../../../../../third_party/bounds_checking_function:libsec_shared",
67  ]
68
69  external_deps = [
70    "audio_framework:audio_client",
71    "c_utils:utils",
72    "eventhandler:libeventhandler",
73    "hilog:libhilog",
74    "hitrace:hitrace_meter",
75    "napi:ace_napi",
76    "qos_manager:qos",
77  ]
78
79  if (multimedia_player_framework_support_video) {
80    external_deps += [ "graphic_surface:surface" ]
81  }
82
83  if (multimedia_player_framework_support_jsstack) {
84    external_deps += [ "hiview:libxpower_event_js" ]
85  }
86
87  if (multimedia_player_framework_support_drm) {
88    external_deps += [ "drm_framework:drm_framework" ]
89  }
90
91  defines = []
92  defines += player_framework_defines
93  innerapi_tags = [ "platformsdk" ]
94  part_name = "player_framework"
95  subsystem_name = "multimedia"
96}
97