diff --git a/gradle/build-logic/src/main/kotlin/PluginAndroidBase.kt b/gradle/build-logic/src/main/kotlin/PluginAndroidBase.kt index 70e553ea3..60bc7f9db 100644 --- a/gradle/build-logic/src/main/kotlin/PluginAndroidBase.kt +++ b/gradle/build-logic/src/main/kotlin/PluginAndroidBase.kt @@ -8,6 +8,7 @@ import mihon.gradle.extensions.configureTest import mihon.gradle.extensions.coreLibraryDesugaring import mihon.gradle.extensions.libs import mihon.gradle.extensions.mihonx +import mihon.gradle.extensions.release import org.gradle.api.Plugin import org.gradle.api.Project import org.gradle.kotlin.dsl.dependencies @@ -28,7 +29,9 @@ class PluginAndroidBase : Plugin { ndkVersion = mihonx.versions.android.ndk.get() } - compileSdk = mihonx.versions.android.sdk.compile.get().toInt() + compileSdk { + version = release(mihonx.versions.android.sdk.compile) + } compileOptions { isCoreLibraryDesugaringEnabled = true diff --git a/gradle/build-logic/src/main/kotlin/PluginKotlinMultiplatform.kt b/gradle/build-logic/src/main/kotlin/PluginKotlinMultiplatform.kt index 9326e50cd..e8af93778 100644 --- a/gradle/build-logic/src/main/kotlin/PluginKotlinMultiplatform.kt +++ b/gradle/build-logic/src/main/kotlin/PluginKotlinMultiplatform.kt @@ -6,6 +6,7 @@ import mihon.gradle.extensions.coreLibraryDesugaring import mihon.gradle.extensions.libs import mihon.gradle.extensions.mihonx import mihon.gradle.extensions.plugins +import mihon.gradle.extensions.release import org.gradle.api.Plugin import org.gradle.api.Project import org.gradle.kotlin.dsl.configure @@ -31,7 +32,9 @@ class PluginKotlinMultiplatform : Plugin { android { minSdk = mihonx.versions.android.sdk.min.get().toInt() - compileSdk = mihonx.versions.android.sdk.compile.get().toInt() + compileSdk { + version = release(mihonx.versions.android.sdk.compile) + } enableCoreLibraryDesugaring = true } } diff --git a/gradle/build-logic/src/main/kotlin/mihon/gradle/extensions/CompileSdkSpec.kt b/gradle/build-logic/src/main/kotlin/mihon/gradle/extensions/CompileSdkSpec.kt new file mode 100644 index 000000000..dcc9c0203 --- /dev/null +++ b/gradle/build-logic/src/main/kotlin/mihon/gradle/extensions/CompileSdkSpec.kt @@ -0,0 +1,12 @@ +package mihon.gradle.extensions + +import com.android.build.api.dsl.CompileSdkSpec +import com.android.build.api.dsl.CompileSdkVersion +import org.gradle.api.provider.Provider + +internal fun CompileSdkSpec.release(version: Provider): CompileSdkVersion { + val (major, minor) = version.get().split(".", limit = 2).let { + it[0].toInt() to it.getOrNull(1)?.toInt() + } + return release(major) { minorApiLevel = minor } +} diff --git a/gradle/mihon.versions.toml b/gradle/mihon.versions.toml index b7b4e396b..a250dee3a 100644 --- a/gradle/mihon.versions.toml +++ b/gradle/mihon.versions.toml @@ -1,7 +1,7 @@ [versions] # Used in [/gradle/build-config/src/main/kotlin/PluginKotlinMultiplatform.kt] android-sdk-min = "26" -android-sdk-compile = "37" +android-sdk-compile = "37.1" android-sdk-target = "36" android-ndk = "29.0.14206865" java = "17"