summaryrefslogtreecommitdiff
path: root/java/base.go
diff options
context:
space:
mode:
author Sorin Basca <sorinbasca@google.com> 2021-12-20 11:51:24 +0000
committer Sorin Basca <sorinbasca@google.com> 2021-12-20 21:33:14 +0000
commit9347ae3ba06363a6a8268d6e587f7dcff4e76c38 (patch)
tree08cc4d14a420848e2920d2428eba4cd8e09c7624 /java/base.go
parentf1228f570a40b0f856b36779821ca0a86662a511 (diff)
Adding option to include sources only for Java 11 builds
Bug: 207852002 Test: m Test: EXPERIMENTAL_TARGET_JAVA_VERSION_11=true m Change-Id: I554a79798ea7f1dd4a96b09f761090f83a009cb4
Diffstat (limited to 'java/base.go')
-rw-r--r--java/base.go12
1 files changed, 12 insertions, 0 deletions
diff --git a/java/base.go b/java/base.go
index c45ef641e..7cd71a270 100644
--- a/java/base.go
+++ b/java/base.go
@@ -122,6 +122,14 @@ type CommonProperties struct {
Javacflags []string
}
+ Openjdk11 struct {
+ // List of source files that should only be used when passing -source 1.9 or higher
+ Srcs []string `android:"path"`
+
+ // List of javac flags that should only be used when passing -source 1.9 or higher
+ Javacflags []string
+ }
+
// When compiling language level 9+ .java code in packages that are part of
// a system module, patch_module names the module that your sources and
// dependencies should be patched into. The Android runtime currently
@@ -959,6 +967,10 @@ func (j *Module) compile(ctx android.ModuleContext, aaptSrcJar android.Path) {
if flags.javaVersion.usesJavaModules() {
j.properties.Srcs = append(j.properties.Srcs, j.properties.Openjdk9.Srcs...)
}
+ if ctx.Config().TargetsJava11() {
+ j.properties.Srcs = append(j.properties.Srcs, j.properties.Openjdk11.Srcs...)
+ }
+
srcFiles := android.PathsForModuleSrcExcludes(ctx, j.properties.Srcs, j.properties.Exclude_srcs)
if hasSrcExt(srcFiles.Strings(), ".proto") {
flags = protoFlags(ctx, &j.properties, &j.protoProperties, flags)