-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathsettings.gradle.kts
107 lines (94 loc) · 3.39 KB
/
settings.gradle.kts
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
pluginManagement {
repositories {
maven("https://maven.quiltmc.org/repository/release") {
name = "Quilt"
}
maven("https://maven.fabricmc.net/") {
name = "Fabric"
}
maven("https://maven.architectury.dev/") {
name = "Architectury"
}
maven("https://maven.neoforged.net/releases/") {
name = "NeoForged"
}
maven("https://maven.kneelawk.com/releases/") {
name = "Kneelawk"
}
gradlePluginPortal()
}
plugins {
val loom_version: String by settings
id("fabric-loom") version loom_version
val moddev_version: String by settings
id("net.neoforged.moddev") version moddev_version
val remapcheck_version: String by settings
id("com.kneelawk.remapcheck") version remapcheck_version
val versioning_version: String by settings
id("com.kneelawk.versioning") version versioning_version
val kpublish_version: String by settings
id("com.kneelawk.kpublish") version kpublish_version
val submodule_version: String by settings
id("com.kneelawk.submodule") version submodule_version
}
}
rootProject.name = "graphlib"
fun module(enabled: Boolean, name: String) {
if (!enabled) return
include(name)
project(":$name").projectDir = File(rootDir, "modules/${name.replace(':', '/')}")
}
fun module(name: String, vararg submodules: Pair<Boolean, String>) {
include(name)
project(":$name").projectDir = File(rootDir, "modules/$name")
for ((enabled, submodule) in submodules) {
if (!enabled) continue
include("$name:$submodule")
project(":$name:$submodule").projectDir = File(rootDir, "modules/$name/${submodule.replace(':', '/')}")
}
}
fun example(enabled: Boolean, name: String) {
if (!enabled) return
include(name)
project(":$name").projectDir = File(rootDir, "examples/${name.replace(':', '/')}")
}
fun example(name: String, vararg submodules: Pair<Boolean, String>) {
include(name)
project(":$name").projectDir = File(rootDir, "examples/$name")
for ((enabled, submodule) in submodules) {
if (!enabled) continue
include("$name:$submodule")
project(":$name:$submodule").projectDir = File(rootDir, "examples/$name/${submodule.replace(':', '/')}")
}
}
fun javadoc(enabled: Boolean, name: String) {
if (!enabled) return
include("javadoc-$name")
project(":javadoc-$name").projectDir = File(rootDir, "javadoc/$name")
}
val xplat = true
val mojmap = true
val fabric = true
val neoforge = true
module(xplat, "core-xplat")
module(mojmap, "core-xplat-mojmap")
module(fabric, "core-fabric")
module(neoforge, "core-neoforge")
module(xplat, "debugrender-xplat")
module(mojmap, "debugrender-xplat-mojmap")
module(fabric, "debugrender-fabric")
module(neoforge, "debugrender-neoforge")
module(xplat, "syncing-core-xplat")
module(mojmap, "syncing-core-xplat-mojmap")
module(fabric, "syncing-core-fabric")
module(neoforge, "syncing-core-neoforge")
module(xplat, "syncing-knet-xplat")
module(mojmap, "syncing-knet-xplat-mojmap")
module(fabric, "syncing-knet-fabric")
module(neoforge, "syncing-knet-neoforge")
module(fabric, "syncing-lns")
example("multiblock-lamps", xplat to "xplat", fabric to "fabric", neoforge to "neoforge")
javadoc(xplat, "xplat")
javadoc(fabric, "fabric")
javadoc(neoforge, "neoforge")
include(":remapCheck")