summaryrefslogtreecommitdiff
path: root/java/java.go
diff options
context:
space:
mode:
author Jiyong Park <jiyong@google.com> 2024-05-15 20:40:56 +0900
committer Jiyong Park <jiyong@google.com> 2024-05-16 19:40:01 +0900
commit4384d294c349434399886db9fc1c53a1d2f32809 (patch)
treefa553d78ef57ddafd11116d75548aee919b95573 /java/java.go
parent5f0943f33f030a623db9046c8ea324099b735158 (diff)
Add make java.dependencyTag installable or not
java.dependencyTag now has a new field installable which contols whether the dependency should be added as the install dep of the app or not. This allows us to model all the dependency tags for Java using the same struct. Bug: N/A Test: m Change-Id: I9b1c7809a0bde3f15579aefd9bb34d828764b84b
Diffstat (limited to 'java/java.go')
-rw-r--r--java/java.go18
1 files changed, 9 insertions, 9 deletions
diff --git a/java/java.go b/java/java.go
index 249480428..05ef5d04f 100644
--- a/java/java.go
+++ b/java/java.go
@@ -366,14 +366,14 @@ type dependencyTag struct {
toolchain bool
static bool
+
+ installable bool
}
-// installDependencyTag is a dependency tag that is annotated to cause the installed files of the
-// dependency to be installed when the parent module is installed.
-type installDependencyTag struct {
- blueprint.BaseDependencyTag
- android.InstallAlwaysNeededDependencyTag
- name string
+var _ android.InstallNeededDependencyTag = (*dependencyTag)(nil)
+
+func (d dependencyTag) InstallDepNeeded() bool {
+ return d.installable
}
func (d dependencyTag) LicenseAnnotations() []android.LicenseAnnotation {
@@ -405,7 +405,7 @@ func makeUsesLibraryDependencyTag(sdkVersion int, optional bool) usesLibraryDepe
}
func IsJniDepTag(depTag blueprint.DependencyTag) bool {
- return depTag == jniLibTag
+ return depTag == jniLibTag || depTag == jniInstallTag
}
var (
@@ -434,8 +434,8 @@ var (
javaApiContributionTag = dependencyTag{name: "java-api-contribution"}
depApiSrcsTag = dependencyTag{name: "dep-api-srcs"}
aconfigDeclarationTag = dependencyTag{name: "aconfig-declaration"}
- jniInstallTag = installDependencyTag{name: "jni install"}
- binaryInstallTag = installDependencyTag{name: "binary install"}
+ jniInstallTag = dependencyTag{name: "jni install", runtimeLinked: true, installable: true}
+ binaryInstallTag = dependencyTag{name: "binary install", runtimeLinked: true, installable: true}
usesLibReqTag = makeUsesLibraryDependencyTag(dexpreopt.AnySdkVersion, false)
usesLibOptTag = makeUsesLibraryDependencyTag(dexpreopt.AnySdkVersion, true)
usesLibCompat28OptTag = makeUsesLibraryDependencyTag(28, true)