Revert "Revert "Soong support for namespaces""
This mostly reverts commit 178d5fefc0
and mostly reapplies change I6d3e52ef62c4cabe85b9a135a54de0e1a6aab29c .
Bug: 65683273
Test: build/soong/scripts/diff_build_graphs.sh \
--products=aosp_arm \
'build/blueprint:work^ build/soong:work^' \
'build/blueprint:work build/soong:work'
# and see that the only changes were:
# 1. adding some new files
# 2. changing some line numbers
Test: m -j nothing # which runs unit tests
Change-Id: I32baae00277a547fdcdd1c2219fe6625ee0e45d7
This commit is contained in:
@@ -25,6 +25,22 @@ import (
|
||||
"android/soong/android"
|
||||
)
|
||||
|
||||
func newNameResolver(config android.Config) *android.NameResolver {
|
||||
namespacePathsToExport := make(map[string]bool)
|
||||
|
||||
for _, namespaceName := range config.ProductVariables.NamespacesToExport {
|
||||
namespacePathsToExport[namespaceName] = true
|
||||
}
|
||||
|
||||
namespacePathsToExport["."] = true // always export the root namespace
|
||||
|
||||
exportFilter := func(namespace *android.Namespace) bool {
|
||||
return namespacePathsToExport[namespace.Path]
|
||||
}
|
||||
|
||||
return android.NewNameResolver(exportFilter)
|
||||
}
|
||||
|
||||
func main() {
|
||||
flag.Parse()
|
||||
|
||||
@@ -40,8 +56,7 @@ func main() {
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
// Temporary hack
|
||||
//ctx.SetIgnoreUnknownModuleTypes(true)
|
||||
ctx.SetNameInterface(newNameResolver(configuration))
|
||||
|
||||
ctx.SetAllowMissingDependencies(configuration.AllowMissingDependencies())
|
||||
|
||||
|
Reference in New Issue
Block a user