Merge "Add support for AUTO_*_INITIALIZE to build/soong."
This commit is contained in:
@@ -150,8 +150,22 @@ func init() {
|
|||||||
pctx.StaticVariable("HostGlobalLdflags", strings.Join(hostGlobalLdflags, " "))
|
pctx.StaticVariable("HostGlobalLdflags", strings.Join(hostGlobalLdflags, " "))
|
||||||
pctx.StaticVariable("HostGlobalLldflags", strings.Join(hostGlobalLldflags, " "))
|
pctx.StaticVariable("HostGlobalLldflags", strings.Join(hostGlobalLldflags, " "))
|
||||||
|
|
||||||
pctx.StaticVariable("CommonClangGlobalCflags",
|
pctx.VariableFunc("CommonClangGlobalCflags", func(ctx android.PackageVarContext) string {
|
||||||
strings.Join(append(ClangFilterUnknownCflags(commonGlobalCflags), "${ClangExtraCflags}"), " "))
|
flags := ClangFilterUnknownCflags(commonGlobalCflags)
|
||||||
|
flags = append(flags, "${ClangExtraCflags}")
|
||||||
|
|
||||||
|
// http://b/131390872
|
||||||
|
// Automatically initialize any uninitialized stack variables.
|
||||||
|
// Prefer zero-init if both options are set.
|
||||||
|
if ctx.Config().IsEnvTrue("AUTO_ZERO_INITIALIZE") {
|
||||||
|
flags = append(flags, "-ftrivial-auto-var-init=zero -enable-trivial-auto-var-init-zero-knowing-it-will-be-removed-from-clang")
|
||||||
|
} else if ctx.Config().IsEnvTrue("AUTO_PATTERN_INITIALIZE") {
|
||||||
|
flags = append(flags, "-ftrivial-auto-var-init=pattern")
|
||||||
|
}
|
||||||
|
|
||||||
|
return strings.Join(flags, " ")
|
||||||
|
})
|
||||||
|
|
||||||
pctx.VariableFunc("DeviceClangGlobalCflags", func(ctx android.PackageVarContext) string {
|
pctx.VariableFunc("DeviceClangGlobalCflags", func(ctx android.PackageVarContext) string {
|
||||||
if ctx.Config().Fuchsia() {
|
if ctx.Config().Fuchsia() {
|
||||||
return strings.Join(ClangFilterUnknownCflags(deviceGlobalCflags), " ")
|
return strings.Join(ClangFilterUnknownCflags(deviceGlobalCflags), " ")
|
||||||
|
Reference in New Issue
Block a user