Add system_ext support to build_prop module

As some partitions have build.prop under etc/, this change adds
relative_install_path property to build_prop module. Also this change
adds system_ext related Soong variables and system_ext support in
gen_build_prop.py.

Bug: 322090587
Test: build and compare system_ext/etc/build.prop
Change-Id: I416662b8bae09383af0cdd3d8444a5c300006b7b
This commit is contained in:
Inseob Kim
2024-08-05 12:51:05 +09:00
parent 0ca0dd8e1c
commit acf9174120
5 changed files with 44 additions and 14 deletions

View File

@@ -37,6 +37,9 @@ type buildPropProperties struct {
// Path to a JSON file containing product configs.
Product_config *string `android:"path"`
// Optional subdirectory under which this file is installed into
Relative_install_path *string
}
type buildPropModule struct {
@@ -56,6 +59,8 @@ func (p *buildPropModule) propFiles(ctx ModuleContext) Paths {
partition := p.PartitionTag(ctx.DeviceConfig())
if partition == "system" {
return ctx.Config().SystemPropFiles(ctx)
} else if partition == "system_ext" {
return ctx.Config().SystemExtPropFiles(ctx)
}
return nil
}
@@ -84,8 +89,8 @@ func (p *buildPropModule) GenerateAndroidBuildActions(ctx ModuleContext) {
}
partition := p.PartitionTag(ctx.DeviceConfig())
if partition != "system" {
ctx.PropertyErrorf("partition", "unsupported partition %q: only \"system\" is supported", partition)
if partition != "system" && partition != "system_ext" {
ctx.PropertyErrorf("partition", "unsupported partition %q: only \"system\" and \"system_ext\" are supported", partition)
return
}
@@ -134,7 +139,7 @@ func (p *buildPropModule) GenerateAndroidBuildActions(ctx ModuleContext) {
rule.Build(ctx.ModuleName(), "generating build.prop")
p.installPath = PathForModuleInstall(ctx)
p.installPath = PathForModuleInstall(ctx, proptools.String(p.properties.Relative_install_path))
ctx.InstallFile(p.installPath, p.stem(), p.outputFilePath)
ctx.SetOutputFiles(Paths{p.outputFilePath}, "")