apply plugin: 'org.jetbrains.kotlin.multiplatform' apply from: "$rootDir/addAllTargets.gradle" apply from: "$rootDir/publish.gradle" apply plugin: 'com.jakewharton.mosaic.build' mosaicBuild { patchJavaModuleWithKotlinClasses('mosaic.tty.terminal') } kotlin { explicitApi() sourceSets { configureEach { languageSettings { optIn("kotlin.contracts.ExperimentalContracts") optIn('kotlinx.cinterop.ExperimentalForeignApi') } if (it.name.endsWith("Test")) { languageSettings { optIn('kotlin.ExperimentalStdlibApi') } } } commonMain { dependencies { api libs.kotlinx.coroutines.core api projects.mosaicTerminal api projects.mosaicTty implementation libs.finalizationHook } } commonTest { dependencies { implementation libs.kotlin.test implementation libs.kotlinx.coroutines.test implementation libs.kotlinx.io.core implementation libs.assertk } } } compilerOptions.freeCompilerArgs.add('-Xnon-local-break-continue') }