aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Willemsen <dwillemsen@google.com>2016-01-12 22:25:34 -0800
committerDan Willemsen <dwillemsen@google.com>2016-01-13 13:32:26 -0800
commit32968a2a480a996c74c79142dba18677e7ef5f5a (patch)
tree5d27725454f94385b02da857ad24c6af3d6351b9
parent415cb0ff1420d0c55950ee471c314815120eb30c (diff)
downloadbuild_soong-32968a2a480a996c74c79142dba18677e7ef5f5a.tar.gz
build_soong-32968a2a480a996c74c79142dba18677e7ef5f5a.tar.bz2
build_soong-32968a2a480a996c74c79142dba18677e7ef5f5a.zip
Add Clang Asflags for mips
Like make, it needs -fPIC to be added to compile successfully. Change-Id: I1d6f1388c42a84f331bbce1ecd669669441d986e
-rw-r--r--cc/cc.go1
-rw-r--r--cc/mips_device.go4
-rw-r--r--cc/toolchain.go5
3 files changed, 10 insertions, 0 deletions
diff --git a/cc/cc.go b/cc/cc.go
index f324c748..b909cc08 100644
--- a/cc/cc.go
+++ b/cc/cc.go
@@ -566,6 +566,7 @@ func (c *CCBase) collectFlags(ctx common.AndroidModuleContext, toolchain Toolcha
flags.GlobalFlags = append(flags.GlobalFlags, instructionSetFlags)
if flags.Clang {
+ flags.AsFlags = append(flags.AsFlags, toolchain.ClangAsflags())
flags.CppFlags = append(flags.CppFlags, "${commonClangGlobalCppflags}")
flags.GlobalFlags = append(flags.GlobalFlags,
toolchain.ClangCflags(),
diff --git a/cc/mips_device.go b/cc/mips_device.go
index d88c9060..cd92eab1 100644
--- a/cc/mips_device.go
+++ b/cc/mips_device.go
@@ -211,6 +211,10 @@ func (t *toolchainMips) ToolchainClangCflags() string {
return t.toolchainClangCflags
}
+func (t *toolchainMips) ClangAsflags() string {
+ return "-fPIC"
+}
+
func (t *toolchainMips) ClangCflags() string {
return t.clangCflags
}
diff --git a/cc/toolchain.go b/cc/toolchain.go
index ac511143..9f6ad2ea 100644
--- a/cc/toolchain.go
+++ b/cc/toolchain.go
@@ -60,6 +60,7 @@ type Toolchain interface {
ClangSupported() bool
ClangTriple() string
ToolchainClangCflags() string
+ ClangAsflags() string
ClangCflags() string
ClangCppflags() string
ClangLdflags() string
@@ -112,6 +113,10 @@ func (toolchainBase) ExecutableSuffix() string {
return ""
}
+func (toolchainBase) ClangAsflags() string {
+ return ""
+}
+
type toolchain64Bit struct {
toolchainBase
}