Export DefaultsFactory

Add an exported DefaultsFactory so that external module types can extend
cc_defaults.  DefaultsFactory takes a variadic list of additional
property structures.  defaultsFactory remains as the module factory for
cc_defaults.

Change-Id: I03b450ab3a31625e7baca165d393a0007fb3e421
This commit is contained in:
Colin Cross
2016-08-18 14:18:32 -07:00
parent 9272ade7a8
commit e1d764e369

View File

@@ -888,9 +888,13 @@ func (*Defaults) GenerateAndroidBuildActions(ctx android.ModuleContext) {
}
func defaultsFactory() (blueprint.Module, []interface{}) {
return DefaultsFactory()
}
func DefaultsFactory(props ...interface{}) (blueprint.Module, []interface{}) {
module := &Defaults{}
propertyStructs := []interface{}{
props = append(props,
&BaseProperties{},
&BaseCompilerProperties{},
&BaseLinkerProperties{},
@@ -903,12 +907,12 @@ func defaultsFactory() (blueprint.Module, []interface{}) {
&StlProperties{},
&SanitizeProperties{},
&StripProperties{},
}
)
_, propertyStructs = android.InitAndroidArchModule(module, android.HostAndDeviceDefault,
android.MultilibDefault, propertyStructs...)
_, props = android.InitAndroidArchModule(module, android.HostAndDeviceDefault,
android.MultilibDefault, props...)
return android.InitDefaultsModule(module, module, propertyStructs...)
return android.InitDefaultsModule(module, module, props...)
}
// lastUniqueElements returns all unique elements of a slice, keeping the last copy of each