build.gradle 2.7 KB
Newer Older
T
Takeshi Hagikura 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
/*
 * Copyright 2016 Google Inc. All rights reserved.
 *
 * 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.
 */

17 18 19
// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
20
    ext {
21 22 23 24
        minSdkVersion = 14
        targetSdkVersion = 26
        compileSdkVersion = 26
        buildToolsVersion = "26.0.0"
25 26 27 28
        androidGradlePluginVersion = "2.3.3"
        androidMavenGradlePluginVersion = "1.5"
        gradleBintrayPluginVersion = "1.6"
        kotlinVersion = "1.1.3"
29 30 31
        supportLibVersion = "26.0.0"
        espressoVersion = "3.0.0"
        testRunnerVersion = "1.0.0"
32 33 34
        junitVersion = "4.12"
    }

35 36
    repositories {
        jcenter()
37 38 39
        maven {
            url 'https://maven.google.com'
        }
40 41
    }
    dependencies {
42 43 44 45
        classpath "com.android.tools.build:gradle:$androidGradlePluginVersion"
        classpath "com.github.dcendents:android-maven-gradle-plugin:$androidMavenGradlePluginVersion"
        classpath "com.jfrog.bintray.gradle:gradle-bintray-plugin:$gradleBintrayPluginVersion"
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion"
46 47 48 49 50 51 52 53
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
54 55 56
        maven {
            url 'https://maven.google.com'
        }
57 58 59 60 61 62
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}
63 64 65 66 67 68 69 70

// This allows to disable pre dexing. If not disabled, it makes each CI build slow
// See https://circleci.com/docs/android/#disable-pre-dexing-to-improve-build-performance
//     http://tools.android.com/tech-docs/new-build-system/tips#TOC-Improving-Build-Server-performance
project.ext.preDexLibs = !project.hasProperty('disablePreDex')

subprojects {
    project.plugins.whenPluginAdded { plugin ->
71
        if ("com.android.build.gradle.AppPlugin" == plugin.class.name) {
72
            project.android.dexOptions.preDexLibraries = rootProject.ext.preDexLibs
73
        } else if ("com.android.build.gradle.LibraryPlugin" == plugin.class.name) {
74 75 76 77
            project.android.dexOptions.preDexLibraries = rootProject.ext.preDexLibs
        }
    }
}