//
// libmediadrm
//

// TODO: change it back to cc_library_shared when MediaPlayer2 switches to
// using NdkMediaDrm, instead of MediaDrm.java.
cc_library {
    name: "libmediadrm",

    srcs: [
        "DrmPluginPath.cpp",
        "DrmSessionManager.cpp",
        "ICrypto.cpp",
        "IDrm.cpp",
        "IDrmClient.cpp",
        "IMediaDrmService.cpp",
        "SharedLibrary.cpp",
        "DrmHal.cpp",
        "CryptoHal.cpp",
    ],

    shared_libs: [
        "libbinder",
        "libcutils",
        "libdl",
        "liblog",
        "libmediadrmmetrics_lite",
        "libmediametrics",
        "libmediautils",
        "libprotobuf-cpp-lite",
        "libstagefright_foundation",
        "libutils",
        "android.hardware.drm@1.0",
        "android.hardware.drm@1.1",
        "libhidlallocatorutils",
        "libhidlbase",
        "libhidltransport",
    ],

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

// This is the version of the drm metrics configured for protobuf lite.
cc_library_shared {
    name: "libmediadrmmetrics_lite",
    srcs: [
        "DrmMetrics.cpp",
        "PluginMetricsReporting.cpp",
        "protos/metrics.proto",
    ],

    proto: {
        export_proto_headers: true,
        type: "lite",
    },
    shared_libs: [
        "android.hardware.drm@1.0",
        "android.hardware.drm@1.1",
        "libbase",
        "libbinder",
        "libhidlbase",
        "liblog",
        "libmediametrics",
        "libprotobuf-cpp-lite",
        "libstagefright_foundation",
        "libutils",
    ],
    cflags: [
        // Suppress unused parameter and no error options. These cause problems
        // with the when using the map type in a proto definition.
        "-Wno-unused-parameter",
        "-Wno-error",
    ],
}

// This is the version of the drm metrics library configured for full protobuf.
cc_library_shared {
    name: "libmediadrmmetrics_full",
    srcs: [
        "DrmMetrics.cpp",
        "PluginMetricsReporting.cpp",
        "protos/metrics.proto",
    ],

    proto: {
        export_proto_headers: true,
        type: "full",
    },
    shared_libs: [
        "android.hardware.drm@1.0",
        "android.hardware.drm@1.1",
        "libbase",
        "libbinder",
        "libhidlbase",
        "liblog",
        "libmediametrics",
        "libprotobuf-cpp-full",
        "libstagefright_foundation",
        "libutils",
    ],
    cflags: [
        // Suppress unused parameter and no error options. These cause problems
        // when using the map type in a proto definition.
        "-Wno-unused-parameter",
        "-Wno-error",
    ],
}