blob: 927d88ebc586c86dd43148ff057de50fb2f73379 [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) {
15 destinationDir = outputsFolder
16 baseName = examplesZipBaseName
17
18 from(licenseFile) {
19 into '/'
20 }
21
22 from('src/main/cpp/examples') {
23 into 'examples'
24 }
25}
26
27task cppTemplatesZip(type: Zip) {
28 destinationDir = outputsFolder
29 baseName = templatesZipBaseName
30
31 from(licenseFile) {
32 into '/'
33 }
34
35 from('src/main/cpp/templates') {
36 into 'templates'
37 }
38}
39
40task cppCommandsZip(type: Zip) {
41 destinationDir = outputsFolder
42 baseName = commandsZipBaseName
43
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}