Don't expect depfile from .s files
.s files (unlike .S files) aren't run through the preprocessor, so -M*
doesn't actually write out a depfile.
Since our ninja is now going to be verifying that the depfile is created
(https://android-review.googlesource.com/861510), don't specify a
depfile for .s files.
Bug: 121058584
Test: apply https://android-review.googlesource.com/861510
Test: cd external/libavc; mma
Change-Id: I1697aa020c63639317c8f4771147026601ae72fc
diff --git a/cc/builder.go b/cc/builder.go
index bf35f84..5dbd23e 100644
--- a/cc/builder.go
+++ b/cc/builder.go
@@ -55,6 +55,13 @@
},
"ccCmd", "cFlags")
+ ccNoDeps = pctx.AndroidGomaStaticRule("ccNoDeps",
+ blueprint.RuleParams{
+ Command: "$relPwd ${config.CcWrapper}$ccCmd -c $cFlags -o $out $in",
+ CommandDeps: []string{"$ccCmd"},
+ },
+ "ccCmd", "cFlags")
+
ld = pctx.AndroidStaticRule("ld",
blueprint.RuleParams{
Command: "$ldCmd ${crtBegin} @${out}.rsp " +
@@ -383,9 +390,13 @@
tidy := flags.tidy
coverage := flags.coverage
dump := flags.sAbiDump
+ rule := cc
switch srcFile.Ext() {
- case ".S", ".s":
+ case ".s":
+ rule = ccNoDeps
+ fallthrough
+ case ".S":
ccCmd = "clang"
moduleCflags = asflags
tidy = false
@@ -416,7 +427,7 @@
}
ctx.Build(pctx, android.BuildParams{
- Rule: cc,
+ Rule: rule,
Description: ccDesc + " " + srcFile.Rel(),
Output: objFile,
ImplicitOutputs: implicitOutputs,