Move license module processing to GenerateAndroidBuildActions

Previously, the processing of the license module was done in the
licensesPropertyFlattener method which is called for all modules before
their GenerateAndroidBuildActions method is called. This change moves
the processing into the license module's GenerateAndroidBuildActions
method which was previously empty to match the normal practice.

Bug: 181569894
Test: m nothing
Change-Id: I3736879bfa4b4d1f4e2b35770852a02d09b3db83
This commit is contained in:
Paul Duffin 2021-05-06 21:52:31 +01:00
parent e96108d797
commit df5a90502d
2 changed files with 11 additions and 16 deletions

View File

@ -61,7 +61,17 @@ func (m *licenseModule) DepsMutator(ctx BottomUpMutatorContext) {
}
func (m *licenseModule) GenerateAndroidBuildActions(ctx ModuleContext) {
// Nothing to do.
// license modules have no licenses, but license_kinds must refer to license_kind modules
mergeProps(&m.base().commonProperties.Effective_licenses, ctx.ModuleName())
mergeProps(&m.base().commonProperties.Effective_license_text, PathsForModuleSrc(ctx, m.properties.License_text).Strings()...)
for _, module := range ctx.GetDirectDepsWithTag(licenseKindTag) {
if lk, ok := module.(*licenseKindModule); ok {
mergeProps(&m.base().commonProperties.Effective_license_conditions, lk.properties.Conditions...)
mergeProps(&m.base().commonProperties.Effective_license_kinds, ctx.OtherModuleName(module))
} else {
ctx.ModuleErrorf("license_kinds property %q is not a license_kind module", ctx.OtherModuleName(module))
}
}
}
func LicenseFactory() Module {

View File

@ -187,21 +187,6 @@ func licensesPropertyFlattener(ctx ModuleContext) {
return
}
// license modules have no licenses, but license_kinds must refer to license_kind modules
if l, ok := m.(*licenseModule); ok {
mergeProps(&m.base().commonProperties.Effective_licenses, ctx.ModuleName())
mergeProps(&m.base().commonProperties.Effective_license_text, PathsForModuleSrc(ctx, l.properties.License_text).Strings()...)
for _, module := range ctx.GetDirectDepsWithTag(licenseKindTag) {
if lk, ok := module.(*licenseKindModule); ok {
mergeProps(&m.base().commonProperties.Effective_license_conditions, lk.properties.Conditions...)
mergeProps(&m.base().commonProperties.Effective_license_kinds, ctx.OtherModuleName(module))
} else {
ctx.ModuleErrorf("license_kinds property %q is not a license_kind module", ctx.OtherModuleName(module))
}
}
return
}
if exemptFromRequiredApplicableLicensesProperty(m) {
return
}