Build: add kotlin.build.useIRForLibraries to enable JVM IR for libraries separately

The next step for JVM IR adoption in our project is going to be enabling
`kotlin.build.useIR`, but keeping `kotlin.build.useIRForLibraries`
disabled until we fix all remaining ABI incompatibility issues for
library code.
This commit is contained in:
Alexander Udalov
2020-10-14 22:11:24 +02:00
parent 29d8730964
commit 4c09906235
12 changed files with 39 additions and 0 deletions
+15
View File
@@ -1,3 +1,5 @@
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
ext.configureJavaOnlyJvm6Project = { Project project ->
project.tasks.withType(JavaCompile) {
sourceCompatibility = 1.6
@@ -193,6 +195,19 @@ ext.configureLegacyPublishing = { Project project ->
}
}
ext.configureJvmIrBackend = { Project project ->
project.tasks.withType(KotlinCompile.class) { task ->
task.kotlinOptions {
if (CommonUtilKt.getBooleanProperty(project, "kotlin.build.useIRForLibraries")) {
useIR = true
freeCompilerArgs += ["-Xir-binary-with-stable-abi"]
} else {
useIR = false
}
}
}
}
allprojects { project ->
project.ext.configureSourcesJar = { lambda = {} ->
ArtifactsKt.sourcesJar(project) { task ->