apply plugin: 'com.android.tools.java-library'
apply plugin: 'com.android.tools.kotlin'
apply plugin: 'com.android.tools.publish'
apply plugin: 'sdk-java-lib'
apply plugin: 'com.google.protobuf'
apply plugin: 'license-report'

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

licenseReport {
    ignored = libs.trove4j
}

dependencies {
    implementation project(':base:sdklib')
    implementation project(':base:builder-test-api')
    implementation project(':base:builder-model')
    implementation project(':base:ddmlib')
    implementation project(':base:layoutlib-api')
    implementation project(':base:common')
    implementation project(':analytics-library:shared')
    implementation libs.bouncycastle_pkix
    implementation libs.bouncycastle_prov
    implementation libs.kotlin_stdlib
    implementation libs.guava
    implementation libs.jaxb_runtime
    implementation libs.gson
    implementation libs.kotlin_reflect
    implementation libs.protobuf
    implementation libs.javax_inject
    implementation libs.kxml
    implementation libs.trove4j
    implementation libs.aapt2_proto
    implementation libs.xerces

    testImplementation libs.junit
    testImplementation project(':base:testutils')
    testImplementation 'org.easymock:easymock:3.3'
    testImplementation libs.jimfs
    testImplementation libs.mockito_core
    testImplementation libs.truth
    testImplementation libs.equalsverifier
    testImplementation testFixtures(project(":base:repository"))
}

protobuf {
    protoc {
        artifact = libs.proto_compiler
    }
}

sourceSets {
    main.proto.srcDir 'aia-manifest-jar-generator/src'
}

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

File generatedSources = new File(project.buildDir, 'generated/generated')
tasks.compileJava {
    doFirst {
        generatedSources.mkdirs()
    }
    options.compilerArgs += ['-s', generatedSources]
    outputs.dir(generatedSources)
}
