// This file was auto-generated. Do not edit manually.
// Use launch_hal_test.py or update_makefiles.py in test/vts-testcase/hal/script/ to generate this file.

// Generate .vts spec files.
hal2vts {
    name: "android.hardware.drm@1.1-vts.spec",
    hidl_gen_args: "-r android.hardware:hardware/interfaces",
    srcs: [
        ":android.hardware.drm@1.1_hal",
    ],
    out: [
        "android/hardware/drm/1.1/CryptoFactory.vts",
        "android/hardware/drm/1.1/DrmFactory.vts",
        "android/hardware/drm/1.1/DrmPlugin.vts",
        "android/hardware/drm/1.1/types.vts",
    ],
}

// Build VTS driver.
genrule {
    name: "android.hardware.drm@1.1-vts.driver_genc++",
    tools: ["hidl-gen", "vtsc"],
    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -r android.hardware:hardware/interfaces android.hardware.drm@1.1 && $(location vtsc) -mDRIVER -tSOURCE -b$(genDir) android/hardware/drm/1.1/ $(genDir)/android/hardware/drm/1.1/",
    srcs: [
        ":android.hardware.drm@1.1_hal",
    ],
    out: [
        "android/hardware/drm/1.1/CryptoFactory.vts.cpp",
        "android/hardware/drm/1.1/DrmFactory.vts.cpp",
        "android/hardware/drm/1.1/DrmPlugin.vts.cpp",
        "android/hardware/drm/1.1/types.vts.cpp",
    ],
}

genrule {
    name: "android.hardware.drm@1.1-vts.driver_genc++_headers",
    tools: ["hidl-gen", "vtsc"],
    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -r android.hardware:hardware/interfaces android.hardware.drm@1.1 && $(location vtsc) -mDRIVER -tHEADER -b$(genDir) android/hardware/drm/1.1/ $(genDir)/android/hardware/drm/1.1/",
    srcs: [
        ":android.hardware.drm@1.1_hal",
    ],
    out: [
        "android/hardware/drm/1.1/CryptoFactory.vts.h",
        "android/hardware/drm/1.1/DrmFactory.vts.h",
        "android/hardware/drm/1.1/DrmPlugin.vts.h",
        "android/hardware/drm/1.1/types.vts.h",
    ],
}

cc_library_shared {
    name: "android.hardware.drm@1.1-vts.driver",
    generated_sources: ["android.hardware.drm@1.1-vts.driver_genc++"],
    generated_headers: ["android.hardware.drm@1.1-vts.driver_genc++_headers"],
    export_generated_headers: ["android.hardware.drm@1.1-vts.driver_genc++_headers"],
    defaults: ["VtsHalDriverDefaults"],
    shared_libs: [
        "android.hardware.drm@1.0-vts.driver",
    ],
    static_libs: [
        "android.hardware.drm@1.0",
        "android.hardware.drm@1.1",
    ],
}

// Build VTS profiler.
genrule {
    name: "android.hardware.drm@1.1-vts.profiler_genc++",
    tools: ["hidl-gen", "vtsc"],
    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -r android.hardware:hardware/interfaces android.hardware.drm@1.1 && $(location vtsc) -mPROFILER -tSOURCE -b$(genDir) android/hardware/drm/1.1/ $(genDir)/android/hardware/drm/1.1/",
    srcs: [
        ":android.hardware.drm@1.1_hal",
    ],
    out: [
        "android/hardware/drm/1.1/CryptoFactory.vts.cpp",
        "android/hardware/drm/1.1/DrmFactory.vts.cpp",
        "android/hardware/drm/1.1/DrmPlugin.vts.cpp",
        "android/hardware/drm/1.1/types.vts.cpp",
    ],
}

genrule {
    name: "android.hardware.drm@1.1-vts.profiler_genc++_headers",
    tools: ["hidl-gen", "vtsc"],
    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -r android.hardware:hardware/interfaces android.hardware.drm@1.1 && $(location vtsc) -mPROFILER -tHEADER -b$(genDir) android/hardware/drm/1.1/ $(genDir)/android/hardware/drm/1.1/",
    srcs: [
        ":android.hardware.drm@1.1_hal",
    ],
    out: [
        "android/hardware/drm/1.1/CryptoFactory.vts.h",
        "android/hardware/drm/1.1/DrmFactory.vts.h",
        "android/hardware/drm/1.1/DrmPlugin.vts.h",
        "android/hardware/drm/1.1/types.vts.h",
    ],
}

cc_library_shared {
    name: "android.hardware.drm@1.1-vts.profiler",
    generated_sources: ["android.hardware.drm@1.1-vts.profiler_genc++"],
    generated_headers: ["android.hardware.drm@1.1-vts.profiler_genc++_headers"],
    export_generated_headers: ["android.hardware.drm@1.1-vts.profiler_genc++_headers"],
    defaults: ["VtsHalProfilerDefaults"],
    shared_libs: [
        "android.hardware.drm@1.0-vts.profiler",
    ],
    static_libs: [
        "android.hardware.drm@1.0",
        "android.hardware.drm@1.1",
    ],
}

