Add gen_notice module.
Refactor notices to support notices for multiple modules. Enforce visibility and handle missing dependencies. Bug: 213388645 Change-Id: Id6a81987f087419ad37d0cce57a71e8a7c4cd6e0
This commit is contained in:
24
java/app.go
24
java/app.go
@@ -582,18 +582,6 @@ func (a *AndroidApp) generateAndroidBuildActions(ctx android.ModuleContext) {
|
||||
}
|
||||
a.onDeviceDir = android.InstallPathToOnDevicePath(ctx, a.installDir)
|
||||
|
||||
if Bool(a.appProperties.Embed_notices) || ctx.Config().IsEnvTrue("ALWAYS_EMBED_NOTICES") {
|
||||
noticeFile := android.PathForModuleOut(ctx, "NOTICE.html.gz")
|
||||
android.BuildNoticeHtmlOutputFromLicenseMetadata(ctx, noticeFile)
|
||||
noticeAssetPath := android.PathForModuleOut(ctx, "NOTICE", "NOTICE.html.gz")
|
||||
builder := android.NewRuleBuilder(pctx, ctx)
|
||||
builder.Command().Text("cp").
|
||||
Input(noticeFile).
|
||||
Output(noticeAssetPath)
|
||||
builder.Build("notice_dir", "Building notice dir")
|
||||
a.aapt.noticeFile = android.OptionalPathForPath(noticeAssetPath)
|
||||
}
|
||||
|
||||
a.classLoaderContexts = a.usesLibrary.classLoaderContextForUsesLibDeps(ctx)
|
||||
|
||||
// Process all building blocks, from AAPT to certificates.
|
||||
@@ -667,6 +655,18 @@ func (a *AndroidApp) generateAndroidBuildActions(ctx android.ModuleContext) {
|
||||
a.extraOutputFiles = append(a.extraOutputFiles, v4SignatureFile)
|
||||
}
|
||||
|
||||
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())
|
||||
noticeAssetPath := android.PathForModuleOut(ctx, "NOTICE", "NOTICE.html.gz")
|
||||
builder := android.NewRuleBuilder(pctx, ctx)
|
||||
builder.Command().Text("cp").
|
||||
Input(noticeFile).
|
||||
Output(noticeAssetPath)
|
||||
builder.Build("notice_dir", "Building notice dir")
|
||||
a.aapt.noticeFile = android.OptionalPathForPath(noticeAssetPath)
|
||||
}
|
||||
|
||||
for _, split := range a.aapt.splits {
|
||||
// Sign the split APKs
|
||||
packageFile := android.PathForModuleOut(ctx, a.installApkName+"_"+split.suffix+".apk")
|
||||
|
Reference in New Issue
Block a user