blob: 3bc1a09d0264a8b0182b307a5e174828a41415b0 [file] [log] [blame]
Brian Silverman41cdd3e2019-01-19 19:48:58 -08001apply plugin: 'maven-publish'
2
Brian Silverman41cdd3e2019-01-19 19:48:58 -08003def baseExamplesArtifactId = 'examples'
4def baseTemplatesArtifactId = 'templates'
5def baseCommandsArtifactId = 'commands'
6def artifactGroupId = 'edu.wpi.first.wpilibc'
7
8def examplesZipBaseName = '_GROUP_edu_wpi_first_wpilibc_ID_examples_CLS'
9def templatesZipBaseName = '_GROUP_edu_wpi_first_wpilibc_ID_templates_CLS'
10def commandsZipBaseName = '_GROUP_edu_wpi_first_wpilibc_ID_commands_CLS'
11
12def outputsFolder = file("$project.buildDir/outputs")
13
14task cppExamplesZip(type: Zip) {
James Kuszmaul4b81d302019-12-14 20:53:14 -080015 destinationDirectory = outputsFolder
16 archiveBaseName = examplesZipBaseName
Brian Silverman41cdd3e2019-01-19 19:48:58 -080017
18 from(licenseFile) {
19 into '/'
20 }
21
22 from('src/main/cpp/examples') {
23 into 'examples'
24 }
25}
26
27task cppTemplatesZip(type: Zip) {
James Kuszmaul4b81d302019-12-14 20:53:14 -080028 destinationDirectory = outputsFolder
29 archiveBaseName = templatesZipBaseName
Brian Silverman41cdd3e2019-01-19 19:48:58 -080030
31 from(licenseFile) {
32 into '/'
33 }
34
35 from('src/main/cpp/templates') {
36 into 'templates'
37 }
38}
39
40task cppCommandsZip(type: Zip) {
James Kuszmaul4b81d302019-12-14 20:53:14 -080041 destinationDirectory = outputsFolder
42 archiveBaseName = commandsZipBaseName
Brian Silverman41cdd3e2019-01-19 19:48:58 -080043
44 from(licenseFile) {
45 into '/'
46 }
47
48 from('src/main/cpp/commands') {
49 into 'commands'
50 }
51}
52
53build.dependsOn cppTemplatesZip
54build.dependsOn cppExamplesZip
55build.dependsOn cppCommandsZip
56
57addTaskToCopyAllOutputs(cppTemplatesZip)
58addTaskToCopyAllOutputs(cppExamplesZip)
59addTaskToCopyAllOutputs(cppCommandsZip)
60
61publishing {
62 publications {
63 examples(MavenPublication) {
64 artifact cppExamplesZip
65
66 artifactId = baseExamplesArtifactId
67 groupId artifactGroupId
James Kuszmaul4f3ad3c2019-12-01 16:35:21 -080068 version wpilibVersioning.version.get()
Brian Silverman41cdd3e2019-01-19 19:48:58 -080069 }
70
71 templates(MavenPublication) {
72 artifact cppTemplatesZip
73
74 artifactId = baseTemplatesArtifactId
75 groupId artifactGroupId
James Kuszmaul4f3ad3c2019-12-01 16:35:21 -080076 version wpilibVersioning.version.get()
Brian Silverman41cdd3e2019-01-19 19:48:58 -080077 }
78
79 commands(MavenPublication) {
80 artifact cppCommandsZip
81
82 artifactId = baseCommandsArtifactId
83 groupId artifactGroupId
James Kuszmaul4f3ad3c2019-12-01 16:35:21 -080084 version wpilibVersioning.version.get()
Brian Silverman41cdd3e2019-01-19 19:48:58 -080085 }
86 }
87}