Make the enabled property configurable
This allows using select statements with it.
Bug: 323382414
Test: m nothing --no-skip-soong-tests
Change-Id: I6f3efaaa3d82505e38a91ee4ba0e18e404360191
Merged-In: If355d24506e3f117d27b21442a6c02bca3402dc7
diff --git a/apex/apex_test.go b/apex/apex_test.go
index 1be1048..47d609a 100644
--- a/apex/apex_test.go
+++ b/apex/apex_test.go
@@ -5601,8 +5601,21 @@
compile_dex: true,
}
`
+ // This test disables libbar, which causes the ComponentDepsMutator to add
+ // deps on libbar.stubs and other sub-modules that don't exist. We can
+ // enable AllowMissingDependencies to work around that, but enabling that
+ // causes extra checks for missing source files to dex_bootjars, so add those
+ // to the mock fs as well.
+ preparer2 := android.GroupFixturePreparers(
+ preparer,
+ android.PrepareForTestWithAllowMissingDependencies,
+ android.FixtureMergeMockFs(map[string][]byte{
+ "build/soong/scripts/check_boot_jars/package_allowed_list.txt": nil,
+ "frameworks/base/config/boot-profile.txt": nil,
+ }),
+ )
- ctx := testDexpreoptWithApexes(t, bp, "", preparer, fragment)
+ ctx := testDexpreoptWithApexes(t, bp, "", preparer2, fragment)
checkBootDexJarPath(t, ctx, "libfoo", "out/soong/.intermediates/prebuilt_myapex.deapexer/android_common/deapexer/javalib/libfoo.jar")
checkBootDexJarPath(t, ctx, "libbar", "out/soong/.intermediates/prebuilt_myapex.deapexer/android_common/deapexer/javalib/libbar.jar")
@@ -9220,7 +9233,7 @@
continue
}
mod := ctx.ModuleForTests(modName, variant).Module().(*cc.Module)
- if !mod.Enabled() || mod.IsHideFromMake() {
+ if !mod.Enabled(android.PanickingConfigAndErrorContext(ctx)) || mod.IsHideFromMake() {
continue
}
for _, ent := range android.AndroidMkEntriesForTest(t, ctx, mod) {