Simplify compileObjs
None of the direct users of compileObjs were using any of its
complexity (generated sources, excluded sources, extra sources). Move
the complexity back in to baseCompiler.compile.
Test: m -j
Change-Id: I2e59d216682c00dd12a1395cf2448827d1c48023
diff --git a/cc/compiler.go b/cc/compiler.go
index a0068ad..32d98e4 100644
--- a/cc/compiler.go
+++ b/cc/compiler.go
@@ -100,6 +100,7 @@
type baseCompiler struct {
Properties BaseCompilerProperties
+ deps android.Paths
}
var _ compiler = (*baseCompiler)(nil)
@@ -337,10 +338,21 @@
func (compiler *baseCompiler) compile(ctx ModuleContext, flags Flags, deps PathDeps) android.Paths {
pathDeps := deps.GeneratedHeaders
pathDeps = append(pathDeps, ndkPathDeps(ctx)...)
+
+ srcs := ctx.ExpandSources(compiler.Properties.Srcs, compiler.Properties.Exclude_srcs)
+ srcs = append(srcs, deps.GeneratedSources...)
+
+ buildFlags := flagsToBuilderFlags(flags)
+
+ srcs, genDeps := genSources(ctx, srcs, buildFlags)
+
+ pathDeps = append(pathDeps, genDeps...)
+ pathDeps = append(pathDeps, flags.CFlagsDeps...)
+
+ compiler.deps = pathDeps
+
// Compile files listed in c.Properties.Srcs into objects
- objFiles := compileObjs(ctx, flags, "",
- compiler.Properties.Srcs, compiler.Properties.Exclude_srcs,
- deps.GeneratedSources, pathDeps)
+ objFiles := compileObjs(ctx, buildFlags, "", srcs, compiler.deps)
if ctx.Failed() {
return nil
@@ -350,17 +362,8 @@
}
// Compile a list of source files into objects a specified subdirectory
-func compileObjs(ctx android.ModuleContext, flags Flags,
- subdir string, srcFiles, excludes []string, extraSrcs, deps android.Paths) android.Paths {
+func compileObjs(ctx android.ModuleContext, flags builderFlags,
+ subdir string, srcFiles, deps android.Paths) android.Paths {
- buildFlags := flagsToBuilderFlags(flags)
-
- inputFiles := ctx.ExpandSources(srcFiles, excludes)
- inputFiles = append(inputFiles, extraSrcs...)
- srcPaths, gendeps := genSources(ctx, inputFiles, buildFlags)
-
- deps = append(deps, gendeps...)
- deps = append(deps, flags.CFlagsDeps...)
-
- return TransformSourceToObj(ctx, subdir, srcPaths, buildFlags, deps)
+ return TransformSourceToObj(ctx, subdir, srcFiles, flags, deps)
}