forked from P3pp3rF1y/AncientWarfare2
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.gradle
132 lines (110 loc) · 4.18 KB
/
build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
import org.apache.tools.ant.filters.ReplaceTokens
ext.versionFile = file('gradle.properties')
buildscript {
repositories {
mavenCentral()
maven {
name = "forge"
url = "http://files.minecraftforge.net/maven"
}
maven {
name = "sonatype"
url = "https://oss.sonatype.org/content/repositories/snapshots/"
}
}
dependencies {
classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
}
}
allprojects
{
apply plugin: 'forge'
minecraft
{
version = "1.7.10-10.13.2.1236"
runDir = "eclipse/assets"
}
version = project.major +"."+ project.minor +"."+ project.build+"-"+ project.releasetype + "-MC" +minecraft.version
group = "shadowmage" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
archivesBaseName = "ancientwarfare"
}
dependencies {
compile files {
"lib/CodeChickenLib-1.7.10-1.1.1.106-dev.jar"
}
compile files {
"lib/buildcraft-6.1.8-dev.jar" // can remove this, no longer a real dep; can just load as a mod in mods folder
}
compile files {
"lib/CodeChickenCore-1.7.10-1.0.4.29-dev.jar"
}
compile files {
"lib/NotEnoughItems-1.7.10-1.0.3.67-dev.jar"
}
compile files {
"lib/CoFHLib-[1.7.10]1.0.0B7-dev-29.jar"
}
}
task updateVersion(type:Copy){
ant.propertyfile(file: versionFile) {
entry(key: 'build', type: 'int', operation: '+', value: 001)
}
from(sourceSets.main.java.srcDirs){
exclude 'mcmod.info'
}
into 'build/sources/java'
filter(ReplaceTokens, tokens: [VERSION: project.version])
}
compileJava.dependsOn updateVersion
processResources{
// replace stuff in mcmod.info, nothing else
from(sourceSets.main.resources.srcDirs) {
include 'mcmod.info'
// replace version and mcversion
expand 'version':project.version, 'mcversion':project.minecraft.version
}
// copy everything else, thats not the mcmod.info
from(sourceSets.main.resources.srcDirs) {
exclude 'mcmod.info'
}
}
task expand_jar<<{
copy{
println 'EXPANDING FINALIZED FILES'
from zipTree('build/libs/ancientwarfare-'+version+'.jar')
into 'build/tmp/expanded'
}
}
task packFullJar(type: Jar){
archiveName 'ancientwarfare-'+version+'-FULL.jar'
from 'build/tmp/expanded'
include '**/*'
exclude 'net/shadowmage/ancientwarfare/modeler/**/*'
}
task packCoreJar(type: Jar){
archiveName 'ancientwarfare-'+version+'-CORE.jar'
from 'build/tmp/expanded'
exclude 'net/shadowmage/ancientwarfare/automation/**/*', 'net/shadowmage/ancientwarfare/modeler/**/*', 'net/shadowmage/ancientwarfare/npc/**/*', 'net/shadowmage/ancientwarfare/structure/**/*', 'net/shadowmage/ancientwarfare/vehicle/**/*'
}
task packAutomationJar(type: Jar){
archiveName 'ancientwarfare-'+version+'-AUTOMATION.jar'
from 'build/tmp/expanded'
exclude 'net/shadowmage/ancientwarfare/core/**/*', 'net/shadowmage/ancientwarfare/modeler/**/*', 'net/shadowmage/ancientwarfare/npc/**/*', 'net/shadowmage/ancientwarfare/structure/**/*', 'net/shadowmage/ancientwarfare/vehicle/**/*', 'net/shadowmage/ancientwarfare/nei_plugin/**/*'
}
task packNpcJar(type: Jar){
archiveName 'ancientwarfare-'+version+'-NPC.jar'
from 'build/tmp/expanded'
exclude 'net/shadowmage/ancientwarfare/core/**/*', 'net/shadowmage/ancientwarfare/modeler/**/*', 'net/shadowmage/ancientwarfare/automation/**/*', 'net/shadowmage/ancientwarfare/structure/**/*', 'net/shadowmage/ancientwarfare/vehicle/**/*', 'net/shadowmage/ancientwarfare/nei_plugin/**/*'
}
task packStructureJar(type: Jar){
archiveName 'ancientwarfare-'+version+'-STRUCTURE.jar'
from 'build/tmp/expanded'
exclude 'net/shadowmage/ancientwarfare/core/**/*', 'net/shadowmage/ancientwarfare/modeler/**/*', 'net/shadowmage/ancientwarfare/npc/**/*', 'net/shadowmage/ancientwarfare/automation/**/*', 'net/shadowmage/ancientwarfare/vehicle/**/*', 'net/shadowmage/ancientwarfare/nei_plugin/**/*'
}
//hack the entire thing to fire after check()
check.dependsOn packStructureJar
packFullJar.dependsOn expand_jar
packCoreJar.dependsOn packFullJar
packAutomationJar.dependsOn packCoreJar
packNpcJar.dependsOn packAutomationJar
packStructureJar.dependsOn packNpcJar