-
Notifications
You must be signed in to change notification settings - Fork 195
/
build.gradle.kts
86 lines (72 loc) · 2.88 KB
/
build.gradle.kts
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
82
83
84
85
86
import com.lagradost.cloudstream3.gradle.CloudstreamExtension
import com.android.build.gradle.BaseExtension
buildscript {
repositories {
google()
mavenCentral()
// Shitpack repo which contains our tools and dependencies
maven("https://jitpack.io")
}
dependencies {
classpath("com.android.tools.build:gradle:7.0.4")
// Cloudstream gradle plugin which makes everything work and builds plugins
classpath("com.github.recloudstream:gradle:-SNAPSHOT")
classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.21")
}
}
allprojects {
repositories {
google()
mavenCentral()
maven("https://jitpack.io")
}
}
fun Project.cloudstream(configuration: CloudstreamExtension.() -> Unit) = extensions.getByName<CloudstreamExtension>("cloudstream").configuration()
fun Project.android(configuration: BaseExtension.() -> Unit) = extensions.getByName<BaseExtension>("android").configuration()
subprojects {
apply(plugin = "com.android.library")
apply(plugin = "kotlin-android")
apply(plugin = "com.lagradost.cloudstream3.gradle")
cloudstream {
// when running through github workflow, GITHUB_REPOSITORY should contain current repository name
setRepo(System.getenv("GITHUB_REPOSITORY") ?: "user/repo")
}
android {
defaultConfig {
minSdk = 21
compileSdkVersion(33)
targetSdk = 33
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile> {
kotlinOptions {
jvmTarget = "1.8" // Required
// Disables some unnecessary features
freeCompilerArgs = freeCompilerArgs +
"-Xno-call-assertions" +
"-Xno-param-assertions" +
"-Xno-receiver-assertions"
}
}
}
dependencies {
val apk by configurations
val implementation by configurations
// Stubs for all Cloudstream classes
apk("com.lagradost:cloudstream3:pre-release")
// these dependencies can include any of those which are added by the app,
// but you dont need to include any of them if you dont need them
// https://github.com/recloudstream/cloudstream/blob/master/app/build.gradle
implementation(kotlin("stdlib")) // adds standard kotlin features
implementation("com.github.Blatzar:NiceHttp:0.4.4") // http library
implementation("org.jsoup:jsoup:1.16.2") // html parser
implementation("com.fasterxml.jackson.module:jackson-module-kotlin:2.16.0")
implementation("com.fasterxml.jackson.core:jackson-databind:2.16.0")
}
}
task<Delete>("clean") {
delete(rootProject.buildDir)
}