Merge "Pass cpp linking implicit deps to RBE."
This commit is contained in:
@@ -69,12 +69,12 @@ var (
|
||||
&remoteexec.REParams{
|
||||
Labels: map[string]string{"type": "link", "tool": "clang"},
|
||||
ExecStrategy: "${config.RECXXLinksExecStrategy}",
|
||||
Inputs: []string{"${out}.rsp"},
|
||||
Inputs: []string{"${out}.rsp", "$implicitInputs"},
|
||||
RSPFile: "${out}.rsp",
|
||||
OutputFiles: []string{"${out}", "$implicitOutputs"},
|
||||
ToolchainInputs: []string{"$ldCmd"},
|
||||
Platform: map[string]string{remoteexec.PoolKey: "${config.RECXXLinksPool}"},
|
||||
}, []string{"ldCmd", "crtBegin", "libFlags", "crtEnd", "ldFlags", "extraLibFlags"}, []string{"implicitOutputs"})
|
||||
}, []string{"ldCmd", "crtBegin", "libFlags", "crtEnd", "ldFlags", "extraLibFlags"}, []string{"implicitInputs", "implicitOutputs"})
|
||||
|
||||
partialLd, partialLdRE = remoteexec.StaticRules(pctx, "partialLd",
|
||||
blueprint.RuleParams{
|
||||
@@ -83,12 +83,13 @@ var (
|
||||
Command: "$reTemplate$ldCmd -fuse-ld=lld -nostdlib -no-pie -Wl,-r ${in} -o ${out} ${ldFlags}",
|
||||
CommandDeps: []string{"$ldCmd"},
|
||||
}, &remoteexec.REParams{
|
||||
Labels: map[string]string{"type": "link", "tool": "clang"},
|
||||
ExecStrategy: "${config.RECXXLinksExecStrategy}", Inputs: []string{"$inCommaList"},
|
||||
Labels: map[string]string{"type": "link", "tool": "clang"},
|
||||
ExecStrategy: "${config.RECXXLinksExecStrategy}",
|
||||
Inputs: []string{"$inCommaList", "$implicitInputs"},
|
||||
OutputFiles: []string{"${out}", "$implicitOutputs"},
|
||||
ToolchainInputs: []string{"$ldCmd"},
|
||||
Platform: map[string]string{remoteexec.PoolKey: "${config.RECXXLinksPool}"},
|
||||
}, []string{"ldCmd", "ldFlags"}, []string{"inCommaList", "implicitOutputs"})
|
||||
}, []string{"ldCmd", "ldFlags"}, []string{"implicitInputs", "inCommaList", "implicitOutputs"})
|
||||
|
||||
ar = pctx.AndroidStaticRule("ar",
|
||||
blueprint.RuleParams{
|
||||
@@ -236,12 +237,12 @@ var (
|
||||
}, &remoteexec.REParams{
|
||||
Labels: map[string]string{"type": "tool", "name": "abi-linker"},
|
||||
ExecStrategy: "${config.REAbiLinkerExecStrategy}",
|
||||
Inputs: []string{"$sAbiLinkerLibs", "${out}.rsp", "$implicits"},
|
||||
Inputs: []string{"$sAbiLinkerLibs", "${out}.rsp", "$implicitInputs"},
|
||||
RSPFile: "${out}.rsp",
|
||||
OutputFiles: []string{"$out"},
|
||||
ToolchainInputs: []string{"$sAbiLinker"},
|
||||
Platform: map[string]string{remoteexec.PoolKey: "${config.RECXXPool}"},
|
||||
}, []string{"symbolFilter", "arch", "exportedHeaderFlags"}, []string{"implicits"})
|
||||
}, []string{"symbolFilter", "arch", "exportedHeaderFlags"}, []string{"implicitInputs"})
|
||||
|
||||
_ = pctx.SourcePathVariable("sAbiDiffer", "prebuilts/clang-tools/${config.HostPrebuiltTag}/bin/header-abi-diff")
|
||||
|
||||
@@ -747,6 +748,7 @@ func TransformObjToDynamicBinary(ctx android.ModuleContext,
|
||||
if ctx.Config().IsEnvTrue("RBE_CXX_LINKS") {
|
||||
rule = ldRE
|
||||
args["implicitOutputs"] = strings.Join(implicitOutputs.Strings(), ",")
|
||||
args["implicitInputs"] = strings.Join(deps.Strings(), ",")
|
||||
}
|
||||
|
||||
ctx.Build(pctx, android.BuildParams{
|
||||
@@ -796,7 +798,7 @@ func TransformDumpToLinkedDump(ctx android.ModuleContext, sAbiDumps android.Path
|
||||
rbeImplicits = append(rbeImplicits, p[2:])
|
||||
}
|
||||
}
|
||||
args["implicits"] = strings.Join(rbeImplicits, ",")
|
||||
args["implicitInputs"] = strings.Join(rbeImplicits, ",")
|
||||
}
|
||||
ctx.Build(pctx, android.BuildParams{
|
||||
Rule: rule,
|
||||
@@ -913,6 +915,7 @@ func TransformObjsToObj(ctx android.ModuleContext, objFiles android.Paths,
|
||||
if ctx.Config().IsEnvTrue("RBE_CXX_LINKS") {
|
||||
rule = partialLdRE
|
||||
args["inCommaList"] = strings.Join(objFiles.Strings(), ",")
|
||||
args["implicitInputs"] = strings.Join(deps.Strings(), ",")
|
||||
}
|
||||
ctx.Build(pctx, android.BuildParams{
|
||||
Rule: rule,
|
||||
|
Reference in New Issue
Block a user