Files
allwpilib/wpilibj/simulation.gradle
Fred Silberberg d48aac5beb Gradle Update (#372)
This does a major cleanup on our gradle files, primarily converting all instances of manual dependency downloading to use the correct configuration-based method, which has the advantage of being both less code and more safe.
2016-11-24 23:44:35 -08:00

71 lines
2.1 KiB
Groovy

sourceSets {
sim
}
dependencies {
simCompile sourceSets.shared.output
simCompile project(':simulation:JavaGazebo')
simCompile ntcoreDep('java', 'desktop')
simRuntime ntcoreDep('java', 'desktop')
}
task wpilibjSimJar(type: Jar, dependsOn: simClasses) {
description = 'Creates the WPILibJSimulation Jar'
group = 'WPILib Simulation'
duplicatesStrategy = 'exclude'
doFirst {
def addClasspath = { classpath ->
classpath.files.findAll { it.exists() }.each {
if (!file(it).directory) {
from zipTree(it.path)
}
}
}
addClasspath sourceSets.shared.runtimeClasspath
addClasspath sourceSets.sim.runtimeClasspath
}
from sourceSets.sim.output
from sourceSets.shared.output
baseName 'wpilibjSimulation'
}
task wpilibjSimSources(type: Jar, dependsOn: simClasses) {
description = 'Creates the wpilibjSimulation sources jar for the maven publishing routine'
group = 'WPILib'
classifier = 'sources'
duplicatesStrategy = 'exclude'
from sourceSets.sim.allJava
from sourceSets.shared.allJava
}
task wpilibjSimJavadoc(type: Javadoc) {
description = 'Generates javadoc for the simulation components'
group = 'WPILib'
source sourceSets.sim.allJava, sourceSets.shared.allJava
destinationDir = file("$buildDir/docs/java-simulation")
classpath = files([sourceSets.sim.compileClasspath, sourceSets.shared.compileClasspath])
}
task wpilibjSimJavadocJar(type: Jar, dependsOn: wpilibjSimJavadoc) {
description = 'Creates the wpilibjSimulation javadoc jar for the maven publishing routine'
group = 'WPILib'
classifier = 'javadoc'
duplicatesStrategy = 'exclude'
from wpilibjSimJavadoc.destinationDir
}
//we need to move the simulation jars to the install directory
task copyJars(type: Copy, dependsOn: wpilibjSimJar) {
description = 'copy wpilibj simulation jar to make simulation zip'
group = 'WPILib Simulation'
from wpilibjSimJar.archivePath
into "$simulationInstallDir/jar"
}
build.dependsOn wpilibjSimJar