/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

apply plugin: 'java-library'
apply plugin: 'kotlin'

targetCompatibility = JavaVersion.VERSION_1_8
sourceCompatibility = JavaVersion.VERSION_1_8

dependencies {
  compileOnly Dependencies.tools_lintapi
  compileOnly Dependencies.tools_lintchecks

  // Force the usage of /our/ Kotlin version and not what we get transitively from the lint
  // dependencies. Otherwise we end up with a warning that there are multiple versions on the
  // classpath.
  compileOnly Dependencies.kotlin_stdlib
  compileOnly "org.jetbrains.kotlin:kotlin-stdlib-jdk8:${Versions.kotlin}"
  compileOnly Dependencies.kotlin_reflect
  testImplementation Dependencies.kotlin_stdlib
  testImplementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:${Versions.kotlin}"
  testImplementation Dependencies.kotlin_reflect

  testImplementation Dependencies.tools_lint
  testImplementation Dependencies.tools_linttests
}

jar {
  manifest {
    attributes('Lint-Registry-v2': 'mozilla.components.tooling.lint.LintIssueRegistry')
  }
}

tasks.register("lint") {
  doLast {
    // Do nothing. We execute the same set of tasks for all our modules in parallel on taskcluster.
    // This project doesn't have a lint task. To avoid special casing our automation I just added
    // an empty lint task here.
  }
}

tasks.register("assembleAndroidTest") {
  doLast {
    // Do nothing. Like the `lint` task above this is just a dummy task so that this module
    // behaves like our others and we do not need to special case it in automation.
  }
}
