Skip to content

Commit 82b1899

Browse files
committed
Optimize long runner property tests for c code generation.
Implement: #268 Related-To: #267
1 parent 366538a commit 82b1899

3 files changed

Lines changed: 16 additions & 12 deletions

File tree

skainet-compile/skainet-compile-c/src/commonTest/kotlin/sk/ainet/compile/c/DataModelsPropertyTest.kt renamed to skainet-compile/skainet-compile-c/src/jvmTest/kotlin/sk/ainet/compile/c/DataModelsPropertyTest.kt

File renamed without changes.

skainet-compile/skainet-compile-c/src/commonTest/kotlin/sk/ainet/compile/c/templates/TemplatePropertyTest.kt renamed to skainet-compile/skainet-compile-c/src/jvmTest/kotlin/sk/ainet/compile/c/templates/TemplatePropertyTest.kt

File renamed without changes.

skainet-lang/skainet-lang-core/build.gradle.kts

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,12 @@ kotlin {
4040
}
4141

4242
sourceSets {
43-
commonMain.dependencies {
44-
api(project(":skainet-lang:skainet-lang-ksp-annotations"))
43+
commonMain {
44+
// Include KSP-generated sources in commonMain so downstream modules can access them
45+
kotlin.srcDir("build/generated/ksp/metadata/commonMain/kotlin")
46+
dependencies {
47+
api(project(":skainet-lang:skainet-lang-ksp-annotations"))
48+
}
4549
}
4650

4751
commonTest.dependencies {
@@ -50,18 +54,18 @@ kotlin {
5054
}
5155
}
5256

57+
// Ensure KSP metadata task runs before any Kotlin compilation and other KSP tasks
58+
tasks.configureEach {
59+
if (name != "kspCommonMainKotlinMetadata" &&
60+
(name.startsWith("compileKotlin") || name.startsWith("ksp"))) {
61+
dependsOn("kspCommonMainKotlinMetadata")
62+
}
63+
}
64+
5365
dependencies {
54-
// KSP processor for generating tracing wrappers
66+
// KSP processor for generating tracing wrappers - only for commonMain metadata
67+
// to avoid duplicate class generation across targets
5568
add("kspCommonMainMetadata", project(":skainet-lang:skainet-lang-ksp-processor"))
56-
add("kspJvm", project(":skainet-lang:skainet-lang-ksp-processor"))
57-
add("kspAndroid", project(":skainet-lang:skainet-lang-ksp-processor"))
58-
add("kspIosArm64", project(":skainet-lang:skainet-lang-ksp-processor"))
59-
add("kspIosSimulatorArm64", project(":skainet-lang:skainet-lang-ksp-processor"))
60-
add("kspMacosArm64", project(":skainet-lang:skainet-lang-ksp-processor"))
61-
add("kspLinuxX64", project(":skainet-lang:skainet-lang-ksp-processor"))
62-
add("kspLinuxArm64", project(":skainet-lang:skainet-lang-ksp-processor"))
63-
add("kspJs", project(":skainet-lang:skainet-lang-ksp-processor"))
64-
add("kspWasmJs", project(":skainet-lang:skainet-lang-ksp-processor"))
6569
}
6670

6771
android {

0 commit comments

Comments
 (0)