diff options
Diffstat (limited to 'sdk/update.go')
-rw-r--r-- | sdk/update.go | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/sdk/update.go b/sdk/update.go index 7fc7b9a31..9032d1fb8 100644 --- a/sdk/update.go +++ b/sdk/update.go @@ -291,13 +291,17 @@ func (s *sdk) buildSnapshot(ctx android.ModuleContext) android.OutputPath { return outputZipFile } +type propertyTag struct { + name string +} + +var sdkMemberReferencePropertyTag = propertyTag{"sdkMemberReferencePropertyTag"} + type unversionedToVersionedTransformation struct { identityTransformation builder *snapshotBuilder } -var _ bpTransformer = (*unversionedToVersionedTransformation)(nil) - func (t unversionedToVersionedTransformation) transformModule(module *bpModule) *bpModule { // Use a versioned name for the module but remember the original name for the // snapshot. @@ -307,6 +311,14 @@ func (t unversionedToVersionedTransformation) transformModule(module *bpModule) return module } +func (t unversionedToVersionedTransformation) transformProperty(name string, value interface{}, tag android.BpPropertyTag) (interface{}, android.BpPropertyTag) { + if tag == sdkMemberReferencePropertyTag { + return t.builder.versionedSdkMemberNames(value.([]string)), tag + } else { + return value, tag + } +} + func generateBpContents(contents *generatedContents, bpFile *bpFile) { contents.Printfln("// This is auto-generated. DO NOT EDIT.") for _, bpModule := range bpFile.order { @@ -453,6 +465,10 @@ func addHostDeviceSupportedProperties(module *android.ModuleBase, bpModule *bpMo } } +func (s *snapshotBuilder) SdkMemberReferencePropertyTag() android.BpPropertyTag { + return sdkMemberReferencePropertyTag +} + // Get a versioned name appropriate for the SDK snapshot version being taken. func (s *snapshotBuilder) versionedSdkMemberName(unversionedName string) string { return versionedSdkMemberName(s.ctx, unversionedName, s.version) |