aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-11-02 23:01:38 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-11-02 23:01:38 +0000
commitb78cfcdb623c9ac5a5c3aaa4e77005f55fe3b2f0 (patch)
treec97cde7673df498d91104f4bc36ad445bd029f87
parent689d58b3179c48d0eac18d2647a496537d2616eb (diff)
parent8053f8269718e24540176bf3cc0722f66403d7d7 (diff)
downloadsoong-b78cfcdb623c9ac5a5c3aaa4e77005f55fe3b2f0.tar.gz
Snap for 9248884 from 8053f8269718e24540176bf3cc0722f66403d7d7 to tm-qpr2-release
Change-Id: Ied2acb32736a62f7e77309f662cf59c8fc5fcf42
-rw-r--r--android/neverallow.go1
-rw-r--r--java/java.go14
-rw-r--r--java/kotlin.go5
3 files changed, 17 insertions, 3 deletions
diff --git a/android/neverallow.go b/android/neverallow.go
index aa47bcaeb..e3bdd63b2 100644
--- a/android/neverallow.go
+++ b/android/neverallow.go
@@ -153,6 +153,7 @@ func createJavaDeviceForHostRules() []Rule {
javaDeviceForHostProjectsAllowedList := []string{
"development/build",
"external/guava",
+ "external/kotlinx.coroutines",
"external/robolectric-shadows",
"frameworks/layoutlib",
}
diff --git a/java/java.go b/java/java.go
index 1e99aa32f..9830d08dd 100644
--- a/java/java.go
+++ b/java/java.go
@@ -526,6 +526,20 @@ func (v javaVersion) String() string {
}
}
+func (v javaVersion) StringForKotlinc() string {
+ // $ ./external/kotlinc/bin/kotlinc -jvm-target foo
+ // error: unknown JVM target version: foo
+ // Supported versions: 1.6, 1.8, 9, 10, 11, 12, 13, 14, 15, 16, 17
+ switch v {
+ case JAVA_VERSION_7:
+ return "1.6"
+ case JAVA_VERSION_9:
+ return "9"
+ default:
+ return v.String()
+ }
+}
+
// Returns true if javac targeting this version uses system modules instead of a bootclasspath.
func (v javaVersion) usesJavaModules() bool {
return v >= 9
diff --git a/java/kotlin.go b/java/kotlin.go
index 903c6249b..9bff5ea01 100644
--- a/java/kotlin.go
+++ b/java/kotlin.go
@@ -119,9 +119,8 @@ func kotlinCompile(ctx android.ModuleContext, outputFile, headerOutputFile andro
"srcJarDir": android.PathForModuleOut(ctx, "kotlinc", "srcJars").String(),
"kotlinBuildFile": android.PathForModuleOut(ctx, "kotlinc-build.xml").String(),
"emptyDir": android.PathForModuleOut(ctx, "kotlinc", "empty").String(),
- // http://b/69160377 kotlinc only supports -jvm-target 1.6 and 1.8
- "kotlinJvmTarget": "1.8",
- "name": kotlinName,
+ "kotlinJvmTarget": flags.javaVersion.StringForKotlinc(),
+ "name": kotlinName,
},
})
}