/* * Copyright (C) 2017 The Android Open Source Project * * 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. */ import javax.tools.ToolProvider plugins { id("java") id("maven-publish") } group = 'com.android' version = '1.0.6' if (System.env.OUT_DIR != null) { buildDir = file("${System.env.OUT_DIR}/gradle/external/doclava/build").getCanonicalFile() } else { buildDir = file('../../out/host/gradle/external/doclava/build') } repositories { maven { url file('../../prebuilts/androidx/external').absolutePath } } dependencies { implementation("org.antlr:antlr:3.5.2") implementation("com.google.jsilver:jsilver:1.0.0") implementation("org.ccil.cowan.tagsoup:tagsoup:1.2.1") // tools.jar required for com.sun.javadoc def toolsJar if (JavaVersion.current().getMajorVersion() == "8") { toolsJar = ((URLClassLoader) ToolProvider.getSystemToolClassLoader()).getURLs() } else if (System.env.JAVA_TOOLS_JAR != null) { toolsJar = System.env.JAVA_TOOLS_JAR } else { throw new Exception("If you are not using Java 8, JAVA_TOOLS_JAR env variable " + "needs to be set to tools.jar from a Java 8 installation to build Doclava") } implementation(files(toolsJar)) testImplementation("junit:junit:4.12") } sourceSets { main { java.srcDirs = ['src/'] resources.srcDirs = ['res/'] } test { java.srcDirs = ['test/'] resources.srcDirs = ['test/api'] } } tasks.withType(JavaCompile) { // Suppress build warnings that we're not interested in: b/154755010 options.warnings = false } tasks.withType(Jar) { task -> task.reproducibleFileOrder = true task.preserveFileTimestamps = false }