forked from ankidroid/Anki-Android
-
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbuild.gradle.kts
More file actions
81 lines (67 loc) · 2.38 KB
/
build.gradle.kts
File metadata and controls
81 lines (67 loc) · 2.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
import java.util.Properties
plugins {
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.kotlin.serialization)
}
android {
namespace = "com.ichi2.anki.libanki"
compileSdk =
libs.versions.compileSdk
.get()
.toInt()
defaultConfig {
minSdk =
libs.versions.minSdk
.get()
.toInt()
consumerProguardFiles("consumer-rules.pro")
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
kotlin {
compilerOptions {
jvmTarget = JvmTarget.JVM_11
}
}
}
apply(from = "../lint.gradle")
dependencies {
// Project dependencies
implementation(project(":common"))
// Backend libraries
implementation(libs.protobuf.kotlin.lite) // This is required when loading from a file
val localProperties = Properties()
if (project.rootProject.file("local.properties").exists()) {
localProperties.load(project.rootProject.file("local.properties").inputStream())
}
if (localProperties["local_backend"] == "true") {
implementation(files("../../Anki-Android-Backend/rsdroid/build/outputs/aar/rsdroid-release.aar"))
testImplementation(files("../../Anki-Android-Backend/rsdroid-testing/build/libs/rsdroid-testing.jar"))
} else {
implementation(libs.ankiBackend.backend)
testImplementation(libs.ankiBackend.testing)
}
// JVM dependencies
implementation(libs.jakewharton.timber)
implementation(libs.kotlinx.coroutines.core)
implementation(libs.kotlinx.serialization.json)
// Android interface dependencies
implementation(libs.androidx.annotation)
testImplementation(libs.androidx.sqlite.framework)
// test dependencies
testImplementation(libs.hamcrest)
testImplementation(libs.kotlin.test)
testImplementation(libs.kotlin.test.junit5)
testImplementation(libs.kotlinx.coroutines.test)
testImplementation(libs.junit.vintage.engine)
testImplementation(libs.junit.jupiter)
testImplementation(libs.json)
testImplementation(project(":libanki:testutils"))
// project lint checks
// PERF: some rules do not need to be applied... but the full run was 3s
lintChecks(project(":lint-rules"))
}