Files
vst-ui-base/build.gradle.kts
rnentjes 85eb34e09b Upgrade dependencies and project configuration.
Updated multiple dependencies including Kotlin, Webpack, and Mocha to their latest versions. The project's JDK was upgraded to version 21, and the Kotlin multiplatform plugin version updated to 2.1.0. This ensures better compatibility, improved performance, and access to new features.
2024-12-22 14:29:25 +01:00

149 lines
4.0 KiB
Kotlin

plugins {
kotlin("multiplatform") version "2.1.0"
`maven-publish`
signing
}
group = "nl.astraeus"
version = "1.1.3"
repositories {
mavenCentral()
maven {
setUrl("https://gitea.astraeus.nl/api/packages/rnentjes/maven")
}
maven {
setUrl("https://gitea.astraeus.nl:8443/api/packages/rnentjes/maven")
}
}
kotlin {
js {
compilerOptions {
target.set("es2015")
}
binaries.library()
browser {}
}
jvm {
withJava()
}
sourceSets {
val commonMain by getting {
dependencies {
implementation("nl.astraeus:kotlin-css-generator:1.0.10")
implementation("org.jetbrains.kotlinx:kotlinx-datetime:0.4.0")
}
}
val jsMain by getting {
dependencies {
implementation("nl.astraeus:kotlin-komponent:1.2.4")
}
}
val jsTest by getting {
dependencies {
implementation(kotlin("test"))
}
}
val jvmMain by getting {
dependencies {
//base
implementation("io.undertow:undertow-core:2.3.14.Final")
implementation("io.undertow:undertow-websockets-jsr:2.3.14.Final")
implementation("org.jboss.xnio:xnio-nio:3.8.16.Final")
implementation("org.xerial:sqlite-jdbc:3.46.0.0")
implementation("com.zaxxer:HikariCP:4.0.3")
implementation("nl.astraeus:simple-jdbc-stats:1.6.1")
implementation("org.jetbrains.kotlinx:kotlinx-html-jvm:0.11.0")
}
}
}
}
extra["PUBLISH_GROUP_ID"] = group
extra["PUBLISH_VERSION"] = version
extra["PUBLISH_ARTIFACT_ID"] = name
// Stub secrets to let the project sync and build without the publication values set up
val signingKeyId: String? by project
val signingPassword: String? by project
val signingSecretKeyRingFile: String? by project
extra["signing.keyId"] = signingKeyId
extra["signing.password"] = signingPassword
extra["signing.secretKeyRingFile"] = signingSecretKeyRingFile
val javadocJar by tasks.registering(Jar::class) {
archiveClassifier.set("javadoc")
}
publishing {
repositories {
maven {
name = "gitea"
setUrl("https://gitea.astraeus.nl/api/packages/rnentjes/maven")
credentials {
val giteaUsername: String? by project
val giteaPassword: String? by project
username = giteaUsername
password = giteaPassword
}
}
maven {
name = "gitea8443"
setUrl("https://gitea.astraeus.nl:8443/api/packages/rnentjes/maven")
credentials {
val giteaUsername: String? by project
val giteaPassword: String? by project
username = giteaUsername
password = giteaPassword
}
}
}
// Configure all publications
publications.withType<MavenPublication> {
// Stub javadoc.jar artifact
artifact(javadocJar.get())
// Provide artifacts information requited by Maven Central
pom {
name.set("vst-ui-base")
description.set("Vst UI base")
url.set("https://gitea.astraeus.nl/rnentjes/vst-ui-base")
licenses {
license {
name.set("MIT")
url.set("https://opensource.org/licenses/MIT")
}
}
developers {
developer {
id.set("rnentjes")
name.set("Rien Nentjes")
email.set("info@nentjes.com")
}
}
scm {
url.set("https://gitea.astraeus.nl/rnentjes/vst-ui-base")
}
}
}
}
signing {
sign(publishing.publications)
}
tasks.withType<PublishToMavenRepository> {
dependsOn(tasks.withType<Sign>())
}