/
build.gradle.kts
93 lines (89 loc) · 2.61 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
91
92
93
/*
* Copyright 2021 Square Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
plugins {
kotlin("multiplatform")
}
kotlin {
jvm().withJava()
if (System.getProperty("kjs", "true").toBoolean()) {
js(IR) {
configure(listOf(compilations.getByName("main"), compilations.getByName("test"))) {
tasks.getByName(compileKotlinTaskName) {
kotlinOptions {
moduleKind = "umd"
sourceMap = true
metaInfo = true
}
}
}
nodejs()
browser()
}
}
if (System.getProperty("knative", "true").toBoolean()) {
iosX64()
iosArm64()
iosSimulatorArm64()
// Required to generate tests tasks: https://youtrack.jetbrains.com/issue/KT-26547
linuxX64()
macosX64()
macosArm64()
mingwX64()
tvosX64()
tvosArm64()
tvosSimulatorArm64()
}
sourceSets {
val commonMain by getting {
dependencies {
api(projects.wireRuntime)
api(projects.wireSchemaTests)
implementation(libs.okio.core)
implementation(libs.okio.fakefilesystem)
implementation(libs.assertk)
implementation(projects.wireRuntime)
}
}
val jvmMain by getting {
dependencies {
api(libs.moshi)
api(libs.guava)
api(libs.javapoet)
api(libs.kotlinpoet)
implementation(libs.protobuf.java)
implementation(libs.assertj)
}
}
if (System.getProperty("knative", "true").toBoolean()) {
val nativeMain by creating {
dependsOn(commonMain)
}
val iosX64Main by getting
val iosArm64Main by getting
val iosSimulatorArm64Main by getting
val linuxX64Main by getting
val macosX64Main by getting
val macosArm64Main by getting
val mingwX64Main by getting
val tvosX64Main by getting
val tvosArm64Main by getting
val tvosSimulatorArm64Main by getting
for (it in listOf(iosX64Main, iosArm64Main, iosSimulatorArm64Main, linuxX64Main, macosX64Main, macosArm64Main, mingwX64Main, tvosX64Main, tvosArm64Main, tvosSimulatorArm64Main)) {
it.dependsOn(nativeMain)
}
}
}
}