+import org.apache.tools.ant.filters.ReplaceTokens
+
+plugins {
+ // github
+ id "co.riiid.gradle" version "0.4.2"
+ // bintray
+ id "com.jfrog.bintray" version "1.6"
+}
+
// common settings
subprojects {
apply plugin: 'java'
apply plugin: 'jacoco'
apply plugin: 'checkstyle'
apply plugin: 'findbugs'
+ apply plugin: 'co.riiid.gradle'
+ apply plugin: 'com.jfrog.bintray'
+ apply plugin: 'maven'
- sourceCompatibility = '1.7'
- targetCompatibility = '1.7'
+ sourceCompatibility = jdkVersion
+ targetCompatibility = jdkVersion
[compileJava, compileTestJava]*.options*.encoding = 'UTF-8'
- [compileJava, compileTestJava]*.options*.bootClasspath = "$JDK7_HOME/jre/lib/rt.jar"
+ [compileJava, compileTestJava]*.options*.bootClasspath = "$JDK_HOME/jre/lib/rt.jar"
checkstyle {
config = resources.text.fromFile("${rootProject.projectDir}/config/checkstyle/checkstyle.xml")
ignoreFailures = true
}
repositories {
+ jcenter()
mavenCentral()
}
test {
useTestNG()
}
+
+ javadoc {
+ options.locale = 'en_US'
+ }
+
+ task sourceJar(type: Jar) {
+ from sourceSets.main.allSource
+ classifier = 'sources'
+ }
+
+ task javadocJar(type: Jar, dependsOn: javadoc) {
+ classifier = 'javadoc'
+ from javadoc.destinationDir
+ }
+
+ artifacts {
+ archives jar
+ archives sourceJar
+ archives javadocJar
+ }
}
-project(':dictzip-lib') {}
+project(':dictzip-lib') {
+ dependencies {
+ testCompile 'tokyo.northside:northside-io:0.2.0'
+ }
+ version = projectVersion
+ group = projectGroup
+ bintray {
+ user = project.hasProperty('bintrayUser') ? project.property('bintrayUser') : System.getenv('BINTRAY_USER')
+ key = project.hasProperty('bintrayApiKey') ? project.property('bintrayApiKey') : System.getenv('BINTRAY_API_KEY')
+ configurations = ['archives']
+ pkg {
+ repo = 'maven'
+ name = 'dictzip-lib'
+ userOrg = 'dictzip'
+ licenses = ['GPL-2.0+CE']
+ vcsUrl = projectUrl
+ labels = ['java','dictzip']
+ publicDownloadNumbers = true
+ }
+ }
+ task mandoc << {}
+ task githubRelease(overwrite: true) << {}
+}
project(':dictzip-cli') {
apply plugin: 'application'
mainClassName = 'org.dict.zip.cli.Main'
- applicationName = 'DictZip'
+ applicationName = 'dictzip'
dependencies {
compile project(':dictzip-lib'),
- 'commons-codec:commons-codec:1.10',
'gnu.getopt:java-getopt:1.0.13'
+ testCompile 'tokyo.northside:northside-io:0.2.0'
}
+ version = projectVersion
+ group = projectGroup
+ bintray {
+ user = project.hasProperty('bintrayUser') ? project.property('bintrayUser') : System.getenv('BINTRAY_USER')
+ key = project.hasProperty('bintrayApiKey') ? project.property('bintrayApiKey') : System.getenv('BINTRAY_API_KEY')
+ configurations = ['archives']
+ pkg {
+ repo = 'maven'
+ name = 'dictzip-cli'
+ userOrg = 'dictzip'
+ licenses = ['GPL-3.0']
+ vcsUrl = projectUrl
+ labels = ['java','dictzip']
+ publicDownloadNumbers = true
+ }
+ }
+
+ task mandoc(type: Copy, overwrite: true) {
+ from "doc/dictzip.1.in"
+ into 'build/docs'
+ rename { String fileName ->
+ fileName.replace('dictzip.1.in', 'dictzip.1')
+ }
+ filter(ReplaceTokens, tokens: [copyright: projectYears, version: projectVersion])
+ }
+
+ distTar {
+ compression = Compression.GZIP
+ }
+ distTar.dependsOn mandoc
+
+ distributions {
+ main {
+ baseName = 'dictzip'
+ contents {
+ from('build/docs/dictzip.1') {
+ into 'docs/man/man1'
+ }
+ from(javadocJar) {
+ into 'docs'
+ }
+ from(sourceJar) {
+ into 'source'
+ }
+ }
+ }
+ }
+ task githubRelease(overwrite: true) << {}
+}
+
+task mandoc << {}
+task bintrayUpload(overwrite: true) << {}
+
+if (gradle.startParameter.taskNames.contains('bintrayUpload') ||
+ gradle.startParameter.taskNames.contains('githubRelease')) {
+ apply from: 'build.publish.gradle'
}