|
|
|
@ -17,14 +17,11 @@
|
|
|
|
|
package com.google.samples.apps.nowinandroid
|
|
|
|
|
|
|
|
|
|
import com.android.build.api.dsl.CommonExtension
|
|
|
|
|
import org.gradle.api.JavaVersion
|
|
|
|
|
import org.gradle.api.Project
|
|
|
|
|
import org.gradle.api.plugins.JavaPluginExtension
|
|
|
|
|
import org.gradle.kotlin.dsl.assign
|
|
|
|
|
import org.gradle.kotlin.dsl.configure
|
|
|
|
|
import org.gradle.kotlin.dsl.dependencies
|
|
|
|
|
import org.gradle.kotlin.dsl.provideDelegate
|
|
|
|
|
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
|
|
|
|
|
import org.jetbrains.kotlin.gradle.dsl.KotlinAndroidProjectExtension
|
|
|
|
|
import org.jetbrains.kotlin.gradle.dsl.KotlinBaseExtension
|
|
|
|
|
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmProjectExtension
|
|
|
|
@ -43,10 +40,6 @@ internal fun Project.configureKotlinAndroid(
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
compileOptions {
|
|
|
|
|
// Up to Java 11 APIs are available through desugaring
|
|
|
|
|
// https://developer.android.com/studio/write/java11-minimal-support-table
|
|
|
|
|
sourceCompatibility = JavaVersion.VERSION_11
|
|
|
|
|
targetCompatibility = JavaVersion.VERSION_11
|
|
|
|
|
isCoreLibraryDesugaringEnabled = true
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -62,13 +55,6 @@ internal fun Project.configureKotlinAndroid(
|
|
|
|
|
* Configure base Kotlin options for JVM (non-Android)
|
|
|
|
|
*/
|
|
|
|
|
internal fun Project.configureKotlinJvm() {
|
|
|
|
|
extensions.configure<JavaPluginExtension> {
|
|
|
|
|
// Up to Java 11 APIs are available through desugaring
|
|
|
|
|
// https://developer.android.com/studio/write/java11-minimal-support-table
|
|
|
|
|
sourceCompatibility = JavaVersion.VERSION_11
|
|
|
|
|
targetCompatibility = JavaVersion.VERSION_11
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
configureKotlin<KotlinJvmProjectExtension>()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -84,7 +70,7 @@ private inline fun <reified T : KotlinBaseExtension> Project.configureKotlin() =
|
|
|
|
|
is KotlinJvmProjectExtension -> compilerOptions
|
|
|
|
|
else -> TODO("Unsupported project extension $this ${T::class}")
|
|
|
|
|
}.apply {
|
|
|
|
|
jvmTarget = JvmTarget.JVM_11
|
|
|
|
|
jvmToolchain(17)
|
|
|
|
|
allWarningsAsErrors = warningsAsErrors.toBoolean()
|
|
|
|
|
freeCompilerArgs.add(
|
|
|
|
|
// Enable experimental coroutines APIs, including Flow
|
|
|
|
|