/
build.gradle.kts
90 lines (80 loc) · 2.31 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
87
88
89
90
allprojects {
repositories {
google()
mavenCentral()
maven("https://maven.pkg.jetbrains.space/public/p/compose/dev")
maven("https://oss.sonatype.org/content/repositories/snapshots/")
maven("https://maven.pkg.jetbrains.space/public/p/ktor/eap")
maven("https://jitpack.io")
}
}
buildscript {
repositories {
google()
mavenCentral()
gradlePluginPortal()
maven("https://maven.pkg.jetbrains.space/public/p/compose/dev")
}
}
plugins {
alias(libs.plugins.kotlin.native.cocoapods) apply false
alias(libs.plugins.moko.resources) apply false
alias(libs.plugins.android.application) apply false
alias(libs.plugins.android.library) apply false
alias(libs.plugins.buildkonfig) apply false
alias(libs.plugins.kotlin.atomicfu) apply false
alias(libs.plugins.kotlin.multiplatform) apply false
alias(libs.plugins.compose) apply false
alias(libs.plugins.kotlin.android) apply false
alias(libs.plugins.conveyor) apply false
alias(libs.plugins.bugsnag.android) apply false
}
apply(plugin = "kotlinx-atomicfu")
tasks.register("clearIOSOutput") {
doLast {
delete("iosApp/output")
mkdir("iosApp/output")
mkdir("iosApp/output/Payload/HINT Control.app")
}
}
tasks.register("buildXCArchive") {
dependsOn(":clearIOSOutput")
doLast {
exec {
commandLine(
"xcodebuild",
"archive",
"-workspace", "iosApp/iosApp.xcworkspace",
"-sdk", "iphoneos",
"-scheme", "iosApp",
"-archivePath", "iosApp/output/iosApp.xcarchive",
"-destination", "generic/platform=iOS",
)
}
}
}
tasks.register("moveXCArchive") {
dependsOn(":buildXCArchive")
doLast {
exec {
commandLine(
"mv", "iosApp/output/iosApp.xcarchive/Products/Applications/HINT Control.app",
"iosApp/output/Payload",
)
}
}
}
tasks.register("buildIPA") {
dependsOn(":moveXCArchive")
doLast {
exec {
setWorkingDir("iosApp/output")
commandLine(
"zip",
"-r",
"HINT Control.ipa",
"Payload",
)
}
}
}