Add more build targets for coroutines extensions

kotlinx-coroutines has since started publishing more native build
targets since we first became multiplatform. This commit ensures we also
build native targets for the platforms that were previously missing,
namely:

- androidNativeArm32
- androidNativeArm64
- androidNativeX64
- androidNativeX86
- linuxArm64
- wasmJs

This ensures that we are now supporting all three tiers of Kotlin/Native
target support.

See: https://kotlinlang.org/docs/native-target-support.html
This commit is contained in:
Michael Bull 2024-03-03 15:18:43 +00:00
parent a4fe9f6fa8
commit da96ceef8e
3 changed files with 32 additions and 26 deletions

View File

@ -93,6 +93,7 @@ jobs:
publishTvosX64PublicationToMavenRepository publishTvosX64PublicationToMavenRepository
publishWatchosArm32PublicationToMavenRepository publishWatchosArm32PublicationToMavenRepository
publishWatchosArm64PublicationToMavenRepository publishWatchosArm64PublicationToMavenRepository
publishWatchosDeviceArm64PublicationToMavenRepository
publishWatchosSimulatorArm64PublicationToMavenRepository publishWatchosSimulatorArm64PublicationToMavenRepository
publishWatchosX64PublicationToMavenRepository publishWatchosX64PublicationToMavenRepository

View File

@ -1,3 +1,4 @@
import org.jetbrains.kotlin.gradle.targets.js.dsl.ExperimentalWasmDsl
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootExtension import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootExtension
import org.jetbrains.kotlin.gradle.targets.js.npm.tasks.KotlinNpmInstallTask import org.jetbrains.kotlin.gradle.targets.js.npm.tasks.KotlinNpmInstallTask
@ -15,25 +16,45 @@ kotlin {
nodejs() nodejs()
} }
linuxX64() @OptIn(ExperimentalWasmDsl::class)
wasmJs {
binaries.executable()
nodejs()
}
mingwX64() /* https://kotlinlang.org/docs/native-target-support.html#tier-1 */
macosArm64()
macosX64() macosX64()
macosArm64()
iosArm64()
iosSimulatorArm64() iosSimulatorArm64()
iosX64() iosX64()
tvosArm64() /* https://kotlinlang.org/docs/native-target-support.html#tier-2 */
tvosSimulatorArm64()
tvosX64() linuxX64()
linuxArm64()
watchosArm32()
watchosArm64()
watchosSimulatorArm64() watchosSimulatorArm64()
watchosX64() watchosX64()
watchosArm32()
watchosArm64()
tvosSimulatorArm64()
tvosX64()
tvosArm64()
iosArm64()
/* https://kotlinlang.org/docs/native-target-support.html#tier-3 */
androidNativeArm32()
androidNativeArm64()
androidNativeX86()
androidNativeX64()
mingwX64()
watchosDeviceArm64()
sourceSets { sourceSets {
all { all {

View File

@ -1,5 +1,3 @@
import org.jetbrains.kotlin.gradle.targets.js.dsl.ExperimentalWasmDsl
plugins { plugins {
`maven-publish` `maven-publish`
id("kotlin-conventions") id("kotlin-conventions")
@ -8,18 +6,4 @@ plugins {
kotlin { kotlin {
explicitApi() explicitApi()
// Additional targets not currently supported by coroutines
androidNativeArm32()
androidNativeArm64()
androidNativeX64()
androidNativeX86()
linuxArm64()
@OptIn(ExperimentalWasmDsl::class)
wasmJs {
binaries.executable()
nodejs()
}
} }