Remove usages of select on defaults property

In order to support changing the global configuration per-module,
we can't make decisions on configuration until the configuration is
decided. The defaults mutator is one of the earliest mutators, and
it would be helpful to run it before deciding the configuration.

Remove usages of selects on defaults modules. Note that soong config
modules have the same problem, but they will just silently fall back
to using the true global configuration instead of throwing an error
that they tried to read the configuration before it was decided.
The usages of soong config variables on selects will have to be removed
in order to acheive a truely configuration-independant build.

Bug: 361816274
Test: Presubmits
Change-Id: I797f828d486081011cd71f7649544ef1bb326494
diff --git a/build/apex/Android.bp b/build/apex/Android.bp
index 0a2b2de..3a6ebb8 100644
--- a/build/apex/Android.bp
+++ b/build/apex/Android.bp
@@ -7,12 +7,28 @@
     "microdroid_vbmeta",
 ]
 
-apex {
+soong_config_module_type {
+    name: "virt_apex",
+    module_type: "apex",
+    config_namespace: "ANDROID",
+    bool_variables: [
+        "avf_enabled",
+    ],
+    properties: [
+        "defaults",
+    ],
+}
+
+virt_apex {
     name: "com.android.virt",
-    defaults: select(soong_config_variable("ANDROID", "avf_enabled"), {
-        "true": ["com.android.virt_avf_enabled"],
-        default: ["com.android.virt_avf_disabled"],
-    }),
+    soong_config_variables: {
+        avf_enabled: {
+            defaults: ["com.android.virt_avf_enabled"],
+            conditions_default: {
+                defaults: ["com.android.virt_avf_disabled"],
+            },
+        },
+    },
 }
 
 apex_defaults {