From cbf70fcc3fe5df9a04de8298c3c99b16baf6da24 Mon Sep 17 00:00:00 2001 From: James Rich <2199651+jamesarich@users.noreply.github.com> Date: Fri, 30 Jan 2026 11:36:36 -0600 Subject: [PATCH] refactor(build): Centralize Android SDK and Java versions (#4377) --- .../meshtastic/buildlogic/KotlinAndroid.kt | 23 ++++++++++++++----- 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/build-logic/convention/src/main/kotlin/org/meshtastic/buildlogic/KotlinAndroid.kt b/build-logic/convention/src/main/kotlin/org/meshtastic/buildlogic/KotlinAndroid.kt index d24dd49bb..c7dd39194 100644 --- a/build-logic/convention/src/main/kotlin/org/meshtastic/buildlogic/KotlinAndroid.kt +++ b/build-logic/convention/src/main/kotlin/org/meshtastic/buildlogic/KotlinAndroid.kt @@ -20,6 +20,8 @@ package org.meshtastic.buildlogic import com.android.build.api.dsl.ApplicationExtension import com.android.build.api.dsl.CommonExtension import com.android.build.api.dsl.KotlinMultiplatformAndroidLibraryTarget +import com.android.build.api.dsl.LibraryExtension +import org.gradle.api.JavaVersion import org.gradle.api.Project import org.gradle.kotlin.dsl.configure import org.gradle.kotlin.dsl.findByType @@ -37,16 +39,25 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile internal fun Project.configureKotlinAndroid( commonExtension: CommonExtension, ) { + val compileSdkVersion = configProperties.getProperty("COMPILE_SDK").toInt() + val minSdkVersion = configProperties.getProperty("MIN_SDK").toInt() + val targetSdkVersion = configProperties.getProperty("TARGET_SDK").toInt() commonExtension.apply { - compileSdk = configProperties.getProperty("COMPILE_SDK").toInt() - - defaultConfig.apply { - minSdk = configProperties.getProperty("MIN_SDK").toInt() - if (commonExtension is ApplicationExtension) { - commonExtension.defaultConfig.targetSdk = configProperties.getProperty("TARGET_SDK").toInt() + when (this) { + is ApplicationExtension -> { + compileSdk = compileSdkVersion + defaultConfig.targetSdk = targetSdkVersion + } + is LibraryExtension -> { + compileSdk = compileSdkVersion } } + + defaultConfig.minSdk = minSdkVersion + + compileOptions.sourceCompatibility = JavaVersion.VERSION_17 + compileOptions.targetCompatibility = JavaVersion.VERSION_17 } configureKotlin()