apply plugin: 'com.android.application'
apply plugin: 'com.neenbedankt.android-apt'
apply plugin: 'com.getkeepsafe.dexcount'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"
    defaultConfig {
        minSdkVersion 14
        targetSdkVersion 23
        versionName "4.2.3.1"
    }
    sourceSets {
        lightningPlus.setRoot('src/LightningPlus')
        lightningLite.setRoot('src/LightningLite')
    }
    buildTypes {
        debug {
            minifyEnabled false
            shrinkResources false
            proguardFiles 'proguard-project.txt'
        }

        release {
            minifyEnabled true
            shrinkResources true
            proguardFiles 'proguard-project.txt'
        }
    }
    productFlavors {
        lightningPlus {
            buildConfigField "boolean", "FULL_VERSION", "true"
            applicationId "acr.browser.lightning"
            versionCode 85
        }
        lightningLite {
            buildConfigField "boolean", "FULL_VERSION", "false"
            applicationId "acr.browser.barebones"
            versionCode 86
        }
    }
    lintOptions {
        abortOnError true
    }
    packagingOptions {
        exclude '.readme'
    }
}

dexcount {
    includeClasses = false
    includeFieldCount = false
    printAsTree = true
    orderByMethodCount = true
    verbose = false
}

dependencies {
    // support libraries
    compile 'com.android.support:palette-v7:23.1.1'
    compile 'com.android.support:appcompat-v7:23.1.1'
    compile 'com.android.support:design:23.1.1'
    compile 'com.android.support:recyclerview-v7:23.1.1'

    // html parsing fo reading mode
    compile 'org.jsoup:jsoup:1.8.3'

    // event bus
    compile 'com.squareup:otto:1.3.8'

    // dependency injection
    compile 'com.google.dagger:dagger:2.0.2'
    apt 'com.google.dagger:dagger-compiler:2.0.2'

    // view binding
    compile 'com.jakewharton:butterknife:7.0.1'

    // permissions
    compile 'com.anthonycr.grant:permissions:1.1.2'

    // proxy support
    compile 'net.i2p.android:client:0.7'
    // Use the following code to update the libnetcipher submodule
    // git submodule foreach git reset --hard
    // git submodule update --remote
    compile(project(':libnetcipher'))

    // memory leak analysis
    debugCompile 'com.squareup.leakcanary:leakcanary-android:1.4-beta1'
    releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.4-beta1'

    provided 'javax.annotation:jsr250-api:1.0'

}