diff --git a/buildSrc/src/main/kotlin/publish.gradle.kts b/buildSrc/src/main/kotlin/publish.gradle.kts index fb05b226..6da80f56 100644 --- a/buildSrc/src/main/kotlin/publish.gradle.kts +++ b/buildSrc/src/main/kotlin/publish.gradle.kts @@ -25,6 +25,7 @@ plugins { interface PublishPluginExtension { val mavenPublicationName: Property val componentName: Property + val description: Property } val extension = project.extensions.create("publish") @@ -52,17 +53,39 @@ afterEvaluate { } } publications { - register("${extension.mavenPublicationName.get()}") { - from(components["${extension.componentName.get()}"]) + register(extension.mavenPublicationName.get()) { + from(components[extension.componentName.get()]) pom { - url.set("https://github.com/eclipse-kuksa/kuksa-android-sdk") + name = "${project.group}:${project.name}" + description = extension.description.get() + url = "https://github.com/eclipse-kuksa/kuksa-android-sdk" licenses { license { name.set("The Apache Software License, Version 2.0") url.set("http://www.apache.org/licenses/LICENSE-2.0.txt") } } + developers { + developer { + name = "Mark Hüsers" + email = "mark.huesers@etas.com" + organization = "ETAS GmbH" + organizationUrl = "https://www.etas.com" + } + developer { + name = "Sebastian Schildt" + email = "sebastian.schildt@etas.com" + organization = "ETAS GmbH" + organizationUrl = "https://www.etas.com" + } + developer { + name = "Andre Weber" + email = "andre.weber3@etas.com" + organization = "ETAS GmbH" + organizationUrl = "https://www.etas.com" + } + } scm { connection.set("scm:git:github.com/eclipse-kuksa/kuksa-android-sdk.git") developerConnection.set("scm:git:ssh://github.com/eclipse-kuksa/kuksa-android-sdk.git") diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index f813c694..1c2e3b02 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -70,3 +70,4 @@ detekt-formatting = { group = "io.gitlab.arturbosch.detekt", name = "detekt-form grpc-protoc-java-gen = { group = "io.grpc", name = "protoc-gen-grpc-java", version.ref = "grpc" } [plugins] +dokka = { id = "org.jetbrains.dokka", version.ref = "kotlin" } diff --git a/kuksa-sdk/build.gradle.kts b/kuksa-sdk/build.gradle.kts index 3e9de9a7..f10156c0 100644 --- a/kuksa-sdk/build.gradle.kts +++ b/kuksa-sdk/build.gradle.kts @@ -64,6 +64,12 @@ android { } } } + publishing { + singleVariant("release") { + withJavadocJar() + withSourcesJar() + } + } } dependencies { @@ -89,6 +95,7 @@ dependencies { configure { mavenPublicationName = "release" componentName = "release" + description = "Android Connectivity Library for the KUKSA Databroker" } protobuf { diff --git a/vss-core/build.gradle.kts b/vss-core/build.gradle.kts index e7be3132..20cc6bec 100644 --- a/vss-core/build.gradle.kts +++ b/vss-core/build.gradle.kts @@ -23,6 +23,7 @@ plugins { kotlin("jvm") `maven-publish` publish + alias(libs.plugins.dokka) } group = "org.eclipse.kuksa" @@ -51,4 +52,16 @@ tasks.withType().configureEach { configure { mavenPublicationName = "release" componentName = "java" + description = "Vehicle Signal Specification (VSS) Core Module of the KUKSA SDK" +} + +tasks.register("javadocJar", Jar::class) { + dependsOn("dokkaHtml") + from("$buildDir/dokka/html") + archiveClassifier.set("javadoc") +} + +java { + withJavadocJar() // needs to be called after tasks.register("javadocJar") + withSourcesJar() } diff --git a/vss-processor/build.gradle.kts b/vss-processor/build.gradle.kts index c14970fe..2b242f33 100644 --- a/vss-processor/build.gradle.kts +++ b/vss-processor/build.gradle.kts @@ -20,6 +20,7 @@ plugins { kotlin("jvm") publish + alias(libs.plugins.dokka) } group = "org.eclipse.kuksa" @@ -54,4 +55,16 @@ tasks.withType().configureEach { configure { mavenPublicationName = "release" componentName = "java" + description = "Vehicle Signal Specification (VSS) Code Generator for the KUKSA SDK" +} + +tasks.register("javadocJar", Jar::class) { + dependsOn("dokkaHtml") + from("$buildDir/dokka/html") + archiveClassifier.set("javadoc") +} + +java { + withJavadocJar() // needs to be called after tasks.register("javadocJar") + withSourcesJar() }