aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/ui/build.gradle.kts
diff options
context:
space:
mode:
Diffstat (limited to 'ui/build.gradle.kts')
-rw-r--r--ui/build.gradle.kts93
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)
+}