Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit df5a9050 authored by Paul Duffin's avatar Paul Duffin
Browse files

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
parent e96108d7
Loading
Loading
Loading
Loading
+11 −1
Original line number Diff line number Diff line
@@ -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 {
+0 −15
Original line number Diff line number Diff line
@@ -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
	}