Merge "Limit calls to strip.sh on darwin" am: 288a1e2957

am: 131a9a8dcb

Change-Id: I910226b14dfd2c40c0d0306697128ad98a6bbb34
This commit is contained in:
Colin Cross 2019-05-17 20:27:18 -07:00 committed by android-build-merger
commit dd761b255d
1 changed files with 13 additions and 0 deletions

View File

@ -123,12 +123,25 @@ var (
_ = pctx.SourcePathVariable("stripPath", "build/soong/scripts/strip.sh")
_ = pctx.SourcePathVariable("xzCmd", "prebuilts/build-tools/${config.HostPrebuiltTag}/bin/xz")
// b/132822437: objcopy uses a file descriptor per .o file when called on .a files, which runs the system out of
// file descriptors on darwin. Limit concurrent calls to 10 on darwin.
darwinStripPool = func() blueprint.Pool {
if runtime.GOOS == "darwin" {
return pctx.StaticPool("darwinStripPool", blueprint.PoolParams{
Depth: 10,
})
} else {
return nil
}
}()
strip = pctx.AndroidStaticRule("strip",
blueprint.RuleParams{
Depfile: "${out}.d",
Deps: blueprint.DepsGCC,
Command: "CROSS_COMPILE=$crossCompile XZ=$xzCmd CLANG_BIN=${config.ClangBin} $stripPath ${args} -i ${in} -o ${out} -d ${out}.d",
CommandDeps: []string{"$stripPath", "$xzCmd"},
Pool: darwinStripPool,
},
"args", "crossCompile")