xref: /aosp_15_r20/external/kotlinx.atomicfu/buildSrc/src/main/kotlin/MavenPomConfiguration.kt (revision 68017707106cb9da9fed635c150bc497c09c160f)
1*68017707SAndroid Build Coastguard Worker @file:JvmName("MavenPomConfiguration")
2*68017707SAndroid Build Coastguard Worker 
3*68017707SAndroid Build Coastguard Worker import org.gradle.api.*
4*68017707SAndroid Build Coastguard Worker import org.gradle.api.publish.maven.*
5*68017707SAndroid Build Coastguard Worker 
MavenPomnull6*68017707SAndroid Build Coastguard Worker fun MavenPom.configureMavenPluginPomAttributes(
7*68017707SAndroid Build Coastguard Worker     project: Project,
8*68017707SAndroid Build Coastguard Worker     outputDir: String
9*68017707SAndroid Build Coastguard Worker ) {
10*68017707SAndroid Build Coastguard Worker     val customKotlinRepoURL = getCustomKotlinRepositoryURL(project)
11*68017707SAndroid Build Coastguard Worker     val buildSnapshots = project.hasProperty("build_snapshot_train")
12*68017707SAndroid Build Coastguard Worker     name.set(project.name)
13*68017707SAndroid Build Coastguard Worker     packaging = "maven-plugin"
14*68017707SAndroid Build Coastguard Worker     description.set("Atomicfu Maven Plugin")
15*68017707SAndroid Build Coastguard Worker 
16*68017707SAndroid Build Coastguard Worker     withXml {
17*68017707SAndroid Build Coastguard Worker         with(asNode()) {
18*68017707SAndroid Build Coastguard Worker             with(appendNode("build")) {
19*68017707SAndroid Build Coastguard Worker                 appendNode("directory", project.buildDir)
20*68017707SAndroid Build Coastguard Worker                 appendNode("outputDirectory", outputDir)
21*68017707SAndroid Build Coastguard Worker             }
22*68017707SAndroid Build Coastguard Worker             appendNode("properties")
23*68017707SAndroid Build Coastguard Worker                 .appendNode("project.build.sourceEncoding", "UTF-8")
24*68017707SAndroid Build Coastguard Worker             with(appendNode("repositories")) {
25*68017707SAndroid Build Coastguard Worker                 if (!customKotlinRepoURL.isNullOrEmpty()) {
26*68017707SAndroid Build Coastguard Worker                     with(appendNode("repository")) {
27*68017707SAndroid Build Coastguard Worker                         appendNode("id", "dev")
28*68017707SAndroid Build Coastguard Worker                         appendNode("url", customKotlinRepoURL)
29*68017707SAndroid Build Coastguard Worker                     }
30*68017707SAndroid Build Coastguard Worker                 }
31*68017707SAndroid Build Coastguard Worker                 if (buildSnapshots) {
32*68017707SAndroid Build Coastguard Worker                     with(appendNode("repository")) {
33*68017707SAndroid Build Coastguard Worker                         appendNode("id", "kotlin-snapshots")
34*68017707SAndroid Build Coastguard Worker                         appendNode("url", "https://oss.sonatype.org/content/repositories/snapshots")
35*68017707SAndroid Build Coastguard Worker                     }
36*68017707SAndroid Build Coastguard Worker                 }
37*68017707SAndroid Build Coastguard Worker             }
38*68017707SAndroid Build Coastguard Worker         }
39*68017707SAndroid Build Coastguard Worker     }
40*68017707SAndroid Build Coastguard Worker }
41