buildscript {
    repositories {
        maven { url '../../../../../out/repo' }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.12.2'
    }
}
apply plugin: 'com.android.application'

android {
    compileSdkVersion 19
    buildToolsVersion '19.1.0'

    testBuildType "proguard"

    defaultConfig {
        versionCode 12
        versionName "2.0"
        minSdkVersion 16
        targetSdkVersion 16
    }

    buildTypes {
        proguard.initWith(buildTypes.debug)
        proguard {
            runProguard true
            proguardFile getDefaultProguardFile('proguard-android.txt')
        }
    }

    dexOptions {
        incremental false
    }
}
