Merge "Make buildinfo_prop a regular module" into main am: 63de06c142
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3118355 Change-Id: I75bf5b9b60de08fad3fb298be985b71d5c6578e2 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -23,7 +23,7 @@ import (
|
|||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
ctx := InitRegistrationContext
|
ctx := InitRegistrationContext
|
||||||
ctx.RegisterParallelSingletonModuleType("buildinfo_prop", buildinfoPropFactory)
|
ctx.RegisterModuleType("buildinfo_prop", buildinfoPropFactory)
|
||||||
}
|
}
|
||||||
|
|
||||||
type buildinfoPropProperties struct {
|
type buildinfoPropProperties struct {
|
||||||
@@ -32,7 +32,7 @@ type buildinfoPropProperties struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type buildinfoPropModule struct {
|
type buildinfoPropModule struct {
|
||||||
SingletonModuleBase
|
ModuleBase
|
||||||
|
|
||||||
properties buildinfoPropProperties
|
properties buildinfoPropProperties
|
||||||
|
|
||||||
@@ -88,6 +88,10 @@ func shouldAddBuildThumbprint(config Config) bool {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (p *buildinfoPropModule) GenerateAndroidBuildActions(ctx ModuleContext) {
|
func (p *buildinfoPropModule) GenerateAndroidBuildActions(ctx ModuleContext) {
|
||||||
|
if ctx.ModuleName() != "buildinfo.prop" || ctx.ModuleDir() != "build/soong" {
|
||||||
|
ctx.ModuleErrorf("There can only be one buildinfo_prop module in build/soong")
|
||||||
|
return
|
||||||
|
}
|
||||||
p.outputFilePath = PathForModuleOut(ctx, p.Name()).OutputPath
|
p.outputFilePath = PathForModuleOut(ctx, p.Name()).OutputPath
|
||||||
if !ctx.Config().KatiEnabled() {
|
if !ctx.Config().KatiEnabled() {
|
||||||
WriteFileRule(ctx, p.outputFilePath, "# no buildinfo.prop if kati is disabled")
|
WriteFileRule(ctx, p.outputFilePath, "# no buildinfo.prop if kati is disabled")
|
||||||
@@ -166,12 +170,8 @@ func (p *buildinfoPropModule) GenerateAndroidBuildActions(ctx ModuleContext) {
|
|||||||
ctx.InstallFile(p.installPath, p.Name(), p.outputFilePath)
|
ctx.InstallFile(p.installPath, p.Name(), p.outputFilePath)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (f *buildinfoPropModule) GenerateSingletonBuildActions(ctx SingletonContext) {
|
|
||||||
// does nothing; buildinfo_prop is a singeton because two buildinfo modules don't make sense.
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *buildinfoPropModule) AndroidMkEntries() []AndroidMkEntries {
|
func (p *buildinfoPropModule) AndroidMkEntries() []AndroidMkEntries {
|
||||||
return []AndroidMkEntries{AndroidMkEntries{
|
return []AndroidMkEntries{{
|
||||||
Class: "ETC",
|
Class: "ETC",
|
||||||
OutputFile: OptionalPathForPath(p.outputFilePath),
|
OutputFile: OptionalPathForPath(p.outputFilePath),
|
||||||
ExtraEntries: []AndroidMkExtraEntriesFunc{
|
ExtraEntries: []AndroidMkExtraEntriesFunc{
|
||||||
@@ -187,7 +187,7 @@ func (p *buildinfoPropModule) AndroidMkEntries() []AndroidMkEntries {
|
|||||||
// buildinfo_prop module generates a build.prop file, which contains a set of common
|
// buildinfo_prop module generates a build.prop file, which contains a set of common
|
||||||
// system/build.prop properties, such as ro.build.version.*. Not all properties are implemented;
|
// system/build.prop properties, such as ro.build.version.*. Not all properties are implemented;
|
||||||
// currently this module is only for microdroid.
|
// currently this module is only for microdroid.
|
||||||
func buildinfoPropFactory() SingletonModule {
|
func buildinfoPropFactory() Module {
|
||||||
module := &buildinfoPropModule{}
|
module := &buildinfoPropModule{}
|
||||||
module.AddProperties(&module.properties)
|
module.AddProperties(&module.properties)
|
||||||
InitAndroidModule(module)
|
InitAndroidModule(module)
|
||||||
|
Reference in New Issue
Block a user