summaryrefslogtreecommitdiff
path: root/filesystem/filesystem.go
diff options
context:
space:
mode:
author Cole Faust <colefaust@google.com> 2024-12-13 11:20:24 -0800
committer Cole Faust <colefaust@google.com> 2024-12-13 11:29:16 -0800
commit34592c02f83c582c1e2c317a21e85aa9a1eaced8 (patch)
tree27c94bc852d469bb979d941f0692d546caa32836 /filesystem/filesystem.go
parentc6f264854e38c6f4964409902eb20832d764d2d4 (diff)
Make system partition import system_ext's aconfig flags
This is the behavior in make since aosp/3261300. It's a problem for treble though, so maybe should be revised in the future. If the system -> system_ext dependency becomes a problem (like if we need to add a system_ext -> system dependency later), I think we could break it up by creating a ".aconfig" sub-module of filesystem modules, and then the dependency is only added from system -> system_ext.aconfig. But we don't need that right now. Fixes: 382518797 Test: diff out/target/product/vsoc_x86_64/system/etc/aconfig_flags.pb out/soong/.intermediates/build/soong/fsgen/aosp_cf_x86_64_phone_generated_system_image/android_common/system/system/etc/aconfig_flags.pb Change-Id: Ia0d043e35f03bbf2bc8a29df0b2b8ecd8427e727
Diffstat (limited to 'filesystem/filesystem.go')
-rw-r--r--filesystem/filesystem.go14
1 files changed, 14 insertions, 0 deletions
diff --git a/filesystem/filesystem.go b/filesystem/filesystem.go
index bff0a1014..c4c88796e 100644
--- a/filesystem/filesystem.go
+++ b/filesystem/filesystem.go
@@ -181,6 +181,11 @@ type FilesystemProperties struct {
// Install aconfig_flags.pb file for the modules installed in this partition.
Gen_aconfig_flags_pb *bool
+ // List of names of other filesystem partitions to import their aconfig flags from.
+ // This is used for the system partition to import system_ext's aconfig flags, as currently
+ // those are considered one "container": aosp/3261300
+ Import_aconfig_flags_from []string
+
Fsverity fsverityProperties
// If this property is set to true, the filesystem will call ctx.UncheckedModule(), causing
@@ -309,6 +314,9 @@ func (f *filesystem) DepsMutator(ctx android.BottomUpMutatorContext) {
if f.properties.Android_filesystem_deps.System_ext != nil {
ctx.AddDependency(ctx.Module(), interPartitionDependencyTag, proptools.String(f.properties.Android_filesystem_deps.System_ext))
}
+ for _, partition := range f.properties.Import_aconfig_flags_from {
+ ctx.AddDependency(ctx.Module(), importAconfigDependencyTag, partition)
+ }
}
type fsType int
@@ -1077,6 +1085,12 @@ func addAutogeneratedRroDeps(ctx android.BottomUpMutatorContext) {
}
thisPartition := f.PartitionType()
if thisPartition != "vendor" && thisPartition != "product" {
+ if f.properties.Android_filesystem_deps.System != nil {
+ ctx.PropertyErrorf("android_filesystem_deps.system", "only vendor or product partitions can use android_filesystem_deps")
+ }
+ if f.properties.Android_filesystem_deps.System_ext != nil {
+ ctx.PropertyErrorf("android_filesystem_deps.system_ext", "only vendor or product partitions can use android_filesystem_deps")
+ }
return
}
ctx.WalkDeps(func(child, parent android.Module) bool {