Get first platform from platformCompilations instead host platform.
Fixed #KMM-234
This commit is contained in:
+6
-1
@@ -262,7 +262,12 @@ class KotlinMetadataTargetConfigurator(kotlinPluginVersion: String) :
|
|||||||
val isNativeSourceSet = platformCompilations.all { compilation -> compilation.target is KotlinNativeTarget }
|
val isNativeSourceSet = platformCompilations.all { compilation -> compilation.target is KotlinNativeTarget }
|
||||||
|
|
||||||
val compilationFactory: KotlinCompilationFactory<out AbstractKotlinCompilation<*>> = when {
|
val compilationFactory: KotlinCompilationFactory<out AbstractKotlinCompilation<*>> = when {
|
||||||
isNativeSourceSet -> KotlinSharedNativeCompilationFactory(target)
|
isNativeSourceSet -> KotlinSharedNativeCompilationFactory(
|
||||||
|
target,
|
||||||
|
//get FIRST platform for metadata compiling
|
||||||
|
//todo: get commonized platform libraries for metadata compiling
|
||||||
|
(platformCompilations.first() as KotlinNativeCompilation).konanTarget
|
||||||
|
)
|
||||||
else -> KotlinCommonCompilationFactory(target)
|
else -> KotlinCommonCompilationFactory(target)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -97,8 +97,8 @@ class KotlinNativeCompilation(
|
|||||||
get() = compileKotlinTask.kotlinOptions
|
get() = compileKotlinTask.kotlinOptions
|
||||||
}
|
}
|
||||||
|
|
||||||
class KotlinSharedNativeCompilation(override val target: KotlinMetadataTarget, name: String) :
|
class KotlinSharedNativeCompilation(override val target: KotlinMetadataTarget, konanTarget: KonanTarget, name: String) :
|
||||||
AbstractKotlinNativeCompilation(target, HostManager.host, name),
|
AbstractKotlinNativeCompilation(target, konanTarget, name),
|
||||||
KotlinMetadataCompilation<KotlinCommonOptions> {
|
KotlinMetadataCompilation<KotlinCommonOptions> {
|
||||||
|
|
||||||
override val friendArtifacts: FileCollection
|
override val friendArtifacts: FileCollection
|
||||||
|
|||||||
+4
-2
@@ -7,6 +7,7 @@
|
|||||||
package org.jetbrains.kotlin.gradle.plugin.mpp
|
package org.jetbrains.kotlin.gradle.plugin.mpp
|
||||||
|
|
||||||
import org.jetbrains.kotlin.konan.target.HostManager
|
import org.jetbrains.kotlin.konan.target.HostManager
|
||||||
|
import org.jetbrains.kotlin.konan.target.KonanTarget
|
||||||
|
|
||||||
class KotlinNativeCompilationFactory(
|
class KotlinNativeCompilationFactory(
|
||||||
val target: KotlinNativeTarget
|
val target: KotlinNativeTarget
|
||||||
@@ -24,11 +25,12 @@ class KotlinNativeCompilationFactory(
|
|||||||
}
|
}
|
||||||
|
|
||||||
class KotlinSharedNativeCompilationFactory(
|
class KotlinSharedNativeCompilationFactory(
|
||||||
val target: KotlinMetadataTarget
|
val target: KotlinMetadataTarget,
|
||||||
|
val konanTarget: KonanTarget
|
||||||
): KotlinCompilationFactory<KotlinSharedNativeCompilation> {
|
): KotlinCompilationFactory<KotlinSharedNativeCompilation> {
|
||||||
override val itemClass: Class<KotlinSharedNativeCompilation>
|
override val itemClass: Class<KotlinSharedNativeCompilation>
|
||||||
get() = KotlinSharedNativeCompilation::class.java
|
get() = KotlinSharedNativeCompilation::class.java
|
||||||
|
|
||||||
override fun create(name: String): KotlinSharedNativeCompilation =
|
override fun create(name: String): KotlinSharedNativeCompilation =
|
||||||
KotlinSharedNativeCompilation(target, name)
|
KotlinSharedNativeCompilation(target, konanTarget, name)
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user