apply plugin: 'java' apply plugin: 'maven' apply plugin: 'license' ext.apktoolversion = '1.5.1-SNAPSHOT' ext.fullrev = ''; ext.gitrev_version = ''; import org.apache.tools.ant.filters.* repositories { mavenCentral() } sourceCompatibility = 1.6 targetCompatibility = 1.6 class Compatibility { String version Compatibility(String versionValue) { def matcher = (versionValue =~ /Java (\d)/) version = matcher[0][1] } String toString() { version } } dependencies { } task wrapper(type: Wrapper) { gradleVersion = '1.3' } // If anyone uses this outside of GoogleCode (Apktool) developers. I will hunt you down and hurt you. task release { } buildscript { repositories { mavenCentral() } dependencies { classpath 'nl.javadude.gradle.plugins:license-gradle-plugin:0.5.0' } } subprojects { apply plugin: 'java' apply plugin: 'maven' apply plugin: 'idea' repositories { mavenCentral() } dependencies { testCompile 'junit:junit:4.8.2' } } project(':brut.j.common') { dependencies { testCompile "junit:junit:3.8.1" } } project(':brut.j.util') { dependencies { compile project(':brut.j.common'), "commons-io:commons-io:2.4" testCompile "junit:junit:3.8.1" } } project(':brut.j.dir') { dependencies { compile project(':brut.j.common'), project(':brut.j.util') testCompile "junit:junit:3.8.1" } } project(':brut.apktool.smali:util') { dependencies { compile 'commons-cli:commons-cli:1.2' testCompile 'junit:junit:4.6' } } project(':brut.apktool.smali:dexlib') { dependencies { compile 'com.google.code.findbugs:jsr305:1.3.9' compile 'com.google.collections:google-collections:1.0' } } project(':brut.apktool.smali:baksmali') { dependencies { compile project(':brut.apktool.smali:util'), project(':brut.apktool.smali:dexlib') compile 'commons-cli:commons-cli:1.2' compile 'com.google.code.findbugs:jsr305:1.3.9' } } project(':brut.apktool:apktool-lib') { // kudos #smali - JesusFreke, for how to build release task if (!('release' in gradle.startParameter.taskNames)) { ant.loadfile(srcFile: "../../.git/refs/heads/master", property: fullrev) gitrev_version = ant.properties[fullrev].substring(0,10); println "Building SNAPSHOT: " + gitrev_version; } else { gitrev_version = ''; println "Building RELEASE: " + apktoolversion; } processResources { from('src/main/resources/properties') { include '**/*.properties' into 'properties' filter(ReplaceTokens, tokens: [version: apktoolversion, gitrev: gitrev_version] ) } from('src/main/resources/') { include '**/*.jar' } includeEmptyDirs = false } dependencies { compile ("junit:junit:4.10") { exclude(module: 'hamcrest-core') } compile project(':brut.j.dir'), project(':brut.j.util'), project(':brut.j.common'), project(':brut.apktool.smali:util'), project(':brut.apktool.smali:dexlib'), project(':brut.apktool.smali:baksmali'),project(':brut.apktool.smali:smali'), "org.yaml:snakeyaml:1.11", "xpp3:xpp3:1.1.4c","xmlunit:xmlunit:1.3", "com.google.guava:guava:12.0", "org.apache.commons:commons-lang3:3.1" } } project(':brut.apktool:apktool-cli') { version = apktoolversion gradle.taskGraph.whenReady { jar { from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } } manifest { attributes("Main-Class": "brut.apktool.Main") } } } dependencies { compile project(':brut.apktool:apktool-lib') } }