blob: ec645ae1982dd6342575356c23e239426ea879f4 [file] [log] [blame]
apply plugin: 'maven-publish'
def pubVersion
if (project.hasProperty("publishVersion")) {
pubVersion = project.publishVersion
} else {
pubVersion = WPILibVersion.version
}
def baseExamplesArtifactId = 'examples'
def baseTemplatesArtifactId = 'templates'
def baseCommandsArtifactId = 'commands'
def artifactGroupId = 'edu.wpi.first.wpilibc'
def examplesZipBaseName = '_GROUP_edu_wpi_first_wpilibc_ID_examples_CLS'
def templatesZipBaseName = '_GROUP_edu_wpi_first_wpilibc_ID_templates_CLS'
def commandsZipBaseName = '_GROUP_edu_wpi_first_wpilibc_ID_commands_CLS'
def outputsFolder = file("$project.buildDir/outputs")
task cppExamplesZip(type: Zip) {
destinationDir = outputsFolder
baseName = examplesZipBaseName
from(licenseFile) {
into '/'
}
from('src/main/cpp/examples') {
into 'examples'
}
}
task cppTemplatesZip(type: Zip) {
destinationDir = outputsFolder
baseName = templatesZipBaseName
from(licenseFile) {
into '/'
}
from('src/main/cpp/templates') {
into 'templates'
}
}
task cppCommandsZip(type: Zip) {
destinationDir = outputsFolder
baseName = commandsZipBaseName
from(licenseFile) {
into '/'
}
from('src/main/cpp/commands') {
into 'commands'
}
}
build.dependsOn cppTemplatesZip
build.dependsOn cppExamplesZip
build.dependsOn cppCommandsZip
addTaskToCopyAllOutputs(cppTemplatesZip)
addTaskToCopyAllOutputs(cppExamplesZip)
addTaskToCopyAllOutputs(cppCommandsZip)
publishing {
publications {
examples(MavenPublication) {
artifact cppExamplesZip
artifactId = baseExamplesArtifactId
groupId artifactGroupId
version pubVersion
}
templates(MavenPublication) {
artifact cppTemplatesZip
artifactId = baseTemplatesArtifactId
groupId artifactGroupId
version pubVersion
}
commands(MavenPublication) {
artifact cppCommandsZip
artifactId = baseCommandsArtifactId
groupId artifactGroupId
version pubVersion
}
}
}