aboutsummaryrefslogtreecommitdiffstats
path: root/build-logic/src/main/kotlin/app/passwordstore/gradle/AndroidCommon.kt
diff options
context:
space:
mode:
Diffstat (limited to 'build-logic/src/main/kotlin/app/passwordstore/gradle/AndroidCommon.kt')
-rw-r--r--build-logic/src/main/kotlin/app/passwordstore/gradle/AndroidCommon.kt55
1 files changed, 55 insertions, 0 deletions
diff --git a/build-logic/src/main/kotlin/app/passwordstore/gradle/AndroidCommon.kt b/build-logic/src/main/kotlin/app/passwordstore/gradle/AndroidCommon.kt
new file mode 100644
index 00000000..5e38b6eb
--- /dev/null
+++ b/build-logic/src/main/kotlin/app/passwordstore/gradle/AndroidCommon.kt
@@ -0,0 +1,55 @@
+package app.passwordstore.gradle
+
+import app.passwordstore.gradle.flavors.configureSlimTests
+import com.android.build.gradle.TestedExtension
+import org.gradle.api.JavaVersion
+import org.gradle.api.Project
+import org.gradle.api.tasks.testing.Test
+import org.gradle.kotlin.dsl.configure
+import org.gradle.kotlin.dsl.withType
+
+@Suppress("UnstableApiUsage")
+object AndroidCommon {
+ fun configure(project: Project) {
+ project.extensions.configure<TestedExtension> {
+ setCompileSdkVersion(33)
+ defaultConfig {
+ minSdk = 23
+ targetSdk = 31
+ }
+
+ sourceSets {
+ named("main") { java.srcDirs("src/main/kotlin") }
+ named("test") { java.srcDirs("src/test/kotlin") }
+ named("androidTest") { java.srcDirs("src/androidTest/kotlin") }
+ }
+
+ packagingOptions {
+ resources.excludes.add("**/*.version")
+ resources.excludes.add("**/*.txt")
+ resources.excludes.add("**/*.kotlin_module")
+ resources.excludes.add("**/plugin.properties")
+ resources.excludes.add("**/META-INF/AL2.0")
+ resources.excludes.add("**/META-INF/LGPL2.1")
+ }
+
+ compileOptions {
+ sourceCompatibility = JavaVersion.VERSION_11
+ targetCompatibility = JavaVersion.VERSION_11
+ }
+
+ testOptions {
+ animationsDisabled = true
+ unitTests.isReturnDefaultValues = true
+ }
+ project.tasks.withType<Test> {
+ jvmArgs(
+ "--add-opens=java.base/java.lang=ALL-UNNAMED",
+ "--add-opens=java.base/java.util=ALL-UNNAMED",
+ )
+ }
+
+ project.configureSlimTests()
+ }
+ }
+}