import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { alias(libs.plugins.android.application) alias(libs.plugins.compose) alias(libs.plugins.hilt) alias(libs.plugins.ksp) } android { namespace = "de.rfc1437.ironstorage" compileSdk = libs.versions.compileSdk.get().toInt() ndkVersion = libs.versions.ndk.get() defaultConfig { minSdk = libs.versions.minSdk.get().toInt() applicationId = "de.rfc1437.ironstorage" targetSdk = libs.versions.compileSdk.get().toInt() versionCode = 1 versionName = "1.0.1" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" ndk { abiFilters += listOf("arm64-v8a", "armeabi-v7a") } } compileOptions { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 } buildFeatures { compose = true } buildTypes { debug { isDebuggable = true } release { isMinifyEnabled = true isShrinkResources = true ndk { debugSymbolLevel = "FULL" } proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) } } buildTypes.create("benchmark") { initWith(buildTypes.getByName("release")) signingConfig = signingConfigs.getByName("debug") matchingFallbacks += "release" } sourceSets.getByName("benchmark").kotlin.srcDir("src/release/kotlin") buildTypes.create("profile") { initWith(buildTypes.getByName("benchmark")) isMinifyEnabled = false isShrinkResources = false } sourceSets.getByName("profile").apply { kotlin.srcDir("src/release/kotlin") manifest.srcFile("src/benchmark/AndroidManifest.xml") } packaging { resources.excludes += "/META-INF/{AL2.0,LGPL2.1}" } lint { abortOnError = true warningsAsErrors = true // The user scoped this milestone to ARM Android; x86 ChromeOS is excluded. disable += "ChromeOsAbiSupport" } } kotlin { jvmToolchain(25) compilerOptions { jvmTarget.set(JvmTarget.JVM_17) allWarningsAsErrors.set(true) } } dependencies { implementation(libs.credentials) implementation(libs.autofill) implementation(project(":features")) implementation(project(":core")) implementation(project(":platform")) implementation(libs.fragment) implementation(platform(libs.compose.bom)) implementation(libs.compose.ui) implementation(libs.compose.material3) implementation(libs.compose.adaptive) implementation(libs.lifecycle.compose) implementation(libs.lifecycle.viewmodel) implementation(libs.navigation.runtime) implementation(libs.navigation.ui) implementation(libs.activity.compose) implementation(libs.hilt.android) ksp(libs.hilt.compiler) androidTestImplementation(platform(libs.compose.bom)) androidTestImplementation(libs.compose.ui.test) androidTestImplementation(libs.compose.ui.test.accessibility) androidTestImplementation(libs.android.test.runner) androidTestImplementation(libs.android.test.espresso) implementation(libs.coroutines.android) testImplementation(libs.coroutines.test) testImplementation(libs.junit) }