rust: Use host linker when building for Mac host.
This behavior is non-hermetic, but matches the behavior of the C++ support. On Linux, using lld works, but on OSX, this fails because lld does not support Apple's new .tbd files. Bug: 155302034 Test: On both Linux and Mac hosts: cd external/rust; mma Change-Id: I0ad489113d720bdb9c3b7a67cce9d1e72266f428
This commit is contained in:
@@ -54,6 +54,9 @@ var (
|
||||
"-Wl,--pack-dyn-relocs=android+relr",
|
||||
"-Wl,--no-undefined",
|
||||
"-Wl,--hash-style=gnu",
|
||||
|
||||
"-B${ccConfig.ClangBin}",
|
||||
"-fuse-ld=lld",
|
||||
}
|
||||
)
|
||||
|
||||
@@ -80,7 +83,7 @@ func init() {
|
||||
|
||||
pctx.ImportAs("ccConfig", "android/soong/cc/config")
|
||||
pctx.StaticVariable("RustLinker", "${ccConfig.ClangBin}/clang++")
|
||||
pctx.StaticVariable("RustLinkerArgs", "-B ${ccConfig.ClangBin} -fuse-ld=lld")
|
||||
pctx.StaticVariable("RustLinkerArgs", "")
|
||||
|
||||
pctx.StaticVariable("DeviceGlobalLinkFlags", strings.Join(deviceGlobalLinkFlags, " "))
|
||||
|
||||
|
@@ -22,7 +22,9 @@ import (
|
||||
|
||||
var (
|
||||
DarwinRustFlags = []string{}
|
||||
DarwinRustLinkFlags = []string{}
|
||||
DarwinRustLinkFlags = []string{
|
||||
"-B${ccConfig.MacToolPath}",
|
||||
}
|
||||
darwinX8664Rustflags = []string{}
|
||||
darwinX8664Linkflags = []string{}
|
||||
)
|
||||
|
@@ -22,7 +22,10 @@ import (
|
||||
|
||||
var (
|
||||
LinuxRustFlags = []string{}
|
||||
LinuxRustLinkFlags = []string{}
|
||||
LinuxRustLinkFlags = []string{
|
||||
"-B${ccConfig.ClangBin}",
|
||||
"-fuse-ld=lld",
|
||||
}
|
||||
linuxX86Rustflags = []string{}
|
||||
linuxX86Linkflags = []string{}
|
||||
linuxX8664Rustflags = []string{}
|
||||
|
Reference in New Issue
Block a user