aboutsummaryrefslogtreecommitdiff
path: root/app/build.gradle
blob: f2a6a7c6c2d00311f62b3c4bd2f8c30b4b63ddfd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'io.fabric'

android {
    compileSdkVersion Integer.parseInt(project.TARGET_SDK)
    buildToolsVersion project.BUILD_TOOLS

    defaultConfig {
        applicationId "${project.APP_GROUP}." + project.APP_ID.toLowerCase()
        minSdkVersion Integer.parseInt(project.MIN_SDK)
        targetSdkVersion Integer.parseInt(project.TARGET_SDK)
        versionCode Integer.parseInt(project.VERSION_CODE)
        versionName project.VERSION_NAME
        multiDexEnabled true
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }

    applicationVariants.all { variant ->
        variant.outputs.each { output ->
            output.outputFile = new File(output.outputFile.parent,
                    "${project.APP_ID}-${variant.buildType.name}.apk")
        }
    }

    signingConfigs {
        test {
            storeFile file("../files/test.keystore")
            storePassword "testkey"
            keyAlias "testKey"
            keyPassword "testkey"
        }
    }

    buildTypes {
        debug {
            minifyEnabled false
            shrinkResources false
            applicationIdSuffix ".debug"
            versionNameSuffix "-debug"
            resValue "string", "app_name", "Frost Debug"
            resValue "string", "frost_web", "Frost Web Debug"
        }
        releaseTest {
            minifyEnabled true
            shrinkResources true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            applicationIdSuffix ".test"
            signingConfig signingConfigs.test
            versionNameSuffix "-test"
            resValue "string", "app_name", "Frost Test"
            resValue "string", "frost_web", "Frost Web Test"
        }
        release {
            minifyEnabled true
            shrinkResources true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            resValue "string", "app_name", "Frost"
            resValue "string", "frost_web", "Frost Web"
        }
    }

    sourceSets {
        main.java.srcDirs += 'src/main/kotlin'
        test.java.srcDirs += 'src/test/kotlin'
    }

    packagingOptions {
        pickFirst 'META-INF/library_release.kotlin_module'
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    testCompile 'junit:junit:4.12'

    compile "ca.allanwang:kau:${KAU}"

    compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
    testCompile "org.jetbrains.kotlin:kotlin-test-junit:$kotlin_version"

    debugCompile "com.squareup.leakcanary:leakcanary-android:${LEAK_CANARY}"
    releaseTestCompile "com.squareup.leakcanary:leakcanary-android-no-op:${LEAK_CANARY}"
    releaseCompile "com.squareup.leakcanary:leakcanary-android-no-op:${LEAK_CANARY}"
    testCompile "com.squareup.leakcanary:leakcanary-android-no-op:${LEAK_CANARY}"

    compile "com.github.Raizlabs.DBFlow:dbflow:${DBFLOW}"
    compile "com.github.Raizlabs.DBFlow:dbflow-core:${DBFLOW}"
    annotationProcessor "com.github.Raizlabs.DBFlow:dbflow-processor:${DBFLOW}"
    kapt "com.github.Raizlabs.DBFlow:dbflow-processor:${DBFLOW}"
    compile "com.github.Raizlabs.DBFlow:dbflow-kotlinextensions:${DBFLOW}"
//    compile "com.github.Raizlabs.DBFlow:dbflow-rx2:${DBFLOW}"
//    compile "com.github.Raizlabs.DBFlow:dbflow-rx2-kotlinextensions:${DBFLOW}"

    //Icons
    compile "com.mikepenz:material-design-iconic-typeface:${IICON_MATERIAL}@aar"
    compile "com.mikepenz:community-material-typeface:${IICON_COMMUNITY}@aar"

    compile "org.jsoup:jsoup:${JSOUP}"

    compile "com.github.bumptech.glide:glide:${GLIDE}"
    annotationProcessor "com.github.bumptech.glide:compiler:${GLIDE}"

    compile("com.mikepenz:materialdrawer:${MATERIAL_DRAWER}@aar") {
        transitive = true
    }
    compile "co.zsmb:materialdrawer-kt:${MATERIAL_DRAWER_KT}"

    compile "nz.bradcampbell:paperparcel:${PAPER_PARCEL}"
    compile "nz.bradcampbell:paperparcel-kotlin:${PAPER_PARCEL}"
    kapt "nz.bradcampbell:paperparcel-compiler:${PAPER_PARCEL}"

    compile "com.jude:swipebackhelper:${SWIPE_BACK}"

    compile("com.crashlytics.sdk.android:crashlytics:${CRASHLYTICS}@aar") {
        transitive = true;
    }
}

kapt {
    generateStubs = true
}