• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2024 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("../../../config.gni")
16import("../../../ressche_part.gni")
17import("//build/test.gni")
18
19ohos_shared_library("audio_qosmanager") {
20  sanitize = {
21    cfi = true
22    cfi_cross_dso = true
23    cfi_vcall_icall_only = true
24    debug = false
25    integer_overflow = true
26    ubsan = true
27    boundary_sanitize = true
28  }
29
30  include_dirs = [
31    "include",
32    "../audioschedule/include",
33    "../audioutils/include",
34    "../../../interfaces/inner_api/native/audiocommon/include",
35  ]
36
37  sources = [ "audio_qosmanager.cpp" ]
38
39  cflags = []
40  deps = []
41  external_deps = []
42
43  if (ressche_enable == true) {
44    deps += [ "../audioschedule:audio_schedule" ]
45    external_deps += [ "qos_manager:concurrent_task_client" ]
46    external_deps += [ "qos_manager:qos" ]
47    external_deps += [
48      "c_utils:utils",
49      "hilog:libhilog",
50      "init:libbegetutil",
51      "ipc:ipc_single",
52    ]
53    cflags += [ "-DQOSMANAGER_ENABLE" ]
54  }
55
56  cflags_cc = cflags
57  cflags_cc += [ "-std=c++20" ]
58  ldflags = [ "-Wl,--exclude-libs=All" ]
59
60  subsystem_name = "multimedia"
61  part_name = "audio_framework"
62}
63
64ohos_unittest("audio_qosmanager_unit_test") {
65  module_out_path = "audio_framework/audio_framework_route/audioqosmanager"
66
67  cflags = [
68    "-Wall",
69    "-Werror",
70    "-fno-access-control",
71  ]
72
73  include_dirs = [
74    "include",
75    "../audioschedule/include",
76    "../audioutils/include",
77    "../../../interfaces/inner_api/native/audiocommon/include",
78  ]
79
80  sources = [
81    "test/unittest/audio_qosmanager_unit_test.cpp",
82  ]
83
84  deps = [
85    ":audio_qosmanager",
86    "../audioutils:audio_utils"
87  ]
88
89  defines = []
90
91  external_deps = [
92    "googletest:gmock",
93    "googletest:gtest",
94    "hilog:libhilog",
95    "init:libbegetutil",
96  ]
97}