Add microdroid_vendor

microdroid_vendor implements the vendor.img of microdroid. In theory,
microdroid doesn't need a vendor partition as it by definition isn't
specific to any SoC. However, init demands some files from the vendor
partition during the boot process. Until we find a way to make the
dependencies optional, let's have the vendor partition. Fortunately, it
is very small. It currently has a few number of sepolicy files only.

Bug: 180986662
Test: run microdroid following README.md
init enters into the second stage, sepolicy files are compiled, init
tries to start the servicemanager (which fails)

Change-Id: I82a66a00a8680ef1070ae7313d8e326f3ebc3112
diff --git a/microdroid/Android.bp b/microdroid/Android.bp
index d0c6675..ac6e055 100644
--- a/microdroid/Android.bp
+++ b/microdroid/Android.bp
@@ -92,6 +92,27 @@
     installable: false, // avoid collision with system partition's init.rc
 }
 
+android_filesystem {
+    name: "microdroid_vendor",
+    use_avb: true,
+    deps: [
+        "microdroid_plat_sepolicy_vers.txt",
+        "microdroid_vendor_sepolicy.cil",
+        "microdroid_plat_pub_versioned.cil",
+    ],
+    avb_private_key: "microdroid.pem",
+    avb_algorithm: "SHA256_RSA4096",
+    file_contexts: "microdroid_vendor_file_contexts",
+}
+
+prebuilt_etc {
+    name: "microdroid_plat_sepolicy_vers.txt",
+    src: "plat_sepolicy_vers.txt",
+    filename: "plat_sepolicy_vers.txt",
+    sub_dir: "selinux",
+    installable: false,
+}
+
 logical_partition {
     name: "microdroid_super",
     sparse: true,
@@ -107,6 +128,10 @@
                     name: "system",
                     filesystem: ":microdroid",
                 },
+                {
+                    name: "vendor",
+                    filesystem: ":microdroid_vendor",
+                },
             ],
         },
     ],