blob: fefe868cd2efcea438cff0c807bfcaff101f2f60 [file] [log] [blame]
apply plugin: 'groovy'
apply plugin: 'maven'
apply plugin: 'signing'
apply plugin: 'clone-artifacts'
configurations {
gradleApi
compile.extendsFrom gradleApi
gradleApi.extendsFrom groovy
}
sourceSets {
main {
groovy.srcDirs 'src/main/groovy', 'src/fromGradle/groovy'
resources.srcDirs 'src/main/resources', 'src/fromGradle/resources'
}
buildTest {
groovy.srcDir file('src/build-test/groovy')
resources.srcDir file('src/build-test/resources')
}
deviceTest {
groovy.srcDir file('src/device-test/groovy')
resources.srcDir file('src/device-test/resources')
}
}
dependencies {
gradleApi gradleApi()
groovy localGroovy()
compile project(':builder')
compile "com.android.tools:sdklib:$project.ext.baseAndroidVersion"
compile "com.android.tools:sdk-common:$project.ext.baseAndroidVersion"
compile "com.android.tools:common:$project.ext.baseAndroidVersion"
compile "com.android.tools.lint:lint:$project.ext.baseAndroidVersion"
compile 'net.sf.proguard:proguard-gradle:4.10'
testCompile 'junit:junit:3.8.1'
buildTestCompile sourceSets.main.output
buildTestCompile sourceSets.test.output
buildTestCompile configurations.testCompile
buildTestCompile configurations.testRuntime
deviceTestCompile sourceSets.main.output
deviceTestCompile sourceSets.test.output
deviceTestCompile sourceSets.buildTest.output
deviceTestCompile configurations.testCompile
deviceTestCompile configurations.testRuntime
}
// configuration for dependencies provided by the runtime,
// in this case proguard.
configurations{
provided
}
dependencies{
provided 'net.sf.proguard:proguard-gradle:4.10'
}
//Include provided for compilation
sourceSets.main.compileClasspath += configurations.provided
idea {
module {
testSourceDirs += files('src/build-test/groovy', 'src/device-test/groovy').files
scopes.COMPILE.plus += configurations.provided
}
}
archivesBaseName = 'gradle'
project.ext.pomName = 'Gradle Plug-in for Android'
project.ext.pomDesc = 'Gradle plug-in to build Android applications.'
apply from: '../publish.gradle'
jar.manifest.attributes("Plugin-Version": version)
publishLocal.dependsOn ':builder:publishLocal'
task buildTest(type: Test, dependsOn: publishLocal) {
testClassesDir = sourceSets.buildTest.output.classesDir
classpath = sourceSets.buildTest.runtimeClasspath
description = "Runs the project build tests. This requires an SDK either from the Android source tree, under out/..., or an env var ANDROID_HOME."
group = "verification"
systemProperties['jar.path'] = jar.archivePath
}
task deviceTest(type: Test, dependsOn: publishLocal) {
testClassesDir = sourceSets.deviceTest.output.classesDir
classpath = sourceSets.deviceTest.runtimeClasspath
description = "Runs the device tests. This requires a device."
group = "verification"
systemProperties['jar.path'] = jar.archivePath
}
check.dependsOn buildTest
groovydoc {
exclude "**/internal/**"
includePrivate false
docTitle "Gradle Plugin for Android"
header ""
footer "Copyright (C) 2012 The Android Open Source Project"
overview ""
}
task javadocJar(type: Jar, dependsOn:groovydoc) {
classifier 'javadoc'
from groovydoc.destinationDir
}
// add javadoc jar tasks as artifacts
artifacts {
archives javadocJar
}