Link RELEASE_AVF_ENABLE_MULTI_TENANT_MICRODROID_VM to payload_not_root

Add plumbing in soong to conditionally enable payload_not_root rust cfg
if RELEASE_AVF_ENABLE_MULTI_TENANT_MICRODROID_VM build flag is set to true.

This patch also showcases how one can conditionally add files to
microdroid system image depending on the value of the build flag

Bug: 298008232
Test: build virt APEX with flag enabled
Test: verified payload runs as system_payload
Change-Id: I7e29b60a329ed4d7d8492bbe01b04ad4f895ff15
diff --git a/Android.bp b/Android.bp
index b655551..1fae793 100644
--- a/Android.bp
+++ b/Android.bp
@@ -27,3 +27,24 @@
     ],
     // large-scale-change unable to identify any license_text files
 }
+
+soong_config_module_type {
+    name: "avf_flag_aware_rust_defaults",
+    module_type: "rust_defaults",
+    config_namespace: "ANDROID",
+    bool_variables: [
+        "release_avf_enable_multi_tenant_microdroid_vm",
+    ],
+    properties: [
+        "cfgs",
+    ],
+}
+
+avf_flag_aware_rust_defaults {
+    name: "avf_build_flags_rust",
+    soong_config_variables: {
+        release_avf_enable_multi_tenant_microdroid_vm: {
+            cfgs: ["payload_not_root"],
+        },
+    },
+}