Merge "Soong: Add synopsis to soong_namespace module."

am: 39302bbcb9

Change-Id: Ie01144aac23f2c62f5a6f5b275395ba5cd282fc5
This commit is contained in:
Patrice Arruda
2019-03-27 08:51:59 -07:00
committed by android-build-merger

View File

@@ -355,15 +355,19 @@ func NewNamespace(path string) *Namespace {
var _ blueprint.Namespace = (*Namespace)(nil)
type namespaceProperties struct {
// a list of namespaces that contain modules that will be referenced
// by modules in this namespace.
Imports []string `android:"path"`
}
type NamespaceModule struct {
ModuleBase
namespace *Namespace
resolver *NameResolver
properties struct {
Imports []string
}
properties namespaceProperties
}
func (n *NamespaceModule) GenerateAndroidBuildActions(ctx ModuleContext) {
@@ -376,6 +380,16 @@ func (n *NamespaceModule) Name() (name string) {
return *n.nameProperties.Name
}
// soong_namespace provides a scope to modules in an Android.bp file to prevent
// module name conflicts with other defined modules in different Android.bp
// files. Once soong_namespace has been defined in an Android.bp file, the
// namespacing is applied to all modules that follow the soong_namespace in
// the current Android.bp file, as well as modules defined in Android.bp files
// in subdirectories. An Android.bp file in a subdirectory can define its own
// soong_namespace which is applied to all its modules and as well as modules
// defined in subdirectories Android.bp files. Modules in a soong_namespace are
// visible to Make by listing the namespace path in PRODUCT_SOONG_NAMESPACES
// make variable in a makefile.
func NamespaceFactory() Module {
module := &NamespaceModule{}