mirror of
https://github.com/SquidDev-CC/CC-Tweaked
synced 2025-12-04 05:18:05 +00:00
- Update to Loom 1.12. This requires Java 21, so we now build with Java 21, but targetting 17. The new "-release" flag does make this much easier, so hopefully shouldn't cause too many issues. - Bump versions of a lot of other things. - Fix various errorprone/checkstyle grumbles.
83 lines
2.1 KiB
Kotlin
83 lines
2.1 KiB
Kotlin
// SPDX-FileCopyrightText: 2022 The CC: Tweaked Developers
|
|
//
|
|
// SPDX-License-Identifier: MPL-2.0
|
|
|
|
/** Default configuration for Fabric projects. */
|
|
|
|
import cc.tweaked.gradle.*
|
|
|
|
plugins {
|
|
`java-library`
|
|
id("fabric-loom")
|
|
id("cc-tweaked.java-convention")
|
|
}
|
|
|
|
plugins.apply(CCTweakedPlugin::class.java)
|
|
|
|
val mcVersion: String by extra
|
|
|
|
repositories {
|
|
maven("https://maven.parchmentmc.org/") {
|
|
name = "Parchment"
|
|
content {
|
|
includeGroup("org.parchmentmc.data")
|
|
}
|
|
}
|
|
}
|
|
|
|
loom {
|
|
splitEnvironmentSourceSets()
|
|
splitModDependencies = true
|
|
}
|
|
|
|
MinecraftConfigurations.setup(project)
|
|
|
|
extensions.configure(CCTweakedExtension::class.java) {
|
|
linters(minecraft = true, loader = "fabric")
|
|
}
|
|
|
|
dependencies {
|
|
val libs = project.extensions.getByType<VersionCatalogsExtension>().named("libs")
|
|
|
|
minecraft("com.mojang:minecraft:$mcVersion")
|
|
mappings(
|
|
loom.layered {
|
|
officialMojangMappings()
|
|
parchment(
|
|
project.dependencies.create(
|
|
group = "org.parchmentmc.data",
|
|
name = "parchment-${libs.findVersion("parchmentMc").get()}",
|
|
version = libs.findVersion("parchment").get().toString(),
|
|
ext = "zip",
|
|
),
|
|
)
|
|
},
|
|
)
|
|
|
|
modImplementation(libs.findLibrary("fabric-loader").get())
|
|
modImplementation(libs.findLibrary("fabric-api").get())
|
|
|
|
// Depend on error prone annotations to silence a lot of compile warnings.
|
|
compileOnlyApi(libs.findLibrary("errorProne.annotations").get())
|
|
}
|
|
|
|
tasks.ideaSyncTask {
|
|
doLast { IdeaRunConfigurations(project).patch() }
|
|
}
|
|
|
|
tasks.named("checkDependencyConsistency", DependencyCheck::class.java) {
|
|
val libs = project.extensions.getByType<VersionCatalogsExtension>().named("libs")
|
|
// Minecraft depends on lwjgl, but Fabric forces it to a more recent version
|
|
for (lwjgl in listOf(
|
|
"lwjgl",
|
|
"lwjgl-glfw",
|
|
"lwjgl-jemalloc",
|
|
"lwjgl-openal",
|
|
"lwjgl-opengl",
|
|
"lwjgl-stb",
|
|
"lwjgl-tinyfd",
|
|
)) {
|
|
override("org.lwjgl", lwjgl, "3.3.2")
|
|
}
|
|
}
|