From b521811d7bd3b69039f05b1d7fd0599a33254ab8 Mon Sep 17 00:00:00 2001 From: Ulya Trafimovich Date: Wed, 7 Oct 2020 15:11:32 +0100 Subject: Add separate dependency tags for compat libs based on SDK version. The version in the tag is the SDK version that in which compatibility library was added as a separate libary. Using distinct tags makes it possible to differentiate between dependencies for different SDK versions (this will be needed in subsequent CLs). Test: lunch aosp_cf_x86_phone-userdebug && m Bug: 132357300 Change-Id: I72296c05d6649e811ddc701aaeb84f91d1ba66cb --- java/java.go | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'java/java.go') diff --git a/java/java.go b/java/java.go index a973bab39..4b48a15a0 100644 --- a/java/java.go +++ b/java/java.go @@ -547,6 +547,18 @@ type dependencyTag struct { name string } +type usesLibraryDependencyTag struct { + dependencyTag + sdkVersion int // SDK version in which the library appared as a standalone library. +} + +func makeUsesLibraryDependencyTag(sdkVersion int) usesLibraryDependencyTag { + return usesLibraryDependencyTag{ + dependencyTag: dependencyTag{name: fmt.Sprintf("uses-library-%d", sdkVersion)}, + sdkVersion: sdkVersion, + } +} + func IsJniDepTag(depTag blueprint.DependencyTag) bool { return depTag == jniLibTag } @@ -566,9 +578,12 @@ var ( proguardRaiseTag = dependencyTag{name: "proguard-raise"} certificateTag = dependencyTag{name: "certificate"} instrumentationForTag = dependencyTag{name: "instrumentation_for"} - usesLibTag = dependencyTag{name: "uses-library"} extraLintCheckTag = dependencyTag{name: "extra-lint-check"} jniLibTag = dependencyTag{name: "jnilib"} + usesLibTag = makeUsesLibraryDependencyTag(dexpreopt.AnySdkVersion) + usesLibCompat28Tag = makeUsesLibraryDependencyTag(28) + usesLibCompat29Tag = makeUsesLibraryDependencyTag(29) + usesLibCompat30Tag = makeUsesLibraryDependencyTag(30) ) func IsLibDepTag(depTag blueprint.DependencyTag) bool { -- cgit v1.2.3-59-g8ed1b