1# Copyright (c) 2023 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")
17
18ohos_shared_library("audio_schedule") {
19  branch_protector_ret = "pac_ret"
20  sanitize = {
21    cfi = true
22    cfi_cross_dso = true
23    cfi_vcall_icall_only = true
24    debug = false
25  }
26
27  include_dirs = [
28    "include",
29    "../audioutils/include",
30    "../../../interfaces/inner_api/native/audiocommon/include",
31  ]
32
33  sources = [ "audio_schedule.cpp" ]
34
35  cflags = [
36    "-Wall",
37    "-Werror",
38  ]
39
40  deps = [ "../audioutils:audio_utils" ]
41
42  external_deps = [
43    "c_utils:utils",
44    "hilog:libhilog",
45    "ipc:ipc_single",
46    "samgr:samgr_proxy",
47  ]
48
49  if (ressche_enable == true) {
50    external_deps += [ "resource_schedule_service:ressched_client" ]
51    cflags += [ "-DRESSCHE_ENABLE" ]
52  }
53
54  cflags_cc = cflags
55  cflags_cc += [ "-std=c++20" ]
56
57  subsystem_name = "multimedia"
58  part_name = "audio_framework"
59}
60