mirror of
https://github.com/revanced/Apktool.git
synced 2024-08-15 03:40:34 +02:00
attempt to run tests with default tasks remove notifications & override install command add git config setup for travis-ci set email/name globally on travis-ci run applyPatches before compileJava remove incremental java build add "build fatJar proguard" to script run applyPatches before running script Update build.gradle add wrapper to footer (post cleanup)
138 lines
4.0 KiB
Groovy
138 lines
4.0 KiB
Groovy
/**
|
|
* Copyright 2014 Ryszard Wiśniewski <brut.alll@gmail.com>
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
buildscript {
|
|
repositories {
|
|
jcenter()
|
|
}
|
|
tasks.withType(JavaCompile) {
|
|
options.encoding = "UTF-8"
|
|
}
|
|
dependencies {
|
|
classpath 'eu.appsatori:gradle-fatjar-plugin:0.3'
|
|
}
|
|
}
|
|
|
|
plugins {
|
|
id 'net.minecrell.gitpatcher' version '0.7.1'
|
|
}
|
|
|
|
apply plugin: 'maven'
|
|
apply from: 'gradle/functions.gradle'
|
|
|
|
def apktoolversion_major = '2.0.3'
|
|
def apktoolversion_minor = 'SNAPSHOT';
|
|
|
|
defaultTasks 'build', 'fatJar', 'proguard'
|
|
|
|
allprojects {
|
|
apply plugin: 'java'
|
|
sourceCompatibility = 1.7
|
|
targetCompatibility = 1.7
|
|
}
|
|
|
|
if (!('release' in gradle.startParameter.taskNames)) {
|
|
def hash = getCheckedOutGitCommitHash();
|
|
|
|
if (hash == null) {
|
|
project.ext.set("hash", "dirty")
|
|
project.ext.set("apktool_version", apktoolversion_major + "-dirty")
|
|
println "Building SNAPSHOT (no .git folder found)";
|
|
} else {
|
|
project.ext.set("hash", hash);
|
|
project.ext.set("apktool_version", apktoolversion_major + "-" + hash + "-SNAPSHOT");
|
|
println "Building SNAPSHOT (" + getCheckedOutBranch() + "): " + hash;
|
|
}
|
|
} else {
|
|
project.ext.set("hash", "")
|
|
if (apktoolversion_minor.length() > 0) {
|
|
project.ext.set("apktool_version", apktoolversion_major + "-" + apktoolversion_minor);
|
|
} else {
|
|
project.ext.set("apktool_version", apktoolversion_major);
|
|
}
|
|
println "Building RELEASE (" + getCheckedOutBranch() + "): " + project.ext.apktool_version;
|
|
}
|
|
|
|
build.doFirst {
|
|
def javaVersion = System.getProperty("java.version")
|
|
|
|
//fail the build if we java 1.5 or 1.6.
|
|
if (javaVersion.startsWith("1.5") || javaVersion.startsWith("1.6")) {
|
|
throw new GradleException("You can fix this problem!\n" +
|
|
"We found a " + javaVersion + " JDK\n" +
|
|
"Please update JAVA_HOME to use at least a 1.7 JDK\n" +
|
|
"Currently it is set to: " + System.getProperty("java.home")
|
|
);
|
|
}
|
|
}
|
|
|
|
clean.doFirst {
|
|
delete "${rootDir}/brut.apktool.smali"
|
|
println "deleting ${rootDir}/brut.apktool.smali in favor of smali"
|
|
println "You will need to run applyPatches again, as they have been wiped."
|
|
}
|
|
|
|
// used for official releases only. Please don't use
|
|
task release {
|
|
}
|
|
|
|
patches {
|
|
submodule = 'smali'
|
|
target = file('brut.apktool.smali')
|
|
patches = file('gradle/smali-patches')
|
|
}
|
|
|
|
subprojects {
|
|
apply plugin: 'java'
|
|
apply plugin: 'maven'
|
|
apply plugin: 'idea'
|
|
|
|
ext {
|
|
depends = [
|
|
antlr: 'org.antlr:antlr:3.5',
|
|
antlr_runtime: 'org.antlr:antlr-runtime:3.5',
|
|
commons_cli: 'commons-cli:commons-cli:1.2',
|
|
commons_io: 'commons-io:commons-io:2.4',
|
|
commons_lang: 'org.apache.commons:commons-lang3:3.1',
|
|
findbugs: 'com.google.code.findbugs:jsr305:1.3.9',
|
|
guava: 'com.google.guava:guava:14.0',
|
|
jflex: 'de.jflex:jflex:1.4.3',
|
|
junit: 'junit:junit:4.6',
|
|
proguard_gradle: 'net.sf.proguard:proguard-gradle:5.2.1',
|
|
snakeyaml: 'org.yaml:snakeyaml:1.12',
|
|
xmlpull: 'xpp3:xpp3:1.1.4c',
|
|
xmlunit: 'xmlunit:xmlunit:1.3',
|
|
]
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
testCompile depends.junit
|
|
}
|
|
|
|
test {
|
|
testLogging {
|
|
exceptionFormat = 'full'
|
|
}
|
|
}
|
|
}
|
|
|
|
task wrapper(type: Wrapper) {
|
|
gradleVersion = '2.3'
|
|
}
|