Add missing dependency for cache files on the aconfig files
Bug: 293899028 Test: manual Change-Id: I6399a2228cbe9a1b8d79383000dd30e43e73c603
This commit is contained in:
@@ -116,32 +116,38 @@ var declarationsProviderKey = blueprint.NewProvider(declarationsProviderData{})
|
|||||||
|
|
||||||
func (module *DeclarationsModule) GenerateAndroidBuildActions(ctx android.ModuleContext) {
|
func (module *DeclarationsModule) GenerateAndroidBuildActions(ctx android.ModuleContext) {
|
||||||
// Get the values that came from the global RELEASE_ACONFIG_VALUE_SETS flag
|
// Get the values that came from the global RELEASE_ACONFIG_VALUE_SETS flag
|
||||||
|
valuesFiles := make([]android.Path, 0)
|
||||||
ctx.VisitDirectDeps(func(dep android.Module) {
|
ctx.VisitDirectDeps(func(dep android.Module) {
|
||||||
if !ctx.OtherModuleHasProvider(dep, valueSetProviderKey) {
|
if !ctx.OtherModuleHasProvider(dep, valueSetProviderKey) {
|
||||||
// Other modules get injected as dependencies too, for example the license modules
|
// Other modules get injected as dependencies too, for example the license modules
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
depData := ctx.OtherModuleProvider(dep, valueSetProviderKey).(valueSetProviderData)
|
depData := ctx.OtherModuleProvider(dep, valueSetProviderKey).(valueSetProviderData)
|
||||||
valuesFiles, ok := depData.AvailablePackages[module.properties.Package]
|
paths, ok := depData.AvailablePackages[module.properties.Package]
|
||||||
if ok {
|
if ok {
|
||||||
for _, path := range valuesFiles {
|
valuesFiles = append(valuesFiles, paths...)
|
||||||
|
for _, path := range paths {
|
||||||
module.properties.Values = append(module.properties.Values, path.String())
|
module.properties.Values = append(module.properties.Values, path.String())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
// Intermediate format
|
// Intermediate format
|
||||||
inputFiles := android.PathsForModuleSrc(ctx, module.properties.Srcs)
|
declarationFiles := android.PathsForModuleSrc(ctx, module.properties.Srcs)
|
||||||
intermediatePath := android.PathForModuleOut(ctx, "intermediate.pb")
|
intermediatePath := android.PathForModuleOut(ctx, "intermediate.pb")
|
||||||
defaultPermission := ctx.Config().ReleaseAconfigFlagDefaultPermission()
|
defaultPermission := ctx.Config().ReleaseAconfigFlagDefaultPermission()
|
||||||
|
inputFiles := make([]android.Path, len(declarationFiles))
|
||||||
|
copy(inputFiles, declarationFiles)
|
||||||
|
inputFiles = append(inputFiles, valuesFiles...)
|
||||||
ctx.Build(pctx, android.BuildParams{
|
ctx.Build(pctx, android.BuildParams{
|
||||||
Rule: aconfigRule,
|
Rule: aconfigRule,
|
||||||
Output: intermediatePath,
|
Output: intermediatePath,
|
||||||
|
Inputs: inputFiles,
|
||||||
Description: "aconfig_declarations",
|
Description: "aconfig_declarations",
|
||||||
Args: map[string]string{
|
Args: map[string]string{
|
||||||
"release_version": ctx.Config().ReleaseVersion(),
|
"release_version": ctx.Config().ReleaseVersion(),
|
||||||
"package": module.properties.Package,
|
"package": module.properties.Package,
|
||||||
"declarations": android.JoinPathsWithPrefix(inputFiles, "--declarations "),
|
"declarations": android.JoinPathsWithPrefix(declarationFiles, "--declarations "),
|
||||||
"values": joinAndPrefix(" --values ", module.properties.Values),
|
"values": joinAndPrefix(" --values ", module.properties.Values),
|
||||||
"default-permission": optionalVariable(" --default-permission ", defaultPermission),
|
"default-permission": optionalVariable(" --default-permission ", defaultPermission),
|
||||||
},
|
},
|
||||||
|
Reference in New Issue
Block a user