Loading cc/cc.go +2 −2 Original line number Diff line number Diff line Loading @@ -1138,13 +1138,13 @@ func (c *Module) depsToPaths(ctx android.ModuleContext) PathDeps { case genHeaderDepTag, genHeaderExportDepTag: if genRule, ok := dep.(genrule.SourceFileGenerator); ok { depPaths.GeneratedHeaders = append(depPaths.GeneratedHeaders, genRule.GeneratedSourceFiles()...) genRule.GeneratedDeps()...) flags := includeDirsToFlags(genRule.GeneratedHeaderDirs()) depPaths.Flags = append(depPaths.Flags, flags) if depTag == genHeaderExportDepTag { depPaths.ReexportedFlags = append(depPaths.ReexportedFlags, flags) depPaths.ReexportedFlagsDeps = append(depPaths.ReexportedFlagsDeps, genRule.GeneratedSourceFiles()...) genRule.GeneratedDeps()...) // Add these re-exported flags to help header-abi-dumper to infer the abi exported by a library. c.sabi.Properties.ReexportedIncludeFlags = append(c.sabi.Properties.ReexportedIncludeFlags, flags) Loading genrule/genrule.go +7 −0 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ func init() { type SourceFileGenerator interface { GeneratedSourceFiles() android.Paths GeneratedHeaderDirs() android.Paths GeneratedDeps() android.Paths } type HostToolProvider interface { Loading Loading @@ -107,6 +108,7 @@ type Module struct { exportedIncludeDirs android.Paths outputFiles android.Paths outputDeps android.Paths } type taskFunc func(ctx android.ModuleContext, rawCommand string, srcFiles android.Paths) generateTask Loading @@ -130,6 +132,10 @@ func (g *Module) GeneratedHeaderDirs() android.Paths { return g.exportedIncludeDirs } func (g *Module) GeneratedDeps() android.Paths { return g.outputDeps } func (g *Module) DepsMutator(ctx android.BottomUpMutatorContext) { android.ExtractSourcesDeps(ctx, g.properties.Srcs) android.ExtractSourcesDeps(ctx, g.properties.Tool_files) Loading Loading @@ -334,6 +340,7 @@ func (g *Module) generateSourceFile(ctx android.ModuleContext, task generateTask for _, outputFile := range task.out { g.outputFiles = append(g.outputFiles, outputFile) } g.outputDeps = append(g.outputDeps, task.out[0]) } func generatorFactory(taskGenerator taskFunc, props ...interface{}) *Module { Loading Loading
cc/cc.go +2 −2 Original line number Diff line number Diff line Loading @@ -1138,13 +1138,13 @@ func (c *Module) depsToPaths(ctx android.ModuleContext) PathDeps { case genHeaderDepTag, genHeaderExportDepTag: if genRule, ok := dep.(genrule.SourceFileGenerator); ok { depPaths.GeneratedHeaders = append(depPaths.GeneratedHeaders, genRule.GeneratedSourceFiles()...) genRule.GeneratedDeps()...) flags := includeDirsToFlags(genRule.GeneratedHeaderDirs()) depPaths.Flags = append(depPaths.Flags, flags) if depTag == genHeaderExportDepTag { depPaths.ReexportedFlags = append(depPaths.ReexportedFlags, flags) depPaths.ReexportedFlagsDeps = append(depPaths.ReexportedFlagsDeps, genRule.GeneratedSourceFiles()...) genRule.GeneratedDeps()...) // Add these re-exported flags to help header-abi-dumper to infer the abi exported by a library. c.sabi.Properties.ReexportedIncludeFlags = append(c.sabi.Properties.ReexportedIncludeFlags, flags) Loading
genrule/genrule.go +7 −0 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ func init() { type SourceFileGenerator interface { GeneratedSourceFiles() android.Paths GeneratedHeaderDirs() android.Paths GeneratedDeps() android.Paths } type HostToolProvider interface { Loading Loading @@ -107,6 +108,7 @@ type Module struct { exportedIncludeDirs android.Paths outputFiles android.Paths outputDeps android.Paths } type taskFunc func(ctx android.ModuleContext, rawCommand string, srcFiles android.Paths) generateTask Loading @@ -130,6 +132,10 @@ func (g *Module) GeneratedHeaderDirs() android.Paths { return g.exportedIncludeDirs } func (g *Module) GeneratedDeps() android.Paths { return g.outputDeps } func (g *Module) DepsMutator(ctx android.BottomUpMutatorContext) { android.ExtractSourcesDeps(ctx, g.properties.Srcs) android.ExtractSourcesDeps(ctx, g.properties.Tool_files) Loading Loading @@ -334,6 +340,7 @@ func (g *Module) generateSourceFile(ctx android.ModuleContext, task generateTask for _, outputFile := range task.out { g.outputFiles = append(g.outputFiles, outputFile) } g.outputDeps = append(g.outputDeps, task.out[0]) } func generatorFactory(taskGenerator taskFunc, props ...interface{}) *Module { Loading