diff --git a/SKIE/acceptance-tests b/SKIE/acceptance-tests index 805b27f3..564cafa1 160000 --- a/SKIE/acceptance-tests +++ b/SKIE/acceptance-tests @@ -1 +1 @@ -Subproject commit 805b27f3318aa068a470f11121a95da50108cc59 +Subproject commit 564cafa1fc94100ed73efd43b38b611581b5f240 diff --git a/build-setup/src/main/kotlin/co/touchlab/skie/buildsetup/plugins/MultiCompileTarget.kt b/build-setup/src/main/kotlin/co/touchlab/skie/buildsetup/plugins/MultiCompileTarget.kt index 3a5c38ca..973cea32 100644 --- a/build-setup/src/main/kotlin/co/touchlab/skie/buildsetup/plugins/MultiCompileTarget.kt +++ b/build-setup/src/main/kotlin/co/touchlab/skie/buildsetup/plugins/MultiCompileTarget.kt @@ -169,24 +169,35 @@ data class MultiCompileTarget( }, ) - val allDarwin = listOf( + val allIos = listOf( iosArm32, iosArm64, iosX64, iosSimulatorArm64, + ) + + val allWatchos = listOf( watchosArm32, watchosArm64, watchosX86, watchosX64, watchosSimulatorArm64, watchosDeviceArm64, + ) + + val allTvos = listOf( tvosArm64, tvosX64, tvosSimulatorArm64, + ) + + val allMacos = listOf( macosX64, macosArm64, ) + val allDarwin = allIos + allWatchos + allTvos + allMacos + val all = allDarwin + listOf( jvm, js, diff --git a/build-setup/src/main/kotlin/co/touchlab/skie/buildsetup/plugins/SkieMultiCompileRuntime.kt b/build-setup/src/main/kotlin/co/touchlab/skie/buildsetup/plugins/SkieMultiCompileRuntime.kt index eeb7722b..9992ad7d 100644 --- a/build-setup/src/main/kotlin/co/touchlab/skie/buildsetup/plugins/SkieMultiCompileRuntime.kt +++ b/build-setup/src/main/kotlin/co/touchlab/skie/buildsetup/plugins/SkieMultiCompileRuntime.kt @@ -1,5 +1,6 @@ package co.touchlab.skie.buildsetup.plugins +import co.touchlab.skie.buildsetup.plugins.MultiCompileTarget.Companion.kotlin_1_9_0 import co.touchlab.skie.buildsetup.tasks.BuildNestedGradle import co.touchlab.skie.gradle.KotlinCompilerVersion import co.touchlab.skie.gradle.KotlinToolingVersion @@ -55,6 +56,7 @@ class SkieMultiCompileRuntime: Plugin { val buildTask = registerBuildTask( name = kotlinToolingVersion.primaryVersion.toString(), supportedTargetsWithDeclarations = supportedTargetsWithDeclarations, + kotlinVersion = kotlinToolingVersion.primaryVersion, copyTask = copyTask, ) @@ -176,6 +178,7 @@ class SkieMultiCompileRuntime: Plugin { private fun Project.registerBuildTask( name: String, + kotlinVersion: KotlinToolingVersion, supportedTargetsWithDeclarations: SupportedTargetsWithDeclarations, copyTask: TaskProvider, ): TaskProvider { @@ -188,14 +191,20 @@ class SkieMultiCompileRuntime: Plugin { tasks.set( supportedTargetsWithDeclarations.flatMap { (target, _) -> - listOf( - "generateMetadataFileFor${target.capitalizedName}Publication", - "generatePomFileFor${target.capitalizedName}Publication", - ) - } + listOf( - "generateMetadataFileForKotlinMultiplatformPublication", - "generatePomFileForKotlinMultiplatformPublication", - ) + when (target.platformType) { + KotlinPlatformType.common -> listOf("metadataMainClasses") + KotlinPlatformType.jvm, KotlinPlatformType.androidJvm -> listOf("${target.name}Jar") + KotlinPlatformType.js -> if (kotlinVersion >= kotlin_1_9_0) { + listOf("${target.name}Jar") + } else { + listOf( + "${target.name}IrJar", + "${target.name}LegacyJar", + ) + } + KotlinPlatformType.native, KotlinPlatformType.wasm -> listOf("${target.name}MainKlibrary") + } + } ) } }