diff options
Diffstat (limited to 'ui/build.gradle.kts')
-rw-r--r-- | ui/build.gradle.kts | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/ui/build.gradle.kts b/ui/build.gradle.kts new file mode 100644 index 00000000..5cdcb6a1 --- /dev/null +++ b/ui/build.gradle.kts @@ -0,0 +1,93 @@ +@file:Suppress("UnstableApiUsage") + +import org.jetbrains.kotlin.gradle.dsl.JvmTarget +import org.jetbrains.kotlin.gradle.tasks.KotlinCompile + +val pkg: String = providers.gradleProperty("wireguardPackageName").get() + +plugins { + alias(libs.plugins.android.application) + alias(libs.plugins.kotlin.android) + alias(libs.plugins.kotlin.kapt) +} + +android { + compileSdk = 34 + buildFeatures { + buildConfig = true + dataBinding = true + viewBinding = true + } + namespace = pkg + defaultConfig { + applicationId = pkg + minSdk = 21 + targetSdk = 34 + versionCode = providers.gradleProperty("wireguardVersionCode").get().toInt() + versionName = providers.gradleProperty("wireguardVersionName").get() + buildConfigField("int", "MIN_SDK_VERSION", minSdk.toString()) + } + compileOptions { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 + isCoreLibraryDesugaringEnabled = true + } + buildTypes { + release { + isMinifyEnabled = true + isShrinkResources = true + proguardFiles("proguard-android-optimize.txt") + packaging { + resources { + excludes += "DebugProbesKt.bin" + excludes += "kotlin-tooling-metadata.json" + excludes += "META-INF/*.version" + } + } + } + debug { + applicationIdSuffix = ".debug" + versionNameSuffix = "-debug" + } + create("googleplay") { + initWith(getByName("release")) + matchingFallbacks += "release" + } + } + androidResources { + generateLocaleConfig = true + } + lint { + disable += "LongLogTag" + warning += "MissingTranslation" + warning += "ImpliedQuantity" + } +} + +dependencies { + implementation(project(":tunnel")) + implementation(libs.androidx.activity.ktx) + implementation(libs.androidx.annotation) + implementation(libs.androidx.appcompat) + implementation(libs.androidx.constraintlayout) + implementation(libs.androidx.coordinatorlayout) + implementation(libs.androidx.biometric) + implementation(libs.androidx.core.ktx) + implementation(libs.androidx.fragment.ktx) + implementation(libs.androidx.preference.ktx) + implementation(libs.androidx.lifecycle.runtime.ktx) + implementation(libs.androidx.datastore.preferences) + implementation(libs.google.material) + implementation(libs.zxing.android.embedded) + implementation(libs.kotlinx.coroutines.android) + coreLibraryDesugaring(libs.desugarJdkLibs) +} + +tasks.withType<JavaCompile>().configureEach { + options.compilerArgs.add("-Xlint:unchecked") + options.isDeprecation = true +} + +tasks.withType<KotlinCompile>().configureEach { + compilerOptions.jvmTarget.set(JvmTarget.JVM_17) +} |