mirror of
https://github.com/bitsycore/compose-desktop-native.git
synced 2026-10-05 10:47:26 +00:00
The table covers the toolchain (Kotlin, Compose Multiplatform, SDL3, both skiko builds), the Compose libraries with official-vs-port coordinates side by side, the vendored ecosystem libraries with the reason each one is vendored, the androidx artifacts used as-is, and the infrastructure pins. To make that table a contract rather than prose, every androidx coordinate now comes from the version catalog instead of being written literally in six build files. That surfaced a real inconsistency: androidx.navigation3:navigation3-runtime was pinned at 1.1.4 in :compose:ui:ui and demo's commonMain but 1.2.0-alpha05 in :navigation3:navigation3-ui and demo's jvmMain. Gradle resolved the conflict to the highest, so the build was fine, but nothing said which was intended - now there is one entry. Also records WHY Kotlin stays on 2.4.0 rather than dropping to the 2.2.20 that CMP 1.12.0 is built with, and why material3 is 1.12.0-alpha03 at CMP 1.12.0.
33 lines
1.0 KiB
Kotlin
33 lines
1.0 KiB
Kotlin
// :ui-backhandler - androidx.compose.ui.backhandler.*, vendored from upstream (split of :ui, CMP layout).
|
|
// Publication artifactId: desktop-ui-backhandler.
|
|
plugins {
|
|
alias(libs.plugins.kotlin.multiplatform)
|
|
alias(libs.plugins.kotlin.plugin.compose)
|
|
}
|
|
|
|
val vHostSupportsMingw = rootProject.extra["vHostSupportsMingw"] as Boolean
|
|
|
|
kotlin {
|
|
linuxArm64(); linuxX64(); macosArm64(); if (vHostSupportsMingw) mingwX64()
|
|
applyDefaultHierarchyTemplate()
|
|
sourceSets {
|
|
commonMain {
|
|
dependencies {
|
|
api("org.jetbrains.compose.runtime:runtime:${libs.versions.composeRuntime.get()}")
|
|
api(libs.androidx.navigationevent.compose)
|
|
api(project(":compose:ui:ui-util"))
|
|
implementation(libs.kotlinx.coroutines.core)
|
|
}
|
|
kotlin.srcDir("src/vendor/common/kotlin")
|
|
}
|
|
nativeMain { kotlin.srcDir("src/vendor/native/kotlin") }
|
|
}
|
|
compilerOptions {
|
|
freeCompilerArgs.addAll(
|
|
"-Xexpect-actual-classes",
|
|
"-opt-in=androidx.compose.ui.ExperimentalComposeUiApi",
|
|
"-opt-in=androidx.compose.ui.InternalComposeUiApi",
|
|
)
|
|
}
|
|
}
|