xref: /aosp_15_r20/external/dokka/runners/android-gradle-plugin/build.gradle (revision 1b2d298c530bf0473cc943e8414a5ff577a994bc)
1*1b2d298cSOwner Cleanup Botimport com.gradle.publish.DependenciesBuilder
2*1b2d298cSOwner Cleanup Botimport org.jetbrains.CorrectShadowPublishing
3*1b2d298cSOwner Cleanup Bot
4*1b2d298cSOwner Cleanup Botapply plugin: 'java'
5*1b2d298cSOwner Cleanup Botapply plugin: 'kotlin'
6*1b2d298cSOwner Cleanup Bot
7*1b2d298cSOwner Cleanup Bot
8*1b2d298cSOwner Cleanup Botapply plugin: 'com.github.johnrengelman.shadow'
9*1b2d298cSOwner Cleanup Botapply plugin: "com.gradle.plugin-publish"
10*1b2d298cSOwner Cleanup Bot
11*1b2d298cSOwner Cleanup BotsourceCompatibility = 1.8
12*1b2d298cSOwner Cleanup Bot
13*1b2d298cSOwner Cleanup Bottasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all {
14*1b2d298cSOwner Cleanup Bot    kotlinOptions {
15*1b2d298cSOwner Cleanup Bot        freeCompilerArgs += "-Xjsr305=strict"
16*1b2d298cSOwner Cleanup Bot        languageVersion = "1.2"
17*1b2d298cSOwner Cleanup Bot        apiVersion = "1.1"
18*1b2d298cSOwner Cleanup Bot        jvmTarget = "1.8"
19*1b2d298cSOwner Cleanup Bot    }
20*1b2d298cSOwner Cleanup Bot}
21*1b2d298cSOwner Cleanup Bot
22*1b2d298cSOwner Cleanup Botrepositories {
23*1b2d298cSOwner Cleanup Bot    jcenter()
24*1b2d298cSOwner Cleanup Bot}
25*1b2d298cSOwner Cleanup Bot
26*1b2d298cSOwner Cleanup Botdependencies {
27*1b2d298cSOwner Cleanup Bot    testCompile group: 'junit', name: 'junit', version: '4.12'
28*1b2d298cSOwner Cleanup Bot
29*1b2d298cSOwner Cleanup Bot    shadow project(path: ':runners:gradle-plugin', configuration: 'shadow')
30*1b2d298cSOwner Cleanup Bot    compileOnly project(':integration')
31*1b2d298cSOwner Cleanup Bot
32*1b2d298cSOwner Cleanup Bot    compileOnly gradleApi()
33*1b2d298cSOwner Cleanup Bot    compileOnly localGroovy()
34*1b2d298cSOwner Cleanup Bot}
35*1b2d298cSOwner Cleanup Bot
36*1b2d298cSOwner Cleanup Bottask sourceJar(type: Jar) {
37*1b2d298cSOwner Cleanup Bot    from sourceSets.main.allSource
38*1b2d298cSOwner Cleanup Bot}
39*1b2d298cSOwner Cleanup Bot
40*1b2d298cSOwner Cleanup BotprocessResources {
41*1b2d298cSOwner Cleanup Bot    inputs.property("dokka_version", dokka_version)
42*1b2d298cSOwner Cleanup Bot    eachFile {
43*1b2d298cSOwner Cleanup Bot        if (it.name == "org.jetbrains.dokka-android.properties") {
44*1b2d298cSOwner Cleanup Bot            it.filter { line ->
45*1b2d298cSOwner Cleanup Bot                line.replace("<version>", dokka_version)
46*1b2d298cSOwner Cleanup Bot            }
47*1b2d298cSOwner Cleanup Bot        }
48*1b2d298cSOwner Cleanup Bot    }
49*1b2d298cSOwner Cleanup Bot}
50*1b2d298cSOwner Cleanup Bot
51*1b2d298cSOwner Cleanup BotshadowJar {
52*1b2d298cSOwner Cleanup Bot    baseName = 'dokka-android-gradle-plugin'
53*1b2d298cSOwner Cleanup Bot    classifier = ''
54*1b2d298cSOwner Cleanup Bot}
55*1b2d298cSOwner Cleanup Bot
56*1b2d298cSOwner Cleanup Botapply plugin: 'maven-publish'
57*1b2d298cSOwner Cleanup Bot
58*1b2d298cSOwner Cleanup Botpublishing {
59*1b2d298cSOwner Cleanup Bot    publications {
60*1b2d298cSOwner Cleanup Bot        dokkaAndroidGradlePlugin(MavenPublication) { MavenPublication publication ->
61*1b2d298cSOwner Cleanup Bot            artifactId = 'dokka-android-gradle-plugin'
62*1b2d298cSOwner Cleanup Bot
63*1b2d298cSOwner Cleanup Bot            artifact sourceJar {
64*1b2d298cSOwner Cleanup Bot                classifier "sources"
65*1b2d298cSOwner Cleanup Bot            }
66*1b2d298cSOwner Cleanup Bot
67*1b2d298cSOwner Cleanup Bot            CorrectShadowPublishing.configure(publication, project)
68*1b2d298cSOwner Cleanup Bot        }
69*1b2d298cSOwner Cleanup Bot    }
70*1b2d298cSOwner Cleanup Bot}
71*1b2d298cSOwner Cleanup Bot
72*1b2d298cSOwner Cleanup BotbintrayPublication(project, ['dokkaAndroidGradlePlugin'])
73*1b2d298cSOwner Cleanup Bot
74*1b2d298cSOwner Cleanup Botconfigurations.archives.artifacts.clear()
75*1b2d298cSOwner Cleanup Botartifacts {
76*1b2d298cSOwner Cleanup Bot    archives shadowJar
77*1b2d298cSOwner Cleanup Bot}
78*1b2d298cSOwner Cleanup Bot
79*1b2d298cSOwner Cleanup BotpluginBundle {
80*1b2d298cSOwner Cleanup Bot    website = 'http://www.kotlinlang.org/'
81*1b2d298cSOwner Cleanup Bot    vcsUrl = 'https://github.com/kotlin/dokka.git'
82*1b2d298cSOwner Cleanup Bot    description = 'Dokka, the Kotlin documentation tool'
83*1b2d298cSOwner Cleanup Bot    tags = ['dokka', 'kotlin', 'kdoc', 'android']
84*1b2d298cSOwner Cleanup Bot
85*1b2d298cSOwner Cleanup Bot    plugins {
86*1b2d298cSOwner Cleanup Bot        dokkaAndroidGradlePlugin {
87*1b2d298cSOwner Cleanup Bot            id = 'org.jetbrains.dokka-android'
88*1b2d298cSOwner Cleanup Bot            displayName = 'Dokka Android plugin'
89*1b2d298cSOwner Cleanup Bot        }
90*1b2d298cSOwner Cleanup Bot    }
91*1b2d298cSOwner Cleanup Bot
92*1b2d298cSOwner Cleanup Bot    withDependencies { List<Dependency> list ->
93*1b2d298cSOwner Cleanup Bot        list.clear()
94*1b2d298cSOwner Cleanup Bot        def builder = new DependenciesBuilder()
95*1b2d298cSOwner Cleanup Bot        builder.addUniqueScopedDependencies(list, configurations.shadow, "compile")
96*1b2d298cSOwner Cleanup Bot    }
97*1b2d298cSOwner Cleanup Bot
98*1b2d298cSOwner Cleanup Bot    mavenCoordinates {
99*1b2d298cSOwner Cleanup Bot        groupId = "org.jetbrains.dokka"
100*1b2d298cSOwner Cleanup Bot        artifactId = "dokka-android-gradle-plugin"
101*1b2d298cSOwner Cleanup Bot    }
102*1b2d298cSOwner Cleanup Bot}
103