platf-skia/build.gradle.kts (96 lines of code) (raw):

/* * Copyright (c) 2023. JetBrains s.r.o. * Use of this source code is governed by the MIT license that can be found in the LICENSE file. */ plugins { kotlin("multiplatform") `maven-publish` signing } val skikoVersion = extra["skiko.version"] as String val letsPlotVersion = extra["letsPlot.version"] as String val kotlinLoggingVersion = extra["kotlinLogging.version"] as String val assertjVersion = extra["assertj.version"] as String kotlin { jvm { compilations.all { kotlinOptions.jvmTarget = "11" } } sourceSets { commonMain { dependencies { compileOnly("org.jetbrains.skiko:skiko:$skikoVersion") compileOnly("org.jetbrains.lets-plot:commons:$letsPlotVersion") compileOnly("org.jetbrains.lets-plot:datamodel:$letsPlotVersion") compileOnly("org.jetbrains.lets-plot:plot-base:$letsPlotVersion") compileOnly("org.jetbrains.lets-plot:plot-stem:$letsPlotVersion") compileOnly("org.jetbrains.lets-plot:plot-builder:$letsPlotVersion") compileOnly("org.jetbrains.lets-plot:plot-raster:$letsPlotVersion") compileOnly("org.jetbrains.lets-plot:canvas:$letsPlotVersion") } } named("jvmMain") { dependencies { compileOnly("io.github.microutils:kotlin-logging-jvm:$kotlinLoggingVersion") } } named("jvmTest") { dependencies { implementation(kotlin("test")) implementation("org.assertj:assertj-core:$assertjVersion") implementation("org.jetbrains.skiko:skiko:$skikoVersion") implementation("org.jetbrains.lets-plot:commons:$letsPlotVersion") implementation("org.jetbrains.lets-plot:datamodel:$letsPlotVersion") implementation("io.github.microutils:kotlin-logging:$kotlinLoggingVersion") } } } } /////////////////////////////////////////////// // Publishing /////////////////////////////////////////////// afterEvaluate { publishing { publications.forEach { pub -> with(pub as MavenPublication) { artifact(tasks.jarJavaDocs) pom { name.set("Lets-Plot Compose - Skia") description.set("Skia drawing for Lets-Plot Compose plotting library.") url.set("https://github.com/JetBrains/lets-plot-compose") licenses { license { name.set("MIT") url.set("https://raw.githubusercontent.com/JetBrains/lets-plot-compose/master/LICENSE") } } developers { developer { id.set("jetbrains") name.set("JetBrains") email.set("lets-plot@jetbrains.com") } } scm { url.set("https://github.com/JetBrains/lets-plot-compose") } } } } repositories { mavenLocal { url = uri("$rootDir/.maven-publish-dev-repo") } maven { // For SNAPSHOT publication use separate URL and credentials: if (version.toString().endsWith("-SNAPSHOT")) { url = uri(rootProject.project.extra["mavenSnapshotPublishUrl"].toString()) credentials { username = rootProject.project.extra["sonatypeUsername"].toString() password = rootProject.project.extra["sonatypePassword"].toString() } } else { url = uri(rootProject.project.extra["mavenReleasePublishUrl"].toString()) } } } } } signing { if (!(project.version as String).contains("SNAPSHOT")) { sign(publishing.publications) } }