1package {
2    // See: http://go/android-license-faq
3    // A large-scale-change added 'default_applicable_licenses' to import
4    // all of the 'license_kinds' from "frameworks_base_license"
5    // to get the below license kinds:
6    //   SPDX-license-identifier-Apache-2.0
7    default_applicable_licenses: ["frameworks_av_services_audioflinger_license"],
8}
9
10// TODO(b/275642749) Reenable these warnings
11audioflinger_utils_tidy_errors = audioflinger_base_tidy_errors + [
12    "-misc-non-private-member-variables-in-classes",
13]
14
15// Eventually use common tidy defaults
16cc_defaults {
17    name: "audioflinger_utils_flags_defaults",
18    // https://clang.llvm.org/docs/UsersManual.html#command-line-options
19    // https://clang.llvm.org/docs/DiagnosticsReference.html
20    cflags: audioflinger_base_cflags,
21    // https://clang.llvm.org/extra/clang-tidy/
22    tidy: true,
23    tidy_checks: audioflinger_utils_tidy_errors,
24    tidy_checks_as_errors: audioflinger_utils_tidy_errors,
25    tidy_flags: [
26        "-format-style=file",
27    ],
28}
29
30cc_library {
31    name: "libaudioflinger_utils",
32
33    defaults: [
34        "audioflinger_utils_flags_defaults",
35        "latest_android_media_audio_common_types_cpp_shared", // PropertyUtils.cpp
36    ],
37
38    srcs: [
39        "AudioWatchdog.cpp",
40        "BufLog.cpp",
41        "NBAIO_Tee.cpp",
42        "Permission.cpp",
43        "PropertyUtils.cpp",
44        "TypedLogger.cpp",
45        "Vibrator.cpp",
46    ],
47
48    shared_libs: [
49        "framework-permission-aidl-cpp",
50        "libaudioclient_aidl_conversion",
51        "libaudioutils",
52        "libbase",
53        "libbinder",
54        "libcutils", // property_get_int32
55        "liblog",
56        "libnbaio",
57        "libnblog",
58        "libutils",
59        "libvibrator",
60    ],
61
62    static_libs: [
63        "libsndfile",
64    ],
65
66    header_libs: [
67        "libaaudio_headers", // PropertyUtils.cpp
68    ],
69
70    include_dirs: [
71        "frameworks/av/services/audioflinger", // for configuration
72    ],
73}
74