diff options
Diffstat (limited to 'cmd')
-rw-r--r-- | cmd/soong_build/main.go | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/cmd/soong_build/main.go b/cmd/soong_build/main.go index e15a6bdd..ddde1c59 100644 --- a/cmd/soong_build/main.go +++ b/cmd/soong_build/main.go @@ -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()) |