Remove dependencies on the 1-variant fallback

When adding a dependencies, if the variants don't match, but the
dependency only has 1 variant anyways, soong will always use that
variant. This makes it hard to add new variants to soong, because the
1-variant fallback stops being used and you start getting missing
variant errors. Make changes to bp files such that all dependencies
correctly specify the variant to use.

Bug: 372091092
Flag: EXEMPT refactor
Test: m nothing
Change-Id: Ib00756396a8179348cff97c565e2b8038e973c43
diff --git a/Android.bp b/Android.bp
index 6a123ae..ec93956 100644
--- a/Android.bp
+++ b/Android.bp
@@ -509,7 +509,7 @@
 //   precompiled_sepolicy.product_sepolicy_and_mapping.sha256
 // See system/core/init/selinux.cpp for details.
 //////////////////////////////////
-genrule {
+java_genrule {
     name: "plat_sepolicy_and_mapping.sha256_gen",
     srcs: [
         ":plat_sepolicy.cil",
@@ -526,7 +526,7 @@
     relative_install_path: "selinux",
 }
 
-genrule {
+java_genrule {
     name: "system_ext_sepolicy_and_mapping.sha256_gen",
     srcs: [
         ":system_ext_sepolicy.cil",
@@ -544,7 +544,7 @@
     system_ext_specific: true,
 }
 
-genrule {
+java_genrule {
     name: "product_sepolicy_and_mapping.sha256_gen",
     srcs: [
         ":product_sepolicy.cil",
@@ -640,7 +640,7 @@
 
 filegroup {
     name: "precompiled_sepolicy_srcs",
-    srcs: [
+    device_common_srcs: [
         ":plat_sepolicy.cil",
         ":plat_pub_versioned.cil",
         ":system_ext_sepolicy.cil",
@@ -890,7 +890,7 @@
 // sepolicy_test checks various types of violations, which can't be easily done
 // by CIL itself. Refer tests/sepolicy_tests.py for more detail.
 //////////////////////////////////
-genrule {
+java_genrule {
     name: "sepolicy_test",
     srcs: [
         ":plat_file_contexts",
@@ -918,7 +918,7 @@
 
 soong_config_module_type {
     name: "dev_type_test_genrule",
-    module_type: "genrule",
+    module_type: "java_genrule",
     config_namespace: "ANDROID",
     bool_variables: ["CHECK_DEV_TYPE_VIOLATIONS"],
     properties: ["cmd"],
@@ -1203,7 +1203,7 @@
 //---
 // 1. Collect all file_contexts files in THIS repository and process them with
 //    m4 into a tmp file called file_contexts.local.tmp.
-genrule {
+java_genrule {
     name: "file_contexts.local.tmp",
     srcs: [
         ":plat_file_contexts",
@@ -1224,7 +1224,7 @@
     any @ m4defs: m4defs,
     default: "",
 })
-genrule {
+java_genrule {
     name: "file_contexts.device.tmp",
     srcs: [
         ":vendor_file_contexts",
@@ -1241,7 +1241,7 @@
 
 // 3. Run checkfc -e (allow no device fc entries ie empty) and fc_sort on
 //    file_contexts.device.tmp and output to file_contexts.device.sorted.tmp.
-genrule {
+java_genrule {
     name: "file_contexts.device.sorted.tmp",
     srcs: [
         ":file_contexts.device.tmp",
@@ -1262,7 +1262,7 @@
 
 // 4. Concatenate file_contexts.local.tmp and  file_contexts.device.sorted.tmp
 //    into file_contexts.concat.tmp.
-genrule {
+java_genrule {
     name: "file_contexts.concat.tmp",
     srcs: [
         ":file_contexts.local.tmp",
@@ -1279,7 +1279,7 @@
 
 // 5. Run checkfc and sefcontext_compile on file_contexts.concat.tmp to produce
 //    file_contexts.bin.
-genrule {
+java_genrule {
     name: "file_contexts_bin_gen",
     srcs: [
         ":file_contexts.concat.tmp",
diff --git a/microdroid/Android.bp b/microdroid/Android.bp
index e9b4b1e..a20ce93 100644
--- a/microdroid/Android.bp
+++ b/microdroid/Android.bp
@@ -212,7 +212,7 @@
 }
 
 // sepolicy sha256 for vendor
-genrule {
+java_genrule {
     name: "microdroid_plat_sepolicy_and_mapping.sha256_gen",
     srcs: [
         ":microdroid_plat_sepolicy.cil",
diff --git a/tests/Android.bp b/tests/Android.bp
index 3dda11a..81e7927 100644
--- a/tests/Android.bp
+++ b/tests/Android.bp
@@ -83,6 +83,8 @@
     libs: ["pysepolwrap"],
     data: [
         ":libsepolwrap",
+    ],
+    device_common_data: [
         ":precompiled_sepolicy",
     ],
 }
@@ -96,6 +98,8 @@
     libs: ["pysepolwrap"],
     data: [
         ":libsepolwrap",
+    ],
+    device_common_data: [
         ":precompiled_sepolicy",
     ],
     test_options: {
diff --git a/treble_sepolicy_tests_for_release/Android.bp b/treble_sepolicy_tests_for_release/Android.bp
index 7256deb..7756cbb 100644
--- a/treble_sepolicy_tests_for_release/Android.bp
+++ b/treble_sepolicy_tests_for_release/Android.bp
@@ -23,7 +23,7 @@
 // Tests for Treble compatibility of current platform policy and vendor policy of
 // given release version.
 //////////////////////////////////
-genrule {
+java_genrule {
     name: "29.0_mapping.combined.cil",
     srcs: [
         ":plat_29.0.cil",
@@ -33,7 +33,7 @@
     cmd: "cat $(location :plat_29.0.cil) $(location :29.0.ignore.cil) > $(out)",
 }
 
-genrule {
+java_genrule {
     name: "treble_sepolicy_tests_29.0",
     srcs: [
         ":29.0_plat_policy.cil",
@@ -49,7 +49,7 @@
         "touch $(out)",
 }
 
-genrule {
+java_genrule {
     name: "30.0_mapping.combined.cil",
     srcs: [
         ":plat_30.0.cil",
@@ -83,7 +83,7 @@
         "> $(out)",
 }
 
-genrule {
+java_genrule {
     name: "treble_sepolicy_tests_30.0",
     srcs: [
         ":30.0_plat_policy.cil",
@@ -114,7 +114,7 @@
     }),
 }
 
-genrule {
+java_genrule {
     name: "31.0_mapping.combined.cil",
     srcs: [
         ":plat_31.0.cil",
@@ -148,7 +148,7 @@
         "> $(out)",
 }
 
-genrule {
+java_genrule {
     name: "treble_sepolicy_tests_31.0",
     srcs: [
         ":31.0_plat_policy.cil",
@@ -179,7 +179,7 @@
     }),
 }
 
-genrule {
+java_genrule {
     name: "32.0_mapping.combined.cil",
     srcs: [
         ":plat_32.0.cil",
@@ -213,7 +213,7 @@
         "> $(out)",
 }
 
-genrule {
+java_genrule {
     name: "treble_sepolicy_tests_32.0",
     srcs: [
         ":32.0_plat_policy.cil",
@@ -244,7 +244,7 @@
     }),
 }
 
-genrule {
+java_genrule {
     name: "33.0_mapping.combined.cil",
     srcs: [
         ":plat_33.0.cil",
@@ -278,7 +278,7 @@
         "> $(out)",
 }
 
-genrule {
+java_genrule {
     name: "treble_sepolicy_tests_33.0",
     srcs: [
         ":33.0_plat_policy.cil",
@@ -309,7 +309,7 @@
     }),
 }
 
-genrule {
+java_genrule {
     name: "34.0_mapping.combined.cil",
     srcs: [
         ":plat_34.0.cil",
@@ -343,7 +343,7 @@
         "> $(out)",
 }
 
-genrule {
+java_genrule {
     name: "treble_sepolicy_tests_34.0",
     srcs: [
         ":34.0_plat_policy.cil",
@@ -374,7 +374,7 @@
     }),
 }
 
-genrule {
+java_genrule {
     name: "202404_mapping.combined.cil",
     srcs: select(soong_config_variable("ANDROID", "PLATFORM_SEPOLICY_VERSION"), {
         "202404": [
@@ -413,7 +413,7 @@
     }),
 }
 
-genrule {
+java_genrule {
     name: "treble_sepolicy_tests_202404",
     srcs: [
         ":202404_plat_policy.cil",