apply plugin: 'signing'

if (project.hasProperty("android")) {
    task sourcesJar(type: Jar) {
        classifier = 'sources'
        from android.sourceSets.main.java.srcDirs
    }

    task javadoc(type: Javadoc) {
        source = android.sourceSets.main.java.srcDirs
        classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
    }
} else {
    task sourcesJar(type: Jar) {
        classifier = 'sources'
        from sourceSets.main.allSource
    }
}

task javadocJar(type: Jar, dependsOn: javadoc) {
    classifier = 'javadoc'
    from javadoc.destinationDir
}

artifacts {
    archives javadocJar
    archives sourcesJar
}

signing {
    required { isReleaseVersion && gradle.taskGraph.hasTask("uploadArchives") }
    sign configurations.archives
}

uploadArchives {
    repositories {
        mavenDeployer {
            beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) }

            repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2/") {
                authentication(userName: SONATYPE_USERNAME, password: SONATYPE_PASSWORD)
            }
            snapshotRepository(url: "https://oss.sonatype.org/content/repositories/snapshots/") {
                authentication(userName: SONATYPE_USERNAME, password: SONATYPE_PASSWORD)
            }

            pom.project {
                packaging 'jar'

                name 'vtm'
                description 'OpenGL vector map library written in Java - running on Android, iOS, Desktop and within the browser.'
                url 'https://github.com/mapsforge/vtm'

                licenses {
                    license {
                        name 'GNU Lesser GPL'
                        url 'http://www.gnu.org/licenses/lgpl.html'
                        distribution 'repo'
                    }
                }

                scm {
                    connection 'scm:git:https://github.com/mapsforge/vtm'
                    developerConnection 'scm:git:https://github.com/mapsforge/vtm'
                    url 'https://github.com/mapsforge/vtm'
                }

                developers {
                    developer {
                        id 'hannes.janetzek'
                        name 'Hannes Janetzek'
                        email 'hannes.janetzek@gmail.com'
                    }
                    developer {
                        id 'devemux86'
                        name 'Emux'
                        email 'devemux86@gmail.com'
                    }
                }
            }
        }
    }
}
