Fix ToolchainLdflags calls
Instead of having the baseCompiler adjust the Ldflags, teach objectLinker about ToolchainLdflags. And don't assume that ToolchainLdflags will work for Clang too, add a ToolchainClangLdflags call. Change-Id: I5f546e46f32edf3fcf75a44bee2c5ee103bc5de3
This commit is contained in:
11
cc/cc.go
11
cc/cc.go
@@ -1014,7 +1014,6 @@ func (compiler *baseCompiler) flags(ctx ModuleContext, flags Flags) Flags {
|
||||
} else {
|
||||
flags.GlobalFlags = append(flags.GlobalFlags, toolchain.ToolchainCflags())
|
||||
}
|
||||
flags.LdFlags = append(flags.LdFlags, toolchain.ToolchainLdflags())
|
||||
|
||||
if !ctx.sdk() {
|
||||
if ctx.Host() && !flags.Clang {
|
||||
@@ -1153,7 +1152,9 @@ func (linker *baseLinker) flags(ctx ModuleContext, flags Flags) Flags {
|
||||
}
|
||||
}
|
||||
|
||||
if !flags.Clang {
|
||||
if flags.Clang {
|
||||
flags.LdFlags = append(flags.LdFlags, toolchain.ToolchainClangLdflags())
|
||||
} else {
|
||||
flags.LdFlags = append(flags.LdFlags, toolchain.ToolchainLdflags())
|
||||
}
|
||||
|
||||
@@ -1544,6 +1545,12 @@ func (*objectLinker) deps(ctx BaseModuleContext, deps Deps) Deps {
|
||||
}
|
||||
|
||||
func (*objectLinker) flags(ctx ModuleContext, flags Flags) Flags {
|
||||
if flags.Clang {
|
||||
flags.LdFlags = append(flags.LdFlags, ctx.toolchain().ToolchainClangLdflags())
|
||||
} else {
|
||||
flags.LdFlags = append(flags.LdFlags, ctx.toolchain().ToolchainLdflags())
|
||||
}
|
||||
|
||||
return flags
|
||||
}
|
||||
|
||||
|
@@ -147,10 +147,6 @@ func (t *toolchainMips64) GccVersion() string {
|
||||
return mips64GccVersion
|
||||
}
|
||||
|
||||
func (t *toolchainMips64) ToolchainLdflags() string {
|
||||
return ""
|
||||
}
|
||||
|
||||
func (t *toolchainMips64) ToolchainCflags() string {
|
||||
return t.toolchainCflags
|
||||
}
|
||||
|
@@ -60,6 +60,7 @@ type Toolchain interface {
|
||||
ClangSupported() bool
|
||||
ClangTriple() string
|
||||
ToolchainClangCflags() string
|
||||
ToolchainClangLdflags() string
|
||||
ClangAsflags() string
|
||||
ClangCflags() string
|
||||
ClangCppflags() string
|
||||
@@ -104,6 +105,10 @@ func (toolchainBase) ToolchainClangCflags() string {
|
||||
return ""
|
||||
}
|
||||
|
||||
func (toolchainBase) ToolchainClangLdflags() string {
|
||||
return ""
|
||||
}
|
||||
|
||||
func (toolchainBase) ClangSupported() bool {
|
||||
return true
|
||||
}
|
||||
|
Reference in New Issue
Block a user