package {
    // See: http://go/android-license-faq
    // A large-scale-change added 'default_applicable_licenses' to import
    // all of the 'license_kinds' from "frameworks_av_license"
    // to get the below license kinds:
    //   SPDX-license-identifier-Apache-2.0
    default_applicable_licenses: ["frameworks_av_license"],
}

cc_defaults {
    name: "libnbaio_mono_defaults",
    srcs: [
        "MonoPipe.cpp",
        "MonoPipeReader.cpp",
        "NBAIO.cpp",
    ],
    header_libs: [
        "libaudio_system_headers",
        "libaudioclient_headers",
    ],
    export_header_lib_headers: [
        "libaudioclient_headers",
    ],

    shared_libs: [
        "libaudioutils",
        "libcutils",
        "liblog",
        "libutils",
    ],
    export_shared_lib_headers: [
        "libaudioutils",
    ],

    export_include_dirs: ["include_mono"],

    cflags: [
        "-Wall",
        "-Werror",
    ],
}

// libnbaio_mono is the part of libnbaio that is available for vendors to use. Vendor modules can't
// link against libnbaio and system modules can't link against libnbaio_mono. The rest of libnbaio
// pulls in too many other dependencies.
cc_library_shared {
    name: "libnbaio_mono",
    vendor: true,
    defaults: ["libnbaio_mono_defaults"],
}

cc_library {
    name: "libnbaio",
    defaults: ["libnbaio_mono_defaults"],
    srcs: [
        "AudioBufferProviderSource.cpp",
        "AudioStreamInSource.cpp",
        "AudioStreamOutSink.cpp",
        "Pipe.cpp",
        "PipeReader.cpp",
        "SourceAudioBufferProvider.cpp",
    ],

    // libsndfile license is incompatible; uncomment to use for local debug only
    // srcs: [
    //     "LibsndfileSink.cpp",
    //     "LibsndfileSource.cpp",
    // ],
    // static_libs: ["libsndfile"],

    shared_libs: [
        "libmediautils",
    ],

    header_libs: ["libaudiohal_headers"],

    export_include_dirs: ["include"],
}
