diff --git a/android/gen_notice.go b/android/gen_notice.go index f5149756e..fda91ac94 100644 --- a/android/gen_notice.go +++ b/android/gen_notice.go @@ -67,7 +67,7 @@ func (s *genNoticeBuildRules) GenerateBuildActions(ctx SingletonContext) { if ctx.Failed() { return } - out(ctx, gm.output, proptools.StringDefault(gm.properties.ArtifactName, defaultName), "", modules...) + out(ctx, gm.output, ctx.ModuleName(gm), proptools.StringDefault(gm.properties.ArtifactName, defaultName), "", modules...) }) } diff --git a/android/notices.go b/android/notices.go index b16dc58bd..562a156e2 100644 --- a/android/notices.go +++ b/android/notices.go @@ -47,14 +47,14 @@ func modulesLicenseMetadata(ctx BuilderContext, modules ...Module) Paths { } // buildNoticeOutputFromLicenseMetadata writes out a notice file. -func buildNoticeOutputFromLicenseMetadata(ctx BuilderContext, tool, name string, outputFile WritablePath, libraryName, stripPrefix string, modules ...Module) { +func buildNoticeOutputFromLicenseMetadata(ctx BuilderContext, tool, ruleName string, outputFile WritablePath, libraryName, stripPrefix string, modules ...Module) { depsFile := outputFile.ReplaceExtension(ctx, strings.TrimPrefix(outputFile.Ext()+".d", ".")) rule := NewRuleBuilder(pctx, ctx) if len(modules) == 0 { if mctx, ok := ctx.(ModuleContext); ok { modules = []Module{mctx.Module()} } else { - panic(fmt.Errorf("%s %q needs a module to generate the notice for", name, libraryName)) + panic(fmt.Errorf("%s %q needs a module to generate the notice for", ruleName, libraryName)) } } if libraryName == "" { @@ -75,26 +75,26 @@ func buildNoticeOutputFromLicenseMetadata(ctx BuilderContext, tool, name string, cmd = cmd.FlagWithArg("--product ", libraryName) } cmd = cmd.Inputs(modulesLicenseMetadata(ctx, modules...)) - rule.Build(name, "container notice file") + rule.Build(ruleName, "container notice file") } // BuildNoticeTextOutputFromLicenseMetadata writes out a notice text file based // on the license metadata files for the input `modules` defaulting to the // current context module if none given. -func BuildNoticeTextOutputFromLicenseMetadata(ctx BuilderContext, outputFile WritablePath, libraryName, stripPrefix string, modules ...Module) { - buildNoticeOutputFromLicenseMetadata(ctx, "textnotice", "text_notice", outputFile, libraryName, stripPrefix, modules...) +func BuildNoticeTextOutputFromLicenseMetadata(ctx BuilderContext, outputFile WritablePath, ruleName, libraryName, stripPrefix string, modules ...Module) { + buildNoticeOutputFromLicenseMetadata(ctx, "textnotice", "text_notice_"+ruleName, outputFile, libraryName, stripPrefix, modules...) } // BuildNoticeHtmlOutputFromLicenseMetadata writes out a notice text file based // on the license metadata files for the input `modules` defaulting to the // current context module if none given. -func BuildNoticeHtmlOutputFromLicenseMetadata(ctx BuilderContext, outputFile WritablePath, libraryName, stripPrefix string, modules ...Module) { - buildNoticeOutputFromLicenseMetadata(ctx, "htmlnotice", "html_notice", outputFile, libraryName, stripPrefix, modules...) +func BuildNoticeHtmlOutputFromLicenseMetadata(ctx BuilderContext, outputFile WritablePath, ruleName, libraryName, stripPrefix string, modules ...Module) { + buildNoticeOutputFromLicenseMetadata(ctx, "htmlnotice", "html_notice_"+ruleName, outputFile, libraryName, stripPrefix, modules...) } // BuildNoticeXmlOutputFromLicenseMetadata writes out a notice text file based // on the license metadata files for the input `modules` defaulting to the // current context module if none given. -func BuildNoticeXmlOutputFromLicenseMetadata(ctx BuilderContext, outputFile WritablePath, libraryName, stripPrefix string, modules ...Module) { - buildNoticeOutputFromLicenseMetadata(ctx, "xmlnotice", "xml_notice", outputFile, libraryName, stripPrefix, modules...) +func BuildNoticeXmlOutputFromLicenseMetadata(ctx BuilderContext, outputFile WritablePath, ruleName, libraryName, stripPrefix string, modules ...Module) { + buildNoticeOutputFromLicenseMetadata(ctx, "xmlnotice", "xml_notice_"+ruleName, outputFile, libraryName, stripPrefix, modules...) } diff --git a/android/singleton.go b/android/singleton.go index ec7f63eca..7c6cf4fd6 100644 --- a/android/singleton.go +++ b/android/singleton.go @@ -272,7 +272,8 @@ func (s *singletonContextAdaptor) ModuleVariantsFromName(referer Module, name st if depQualified.pkg != qualified.pkg { rule := effectiveVisibilityRules(s.Config(), depQualified) if !rule.matches(qualified) { - s.ModuleErrorf(referer, "references %s which is not visible to this module\nYou may need to add %q to its visibility", depQualified, "//"+s.ModuleDir(m)) + s.ModuleErrorf(referer, "module %q references %q which is not visible to this module\nYou may need to add %q to its visibility", + referer.Name(), depQualified, "//"+s.ModuleDir(referer)) continue } } diff --git a/android_sdk/sdk_repo_host.go b/android_sdk/sdk_repo_host.go index c61afcbca..9519be047 100644 --- a/android_sdk/sdk_repo_host.go +++ b/android_sdk/sdk_repo_host.go @@ -124,7 +124,7 @@ func (s *sdkRepoHost) GenerateAndroidBuildActions(ctx android.ModuleContext) { s.CopySpecsToDir(ctx, builder, packageSpecs, dir) noticeFile := android.PathForModuleOut(ctx, "NOTICES.txt") - android.BuildNoticeTextOutputFromLicenseMetadata(ctx, noticeFile, "", outputZipFile.String()) + android.BuildNoticeTextOutputFromLicenseMetadata(ctx, noticeFile, "", "", outputZipFile.String()) builder.Command().Text("cp"). Input(noticeFile). Text(filepath.Join(dir.String(), "NOTICE.txt")) diff --git a/apex/builder.go b/apex/builder.go index f959b7a69..91193637c 100644 --- a/apex/builder.go +++ b/apex/builder.go @@ -618,7 +618,7 @@ func (a *apexBundle) buildUnflattenedApex(ctx android.ModuleContext) { // Create a NOTICE file, and embed it as an asset file in the APEX. a.htmlGzNotice = android.PathForModuleOut(ctx, "NOTICE.html.gz") - android.BuildNoticeHtmlOutputFromLicenseMetadata(ctx, a.htmlGzNotice, "", unsignedOutputFile.String()) + android.BuildNoticeHtmlOutputFromLicenseMetadata(ctx, a.htmlGzNotice, "", "", unsignedOutputFile.String()) noticeAssetPath := android.PathForModuleOut(ctx, "NOTICE", "NOTICE.html.gz") builder := android.NewRuleBuilder(pctx, ctx) builder.Command().Text("cp"). diff --git a/java/app.go b/java/app.go index bc7264c49..c61c4e5d0 100755 --- a/java/app.go +++ b/java/app.go @@ -656,7 +656,7 @@ func (a *AndroidApp) generateAndroidBuildActions(ctx android.ModuleContext) { if Bool(a.appProperties.Embed_notices) || ctx.Config().IsEnvTrue("ALWAYS_EMBED_NOTICES") { noticeFile := android.PathForModuleOut(ctx, "NOTICE.html.gz") - android.BuildNoticeHtmlOutputFromLicenseMetadata(ctx, noticeFile, "", a.outputFile.String()) + android.BuildNoticeHtmlOutputFromLicenseMetadata(ctx, noticeFile, "", "", a.outputFile.String()) noticeAssetPath := android.PathForModuleOut(ctx, "NOTICE", "NOTICE.html.gz") builder := android.NewRuleBuilder(pctx, ctx) builder.Command().Text("cp").