Skip to content

Commit 06199ba

Browse files
committed
build: remove buildSrc
1 parent 26a85c3 commit 06199ba

File tree

4 files changed

+88
-103
lines changed

4 files changed

+88
-103
lines changed

build.gradle.kts

Lines changed: 79 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
import org.gradle.jvm.tasks.Jar
22
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
3+
import java.util.*
34

45
plugins {
5-
kotlin("multiplatform")
6-
kotlin("plugin.serialization")
7-
id("org.jetbrains.kotlinx.kover")
8-
id("org.jetbrains.kotlinx.binary-compatibility-validator")
9-
`maven-publish-convention`
6+
alias(libs.plugins.kotlin)
7+
alias(libs.plugins.kotlin.serialization)
8+
alias(libs.plugins.kotlinx.kover)
9+
alias(libs.plugins.kotlinx.binary.compatibility.validator)
10+
`maven-publish`
11+
signing
1012
}
1113

1214
allprojects {
@@ -90,3 +92,75 @@ tasks.getByName("compileJava9Java", JavaCompile::class) {
9092
targetCompatibility = "1.9"
9193
sourceCompatibility = "1.9"
9294
}
95+
96+
publishing {
97+
repositories {
98+
maven {
99+
name = "Central"
100+
afterEvaluate {
101+
url = if (version.toString().endsWith("SNAPSHOT")) {
102+
// uri("https://s01.oss.sonatype.org/content/repositories/snapshots")
103+
uri("https://oss.sonatype.org/content/repositories/snapshots")
104+
} else {
105+
// uri("https://s01.oss.sonatype.org/service/local/staging/deploy/maven2")
106+
uri("https://oss.sonatype.org/service/local/staging/deploy/maven2")
107+
}
108+
}
109+
110+
credentials {
111+
username = properties["ossrhUsername"]?.toString() ?: System.getenv("OSSRH_USERNAME")
112+
password = properties["ossrhPassword"]?.toString() ?: System.getenv("OSSRH_PASSWORD")
113+
}
114+
}
115+
}
116+
publications {
117+
withType<MavenPublication> {
118+
val pubName = name.replaceFirstChar { if (it.isLowerCase()) it.titlecase(Locale.getDefault()) else "$it" }
119+
afterEvaluate {
120+
val emptyJavadocJar by tasks.register<org.gradle.api.tasks.bundling.Jar>("emptyJavadocJar$pubName") {
121+
archiveClassifier = "javadoc"
122+
archiveBaseName = artifactId
123+
}
124+
artifact(emptyJavadocJar)
125+
}
126+
pom {
127+
name.set("kotlinx-serialization-bencoding")
128+
description.set("A Kotlin serialization codec for bencoding format.")
129+
url.set("https://github.com/iseki0/kotlinx-serialization-bencoding")
130+
licenses {
131+
license {
132+
name.set("Apache-2.0")
133+
url.set("https://www.apache.org/licenses/LICENSE-2.0")
134+
}
135+
}
136+
developers {
137+
developer {
138+
id.set("iseki0")
139+
name.set("iseki zero")
140+
email.set("[email protected]")
141+
}
142+
}
143+
scm {
144+
connection.set("scm:git:https://github.com/iseki0/kotlinx-serialization-bencoding.git")
145+
developerConnection.set("scm:git:https://github.com/iseki0/kotlinx-serialization-bencoding.git")
146+
url.set("https://github.com/iseki0/kotlinx-serialization-bencoding")
147+
}
148+
}
149+
}
150+
}
151+
}
152+
153+
afterEvaluate {
154+
signing {
155+
// To use local gpg command, configure gpg options in ~/.gradle/gradle.properties
156+
// reference: https://docs.gradle.org/current/userguide/signing_plugin.html#example_configure_the_gnupgsignatory
157+
useGpgCmd()
158+
publishing.publications.forEach { sign(it) }
159+
}
160+
}
161+
162+
tasks.withType<AbstractArchiveTask>().configureEach {
163+
isPreserveFileTimestamps = false
164+
isReproducibleFileOrder = true
165+
}
166+

buildSrc/build.gradle.kts

Lines changed: 0 additions & 17 deletions
This file was deleted.

buildSrc/src/main/kotlin/maven-publish-convention.gradle.kts

Lines changed: 0 additions & 78 deletions
This file was deleted.

gradle/libs.versions.toml

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,13 @@
11
[versions]
2+
kotlin = "2.0.0"
3+
kotlinx-serialization-library = "1.5.1"
24
[libraries]
35
# Kotlinx Serialization
4-
kotlinx-serialization-core = "org.jetbrains.kotlinx:kotlinx-serialization-core:1.5.1"
5-
kotlinx-serialization-json = "org.jetbrains.kotlinx:kotlinx-serialization-json:1.5.1"
6-
okio = "com.squareup.okio:okio:3.3.0"
6+
kotlinx-serialization-core = { module = "org.jetbrains.kotlinx:kotlinx-serialization-core", version.ref = "kotlinx-serialization-library" }
7+
kotlinx-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlinx-serialization-library" }
78
[bundles]
9+
[plugins]
10+
kotlin = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
11+
kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
12+
kotlinx-kover = { id = "org.jetbrains.kotlinx.kover", version = "0.7.6" }
13+
kotlinx-binary-compatibility-validator = "org.jetbrains.kotlinx.binary-compatibility-validator:0.14.0"

0 commit comments

Comments
 (0)