1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-12-26 10:35:50 +01:00
Gadgetbridge/app/build.gradle

149 lines
4.4 KiB
Groovy
Raw Normal View History

2015-01-07 14:00:18 +01:00
apply plugin: 'com.android.application'
apply plugin: 'findbugs'
apply plugin: 'pmd'
def ABORT_ON_CHECK_FAILURE=false
2015-01-07 14:00:18 +01:00
tasks.withType(Test) {
systemProperty 'MiFirmwareDir', System.getProperty('MiFirmwareDir', null)
systemProperty 'logback.configurationFile', System.getProperty('user.dir', null) + '/app/src/main/assets/logback.xml'
systemProperty 'GB_LOGFILES_DIR', java.nio.file.Files.createTempDirectory('gblog').toString();
}
2016-03-17 23:41:41 +01:00
2015-01-07 14:00:18 +01:00
android {
compileOptions {
// for KitKat
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
compileSdkVersion 25
buildToolsVersion '25.0.2'
2015-01-07 14:00:18 +01:00
defaultConfig {
applicationId "nodomain.freeyourgadget.gadgetbridge"
2015-11-23 22:49:11 +01:00
minSdkVersion 19
targetSdkVersion 25
2015-12-07 18:10:00 +01:00
// note: always bump BOTH versionCode and versionName!
versionName "0.18.0"
versionCode 87
2015-01-07 14:00:18 +01:00
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
lintOptions {
abortOnError ABORT_ON_CHECK_FAILURE
lintConfig file("${project.rootDir}/config/lint/lint.xml")
// if true, generate an HTML report (with issue explanations, sourcecode, etc)
htmlReport true
// optional path to report (default will be lint-results.html in the builddir)
htmlOutput file("$project.buildDir/reports/lint/lint.html")
}
testOptions {
unitTests.returnDefaultValues = true
}
2015-01-07 14:00:18 +01:00
}
pmd {
toolVersion = '5.5.1'
}
2015-01-07 14:00:18 +01:00
dependencies {
// testCompile 'ch.qos.logback:logback-classic:1.1.3'
// testCompile 'ch.qos.logback:logback-core:1.1.3'
testCompile 'junit:junit:4.12'
testCompile "org.mockito:mockito-core:1.9.5"
2017-03-05 19:44:16 +01:00
testCompile "org.robolectric:robolectric:3.2.2"
2015-01-07 14:00:18 +01:00
compile fileTree(dir: 'libs', include: ['*.jar'])
2017-03-05 19:44:16 +01:00
compile 'com.android.support:appcompat-v7:25.2.0'
compile 'com.android.support:support-v4:25.2.0'
compile 'com.android.support:design:25.2.0'
2015-10-26 22:55:24 +01:00
compile 'com.github.tony19:logback-android-classic:1.1.1-4'
compile 'org.slf4j:slf4j-api:1.7.7'
2016-11-18 21:31:55 +01:00
compile 'com.github.PhilJay:MPAndroidChart:v3.0.1'
compile 'com.github.pfichtner:durationformatter:0.1.1'
compile 'de.cketti.library.changelog:ckchangelog:1.2.2'
compile 'net.e175.klaus:solarpositioning:0.0.9'
compile 'com.github.freeyourgadget:greendao:1998d7cd2d21f662c6044f6ccf3b3a251bbad341'
2016-06-15 19:56:34 +02:00
compile 'com.github.woxthebox:draglistview:1.2.6'
2016-09-12 19:28:50 +02:00
compile 'org.apache.commons:commons-lang3:3.4'
// compile project(":DaoCore")
2016-03-27 22:13:06 +02:00
}
preBuild.dependsOn(":GBDaoGenerator:genSources")
gradle.beforeProject {
preBuild.dependsOn(":GBDaoGenerator:genSources")
2015-01-07 14:00:18 +01:00
}
check.dependsOn 'findbugs', 'pmd', 'lint'
task pmd(type: Pmd) {
ruleSetFiles = files("${project.rootDir}/config/pmd/pmd-ruleset.xml")
ignoreFailures = !ABORT_ON_CHECK_FAILURE
ruleSets = [
'java-android',
'java-basic',
'java-braces',
'java-clone',
'java-codesize',
'java-controversial',
'java-coupling',
'java-design',
'java-empty',
'java-finalizers',
'java-imports',
'java-junit',
'java-optimizations',
'java-strictexception',
'java-strings',
'java-sunsecure',
'java-typeresolution',
'java-unnecessary',
'java-unusedcode'
]
source 'src'
include '**/*.java'
exclude '**/gen/**'
reports {
xml.enabled = false
html.enabled = true
xml {
destination "$project.buildDir/reports/pmd/pmd.xml"
}
html {
destination "$project.buildDir/reports/pmd/pmd.html"
}
}
}
task findbugs(type: FindBugs) {
ignoreFailures = !ABORT_ON_CHECK_FAILURE
effort = "default"
reportLevel = "medium"
excludeFilter = new File("${project.rootDir}/config/findbugs/findbugs-filter.xml")
classes = files("${project.rootDir}/app/build/intermediates/classes")
source = fileTree('src/main/java/')
classpath = files()
reports {
xml.enabled = false
html.enabled = true
xml {
destination "$project.buildDir/reports/findbugs/findbugs-output.xml"
}
html {
destination "$project.buildDir/reports/findbugs/findbugs-output.html"
}
}
}