Merge "Make all defaults modules bazelable"
This commit is contained in:
@@ -92,6 +92,7 @@ func InitDefaultableModule(module DefaultableModule) {
|
|||||||
if module.base().module == nil {
|
if module.base().module == nil {
|
||||||
panic("InitAndroidModule must be called before InitDefaultableModule")
|
panic("InitAndroidModule must be called before InitDefaultableModule")
|
||||||
}
|
}
|
||||||
|
|
||||||
module.setProperties(module.GetProperties(), module.base().variableProperties)
|
module.setProperties(module.GetProperties(), module.base().variableProperties)
|
||||||
|
|
||||||
module.AddProperties(module.defaults())
|
module.AddProperties(module.defaults())
|
||||||
@@ -118,6 +119,11 @@ type DefaultsVisibilityProperties struct {
|
|||||||
|
|
||||||
type DefaultsModuleBase struct {
|
type DefaultsModuleBase struct {
|
||||||
DefaultableModuleBase
|
DefaultableModuleBase
|
||||||
|
|
||||||
|
// Included to support setting bazel_module.label for multiple Soong modules to the same Bazel
|
||||||
|
// target. This is primarily useful for modules that were architecture specific and instead are
|
||||||
|
// handled in Bazel as a select().
|
||||||
|
BazelModuleBase
|
||||||
}
|
}
|
||||||
|
|
||||||
// The common pattern for defaults modules is to register separate instances of
|
// The common pattern for defaults modules is to register separate instances of
|
||||||
@@ -160,6 +166,7 @@ func (d *DefaultsModuleBase) isDefaults() bool {
|
|||||||
type DefaultsModule interface {
|
type DefaultsModule interface {
|
||||||
Module
|
Module
|
||||||
Defaults
|
Defaults
|
||||||
|
Bazelable
|
||||||
}
|
}
|
||||||
|
|
||||||
func (d *DefaultsModuleBase) properties() []interface{} {
|
func (d *DefaultsModuleBase) properties() []interface{} {
|
||||||
@@ -170,8 +177,7 @@ func (d *DefaultsModuleBase) productVariableProperties() interface{} {
|
|||||||
return d.defaultableVariableProperties
|
return d.defaultableVariableProperties
|
||||||
}
|
}
|
||||||
|
|
||||||
func (d *DefaultsModuleBase) GenerateAndroidBuildActions(ctx ModuleContext) {
|
func (d *DefaultsModuleBase) GenerateAndroidBuildActions(ctx ModuleContext) {}
|
||||||
}
|
|
||||||
|
|
||||||
// ConvertWithBp2build to fulfill Bazelable interface; however, at this time defaults module are
|
// ConvertWithBp2build to fulfill Bazelable interface; however, at this time defaults module are
|
||||||
// *NOT* converted with bp2build
|
// *NOT* converted with bp2build
|
||||||
@@ -186,6 +192,8 @@ func InitDefaultsModule(module DefaultsModule) {
|
|||||||
&ApexProperties{},
|
&ApexProperties{},
|
||||||
&distProperties{})
|
&distProperties{})
|
||||||
|
|
||||||
|
// Bazel module must be initialized _before_ Defaults to be included in cc_defaults module.
|
||||||
|
InitBazelModule(module)
|
||||||
initAndroidModuleBase(module)
|
initAndroidModuleBase(module)
|
||||||
initProductVariableModule(module)
|
initProductVariableModule(module)
|
||||||
initArchModule(module)
|
initArchModule(module)
|
||||||
|
6
cc/cc.go
6
cc/cc.go
@@ -3496,10 +3496,6 @@ func (c *Module) ConvertWithBp2build(ctx android.TopDownMutatorContext) {
|
|||||||
type Defaults struct {
|
type Defaults struct {
|
||||||
android.ModuleBase
|
android.ModuleBase
|
||||||
android.DefaultsModuleBase
|
android.DefaultsModuleBase
|
||||||
// Included to support setting bazel_module.label for multiple Soong modules to the same Bazel
|
|
||||||
// target. This is primarily useful for modules that were architecture specific and instead are
|
|
||||||
// handled in Bazel as a select().
|
|
||||||
android.BazelModuleBase
|
|
||||||
android.ApexModuleBase
|
android.ApexModuleBase
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3547,8 +3543,6 @@ func DefaultsFactory(props ...interface{}) android.Module {
|
|||||||
&prebuiltLinkerProperties{},
|
&prebuiltLinkerProperties{},
|
||||||
)
|
)
|
||||||
|
|
||||||
// Bazel module must be initialized _before_ Defaults to be included in cc_defaults module.
|
|
||||||
android.InitBazelModule(module)
|
|
||||||
android.InitDefaultsModule(module)
|
android.InitDefaultsModule(module)
|
||||||
|
|
||||||
return module
|
return module
|
||||||
|
Reference in New Issue
Block a user