Convert to Android.bp

See build/soong/README.md for more information.

Bug: 31742855
Test: mma -j
Change-Id: Icb93f3b1b2caeb5e9c00f88ca35841b927ad075d
diff --git a/Android.bp b/Android.bp
new file mode 100644
index 0000000..6dfde33
--- /dev/null
+++ b/Android.bp
@@ -0,0 +1,14 @@
+subdirs = [
+    "benchmarks/msgq/1.0",
+    "nfc/1.0",
+    "nfc/1.0/default",
+    "tests/bar/1.0",
+    "tests/baz/1.0",
+    "tests/expression/1.0",
+    "tests/foo/1.0",
+    "tests/libhwbinder/1.0",
+    "tests/msgq/1.0",
+    "tests/pointer/1.0",
+    "wifi/1.0",
+    "wifi/supplicant/1.0",
+]
diff --git a/benchmarks/msgq/1.0/Android.bp b/benchmarks/msgq/1.0/Android.bp
new file mode 100644
index 0000000..51841c2
--- /dev/null
+++ b/benchmarks/msgq/1.0/Android.bp
@@ -0,0 +1,42 @@
+// This file is autogenerated by hidl-gen. Do not edit manually.
+
+genrule {
+    name: "android.hardware.benchmarks.msgq@1.0_genc++",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.benchmarks.msgq@1.0",
+    srcs: [
+        "IBenchmarkMsgQ.hal",
+    ],
+    out: [
+        "android/hardware/benchmarks/msgq/1.0/BenchmarkMsgQAll.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.benchmarks.msgq@1.0_genc++_headers",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.benchmarks.msgq@1.0",
+    srcs: [
+        "IBenchmarkMsgQ.hal",
+    ],
+    out: [
+        "android/hardware/benchmarks/msgq/1.0/IBenchmarkMsgQ.h",
+        "android/hardware/benchmarks/msgq/1.0/IHwBenchmarkMsgQ.h",
+        "android/hardware/benchmarks/msgq/1.0/BnBenchmarkMsgQ.h",
+        "android/hardware/benchmarks/msgq/1.0/BpBenchmarkMsgQ.h",
+        "android/hardware/benchmarks/msgq/1.0/BsBenchmarkMsgQ.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.benchmarks.msgq@1.0",
+    generated_sources: ["android.hardware.benchmarks.msgq@1.0_genc++"],
+    generated_headers: ["android.hardware.benchmarks.msgq@1.0_genc++_headers"],
+    export_generated_headers: ["android.hardware.benchmarks.msgq@1.0_genc++_headers"],
+    shared_libs: [
+        "libhidl",
+        "libhwbinder",
+        "libutils",
+        "libcutils",
+    ],
+}
diff --git a/benchmarks/msgq/1.0/Android.mk b/benchmarks/msgq/1.0/Android.mk
deleted file mode 100644
index dec2a92..0000000
--- a/benchmarks/msgq/1.0/Android.mk
+++ /dev/null
@@ -1,39 +0,0 @@
-LOCAL_PATH := $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := android.hardware.benchmarks.msgq@1.0
-LOCAL_MODULE_CLASS := SHARED_LIBRARIES
-
-intermediates := $(local-generated-sources-dir)
-
-HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
-
-#
-# Build IBenchmarkMsgQ.hal
-#
-GEN := $(intermediates)/android/hardware/benchmarks/msgq/1.0/BenchmarkMsgQAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IBenchmarkMsgQ.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.benchmarks.msgq@1.0::IBenchmarkMsgQ
-
-$(GEN): $(LOCAL_PATH)/IBenchmarkMsgQ.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-LOCAL_EXPORT_C_INCLUDE_DIRS := $(intermediates)
-LOCAL_SHARED_LIBRARIES := \
-    libhidl \
-    libhwbinder \
-    libutils \
-    libcutils \
-
-LOCAL_MULTILIB := both
-include $(BUILD_SHARED_LIBRARY)
-
-
-include $(call all-makefiles-under,$(LOCAL_PATH))
diff --git a/nfc/1.0/Android.bp b/nfc/1.0/Android.bp
new file mode 100644
index 0000000..d9f197e
--- /dev/null
+++ b/nfc/1.0/Android.bp
@@ -0,0 +1,54 @@
+// This file is autogenerated by hidl-gen. Do not edit manually.
+
+genrule {
+    name: "android.hardware.nfc@1.0_genc++",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.nfc@1.0",
+    srcs: [
+        "types.hal",
+        "INfc.hal",
+        "INfcClientCallback.hal",
+    ],
+    out: [
+        "android/hardware/nfc/1.0/types.cpp",
+        "android/hardware/nfc/1.0/NfcAll.cpp",
+        "android/hardware/nfc/1.0/NfcClientCallbackAll.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.nfc@1.0_genc++_headers",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.nfc@1.0",
+    srcs: [
+        "types.hal",
+        "INfc.hal",
+        "INfcClientCallback.hal",
+    ],
+    out: [
+        "android/hardware/nfc/1.0/types.h",
+        "android/hardware/nfc/1.0/INfc.h",
+        "android/hardware/nfc/1.0/IHwNfc.h",
+        "android/hardware/nfc/1.0/BnNfc.h",
+        "android/hardware/nfc/1.0/BpNfc.h",
+        "android/hardware/nfc/1.0/BsNfc.h",
+        "android/hardware/nfc/1.0/INfcClientCallback.h",
+        "android/hardware/nfc/1.0/IHwNfcClientCallback.h",
+        "android/hardware/nfc/1.0/BnNfcClientCallback.h",
+        "android/hardware/nfc/1.0/BpNfcClientCallback.h",
+        "android/hardware/nfc/1.0/BsNfcClientCallback.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.nfc@1.0",
+    generated_sources: ["android.hardware.nfc@1.0_genc++"],
+    generated_headers: ["android.hardware.nfc@1.0_genc++_headers"],
+    export_generated_headers: ["android.hardware.nfc@1.0_genc++_headers"],
+    shared_libs: [
+        "libhidl",
+        "libhwbinder",
+        "libutils",
+        "libcutils",
+    ],
+}
diff --git a/nfc/1.0/Android.mk b/nfc/1.0/Android.mk
index fd9de45..b6840bc 100644
--- a/nfc/1.0/Android.mk
+++ b/nfc/1.0/Android.mk
@@ -1,79 +1,6 @@
+# This file is autogenerated by hidl-gen. Do not edit manually.
+
 LOCAL_PATH := $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := android.hardware.nfc@1.0
-LOCAL_MODULE_CLASS := SHARED_LIBRARIES
-
-intermediates := $(local-generated-sources-dir)
-
-HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
-
-#
-# Build types.hal
-#
-GEN := $(intermediates)/android/hardware/nfc/1.0/types.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.nfc@1.0::types
-
-$(GEN): $(LOCAL_PATH)/types.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build INfc.hal
-#
-GEN := $(intermediates)/android/hardware/nfc/1.0/NfcAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/INfc.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/INfcClientCallback.hal
-$(GEN): $(LOCAL_PATH)/INfcClientCallback.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
-$(GEN): $(LOCAL_PATH)/types.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.nfc@1.0::INfc
-
-$(GEN): $(LOCAL_PATH)/INfc.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build INfcClientCallback.hal
-#
-GEN := $(intermediates)/android/hardware/nfc/1.0/NfcClientCallbackAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/INfcClientCallback.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
-$(GEN): $(LOCAL_PATH)/types.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.nfc@1.0::INfcClientCallback
-
-$(GEN): $(LOCAL_PATH)/INfcClientCallback.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-LOCAL_EXPORT_C_INCLUDE_DIRS := $(intermediates)
-LOCAL_SHARED_LIBRARIES := \
-    libhidl \
-    libhwbinder \
-    libutils \
-    libcutils \
-
-LOCAL_MULTILIB := both
-include $(BUILD_SHARED_LIBRARY)
 
 ################################################################################
 
@@ -86,6 +13,23 @@
 HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
 
 #
+# Build types.hal (nfc_data_t)
+#
+GEN := $(intermediates)/android/hardware/nfc/1.0/nfc_data_t.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava -randroid.hardware:hardware/interfaces \
+        android.hardware.nfc@1.0::types.nfc_data_t
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
 # Build types.hal (nfc_event_t)
 #
 GEN := $(intermediates)/android/hardware/nfc/1.0/nfc_event_t.java
@@ -120,23 +64,6 @@
 LOCAL_GENERATED_SOURCES += $(GEN)
 
 #
-# Build types.hal (nfc_data_t)
-#
-GEN := $(intermediates)/android/hardware/nfc/1.0/nfc_data_t.java
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Ljava -randroid.hardware:hardware/interfaces \
-        android.hardware.nfc@1.0::types.nfc_data_t
-
-$(GEN): $(LOCAL_PATH)/types.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
 # Build INfc.hal
 #
 GEN := $(intermediates)/android/hardware/nfc/1.0/INfc.java
@@ -189,6 +116,23 @@
 HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
 
 #
+# Build types.hal (nfc_data_t)
+#
+GEN := $(intermediates)/android/hardware/nfc/1.0/nfc_data_t.java
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+        -Ljava -randroid.hardware:hardware/interfaces \
+        android.hardware.nfc@1.0::types.nfc_data_t
+
+$(GEN): $(LOCAL_PATH)/types.hal
+	$(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
 # Build types.hal (nfc_event_t)
 #
 GEN := $(intermediates)/android/hardware/nfc/1.0/nfc_event_t.java
@@ -223,23 +167,6 @@
 LOCAL_GENERATED_SOURCES += $(GEN)
 
 #
-# Build types.hal (nfc_data_t)
-#
-GEN := $(intermediates)/android/hardware/nfc/1.0/nfc_data_t.java
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Ljava -randroid.hardware:hardware/interfaces \
-        android.hardware.nfc@1.0::types.nfc_data_t
-
-$(GEN): $(LOCAL_PATH)/types.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
 # Build INfc.hal
 #
 GEN := $(intermediates)/android/hardware/nfc/1.0/INfc.java
diff --git a/nfc/1.0/default/Android.bp b/nfc/1.0/default/Android.bp
new file mode 100644
index 0000000..a8c4c81
--- /dev/null
+++ b/nfc/1.0/default/Android.bp
@@ -0,0 +1,16 @@
+cc_library_shared {
+    name: "android.hardware.nfc@1.0-impl",
+    relative_install_path: "hw",
+    srcs: ["Nfc.cpp"],
+    shared_libs: [
+        "liblog",
+        "libcutils",
+        "libhardware",
+        "libhwbinder",
+        "libbase",
+        "libcutils",
+        "libutils",
+        "libhidl",
+        "android.hardware.nfc@1.0",
+    ],
+}
diff --git a/nfc/1.0/default/Android.mk b/nfc/1.0/default/Android.mk
index 6329b69..d4e46f8 100644
--- a/nfc/1.0/default/Android.mk
+++ b/nfc/1.0/default/Android.mk
@@ -1,13 +1,6 @@
 LOCAL_PATH:= $(call my-dir)
 
 include $(CLEAR_VARS)
-LOCAL_MODULE := android.hardware.nfc@1.0-impl
-LOCAL_MODULE_RELATIVE_PATH := hw
-LOCAL_SRC_FILES := Nfc.cpp
-LOCAL_SHARED_LIBRARIES := liblog libcutils libhardware libhwbinder libbase libcutils libutils libhidl android.hardware.nfc@1.0
-include $(BUILD_SHARED_LIBRARY)
-
-include $(CLEAR_VARS)
 LOCAL_MODULE_RELATIVE_PATH := hw
 LOCAL_MODULE := android.hardware.nfc@1.0-service
 LOCAL_INIT_RC := android.hardware.nfc@1.0-service.rc
diff --git a/tests/bar/1.0/Android.bp b/tests/bar/1.0/Android.bp
new file mode 100644
index 0000000..b879741
--- /dev/null
+++ b/tests/bar/1.0/Android.bp
@@ -0,0 +1,43 @@
+// This file is autogenerated by hidl-gen. Do not edit manually.
+
+genrule {
+    name: "android.hardware.tests.bar@1.0_genc++",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.tests.bar@1.0",
+    srcs: [
+        "IBar.hal",
+    ],
+    out: [
+        "android/hardware/tests/bar/1.0/BarAll.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.bar@1.0_genc++_headers",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.tests.bar@1.0",
+    srcs: [
+        "IBar.hal",
+    ],
+    out: [
+        "android/hardware/tests/bar/1.0/IBar.h",
+        "android/hardware/tests/bar/1.0/IHwBar.h",
+        "android/hardware/tests/bar/1.0/BnBar.h",
+        "android/hardware/tests/bar/1.0/BpBar.h",
+        "android/hardware/tests/bar/1.0/BsBar.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.tests.bar@1.0",
+    generated_sources: ["android.hardware.tests.bar@1.0_genc++"],
+    generated_headers: ["android.hardware.tests.bar@1.0_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.bar@1.0_genc++_headers"],
+    shared_libs: [
+        "libhidl",
+        "libhwbinder",
+        "libutils",
+        "libcutils",
+        "android.hardware.tests.foo@1.0",
+    ],
+}
diff --git a/tests/bar/1.0/Android.mk b/tests/bar/1.0/Android.mk
deleted file mode 100644
index ef278ae..0000000
--- a/tests/bar/1.0/Android.mk
+++ /dev/null
@@ -1,40 +0,0 @@
-LOCAL_PATH := $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := android.hardware.tests.bar@1.0
-LOCAL_MODULE_CLASS := SHARED_LIBRARIES
-
-intermediates := $(local-generated-sources-dir)
-
-HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
-
-#
-# Build IBar.hal
-#
-GEN := $(intermediates)/android/hardware/tests/bar/1.0/BarAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IBar.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.tests.bar@1.0::IBar
-
-$(GEN): $(LOCAL_PATH)/IBar.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-LOCAL_EXPORT_C_INCLUDE_DIRS := $(intermediates)
-LOCAL_SHARED_LIBRARIES := \
-    libhidl \
-    libhwbinder \
-    libutils \
-    libcutils \
-    android.hardware.tests.foo@1.0 \
-
-LOCAL_MULTILIB := both
-include $(BUILD_SHARED_LIBRARY)
-
-
-include $(call all-makefiles-under,$(LOCAL_PATH))
diff --git a/tests/baz/1.0/Android.bp b/tests/baz/1.0/Android.bp
new file mode 100644
index 0000000..d3eefe5
--- /dev/null
+++ b/tests/baz/1.0/Android.bp
@@ -0,0 +1,62 @@
+// This file is autogenerated by hidl-gen. Do not edit manually.
+
+genrule {
+    name: "android.hardware.tests.baz@1.0_genc++",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.tests.baz@1.0",
+    srcs: [
+        "types.hal",
+        "IBase.hal",
+        "IBaz.hal",
+        "IBazCallback.hal",
+    ],
+    out: [
+        "android/hardware/tests/baz/1.0/types.cpp",
+        "android/hardware/tests/baz/1.0/BaseAll.cpp",
+        "android/hardware/tests/baz/1.0/BazAll.cpp",
+        "android/hardware/tests/baz/1.0/BazCallbackAll.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.baz@1.0_genc++_headers",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.tests.baz@1.0",
+    srcs: [
+        "types.hal",
+        "IBase.hal",
+        "IBaz.hal",
+        "IBazCallback.hal",
+    ],
+    out: [
+        "android/hardware/tests/baz/1.0/types.h",
+        "android/hardware/tests/baz/1.0/IBase.h",
+        "android/hardware/tests/baz/1.0/IHwBase.h",
+        "android/hardware/tests/baz/1.0/BnBase.h",
+        "android/hardware/tests/baz/1.0/BpBase.h",
+        "android/hardware/tests/baz/1.0/BsBase.h",
+        "android/hardware/tests/baz/1.0/IBaz.h",
+        "android/hardware/tests/baz/1.0/IHwBaz.h",
+        "android/hardware/tests/baz/1.0/BnBaz.h",
+        "android/hardware/tests/baz/1.0/BpBaz.h",
+        "android/hardware/tests/baz/1.0/BsBaz.h",
+        "android/hardware/tests/baz/1.0/IBazCallback.h",
+        "android/hardware/tests/baz/1.0/IHwBazCallback.h",
+        "android/hardware/tests/baz/1.0/BnBazCallback.h",
+        "android/hardware/tests/baz/1.0/BpBazCallback.h",
+        "android/hardware/tests/baz/1.0/BsBazCallback.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.tests.baz@1.0",
+    generated_sources: ["android.hardware.tests.baz@1.0_genc++"],
+    generated_headers: ["android.hardware.tests.baz@1.0_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.baz@1.0_genc++_headers"],
+    shared_libs: [
+        "libhidl",
+        "libhwbinder",
+        "libutils",
+        "libcutils",
+    ],
+}
diff --git a/tests/baz/1.0/Android.mk b/tests/baz/1.0/Android.mk
index 56e2ea9..f75f2ff 100644
--- a/tests/baz/1.0/Android.mk
+++ b/tests/baz/1.0/Android.mk
@@ -1,94 +1,6 @@
+# This file is autogenerated by hidl-gen. Do not edit manually.
+
 LOCAL_PATH := $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := android.hardware.tests.baz@1.0
-LOCAL_MODULE_CLASS := SHARED_LIBRARIES
-
-intermediates := $(local-generated-sources-dir)
-
-HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
-
-#
-# Build types.hal
-#
-GEN := $(intermediates)/android/hardware/tests/baz/1.0/types.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.tests.baz@1.0::types
-
-$(GEN): $(LOCAL_PATH)/types.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build IBase.hal
-#
-GEN := $(intermediates)/android/hardware/tests/baz/1.0/BaseAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IBase.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.tests.baz@1.0::IBase
-
-$(GEN): $(LOCAL_PATH)/IBase.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build IBaz.hal
-#
-GEN := $(intermediates)/android/hardware/tests/baz/1.0/BazAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IBaz.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IBase.hal
-$(GEN): $(LOCAL_PATH)/IBase.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IBazCallback.hal
-$(GEN): $(LOCAL_PATH)/IBazCallback.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.tests.baz@1.0::IBaz
-
-$(GEN): $(LOCAL_PATH)/IBaz.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build IBazCallback.hal
-#
-GEN := $(intermediates)/android/hardware/tests/baz/1.0/BazCallbackAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IBazCallback.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.tests.baz@1.0::IBazCallback
-
-$(GEN): $(LOCAL_PATH)/IBazCallback.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-LOCAL_EXPORT_C_INCLUDE_DIRS := $(intermediates)
-LOCAL_SHARED_LIBRARIES := \
-    libhidl \
-    libhwbinder \
-    libutils \
-    libcutils \
-
-LOCAL_MULTILIB := both
-include $(BUILD_SHARED_LIBRARY)
 
 ################################################################################
 
diff --git a/tests/expression/1.0/Android.bp b/tests/expression/1.0/Android.bp
new file mode 100644
index 0000000..32d4682
--- /dev/null
+++ b/tests/expression/1.0/Android.bp
@@ -0,0 +1,50 @@
+// This file is autogenerated by hidl-gen. Do not edit manually.
+
+genrule {
+    name: "android.hardware.tests.expression@1.0_genc++",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.tests.expression@1.0",
+    srcs: [
+        "IExpression.hal",
+        "IExpressionExt.hal",
+    ],
+    out: [
+        "android/hardware/tests/expression/1.0/ExpressionAll.cpp",
+        "android/hardware/tests/expression/1.0/ExpressionExtAll.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.expression@1.0_genc++_headers",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.tests.expression@1.0",
+    srcs: [
+        "IExpression.hal",
+        "IExpressionExt.hal",
+    ],
+    out: [
+        "android/hardware/tests/expression/1.0/IExpression.h",
+        "android/hardware/tests/expression/1.0/IHwExpression.h",
+        "android/hardware/tests/expression/1.0/BnExpression.h",
+        "android/hardware/tests/expression/1.0/BpExpression.h",
+        "android/hardware/tests/expression/1.0/BsExpression.h",
+        "android/hardware/tests/expression/1.0/IExpressionExt.h",
+        "android/hardware/tests/expression/1.0/IHwExpressionExt.h",
+        "android/hardware/tests/expression/1.0/BnExpressionExt.h",
+        "android/hardware/tests/expression/1.0/BpExpressionExt.h",
+        "android/hardware/tests/expression/1.0/BsExpressionExt.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.tests.expression@1.0",
+    generated_sources: ["android.hardware.tests.expression@1.0_genc++"],
+    generated_headers: ["android.hardware.tests.expression@1.0_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.expression@1.0_genc++_headers"],
+    shared_libs: [
+        "libhidl",
+        "libhwbinder",
+        "libutils",
+        "libcutils",
+    ],
+}
diff --git a/tests/expression/1.0/Android.mk b/tests/expression/1.0/Android.mk
index 804af71..dbb97dc 100644
--- a/tests/expression/1.0/Android.mk
+++ b/tests/expression/1.0/Android.mk
@@ -1,58 +1,6 @@
+# This file is autogenerated by hidl-gen. Do not edit manually.
+
 LOCAL_PATH := $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := android.hardware.tests.expression@1.0
-LOCAL_MODULE_CLASS := SHARED_LIBRARIES
-
-intermediates := $(local-generated-sources-dir)
-
-HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
-
-#
-# Build IExpression.hal
-#
-GEN := $(intermediates)/android/hardware/tests/expression/1.0/ExpressionAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IExpression.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.tests.expression@1.0::IExpression
-
-$(GEN): $(LOCAL_PATH)/IExpression.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build IExpressionExt.hal
-#
-GEN := $(intermediates)/android/hardware/tests/expression/1.0/ExpressionExtAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IExpressionExt.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IExpression.hal
-$(GEN): $(LOCAL_PATH)/IExpression.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.tests.expression@1.0::IExpressionExt
-
-$(GEN): $(LOCAL_PATH)/IExpressionExt.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-LOCAL_EXPORT_C_INCLUDE_DIRS := $(intermediates)
-LOCAL_SHARED_LIBRARIES := \
-    libhidl \
-    libhwbinder \
-    libutils \
-    libcutils \
-
-LOCAL_MULTILIB := both
-include $(BUILD_SHARED_LIBRARY)
 
 ################################################################################
 
diff --git a/tests/foo/1.0/Android.bp b/tests/foo/1.0/Android.bp
new file mode 100644
index 0000000..4896fc3
--- /dev/null
+++ b/tests/foo/1.0/Android.bp
@@ -0,0 +1,54 @@
+// This file is autogenerated by hidl-gen. Do not edit manually.
+
+genrule {
+    name: "android.hardware.tests.foo@1.0_genc++",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.tests.foo@1.0",
+    srcs: [
+        "types.hal",
+        "IFoo.hal",
+        "IFooCallback.hal",
+    ],
+    out: [
+        "android/hardware/tests/foo/1.0/types.cpp",
+        "android/hardware/tests/foo/1.0/FooAll.cpp",
+        "android/hardware/tests/foo/1.0/FooCallbackAll.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.foo@1.0_genc++_headers",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.tests.foo@1.0",
+    srcs: [
+        "types.hal",
+        "IFoo.hal",
+        "IFooCallback.hal",
+    ],
+    out: [
+        "android/hardware/tests/foo/1.0/types.h",
+        "android/hardware/tests/foo/1.0/IFoo.h",
+        "android/hardware/tests/foo/1.0/IHwFoo.h",
+        "android/hardware/tests/foo/1.0/BnFoo.h",
+        "android/hardware/tests/foo/1.0/BpFoo.h",
+        "android/hardware/tests/foo/1.0/BsFoo.h",
+        "android/hardware/tests/foo/1.0/IFooCallback.h",
+        "android/hardware/tests/foo/1.0/IHwFooCallback.h",
+        "android/hardware/tests/foo/1.0/BnFooCallback.h",
+        "android/hardware/tests/foo/1.0/BpFooCallback.h",
+        "android/hardware/tests/foo/1.0/BsFooCallback.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.tests.foo@1.0",
+    generated_sources: ["android.hardware.tests.foo@1.0_genc++"],
+    generated_headers: ["android.hardware.tests.foo@1.0_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.foo@1.0_genc++_headers"],
+    shared_libs: [
+        "libhidl",
+        "libhwbinder",
+        "libutils",
+        "libcutils",
+    ],
+}
diff --git a/tests/foo/1.0/Android.mk b/tests/foo/1.0/Android.mk
deleted file mode 100644
index ee503ef..0000000
--- a/tests/foo/1.0/Android.mk
+++ /dev/null
@@ -1,77 +0,0 @@
-LOCAL_PATH := $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := android.hardware.tests.foo@1.0
-LOCAL_MODULE_CLASS := SHARED_LIBRARIES
-
-intermediates := $(local-generated-sources-dir)
-
-HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
-
-#
-# Build types.hal
-#
-GEN := $(intermediates)/android/hardware/tests/foo/1.0/types.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.tests.foo@1.0::types
-
-$(GEN): $(LOCAL_PATH)/types.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build IFoo.hal
-#
-GEN := $(intermediates)/android/hardware/tests/foo/1.0/FooAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IFoo.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IFooCallback.hal
-$(GEN): $(LOCAL_PATH)/IFooCallback.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
-$(GEN): $(LOCAL_PATH)/types.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.tests.foo@1.0::IFoo
-
-$(GEN): $(LOCAL_PATH)/IFoo.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build IFooCallback.hal
-#
-GEN := $(intermediates)/android/hardware/tests/foo/1.0/FooCallbackAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IFooCallback.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.tests.foo@1.0::IFooCallback
-
-$(GEN): $(LOCAL_PATH)/IFooCallback.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-LOCAL_EXPORT_C_INCLUDE_DIRS := $(intermediates)
-LOCAL_SHARED_LIBRARIES := \
-    libhidl \
-    libhwbinder \
-    libutils \
-    libcutils \
-
-LOCAL_MULTILIB := both
-include $(BUILD_SHARED_LIBRARY)
-
-
-include $(call all-makefiles-under,$(LOCAL_PATH))
diff --git a/tests/libhwbinder/1.0/Android.bp b/tests/libhwbinder/1.0/Android.bp
new file mode 100644
index 0000000..508de22
--- /dev/null
+++ b/tests/libhwbinder/1.0/Android.bp
@@ -0,0 +1,42 @@
+// This file is autogenerated by hidl-gen. Do not edit manually.
+
+genrule {
+    name: "android.hardware.tests.libhwbinder@1.0_genc++",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.tests.libhwbinder@1.0",
+    srcs: [
+        "IBenchmark.hal",
+    ],
+    out: [
+        "android/hardware/tests/libhwbinder/1.0/BenchmarkAll.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.libhwbinder@1.0_genc++_headers",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.tests.libhwbinder@1.0",
+    srcs: [
+        "IBenchmark.hal",
+    ],
+    out: [
+        "android/hardware/tests/libhwbinder/1.0/IBenchmark.h",
+        "android/hardware/tests/libhwbinder/1.0/IHwBenchmark.h",
+        "android/hardware/tests/libhwbinder/1.0/BnBenchmark.h",
+        "android/hardware/tests/libhwbinder/1.0/BpBenchmark.h",
+        "android/hardware/tests/libhwbinder/1.0/BsBenchmark.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.tests.libhwbinder@1.0",
+    generated_sources: ["android.hardware.tests.libhwbinder@1.0_genc++"],
+    generated_headers: ["android.hardware.tests.libhwbinder@1.0_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.libhwbinder@1.0_genc++_headers"],
+    shared_libs: [
+        "libhidl",
+        "libhwbinder",
+        "libutils",
+        "libcutils",
+    ],
+}
diff --git a/tests/libhwbinder/1.0/Android.mk b/tests/libhwbinder/1.0/Android.mk
index 61349af..c7b9409 100644
--- a/tests/libhwbinder/1.0/Android.mk
+++ b/tests/libhwbinder/1.0/Android.mk
@@ -1,39 +1,6 @@
+# This file is autogenerated by hidl-gen. Do not edit manually.
+
 LOCAL_PATH := $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := android.hardware.tests.libhwbinder@1.0
-LOCAL_MODULE_CLASS := SHARED_LIBRARIES
-
-intermediates := $(local-generated-sources-dir)
-
-HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
-
-#
-# Build IBenchmark.hal
-#
-GEN := $(intermediates)/android/hardware/tests/libhwbinder/1.0/BenchmarkAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IBenchmark.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.tests.libhwbinder@1.0::IBenchmark
-
-$(GEN): $(LOCAL_PATH)/IBenchmark.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-LOCAL_EXPORT_C_INCLUDE_DIRS := $(intermediates)
-LOCAL_SHARED_LIBRARIES := \
-    libhidl \
-    libhwbinder \
-    libutils \
-    libcutils \
-
-LOCAL_MULTILIB := both
-include $(BUILD_SHARED_LIBRARY)
 
 ################################################################################
 
diff --git a/tests/msgq/1.0/Android.bp b/tests/msgq/1.0/Android.bp
new file mode 100644
index 0000000..16454ec
--- /dev/null
+++ b/tests/msgq/1.0/Android.bp
@@ -0,0 +1,42 @@
+// This file is autogenerated by hidl-gen. Do not edit manually.
+
+genrule {
+    name: "android.hardware.tests.msgq@1.0_genc++",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.tests.msgq@1.0",
+    srcs: [
+        "ITestMsgQ.hal",
+    ],
+    out: [
+        "android/hardware/tests/msgq/1.0/TestMsgQAll.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.msgq@1.0_genc++_headers",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.tests.msgq@1.0",
+    srcs: [
+        "ITestMsgQ.hal",
+    ],
+    out: [
+        "android/hardware/tests/msgq/1.0/ITestMsgQ.h",
+        "android/hardware/tests/msgq/1.0/IHwTestMsgQ.h",
+        "android/hardware/tests/msgq/1.0/BnTestMsgQ.h",
+        "android/hardware/tests/msgq/1.0/BpTestMsgQ.h",
+        "android/hardware/tests/msgq/1.0/BsTestMsgQ.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.tests.msgq@1.0",
+    generated_sources: ["android.hardware.tests.msgq@1.0_genc++"],
+    generated_headers: ["android.hardware.tests.msgq@1.0_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.msgq@1.0_genc++_headers"],
+    shared_libs: [
+        "libhidl",
+        "libhwbinder",
+        "libutils",
+        "libcutils",
+    ],
+}
diff --git a/tests/msgq/1.0/Android.mk b/tests/msgq/1.0/Android.mk
deleted file mode 100644
index 2cde5bf..0000000
--- a/tests/msgq/1.0/Android.mk
+++ /dev/null
@@ -1,39 +0,0 @@
-LOCAL_PATH := $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := android.hardware.tests.msgq@1.0
-LOCAL_MODULE_CLASS := SHARED_LIBRARIES
-
-intermediates := $(local-generated-sources-dir)
-
-HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
-
-#
-# Build ITestMsgQ.hal
-#
-GEN := $(intermediates)/android/hardware/tests/msgq/1.0/TestMsgQAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ITestMsgQ.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.tests.msgq@1.0::ITestMsgQ
-
-$(GEN): $(LOCAL_PATH)/ITestMsgQ.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-LOCAL_EXPORT_C_INCLUDE_DIRS := $(intermediates)
-LOCAL_SHARED_LIBRARIES := \
-    libhidl \
-    libhwbinder \
-    libutils \
-    libcutils \
-
-LOCAL_MULTILIB := both
-include $(BUILD_SHARED_LIBRARY)
-
-
-include $(call all-makefiles-under,$(LOCAL_PATH))
diff --git a/tests/pointer/1.0/Android.bp b/tests/pointer/1.0/Android.bp
new file mode 100644
index 0000000..45659d7
--- /dev/null
+++ b/tests/pointer/1.0/Android.bp
@@ -0,0 +1,50 @@
+// This file is autogenerated by hidl-gen. Do not edit manually.
+
+genrule {
+    name: "android.hardware.tests.pointer@1.0_genc++",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.tests.pointer@1.0",
+    srcs: [
+        "IGraph.hal",
+        "IPointer.hal",
+    ],
+    out: [
+        "android/hardware/tests/pointer/1.0/GraphAll.cpp",
+        "android/hardware/tests/pointer/1.0/PointerAll.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.tests.pointer@1.0_genc++_headers",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.tests.pointer@1.0",
+    srcs: [
+        "IGraph.hal",
+        "IPointer.hal",
+    ],
+    out: [
+        "android/hardware/tests/pointer/1.0/IGraph.h",
+        "android/hardware/tests/pointer/1.0/IHwGraph.h",
+        "android/hardware/tests/pointer/1.0/BnGraph.h",
+        "android/hardware/tests/pointer/1.0/BpGraph.h",
+        "android/hardware/tests/pointer/1.0/BsGraph.h",
+        "android/hardware/tests/pointer/1.0/IPointer.h",
+        "android/hardware/tests/pointer/1.0/IHwPointer.h",
+        "android/hardware/tests/pointer/1.0/BnPointer.h",
+        "android/hardware/tests/pointer/1.0/BpPointer.h",
+        "android/hardware/tests/pointer/1.0/BsPointer.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.tests.pointer@1.0",
+    generated_sources: ["android.hardware.tests.pointer@1.0_genc++"],
+    generated_headers: ["android.hardware.tests.pointer@1.0_genc++_headers"],
+    export_generated_headers: ["android.hardware.tests.pointer@1.0_genc++_headers"],
+    shared_libs: [
+        "libhidl",
+        "libhwbinder",
+        "libutils",
+        "libcutils",
+    ],
+}
diff --git a/tests/pointer/1.0/Android.mk b/tests/pointer/1.0/Android.mk
deleted file mode 100644
index d1c23bf..0000000
--- a/tests/pointer/1.0/Android.mk
+++ /dev/null
@@ -1,53 +0,0 @@
-LOCAL_PATH := $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := android.hardware.tests.pointer@1.0
-LOCAL_MODULE_CLASS := SHARED_LIBRARIES
-
-intermediates := $(local-generated-sources-dir)
-
-HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
-
-#
-# Build IGraph.hal
-#
-GEN := $(intermediates)/android/hardware/tests/pointer/1.0/GraphAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IGraph.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-    $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-    -Lc++ -randroid.hardware:hardware/interfaces \
-    android.hardware.tests.pointer@1.0::IGraph
-
-$(GEN): $(LOCAL_PATH)/IGraph.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build IPointer.hal
-#
-GEN := $(intermediates)/android/hardware/tests/pointer/1.0/PointerAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IPointer.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-    $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-    -Lc++ -randroid.hardware:hardware/interfaces \
-    android.hardware.tests.pointer@1.0::IPointer
-
-$(GEN): $(LOCAL_PATH)/IPointer.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-LOCAL_EXPORT_C_INCLUDE_DIRS := $(intermediates)
-LOCAL_SHARED_LIBRARIES := \
-  libhidl \
-  libhwbinder \
-  libutils \
-  libcutils \
-
-LOCAL_MULTILIB := both
-include $(BUILD_SHARED_LIBRARY)
diff --git a/update-makefiles.sh b/update-makefiles.sh
index 44c72b0..567877e 100755
--- a/update-makefiles.sh
+++ b/update-makefiles.sh
@@ -15,4 +15,5 @@
 for p in $packages; do
   echo "Updating $p";
   hidl-gen -Lmakefile -r android.hardware:hardware/interfaces $p;
+  hidl-gen -Landroidbp -r android.hardware:hardware/interfaces $p;
 done
diff --git a/wifi/1.0/Android.bp b/wifi/1.0/Android.bp
new file mode 100644
index 0000000..07e17ef
--- /dev/null
+++ b/wifi/1.0/Android.bp
@@ -0,0 +1,70 @@
+// This file is autogenerated by hidl-gen. Do not edit manually.
+
+genrule {
+    name: "android.hardware.wifi@1.0_genc++",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.wifi@1.0",
+    srcs: [
+        "types.hal",
+        "IWifi.hal",
+        "IWifiChip.hal",
+        "IWifiChipEventCallback.hal",
+        "IWifiEventCallback.hal",
+    ],
+    out: [
+        "android/hardware/wifi/1.0/types.cpp",
+        "android/hardware/wifi/1.0/WifiAll.cpp",
+        "android/hardware/wifi/1.0/WifiChipAll.cpp",
+        "android/hardware/wifi/1.0/WifiChipEventCallbackAll.cpp",
+        "android/hardware/wifi/1.0/WifiEventCallbackAll.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.wifi@1.0_genc++_headers",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.wifi@1.0",
+    srcs: [
+        "types.hal",
+        "IWifi.hal",
+        "IWifiChip.hal",
+        "IWifiChipEventCallback.hal",
+        "IWifiEventCallback.hal",
+    ],
+    out: [
+        "android/hardware/wifi/1.0/types.h",
+        "android/hardware/wifi/1.0/IWifi.h",
+        "android/hardware/wifi/1.0/IHwWifi.h",
+        "android/hardware/wifi/1.0/BnWifi.h",
+        "android/hardware/wifi/1.0/BpWifi.h",
+        "android/hardware/wifi/1.0/BsWifi.h",
+        "android/hardware/wifi/1.0/IWifiChip.h",
+        "android/hardware/wifi/1.0/IHwWifiChip.h",
+        "android/hardware/wifi/1.0/BnWifiChip.h",
+        "android/hardware/wifi/1.0/BpWifiChip.h",
+        "android/hardware/wifi/1.0/BsWifiChip.h",
+        "android/hardware/wifi/1.0/IWifiChipEventCallback.h",
+        "android/hardware/wifi/1.0/IHwWifiChipEventCallback.h",
+        "android/hardware/wifi/1.0/BnWifiChipEventCallback.h",
+        "android/hardware/wifi/1.0/BpWifiChipEventCallback.h",
+        "android/hardware/wifi/1.0/BsWifiChipEventCallback.h",
+        "android/hardware/wifi/1.0/IWifiEventCallback.h",
+        "android/hardware/wifi/1.0/IHwWifiEventCallback.h",
+        "android/hardware/wifi/1.0/BnWifiEventCallback.h",
+        "android/hardware/wifi/1.0/BpWifiEventCallback.h",
+        "android/hardware/wifi/1.0/BsWifiEventCallback.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.wifi@1.0",
+    generated_sources: ["android.hardware.wifi@1.0_genc++"],
+    generated_headers: ["android.hardware.wifi@1.0_genc++_headers"],
+    export_generated_headers: ["android.hardware.wifi@1.0_genc++_headers"],
+    shared_libs: [
+        "libhidl",
+        "libhwbinder",
+        "libutils",
+        "libcutils",
+    ],
+}
diff --git a/wifi/1.0/Android.mk b/wifi/1.0/Android.mk
index bc31f7a..e211ca8 100644
--- a/wifi/1.0/Android.mk
+++ b/wifi/1.0/Android.mk
@@ -1,119 +1,6 @@
+# This file is autogenerated by hidl-gen. Do not edit manually.
+
 LOCAL_PATH := $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := android.hardware.wifi@1.0
-LOCAL_MODULE_CLASS := SHARED_LIBRARIES
-
-intermediates := $(local-generated-sources-dir)
-
-HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
-
-#
-# Build types.hal
-#
-GEN := $(intermediates)/android/hardware/wifi/1.0/types.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.wifi@1.0::types
-
-$(GEN): $(LOCAL_PATH)/types.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build IWifi.hal
-#
-GEN := $(intermediates)/android/hardware/wifi/1.0/WifiAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IWifi.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IWifiChip.hal
-$(GEN): $(LOCAL_PATH)/IWifiChip.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IWifiEventCallback.hal
-$(GEN): $(LOCAL_PATH)/IWifiEventCallback.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.wifi@1.0::IWifi
-
-$(GEN): $(LOCAL_PATH)/IWifi.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build IWifiChip.hal
-#
-GEN := $(intermediates)/android/hardware/wifi/1.0/WifiChipAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IWifiChip.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IWifiChipEventCallback.hal
-$(GEN): $(LOCAL_PATH)/IWifiChipEventCallback.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
-$(GEN): $(LOCAL_PATH)/types.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.wifi@1.0::IWifiChip
-
-$(GEN): $(LOCAL_PATH)/IWifiChip.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build IWifiChipEventCallback.hal
-#
-GEN := $(intermediates)/android/hardware/wifi/1.0/WifiChipEventCallbackAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IWifiChipEventCallback.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
-$(GEN): $(LOCAL_PATH)/types.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.wifi@1.0::IWifiChipEventCallback
-
-$(GEN): $(LOCAL_PATH)/IWifiChipEventCallback.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build IWifiEventCallback.hal
-#
-GEN := $(intermediates)/android/hardware/wifi/1.0/WifiEventCallbackAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IWifiEventCallback.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
-$(GEN): $(LOCAL_PATH)/types.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.wifi@1.0::IWifiEventCallback
-
-$(GEN): $(LOCAL_PATH)/IWifiEventCallback.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-LOCAL_EXPORT_C_INCLUDE_DIRS := $(intermediates)
-LOCAL_SHARED_LIBRARIES := \
-    libhidl \
-    libhwbinder \
-    libutils \
-    libcutils \
-
-LOCAL_MULTILIB := both
-include $(BUILD_SHARED_LIBRARY)
 
 ################################################################################
 
diff --git a/wifi/supplicant/1.0/Android.bp b/wifi/supplicant/1.0/Android.bp
new file mode 100644
index 0000000..6b4ca84
--- /dev/null
+++ b/wifi/supplicant/1.0/Android.bp
@@ -0,0 +1,86 @@
+// This file is autogenerated by hidl-gen. Do not edit manually.
+
+genrule {
+    name: "android.hardware.wifi.supplicant@1.0_genc++",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.wifi.supplicant@1.0",
+    srcs: [
+        "types.hal",
+        "ISupplicant.hal",
+        "ISupplicantCallback.hal",
+        "ISupplicantIface.hal",
+        "ISupplicantIfaceCallback.hal",
+        "ISupplicantNetwork.hal",
+        "ISupplicantNetworkCallback.hal",
+    ],
+    out: [
+        "android/hardware/wifi/supplicant/1.0/types.cpp",
+        "android/hardware/wifi/supplicant/1.0/SupplicantAll.cpp",
+        "android/hardware/wifi/supplicant/1.0/SupplicantCallbackAll.cpp",
+        "android/hardware/wifi/supplicant/1.0/SupplicantIfaceAll.cpp",
+        "android/hardware/wifi/supplicant/1.0/SupplicantIfaceCallbackAll.cpp",
+        "android/hardware/wifi/supplicant/1.0/SupplicantNetworkAll.cpp",
+        "android/hardware/wifi/supplicant/1.0/SupplicantNetworkCallbackAll.cpp",
+    ],
+}
+
+genrule {
+    name: "android.hardware.wifi.supplicant@1.0_genc++_headers",
+    tool: "hidl-gen",
+    cmd: "$tool -o $genDir -Lc++ -randroid.hardware:hardware/interfaces android.hardware.wifi.supplicant@1.0",
+    srcs: [
+        "types.hal",
+        "ISupplicant.hal",
+        "ISupplicantCallback.hal",
+        "ISupplicantIface.hal",
+        "ISupplicantIfaceCallback.hal",
+        "ISupplicantNetwork.hal",
+        "ISupplicantNetworkCallback.hal",
+    ],
+    out: [
+        "android/hardware/wifi/supplicant/1.0/types.h",
+        "android/hardware/wifi/supplicant/1.0/ISupplicant.h",
+        "android/hardware/wifi/supplicant/1.0/IHwSupplicant.h",
+        "android/hardware/wifi/supplicant/1.0/BnSupplicant.h",
+        "android/hardware/wifi/supplicant/1.0/BpSupplicant.h",
+        "android/hardware/wifi/supplicant/1.0/BsSupplicant.h",
+        "android/hardware/wifi/supplicant/1.0/ISupplicantCallback.h",
+        "android/hardware/wifi/supplicant/1.0/IHwSupplicantCallback.h",
+        "android/hardware/wifi/supplicant/1.0/BnSupplicantCallback.h",
+        "android/hardware/wifi/supplicant/1.0/BpSupplicantCallback.h",
+        "android/hardware/wifi/supplicant/1.0/BsSupplicantCallback.h",
+        "android/hardware/wifi/supplicant/1.0/ISupplicantIface.h",
+        "android/hardware/wifi/supplicant/1.0/IHwSupplicantIface.h",
+        "android/hardware/wifi/supplicant/1.0/BnSupplicantIface.h",
+        "android/hardware/wifi/supplicant/1.0/BpSupplicantIface.h",
+        "android/hardware/wifi/supplicant/1.0/BsSupplicantIface.h",
+        "android/hardware/wifi/supplicant/1.0/ISupplicantIfaceCallback.h",
+        "android/hardware/wifi/supplicant/1.0/IHwSupplicantIfaceCallback.h",
+        "android/hardware/wifi/supplicant/1.0/BnSupplicantIfaceCallback.h",
+        "android/hardware/wifi/supplicant/1.0/BpSupplicantIfaceCallback.h",
+        "android/hardware/wifi/supplicant/1.0/BsSupplicantIfaceCallback.h",
+        "android/hardware/wifi/supplicant/1.0/ISupplicantNetwork.h",
+        "android/hardware/wifi/supplicant/1.0/IHwSupplicantNetwork.h",
+        "android/hardware/wifi/supplicant/1.0/BnSupplicantNetwork.h",
+        "android/hardware/wifi/supplicant/1.0/BpSupplicantNetwork.h",
+        "android/hardware/wifi/supplicant/1.0/BsSupplicantNetwork.h",
+        "android/hardware/wifi/supplicant/1.0/ISupplicantNetworkCallback.h",
+        "android/hardware/wifi/supplicant/1.0/IHwSupplicantNetworkCallback.h",
+        "android/hardware/wifi/supplicant/1.0/BnSupplicantNetworkCallback.h",
+        "android/hardware/wifi/supplicant/1.0/BpSupplicantNetworkCallback.h",
+        "android/hardware/wifi/supplicant/1.0/BsSupplicantNetworkCallback.h",
+    ],
+}
+
+cc_library_shared {
+    name: "android.hardware.wifi.supplicant@1.0",
+    generated_sources: ["android.hardware.wifi.supplicant@1.0_genc++"],
+    generated_headers: ["android.hardware.wifi.supplicant@1.0_genc++_headers"],
+    export_generated_headers: ["android.hardware.wifi.supplicant@1.0_genc++_headers"],
+    shared_libs: [
+        "libhidl",
+        "libhwbinder",
+        "libutils",
+        "libcutils",
+    ],
+}
diff --git a/wifi/supplicant/1.0/Android.mk b/wifi/supplicant/1.0/Android.mk
index 2671bdb..b2c39f5 100644
--- a/wifi/supplicant/1.0/Android.mk
+++ b/wifi/supplicant/1.0/Android.mk
@@ -1,159 +1,6 @@
+# This file is autogenerated by hidl-gen. Do not edit manually.
+
 LOCAL_PATH := $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_MODULE := android.hardware.wifi.supplicant@1.0
-LOCAL_MODULE_CLASS := SHARED_LIBRARIES
-
-intermediates := $(local-generated-sources-dir)
-
-HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
-
-#
-# Build types.hal
-#
-GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/types.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.wifi.supplicant@1.0::types
-
-$(GEN): $(LOCAL_PATH)/types.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build ISupplicant.hal
-#
-GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/SupplicantAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicant.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantCallback.hal
-$(GEN): $(LOCAL_PATH)/ISupplicantCallback.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantIface.hal
-$(GEN): $(LOCAL_PATH)/ISupplicantIface.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
-$(GEN): $(LOCAL_PATH)/types.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.wifi.supplicant@1.0::ISupplicant
-
-$(GEN): $(LOCAL_PATH)/ISupplicant.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build ISupplicantCallback.hal
-#
-GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/SupplicantCallbackAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantCallback.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.wifi.supplicant@1.0::ISupplicantCallback
-
-$(GEN): $(LOCAL_PATH)/ISupplicantCallback.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build ISupplicantIface.hal
-#
-GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/SupplicantIfaceAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantIface.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantIfaceCallback.hal
-$(GEN): $(LOCAL_PATH)/ISupplicantIfaceCallback.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantNetwork.hal
-$(GEN): $(LOCAL_PATH)/ISupplicantNetwork.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
-$(GEN): $(LOCAL_PATH)/types.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.wifi.supplicant@1.0::ISupplicantIface
-
-$(GEN): $(LOCAL_PATH)/ISupplicantIface.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build ISupplicantIfaceCallback.hal
-#
-GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/SupplicantIfaceCallbackAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantIfaceCallback.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
-$(GEN): $(LOCAL_PATH)/types.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.wifi.supplicant@1.0::ISupplicantIfaceCallback
-
-$(GEN): $(LOCAL_PATH)/ISupplicantIfaceCallback.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build ISupplicantNetwork.hal
-#
-GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/SupplicantNetworkAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantNetwork.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/ISupplicantNetworkCallback.hal
-$(GEN): $(LOCAL_PATH)/ISupplicantNetworkCallback.hal
-$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal
-$(GEN): $(LOCAL_PATH)/types.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.wifi.supplicant@1.0::ISupplicantNetwork
-
-$(GEN): $(LOCAL_PATH)/ISupplicantNetwork.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-#
-# Build ISupplicantNetworkCallback.hal
-#
-GEN := $(intermediates)/android/hardware/wifi/supplicant/1.0/SupplicantNetworkCallbackAll.cpp
-$(GEN): $(HIDL)
-$(GEN): PRIVATE_HIDL := $(HIDL)
-$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/ISupplicantNetworkCallback.hal
-$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
-$(GEN): PRIVATE_CUSTOM_TOOL = \
-        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
-        -Lc++ -randroid.hardware:hardware/interfaces \
-        android.hardware.wifi.supplicant@1.0::ISupplicantNetworkCallback
-
-$(GEN): $(LOCAL_PATH)/ISupplicantNetworkCallback.hal
-	$(transform-generated-source)
-LOCAL_GENERATED_SOURCES += $(GEN)
-
-LOCAL_EXPORT_C_INCLUDE_DIRS := $(intermediates)
-LOCAL_SHARED_LIBRARIES := \
-    libhidl \
-    libhwbinder \
-    libutils \
-    libcutils \
-
-LOCAL_MULTILIB := both
-include $(BUILD_SHARED_LIBRARY)
 
 ################################################################################