-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.gradle
73 lines (60 loc) · 2.01 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
plugins {
id("fabric-loom").version("1.4-SNAPSHOT")
id("maven-publish")
id("org.ajoberstar.grgit").version("5.2.1")
}
dependencies {
// Development environment
minecraft("com.mojang:minecraft:${project.minecraft_version}")
mappings(loom.officialMojangMappings())
modApi("net.fabricmc:fabric-loader:${project.fabric_loader_version}")
}
ext {
getVersionGit = { List paths ->
if (grgit == null || grgit.head() == null) {
return "nogit"
}
List latestCommits = paths.isEmpty() ? grgit.log(maxCommits: 1) : grgit.log(paths: paths, maxCommits: 1)
return latestCommits.isEmpty() ? "uncommited" : "${latestCommits.get(0).id.substring(0, 7)}"
}
getVersionPatch = { List paths ->
if (grgit == null || grgit.head() == null) {
return 0
}
List latestCommits = paths.isEmpty() ? grgit.log() : grgit.log(paths: paths)
return latestCommits.size()
}
getModVersion = {
return "${project.mod_version}.${getVersionPatch([])}+${getVersionGit([])}"
}
}
group(project.mod_maven_group)
setVersion(project.getModVersion())
base {
archivesBaseName("${project.mod_archives_base_name}")
}
tasks.withType(JavaCompile).configureEach {
options.encoding("UTF-8")
}
processResources {
from("${rootDir}/LICENSE")
from("${rootDir}/icon.png") {
into("assets/${project.mod_id}")
}
filesMatching("fabric.mod.json") {
expand([
"mod_description" : project.mod_description,
"mod_homepage" : project.mod_homepage,
"mod_id" : project.mod_id,
"mod_license" : project.mod_license,
"mod_name" : project.mod_name,
"mod_sources" : project.mod_sources,
"mod_version" : project.mod_version
])
}
}
java {
sourceCompatibility(JavaVersion.VERSION_1_8)
targetCompatibility(JavaVersion.VERSION_1_8)
withSourcesJar()
}