Update makefiles for hidl adapter.

Bug: 37518178
Test: manual
Change-Id: I50e999907d3c64d2b039272b823971998da64d1b
diff --git a/tests/bar/1.0/Android.bp b/tests/bar/1.0/Android.bp
index b6ee042..230267c 100644
--- a/tests/bar/1.0/Android.bp
+++ b/tests/bar/1.0/Android.bp
@@ -91,3 +91,89 @@
         "android.hardware.tests.foo@1.0",
     ],
 }
+
+genrule {
+    name: "android.hardware.tests.bar@1.0-adapter-helper_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-sources -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.bar@1.0",
+    srcs: [
+        ":android.hardware.tests.bar@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/bar/1.0/ABar.cpp",
+        "android/hardware/tests/bar/1.0/AComplicated.cpp",
+        "android/hardware/tests/bar/1.0/AFooCallback.cpp",
+        "android/hardware/tests/bar/1.0/AImportRules.cpp",
+        "android/hardware/tests/bar/1.0/AImportTypes.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.bar@1.0-adapter-helper_genc++_headers",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-headers -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.bar@1.0",
+    srcs: [
+        ":android.hardware.tests.bar@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/bar/1.0/ABar.h",
+        "android/hardware/tests/bar/1.0/AComplicated.h",
+        "android/hardware/tests/bar/1.0/AFooCallback.h",
+        "android/hardware/tests/bar/1.0/AImportRules.h",
+        "android/hardware/tests/bar/1.0/AImportTypes.h",
+    ],
+}
+
+
+cc_library {
+    name: "android.hardware.tests.bar@1.0-adapter-helper",
+    defaults: ["hidl-module-defaults"],
+    generated_sources: ["android.hardware.tests.bar@1.0-adapter-helper_genc++"],
+    generated_headers: ["android.hardware.tests.bar@1.0-adapter-helper_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.bar@1.0-adapter-helper_genc++_headers"],
+    vendor_available: true,
+    shared_libs: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "liblog",
+        "libutils",
+        "libcutils",
+        "libhidladapter",
+        "android.hardware.tests.bar@1.0",
+        "android.hardware.tests.foo@1.0",
+        "android.hardware.tests.foo@1.0-adapter-helper",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+    export_shared_lib_headers: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "libutils",
+        "libhidladapter",
+        "android.hardware.tests.bar@1.0",
+        "android.hardware.tests.foo@1.0",
+        "android.hardware.tests.foo@1.0-adapter-helper",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.bar@1.0-adapter_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-main -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.bar@1.0",
+    out: ["main.cpp"]}
+
+cc_test {
+    name: "android.hardware.tests.bar@1.0-adapter",
+    shared_libs: [
+        "libhidladapter",
+        "libhidlbase",
+        "libhidltransport",
+        "libutils",
+        "android.hardware.tests.bar@1.0",
+        "android.hardware.tests.foo@1.0",
+        "android.hardware.tests.bar@1.0-adapter-helper",
+    ],
+    generated_sources: ["android.hardware.tests.bar@1.0-adapter_genc++"],
+}
diff --git a/tests/baz/1.0/Android.bp b/tests/baz/1.0/Android.bp
index ef68149..a0a4f60 100644
--- a/tests/baz/1.0/Android.bp
+++ b/tests/baz/1.0/Android.bp
@@ -82,3 +82,82 @@
         "libutils",
     ],
 }
+
+genrule {
+    name: "android.hardware.tests.baz@1.0-adapter-helper_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-sources -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.baz@1.0",
+    srcs: [
+        ":android.hardware.tests.baz@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/baz/1.0/ABase.cpp",
+        "android/hardware/tests/baz/1.0/ABaz.cpp",
+        "android/hardware/tests/baz/1.0/ABazCallback.cpp",
+        "android/hardware/tests/baz/1.0/AQuux.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.baz@1.0-adapter-helper_genc++_headers",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-headers -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.baz@1.0",
+    srcs: [
+        ":android.hardware.tests.baz@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/baz/1.0/ABase.h",
+        "android/hardware/tests/baz/1.0/ABaz.h",
+        "android/hardware/tests/baz/1.0/ABazCallback.h",
+        "android/hardware/tests/baz/1.0/AQuux.h",
+    ],
+}
+
+
+cc_library {
+    name: "android.hardware.tests.baz@1.0-adapter-helper",
+    defaults: ["hidl-module-defaults"],
+    generated_sources: ["android.hardware.tests.baz@1.0-adapter-helper_genc++"],
+    generated_headers: ["android.hardware.tests.baz@1.0-adapter-helper_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.baz@1.0-adapter-helper_genc++_headers"],
+    vendor_available: true,
+    shared_libs: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "liblog",
+        "libutils",
+        "libcutils",
+        "libhidladapter",
+        "android.hardware.tests.baz@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+    export_shared_lib_headers: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "libutils",
+        "libhidladapter",
+        "android.hardware.tests.baz@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.baz@1.0-adapter_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-main -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.baz@1.0",
+    out: ["main.cpp"]}
+
+cc_test {
+    name: "android.hardware.tests.baz@1.0-adapter",
+    shared_libs: [
+        "libhidladapter",
+        "libhidlbase",
+        "libhidltransport",
+        "libutils",
+        "android.hardware.tests.baz@1.0",
+        "android.hardware.tests.baz@1.0-adapter-helper",
+    ],
+    generated_sources: ["android.hardware.tests.baz@1.0-adapter_genc++"],
+}
diff --git a/tests/expression/1.0/Android.bp b/tests/expression/1.0/Android.bp
index bc389b0..dc0e5a8 100644
--- a/tests/expression/1.0/Android.bp
+++ b/tests/expression/1.0/Android.bp
@@ -64,3 +64,78 @@
         "libutils",
     ],
 }
+
+genrule {
+    name: "android.hardware.tests.expression@1.0-adapter-helper_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-sources -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.expression@1.0",
+    srcs: [
+        ":android.hardware.tests.expression@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/expression/1.0/AExpression.cpp",
+        "android/hardware/tests/expression/1.0/AExpressionExt.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.expression@1.0-adapter-helper_genc++_headers",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-headers -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.expression@1.0",
+    srcs: [
+        ":android.hardware.tests.expression@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/expression/1.0/AExpression.h",
+        "android/hardware/tests/expression/1.0/AExpressionExt.h",
+    ],
+}
+
+
+cc_library {
+    name: "android.hardware.tests.expression@1.0-adapter-helper",
+    defaults: ["hidl-module-defaults"],
+    generated_sources: ["android.hardware.tests.expression@1.0-adapter-helper_genc++"],
+    generated_headers: ["android.hardware.tests.expression@1.0-adapter-helper_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.expression@1.0-adapter-helper_genc++_headers"],
+    vendor_available: true,
+    shared_libs: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "liblog",
+        "libutils",
+        "libcutils",
+        "libhidladapter",
+        "android.hardware.tests.expression@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+    export_shared_lib_headers: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "libutils",
+        "libhidladapter",
+        "android.hardware.tests.expression@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.expression@1.0-adapter_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-main -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.expression@1.0",
+    out: ["main.cpp"]}
+
+cc_test {
+    name: "android.hardware.tests.expression@1.0-adapter",
+    shared_libs: [
+        "libhidladapter",
+        "libhidlbase",
+        "libhidltransport",
+        "libutils",
+        "android.hardware.tests.expression@1.0",
+        "android.hardware.tests.expression@1.0-adapter-helper",
+    ],
+    generated_sources: ["android.hardware.tests.expression@1.0-adapter_genc++"],
+}
diff --git a/tests/extension/light/2.0/Android.bp b/tests/extension/light/2.0/Android.bp
index c5987a7..3c1b5ec 100644
--- a/tests/extension/light/2.0/Android.bp
+++ b/tests/extension/light/2.0/Android.bp
@@ -63,3 +63,81 @@
         "android.hardware.light@2.0",
     ],
 }
+
+genrule {
+    name: "android.hardware.tests.extension.light@2.0-adapter-helper_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-sources -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.extension.light@2.0",
+    srcs: [
+        ":android.hardware.tests.extension.light@2.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/extension/light/2.0/AExtLight.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.extension.light@2.0-adapter-helper_genc++_headers",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-headers -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.extension.light@2.0",
+    srcs: [
+        ":android.hardware.tests.extension.light@2.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/extension/light/2.0/AExtLight.h",
+    ],
+}
+
+
+cc_library {
+    name: "android.hardware.tests.extension.light@2.0-adapter-helper",
+    defaults: ["hidl-module-defaults"],
+    generated_sources: ["android.hardware.tests.extension.light@2.0-adapter-helper_genc++"],
+    generated_headers: ["android.hardware.tests.extension.light@2.0-adapter-helper_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.extension.light@2.0-adapter-helper_genc++_headers"],
+    vendor_available: true,
+    shared_libs: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "liblog",
+        "libutils",
+        "libcutils",
+        "libhidladapter",
+        "android.hardware.light@2.0",
+        "android.hardware.tests.extension.light@2.0",
+        "android.hardware.light@2.0-adapter-helper",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+    export_shared_lib_headers: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "libutils",
+        "libhidladapter",
+        "android.hardware.light@2.0",
+        "android.hardware.tests.extension.light@2.0",
+        "android.hardware.light@2.0-adapter-helper",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.extension.light@2.0-adapter_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-main -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.extension.light@2.0",
+    out: ["main.cpp"]}
+
+cc_test {
+    name: "android.hardware.tests.extension.light@2.0-adapter",
+    shared_libs: [
+        "libhidladapter",
+        "libhidlbase",
+        "libhidltransport",
+        "libutils",
+        "android.hardware.light@2.0",
+        "android.hardware.tests.extension.light@2.0",
+        "android.hardware.tests.extension.light@2.0-adapter-helper",
+    ],
+    generated_sources: ["android.hardware.tests.extension.light@2.0-adapter_genc++"],
+}
diff --git a/tests/foo/1.0/Android.bp b/tests/foo/1.0/Android.bp
index 6387950..0d2d147 100644
--- a/tests/foo/1.0/Android.bp
+++ b/tests/foo/1.0/Android.bp
@@ -89,3 +89,84 @@
         "libutils",
     ],
 }
+
+genrule {
+    name: "android.hardware.tests.foo@1.0-adapter-helper_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-sources -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.foo@1.0",
+    srcs: [
+        ":android.hardware.tests.foo@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/foo/1.0/AFoo.cpp",
+        "android/hardware/tests/foo/1.0/AFooCallback.cpp",
+        "android/hardware/tests/foo/1.0/AMyTypes.cpp",
+        "android/hardware/tests/foo/1.0/ASimple.cpp",
+        "android/hardware/tests/foo/1.0/ATheirTypes.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.foo@1.0-adapter-helper_genc++_headers",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-headers -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.foo@1.0",
+    srcs: [
+        ":android.hardware.tests.foo@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/foo/1.0/AFoo.h",
+        "android/hardware/tests/foo/1.0/AFooCallback.h",
+        "android/hardware/tests/foo/1.0/AMyTypes.h",
+        "android/hardware/tests/foo/1.0/ASimple.h",
+        "android/hardware/tests/foo/1.0/ATheirTypes.h",
+    ],
+}
+
+
+cc_library {
+    name: "android.hardware.tests.foo@1.0-adapter-helper",
+    defaults: ["hidl-module-defaults"],
+    generated_sources: ["android.hardware.tests.foo@1.0-adapter-helper_genc++"],
+    generated_headers: ["android.hardware.tests.foo@1.0-adapter-helper_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.foo@1.0-adapter-helper_genc++_headers"],
+    vendor_available: true,
+    shared_libs: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "liblog",
+        "libutils",
+        "libcutils",
+        "libhidladapter",
+        "android.hardware.tests.foo@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+    export_shared_lib_headers: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "libutils",
+        "libhidladapter",
+        "android.hardware.tests.foo@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.foo@1.0-adapter_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-main -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.foo@1.0",
+    out: ["main.cpp"]}
+
+cc_test {
+    name: "android.hardware.tests.foo@1.0-adapter",
+    shared_libs: [
+        "libhidladapter",
+        "libhidlbase",
+        "libhidltransport",
+        "libutils",
+        "android.hardware.tests.foo@1.0",
+        "android.hardware.tests.foo@1.0-adapter-helper",
+    ],
+    generated_sources: ["android.hardware.tests.foo@1.0-adapter_genc++"],
+}
diff --git a/tests/hash/1.0/Android.bp b/tests/hash/1.0/Android.bp
index 505a4ad..96af83b 100644
--- a/tests/hash/1.0/Android.bp
+++ b/tests/hash/1.0/Android.bp
@@ -57,3 +57,76 @@
         "libutils",
     ],
 }
+
+genrule {
+    name: "android.hardware.tests.hash@1.0-adapter-helper_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-sources -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.hash@1.0",
+    srcs: [
+        ":android.hardware.tests.hash@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/hash/1.0/AHash.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.hash@1.0-adapter-helper_genc++_headers",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-headers -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.hash@1.0",
+    srcs: [
+        ":android.hardware.tests.hash@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/hash/1.0/AHash.h",
+    ],
+}
+
+
+cc_library {
+    name: "android.hardware.tests.hash@1.0-adapter-helper",
+    defaults: ["hidl-module-defaults"],
+    generated_sources: ["android.hardware.tests.hash@1.0-adapter-helper_genc++"],
+    generated_headers: ["android.hardware.tests.hash@1.0-adapter-helper_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.hash@1.0-adapter-helper_genc++_headers"],
+    vendor_available: true,
+    shared_libs: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "liblog",
+        "libutils",
+        "libcutils",
+        "libhidladapter",
+        "android.hardware.tests.hash@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+    export_shared_lib_headers: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "libutils",
+        "libhidladapter",
+        "android.hardware.tests.hash@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.hash@1.0-adapter_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-main -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.hash@1.0",
+    out: ["main.cpp"]}
+
+cc_test {
+    name: "android.hardware.tests.hash@1.0-adapter",
+    shared_libs: [
+        "libhidladapter",
+        "libhidlbase",
+        "libhidltransport",
+        "libutils",
+        "android.hardware.tests.hash@1.0",
+        "android.hardware.tests.hash@1.0-adapter-helper",
+    ],
+    generated_sources: ["android.hardware.tests.hash@1.0-adapter_genc++"],
+}
diff --git a/tests/inheritance/1.0/Android.bp b/tests/inheritance/1.0/Android.bp
index 5d8d53d..6c2e79e 100644
--- a/tests/inheritance/1.0/Android.bp
+++ b/tests/inheritance/1.0/Android.bp
@@ -78,3 +78,82 @@
         "libutils",
     ],
 }
+
+genrule {
+    name: "android.hardware.tests.inheritance@1.0-adapter-helper_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-sources -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.inheritance@1.0",
+    srcs: [
+        ":android.hardware.tests.inheritance@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/inheritance/1.0/AChild.cpp",
+        "android/hardware/tests/inheritance/1.0/AFetcher.cpp",
+        "android/hardware/tests/inheritance/1.0/AGrandparent.cpp",
+        "android/hardware/tests/inheritance/1.0/AParent.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.inheritance@1.0-adapter-helper_genc++_headers",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-headers -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.inheritance@1.0",
+    srcs: [
+        ":android.hardware.tests.inheritance@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/inheritance/1.0/AChild.h",
+        "android/hardware/tests/inheritance/1.0/AFetcher.h",
+        "android/hardware/tests/inheritance/1.0/AGrandparent.h",
+        "android/hardware/tests/inheritance/1.0/AParent.h",
+    ],
+}
+
+
+cc_library {
+    name: "android.hardware.tests.inheritance@1.0-adapter-helper",
+    defaults: ["hidl-module-defaults"],
+    generated_sources: ["android.hardware.tests.inheritance@1.0-adapter-helper_genc++"],
+    generated_headers: ["android.hardware.tests.inheritance@1.0-adapter-helper_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.inheritance@1.0-adapter-helper_genc++_headers"],
+    vendor_available: true,
+    shared_libs: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "liblog",
+        "libutils",
+        "libcutils",
+        "libhidladapter",
+        "android.hardware.tests.inheritance@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+    export_shared_lib_headers: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "libutils",
+        "libhidladapter",
+        "android.hardware.tests.inheritance@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.inheritance@1.0-adapter_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-main -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.inheritance@1.0",
+    out: ["main.cpp"]}
+
+cc_test {
+    name: "android.hardware.tests.inheritance@1.0-adapter",
+    shared_libs: [
+        "libhidladapter",
+        "libhidlbase",
+        "libhidltransport",
+        "libutils",
+        "android.hardware.tests.inheritance@1.0",
+        "android.hardware.tests.inheritance@1.0-adapter-helper",
+    ],
+    generated_sources: ["android.hardware.tests.inheritance@1.0-adapter_genc++"],
+}
diff --git a/tests/libhwbinder/1.0/Android.bp b/tests/libhwbinder/1.0/Android.bp
index 338a72b..5812fa3 100644
--- a/tests/libhwbinder/1.0/Android.bp
+++ b/tests/libhwbinder/1.0/Android.bp
@@ -64,3 +64,78 @@
         "libutils",
     ],
 }
+
+genrule {
+    name: "android.hardware.tests.libhwbinder@1.0-adapter-helper_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-sources -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.libhwbinder@1.0",
+    srcs: [
+        ":android.hardware.tests.libhwbinder@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/libhwbinder/1.0/ABenchmark.cpp",
+        "android/hardware/tests/libhwbinder/1.0/AScheduleTest.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.libhwbinder@1.0-adapter-helper_genc++_headers",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-headers -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.libhwbinder@1.0",
+    srcs: [
+        ":android.hardware.tests.libhwbinder@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/libhwbinder/1.0/ABenchmark.h",
+        "android/hardware/tests/libhwbinder/1.0/AScheduleTest.h",
+    ],
+}
+
+
+cc_library {
+    name: "android.hardware.tests.libhwbinder@1.0-adapter-helper",
+    defaults: ["hidl-module-defaults"],
+    generated_sources: ["android.hardware.tests.libhwbinder@1.0-adapter-helper_genc++"],
+    generated_headers: ["android.hardware.tests.libhwbinder@1.0-adapter-helper_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.libhwbinder@1.0-adapter-helper_genc++_headers"],
+    vendor_available: true,
+    shared_libs: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "liblog",
+        "libutils",
+        "libcutils",
+        "libhidladapter",
+        "android.hardware.tests.libhwbinder@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+    export_shared_lib_headers: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "libutils",
+        "libhidladapter",
+        "android.hardware.tests.libhwbinder@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.libhwbinder@1.0-adapter_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-main -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.libhwbinder@1.0",
+    out: ["main.cpp"]}
+
+cc_test {
+    name: "android.hardware.tests.libhwbinder@1.0-adapter",
+    shared_libs: [
+        "libhidladapter",
+        "libhidlbase",
+        "libhidltransport",
+        "libutils",
+        "android.hardware.tests.libhwbinder@1.0",
+        "android.hardware.tests.libhwbinder@1.0-adapter-helper",
+    ],
+    generated_sources: ["android.hardware.tests.libhwbinder@1.0-adapter_genc++"],
+}
diff --git a/tests/memory/1.0/Android.bp b/tests/memory/1.0/Android.bp
index a753824..df7e47a 100644
--- a/tests/memory/1.0/Android.bp
+++ b/tests/memory/1.0/Android.bp
@@ -57,3 +57,76 @@
         "libutils",
     ],
 }
+
+genrule {
+    name: "android.hardware.tests.memory@1.0-adapter-helper_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-sources -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.memory@1.0",
+    srcs: [
+        ":android.hardware.tests.memory@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/memory/1.0/AMemoryTest.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.memory@1.0-adapter-helper_genc++_headers",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-headers -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.memory@1.0",
+    srcs: [
+        ":android.hardware.tests.memory@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/memory/1.0/AMemoryTest.h",
+    ],
+}
+
+
+cc_library {
+    name: "android.hardware.tests.memory@1.0-adapter-helper",
+    defaults: ["hidl-module-defaults"],
+    generated_sources: ["android.hardware.tests.memory@1.0-adapter-helper_genc++"],
+    generated_headers: ["android.hardware.tests.memory@1.0-adapter-helper_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.memory@1.0-adapter-helper_genc++_headers"],
+    vendor_available: true,
+    shared_libs: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "liblog",
+        "libutils",
+        "libcutils",
+        "libhidladapter",
+        "android.hardware.tests.memory@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+    export_shared_lib_headers: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "libutils",
+        "libhidladapter",
+        "android.hardware.tests.memory@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.memory@1.0-adapter_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-main -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.memory@1.0",
+    out: ["main.cpp"]}
+
+cc_test {
+    name: "android.hardware.tests.memory@1.0-adapter",
+    shared_libs: [
+        "libhidladapter",
+        "libhidlbase",
+        "libhidltransport",
+        "libutils",
+        "android.hardware.tests.memory@1.0",
+        "android.hardware.tests.memory@1.0-adapter-helper",
+    ],
+    generated_sources: ["android.hardware.tests.memory@1.0-adapter_genc++"],
+}
diff --git a/tests/msgq/1.0/Android.bp b/tests/msgq/1.0/Android.bp
index 0937545..124ba3d 100644
--- a/tests/msgq/1.0/Android.bp
+++ b/tests/msgq/1.0/Android.bp
@@ -64,3 +64,78 @@
         "libutils",
     ],
 }
+
+genrule {
+    name: "android.hardware.tests.msgq@1.0-adapter-helper_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-sources -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.msgq@1.0",
+    srcs: [
+        ":android.hardware.tests.msgq@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/msgq/1.0/ABenchmarkMsgQ.cpp",
+        "android/hardware/tests/msgq/1.0/ATestMsgQ.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.msgq@1.0-adapter-helper_genc++_headers",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-headers -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.msgq@1.0",
+    srcs: [
+        ":android.hardware.tests.msgq@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/msgq/1.0/ABenchmarkMsgQ.h",
+        "android/hardware/tests/msgq/1.0/ATestMsgQ.h",
+    ],
+}
+
+
+cc_library {
+    name: "android.hardware.tests.msgq@1.0-adapter-helper",
+    defaults: ["hidl-module-defaults"],
+    generated_sources: ["android.hardware.tests.msgq@1.0-adapter-helper_genc++"],
+    generated_headers: ["android.hardware.tests.msgq@1.0-adapter-helper_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.msgq@1.0-adapter-helper_genc++_headers"],
+    vendor_available: true,
+    shared_libs: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "liblog",
+        "libutils",
+        "libcutils",
+        "libhidladapter",
+        "android.hardware.tests.msgq@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+    export_shared_lib_headers: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "libutils",
+        "libhidladapter",
+        "android.hardware.tests.msgq@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.msgq@1.0-adapter_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-main -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.msgq@1.0",
+    out: ["main.cpp"]}
+
+cc_test {
+    name: "android.hardware.tests.msgq@1.0-adapter",
+    shared_libs: [
+        "libhidladapter",
+        "libhidlbase",
+        "libhidltransport",
+        "libutils",
+        "android.hardware.tests.msgq@1.0",
+        "android.hardware.tests.msgq@1.0-adapter-helper",
+    ],
+    generated_sources: ["android.hardware.tests.msgq@1.0-adapter_genc++"],
+}
diff --git a/tests/multithread/1.0/Android.bp b/tests/multithread/1.0/Android.bp
index 5f4c44c..28a0418 100644
--- a/tests/multithread/1.0/Android.bp
+++ b/tests/multithread/1.0/Android.bp
@@ -57,3 +57,76 @@
         "libutils",
     ],
 }
+
+genrule {
+    name: "android.hardware.tests.multithread@1.0-adapter-helper_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-sources -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.multithread@1.0",
+    srcs: [
+        ":android.hardware.tests.multithread@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/multithread/1.0/AMultithread.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.multithread@1.0-adapter-helper_genc++_headers",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-headers -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.multithread@1.0",
+    srcs: [
+        ":android.hardware.tests.multithread@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/multithread/1.0/AMultithread.h",
+    ],
+}
+
+
+cc_library {
+    name: "android.hardware.tests.multithread@1.0-adapter-helper",
+    defaults: ["hidl-module-defaults"],
+    generated_sources: ["android.hardware.tests.multithread@1.0-adapter-helper_genc++"],
+    generated_headers: ["android.hardware.tests.multithread@1.0-adapter-helper_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.multithread@1.0-adapter-helper_genc++_headers"],
+    vendor_available: true,
+    shared_libs: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "liblog",
+        "libutils",
+        "libcutils",
+        "libhidladapter",
+        "android.hardware.tests.multithread@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+    export_shared_lib_headers: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "libutils",
+        "libhidladapter",
+        "android.hardware.tests.multithread@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.multithread@1.0-adapter_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-main -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.multithread@1.0",
+    out: ["main.cpp"]}
+
+cc_test {
+    name: "android.hardware.tests.multithread@1.0-adapter",
+    shared_libs: [
+        "libhidladapter",
+        "libhidlbase",
+        "libhidltransport",
+        "libutils",
+        "android.hardware.tests.multithread@1.0",
+        "android.hardware.tests.multithread@1.0-adapter-helper",
+    ],
+    generated_sources: ["android.hardware.tests.multithread@1.0-adapter_genc++"],
+}
diff --git a/tests/pointer/1.0/Android.bp b/tests/pointer/1.0/Android.bp
index a765ae7..a1297be 100644
--- a/tests/pointer/1.0/Android.bp
+++ b/tests/pointer/1.0/Android.bp
@@ -64,3 +64,78 @@
         "libutils",
     ],
 }
+
+genrule {
+    name: "android.hardware.tests.pointer@1.0-adapter-helper_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-sources -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.pointer@1.0",
+    srcs: [
+        ":android.hardware.tests.pointer@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/pointer/1.0/AGraph.cpp",
+        "android/hardware/tests/pointer/1.0/APointer.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.pointer@1.0-adapter-helper_genc++_headers",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-headers -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.pointer@1.0",
+    srcs: [
+        ":android.hardware.tests.pointer@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/pointer/1.0/AGraph.h",
+        "android/hardware/tests/pointer/1.0/APointer.h",
+    ],
+}
+
+
+cc_library {
+    name: "android.hardware.tests.pointer@1.0-adapter-helper",
+    defaults: ["hidl-module-defaults"],
+    generated_sources: ["android.hardware.tests.pointer@1.0-adapter-helper_genc++"],
+    generated_headers: ["android.hardware.tests.pointer@1.0-adapter-helper_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.pointer@1.0-adapter-helper_genc++_headers"],
+    vendor_available: true,
+    shared_libs: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "liblog",
+        "libutils",
+        "libcutils",
+        "libhidladapter",
+        "android.hardware.tests.pointer@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+    export_shared_lib_headers: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "libutils",
+        "libhidladapter",
+        "android.hardware.tests.pointer@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.pointer@1.0-adapter_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-main -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.pointer@1.0",
+    out: ["main.cpp"]}
+
+cc_test {
+    name: "android.hardware.tests.pointer@1.0-adapter",
+    shared_libs: [
+        "libhidladapter",
+        "libhidlbase",
+        "libhidltransport",
+        "libutils",
+        "android.hardware.tests.pointer@1.0",
+        "android.hardware.tests.pointer@1.0-adapter-helper",
+    ],
+    generated_sources: ["android.hardware.tests.pointer@1.0-adapter_genc++"],
+}
diff --git a/tests/trie/1.0/Android.bp b/tests/trie/1.0/Android.bp
index 9e11c3e..89269e5 100644
--- a/tests/trie/1.0/Android.bp
+++ b/tests/trie/1.0/Android.bp
@@ -61,3 +61,76 @@
         "libutils",
     ],
 }
+
+genrule {
+    name: "android.hardware.tests.trie@1.0-adapter-helper_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-sources -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.trie@1.0",
+    srcs: [
+        ":android.hardware.tests.trie@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/trie/1.0/ATrie.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.trie@1.0-adapter-helper_genc++_headers",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-headers -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.trie@1.0",
+    srcs: [
+        ":android.hardware.tests.trie@1.0_hal",
+    ],
+    out: [
+        "android/hardware/tests/trie/1.0/ATrie.h",
+    ],
+}
+
+
+cc_library {
+    name: "android.hardware.tests.trie@1.0-adapter-helper",
+    defaults: ["hidl-module-defaults"],
+    generated_sources: ["android.hardware.tests.trie@1.0-adapter-helper_genc++"],
+    generated_headers: ["android.hardware.tests.trie@1.0-adapter-helper_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.trie@1.0-adapter-helper_genc++_headers"],
+    vendor_available: true,
+    shared_libs: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "liblog",
+        "libutils",
+        "libcutils",
+        "libhidladapter",
+        "android.hardware.tests.trie@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+    export_shared_lib_headers: [
+        "libhidlbase",
+        "libhidltransport",
+        "libhwbinder",
+        "libutils",
+        "libhidladapter",
+        "android.hardware.tests.trie@1.0",
+        "android.hidl.base@1.0-adapter-helper",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.trie@1.0-adapter_genc++",
+    tools: ["hidl-gen"],
+    cmd: "$(location hidl-gen) -o $(genDir) -Lc++-adapter-main -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.trie@1.0",
+    out: ["main.cpp"]}
+
+cc_test {
+    name: "android.hardware.tests.trie@1.0-adapter",
+    shared_libs: [
+        "libhidladapter",
+        "libhidlbase",
+        "libhidltransport",
+        "libutils",
+        "android.hardware.tests.trie@1.0",
+        "android.hardware.tests.trie@1.0-adapter-helper",
+    ],
+    generated_sources: ["android.hardware.tests.trie@1.0-adapter_genc++"],
+}