buildscript {
    repositories {
        maven { url = uri(rootProject.cloneArtifacts.repository) }
    }
    dependencies {
        classpath "com.jfrog.bintray.gradle:gradle-bintray-plugin:1.0"
    }
}

apply plugin: 'java'
apply plugin: 'sdk-java-lib'

group = 'com.android.tools'
archivesBaseName = 'sdk-common'
version = rootProject.ext.baseVersion

dependencies {
    compile project(':base:sdklib')
    compile project(':base:builder-test-api')
    compile project(':base:builder-model')
    compile 'com.google.code.gson:gson:2.2.4'

    testCompile 'junit:junit:4.12'
    testCompile project(':base:sdklib').sourceSets.test.output
    testCompile project(':base:testutils')
    testCompile 'org.easymock:easymock:3.3'
    testCompile 'org.mockito:mockito-all:1.9.5'
}

project.ext.pomName = 'Android Tools sdk-common library'
project.ext.pomDesc = 'sdk-common library used by other Android tools libraries.'

apply from: "$rootDir/buildSrc/base/publish.gradle"
apply from: "$rootDir/buildSrc/base/bintray.gradle"
apply from: "$rootDir/buildSrc/base/javadoc.gradle"

