Don't force libraries upon static executables.
The linker uses libc++_static but needs to avoid the libc.a dependency. It does this by setting `stl: "none"` and manually linking libc++. This behavior matches make. A better approach would probably be to generalize system_shared_libs to system_libs and apply those to static executables the same way we do for dynamic ones, but that's a patch for another day. Test: make checkbuild Bug: http://b/34740564 Change-Id: Ie9da0d49a453a220593e8ec2ee721e9af9378007
This commit is contained in:
parent
29c69e83dd
commit
dc2597d25a
|
@ -131,7 +131,7 @@ func (binary *binaryDecorator) linkerDeps(ctx DepsContext, deps Deps) Deps {
|
|||
}
|
||||
|
||||
if binary.static() {
|
||||
if inList("libc++_static", deps.StaticLibs) {
|
||||
if ctx.selectedStl() == "libc++_static" {
|
||||
deps.StaticLibs = append(deps.StaticLibs, "libm", "libc", "libdl")
|
||||
}
|
||||
// static libraries libcompiler_rt, libc and libc_nomalloc need to be linked with
|
||||
|
|
Loading…
Reference in New Issue