

package {
    default_applicable_licenses: [
        "frameworks_av_services_audioflinger_license",
    ],
}

// Added automatically by a large-scale-change
// See: http://go/android-license-faq
license {
    name: "frameworks_av_services_audioflinger_license",
    visibility: [":__subpackages__"],
    license_kinds: [
        "SPDX-license-identifier-Apache-2.0",
    ],
    license_text: [
        "NOTICE",
    ],
}

// base tidy_errors for this and all subprojects.
audioflinger_base_tidy_errors = [
    // https://clang.llvm.org/extra/clang-tidy/checks/list.html
    // For many categories, the checks are too many to specify individually.
    // Feel free to disable as needed - as warnings are generally ignored,
    // we treat warnings as errors.
    "android-*",
    "bugprone-*",
    "cert-*",
    "clang-analyzer-security*",
    "google-*",
    "misc-*",
    //"modernize-*",  // explicitly list the modernize as they can be subjective.
    "modernize-avoid-bind",
    //"modernize-avoid-c-arrays", // std::array<> can be verbose
    "modernize-concat-nested-namespaces",
    //"modernize-deprecated-headers", // C headers still ok even if there is C++ equivalent.
    "modernize-deprecated-ios-base-aliases",
    "modernize-loop-convert",
    "modernize-make-shared",
    "modernize-make-unique",
    // "modernize-pass-by-value",
    "modernize-raw-string-literal",
    "modernize-redundant-void-arg",
    "modernize-replace-auto-ptr",
    "modernize-replace-random-shuffle",
    "modernize-return-braced-init-list",
    "modernize-shrink-to-fit",
    "modernize-unary-static-assert",
    // "modernize-use-auto",  // found in MediaMetricsService.h, debatable - auto can obscure type
    "modernize-use-bool-literals",
    "modernize-use-default-member-init",
    "modernize-use-emplace",
    "modernize-use-equals-default",
    "modernize-use-equals-delete",
    // "modernize-use-nodiscard",
    "modernize-use-noexcept",
    "modernize-use-nullptr",
    "modernize-use-override",
    //"modernize-use-trailing-return-type", // not necessarily more readable
    "modernize-use-transparent-functors",
    "modernize-use-uncaught-exceptions",
    "modernize-use-using",
    "performance-*",

    // Remove some pedantic stylistic requirements.
    "-google-readability-casting", // C++ casts not always necessary and may be verbose
    "-google-readability-todo",    // do not require TODO(info)

    "-bugprone-unhandled-self-assignment",
    "-bugprone-suspicious-string-compare",
    "-cert-oop54-cpp", // found in TransactionLog.h
    "-bugprone-narrowing-conversions", // b/182410845
]

// TODO(b/275642749) Reenable these warnings
audioflinger_tidy_errors = audioflinger_base_tidy_errors + [
    "-bugprone-assignment-in-if-condition",
    "-bugprone-forward-declaration-namespace",
    "-bugprone-parent-virtual-call",
    "-cert-dcl59-cpp",
    "-cert-err34-c",
    "-google-build-namespaces",
    "-google-build-using-namespace",
    "-google-default-arguments",
    "-google-runtime-int",
    "-misc-const-correctness",
    "-misc-non-private-member-variables-in-classes",
    "-modernize-concat-nested-namespaces",
    "-modernize-loop-convert",
    "-modernize-use-default-member-init",
    "-modernize-use-equals-default",
    "-modernize-use-nullptr",
    "-modernize-use-override",
    "-modernize-use-using",
    "-performance-no-int-to-ptr",
]

audioflinger_base_cflags = [
    "-Wall",
    "-Wdeprecated",
    "-Werror",
    "-Werror=implicit-fallthrough",
    "-Werror=sometimes-uninitialized",
    "-Werror=conditional-uninitialized",
    "-Wextra",

    // suppress some warning chatter.
    "-Wno-deprecated-copy-with-dtor",
    "-Wno-deprecated-copy-with-user-provided-dtor",

    "-Wredundant-decls",
    "-Wshadow",
    "-Wstrict-aliasing",
    "-fstrict-aliasing",
    "-Wthread-safety",
    //"-Wthread-safety-negative", // experimental - looks broken in R.
    "-Wunreachable-code",
    "-Wunreachable-code-break",
    "-Wunreachable-code-return",
    "-Wunused",
    "-Wused-but-marked-unused",
]

// Eventually use common tidy defaults
cc_defaults {
    name: "audioflinger_flags_defaults",
    // https://clang.llvm.org/docs/UsersManual.html#command-line-options
    // https://clang.llvm.org/docs/DiagnosticsReference.html
    cflags: audioflinger_base_cflags,
    // https://clang.llvm.org/extra/clang-tidy/
    tidy: true,
    tidy_checks: audioflinger_tidy_errors,
    tidy_checks_as_errors: audioflinger_tidy_errors,
    tidy_flags: [
      "-format-style=file",
    ],
}

cc_library_shared {
    name: "libaudioflinger",

    defaults: [
        "latest_android_media_audio_common_types_cpp_shared",
        "latest_android_hardware_audio_core_sounddose_ndk_shared",
        "audioflinger_flags_defaults",
    ],

    srcs: [
        "AudioFlinger.cpp",
        "Client.cpp",
        "DeviceEffectManager.cpp",
        "Effects.cpp",
        "MelReporter.cpp",
        "PatchCommandThread.cpp",
        "PatchPanel.cpp",
        "Threads.cpp",
        "Tracks.cpp",
    ],

    include_dirs: [
        "frameworks/av/services/audiopolicy",
        "frameworks/av/services/medialog",
    ],

    shared_libs: [
        "audioflinger-aidl-cpp",
        "audioclient-types-aidl-cpp",
        "av-types-aidl-cpp",
        "effect-aidl-cpp",
        "libaudioclient_aidl_conversion",
        "libactivitymanager_aidl",
        "libaudioflinger_datapath",
        "libaudioflinger_fastpath",
        "libaudioflinger_timing",
        "libaudioflinger_utils",
        "libaudiofoundation",
        "libaudiohal",
        "libaudioprocessing",
        "libaudiospdif",
        "libaudioutils",
        "libcutils",
        "libutils",
        "liblog",
        "libbinder",
        "libbinder_ndk",
        "libaudioclient",
        "libaudiomanager",
        "libmedialogservice",
        "libmediametrics",
        "libmediautils",
        "libnbaio",
        "libnblog",
        "libpermission",
        "libpowermanager",
        "libmemunreachable",
        "libmedia_helper",
        "libshmemcompat",
        "libsounddose",
        "libvibrator",
        "packagemanager_aidl-cpp",
    ],

    static_libs: [
        "libcpustats",
        "libpermission",
    ],

    header_libs: [
        "libaaudio_headers",
        "libaudioclient_headers",
        "libaudiohal_headers",
        "libaudioutils_headers",
        "libmedia_headers",
    ],

    export_shared_lib_headers: [
        "libpermission",
        "android.hardware.audio.core.sounddose-V1-ndk",
    ],

    cflags: [
        "-fvisibility=hidden",
        "-Werror",
        "-Wall",
    ],
    sanitize: {
        integer_overflow: true,
    },

}

cc_library_headers {
    name: "libaudioflinger_headers",
    export_include_dirs: ["."],
}
