Skip to content

Commit c711ddc

Browse files
committed
When using JAR files for the Kotlin Native, don't include all of the versions.
1 parent d6e361e commit c711ddc

File tree

5 files changed

+25
-14
lines changed

5 files changed

+25
-14
lines changed

SKIE/skie-gradle/plugin/src/kgp_common/gradle_common/kotlin/co/touchlab/skie/plugin/coroutines/AddDependencyOnSkieRuntime.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,4 +54,4 @@ private val KonanTarget.presetName: String
5454
KonanTarget.MINGW_X86, KonanTarget.WASM32, is KonanTarget.ZEPHYR -> error(
5555
"SKIE doesn't support these platforms, so it should never ask for the preset name of this target."
5656
)
57-
}
57+
}.lowercase()

build-setup/src/main/kotlin/co/touchlab/skie/buildsetup/plugins/DevAcceptanceTests.kt

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@ import co.touchlab.skie.gradle.KotlinCompilerVersion
44
import co.touchlab.skie.gradle.KotlinToolingVersion
55
import co.touchlab.skie.gradle.architecture.MacOsCpuArchitecture
66
import co.touchlab.skie.gradle.util.enquoted
7-
import co.touchlab.skie.gradle.util.kotlinNativeCompilerEmbeddableDependency
8-
import co.touchlab.skie.gradle.util.kotlinNativeCompilerHome
7+
import co.touchlab.skie.gradle.util.withKotlinNativeCompilerEmbeddableDependency
98
import co.touchlab.skie.gradle.version.AcceptanceTestsComponent
109
import co.touchlab.skie.gradle.version.KotlinToolingVersionComponent
1110
import co.touchlab.skie.gradle.version.acceptanceTest
@@ -132,7 +131,9 @@ abstract class DevAcceptanceTests : Plugin<Project> {
132131
dependencies {
133132
weak("org.jetbrains.kotlin:kotlin-stdlib:$kotlinVersion")
134133

135-
weak(kotlinNativeCompilerEmbeddableDependency(kotlinVersion))
134+
withKotlinNativeCompilerEmbeddableDependency(kotlinVersion, isTarget = sourceSet.isTarget) {
135+
weak(it)
136+
}
136137

137138
testOnly("org.jetbrains.kotlin:kotlin-test:$kotlinVersion")
138139
}

build-setup/src/main/kotlin/co/touchlab/skie/buildsetup/plugins/DevAcceptanceTestsFramework.kt

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
package co.touchlab.skie.buildsetup.plugins
22

33
import co.touchlab.skie.gradle.KotlinCompilerVersion
4-
import co.touchlab.skie.gradle.util.kotlinNativeCompilerEmbeddableDependency
54
import co.touchlab.skie.gradle.util.kotlinNativeCompilerHome
65
import co.touchlab.skie.gradle.util.libs
6+
import co.touchlab.skie.gradle.util.withKotlinNativeCompilerEmbeddableDependency
77
import co.touchlab.skie.gradle.version.ToolingVersions
88
import co.touchlab.skie.gradle.version.kotlinToolingVersion
99
import co.touchlab.skie.gradle.version.kotlinToolingVersionDimension
@@ -97,7 +97,10 @@ abstract class DevAcceptanceTestsFramework : Plugin<Project> {
9797

9898
dependencies {
9999
weak("org.jetbrains.kotlin:kotlin-stdlib:${kotlinVersion}")
100-
weak(kotlinNativeCompilerEmbeddableDependency(kotlinVersion))
100+
101+
withKotlinNativeCompilerEmbeddableDependency(kotlinVersion, isTarget = sourceSet.isTarget) {
102+
weak(it)
103+
}
101104

102105
testOnly(libs.bundles.testing.jvm)
103106
}

build-setup/src/main/kotlin/co/touchlab/skie/buildsetup/plugins/SkieCompiler.kt

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package co.touchlab.skie.buildsetup.plugins
22

33
import co.touchlab.skie.gradle.KotlinCompilerVersion
4-
import co.touchlab.skie.gradle.util.kotlinNativeCompilerEmbeddableDependency
4+
import co.touchlab.skie.gradle.util.withKotlinNativeCompilerEmbeddableDependency
55
import co.touchlab.skie.gradle.version.kotlinToolingVersion
66
import co.touchlab.skie.gradle.version.kotlinToolingVersionDimension
77
import co.touchlab.skie.gradle.version.target.MultiDimensionTargetExtension
@@ -33,7 +33,9 @@ abstract class SkieCompiler : Plugin<Project> {
3333

3434
dependencies {
3535
weak("org.jetbrains.kotlin:kotlin-stdlib:$kotlinVersion")
36-
weak(kotlinNativeCompilerEmbeddableDependency(kotlinVersion))
36+
withKotlinNativeCompilerEmbeddableDependency(kotlinVersion, isTarget = sourceSet.isTarget) {
37+
weak(it)
38+
}
3739
}
3840
}
3941
}

build-setup/src/main/kotlin/co/touchlab/skie/gradle/util/KotlinNativeCompilerHome.kt

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,17 +32,22 @@ fun Project.kotlinNativeCompilerHome(kotlinVersion: KotlinToolingVersion): File
3232
.compilerDirectory
3333
}
3434

35-
internal fun Project.kotlinNativeCompilerEmbeddableDependency(kotlinVersion: KotlinToolingVersion): Dependency {
35+
internal inline fun Project.withKotlinNativeCompilerEmbeddableDependency(kotlinVersion: KotlinToolingVersion, isTarget: Boolean, block: (Dependency) -> Unit) {
3636
val kotlinNativeCompilerEmbeddableFromHome: String? by project
37-
return if (kotlinNativeCompilerEmbeddableFromHome.toBoolean()) {
38-
project.dependencies.create(
39-
files(
40-
kotlinNativeCompilerHome(kotlinVersion).resolve("konan/lib/kotlin-native-compiler-embeddable.jar")
37+
val dependency = if (kotlinNativeCompilerEmbeddableFromHome.toBoolean()) {
38+
if (isTarget) {
39+
project.dependencies.create(
40+
files(
41+
kotlinNativeCompilerHome(kotlinVersion).resolve("konan/lib/kotlin-native.jar")
42+
)
4143
)
42-
)
44+
} else {
45+
return
46+
}
4347
} else {
4448
project.dependencies.create("org.jetbrains.kotlin:kotlin-native-compiler-embeddable:$kotlinVersion")
4549
}
50+
block(dependency)
4651
}
4752

4853
private fun <T> Project.backupProperty(name: String): BackupProperty<T>? {

0 commit comments

Comments
 (0)