Remove flto dependent flags when -flto is removed.

am: 9e88ba9f22

Change-Id: I174a627fe877f66b81ae889a82eefadff8216dc4
This commit is contained in:
Chih-Hung Hsieh
2018-08-24 12:53:01 -07:00
committed by android-build-merger
4 changed files with 52 additions and 47 deletions

View File

@@ -236,29 +236,30 @@ func init() {
}
type builderFlags struct {
globalFlags string
arFlags string
asFlags string
cFlags string
toolingCFlags string // A separate set of Cflags for clang LibTooling tools
conlyFlags string
cppFlags string
ldFlags string
libFlags string
yaccFlags string
protoFlags string
protoOutParams string
tidyFlags string
sAbiFlags string
yasmFlags string
aidlFlags string
rsFlags string
toolchain config.Toolchain
clang bool
tidy bool
coverage bool
sAbiDump bool
protoRoot bool
globalFlags string
arFlags string
asFlags string
cFlags string
toolingCFlags string // A separate set of cFlags for clang LibTooling tools
toolingCppFlags string // A separate set of cppFlags for clang LibTooling tools
conlyFlags string
cppFlags string
ldFlags string
libFlags string
yaccFlags string
protoFlags string
protoOutParams string
tidyFlags string
sAbiFlags string
yasmFlags string
aidlFlags string
rsFlags string
toolchain config.Toolchain
clang bool
tidy bool
coverage bool
sAbiDump bool
protoRoot bool
systemIncludeFlags string
@@ -330,7 +331,7 @@ func TransformSourceToObj(ctx android.ModuleContext, subdir string, srcFiles and
toolingCppflags := strings.Join([]string{
commonFlags,
flags.toolingCFlags,
flags.cppFlags,
flags.toolingCppFlags,
}, " ")
cppflags := strings.Join([]string{

View File

@@ -93,8 +93,10 @@ var ClangUnknownLldflags = sorted([]string{
})
var ClangLibToolingUnknownCflags = []string{
// Remove -flto and other flto dependent flags.
"-flto*",
"-fsanitize*",
"-fwhole-program-vtables",
}
func init() {

View File

@@ -71,6 +71,7 @@ func (sabimod *sabi) flags(ctx ModuleContext, flags Flags) Flags {
// Assuming that the cflags which clang LibTooling tools cannot
// understand have not been converted to ninja variables yet.
flags.ToolingCFlags = filterOutWithPrefix(flags.CFlags, config.ClangLibToolingUnknownCflags)
flags.ToolingCppFlags = filterOutWithPrefix(flags.CppFlags, config.ClangLibToolingUnknownCflags)
// RSClang does not support recent mcpu option likes exynos-m2.
// So we need overriding mcpu option when we want to use it.

View File

@@ -59,29 +59,30 @@ func moduleToLibName(module string) (string, error) {
func flagsToBuilderFlags(in Flags) builderFlags {
return builderFlags{
globalFlags: strings.Join(in.GlobalFlags, " "),
arFlags: strings.Join(in.ArFlags, " "),
asFlags: strings.Join(in.AsFlags, " "),
cFlags: strings.Join(in.CFlags, " "),
toolingCFlags: strings.Join(in.ToolingCFlags, " "),
conlyFlags: strings.Join(in.ConlyFlags, " "),
cppFlags: strings.Join(in.CppFlags, " "),
yaccFlags: strings.Join(in.YaccFlags, " "),
protoFlags: strings.Join(in.protoFlags, " "),
protoOutParams: strings.Join(in.protoOutParams, ","),
aidlFlags: strings.Join(in.aidlFlags, " "),
rsFlags: strings.Join(in.rsFlags, " "),
ldFlags: strings.Join(in.LdFlags, " "),
libFlags: strings.Join(in.libFlags, " "),
tidyFlags: strings.Join(in.TidyFlags, " "),
sAbiFlags: strings.Join(in.SAbiFlags, " "),
yasmFlags: strings.Join(in.YasmFlags, " "),
toolchain: in.Toolchain,
clang: in.Clang,
coverage: in.Coverage,
tidy: in.Tidy,
sAbiDump: in.SAbiDump,
protoRoot: in.ProtoRoot,
globalFlags: strings.Join(in.GlobalFlags, " "),
arFlags: strings.Join(in.ArFlags, " "),
asFlags: strings.Join(in.AsFlags, " "),
cFlags: strings.Join(in.CFlags, " "),
toolingCFlags: strings.Join(in.ToolingCFlags, " "),
toolingCppFlags: strings.Join(in.ToolingCppFlags, " "),
conlyFlags: strings.Join(in.ConlyFlags, " "),
cppFlags: strings.Join(in.CppFlags, " "),
yaccFlags: strings.Join(in.YaccFlags, " "),
protoFlags: strings.Join(in.protoFlags, " "),
protoOutParams: strings.Join(in.protoOutParams, ","),
aidlFlags: strings.Join(in.aidlFlags, " "),
rsFlags: strings.Join(in.rsFlags, " "),
ldFlags: strings.Join(in.LdFlags, " "),
libFlags: strings.Join(in.libFlags, " "),
tidyFlags: strings.Join(in.TidyFlags, " "),
sAbiFlags: strings.Join(in.SAbiFlags, " "),
yasmFlags: strings.Join(in.YasmFlags, " "),
toolchain: in.Toolchain,
clang: in.Clang,
coverage: in.Coverage,
tidy: in.Tidy,
sAbiDump: in.SAbiDump,
protoRoot: in.ProtoRoot,
systemIncludeFlags: strings.Join(in.SystemIncludeFlags, " "),