aboutsummaryrefslogtreecommitdiff
path: root/build.gradle.kts
diff options
context:
space:
mode:
Diffstat (limited to 'build.gradle.kts')
-rw-r--r--build.gradle.kts36
1 files changed, 36 insertions, 0 deletions
diff --git a/build.gradle.kts b/build.gradle.kts
index 694ef15b2..b46db017d 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -1,4 +1,5 @@
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
+import java.io.ByteArrayOutputStream
plugins {
idea
@@ -13,6 +14,16 @@ plugins {
group = "at.hannibal2.skyhanni"
version = "0.22.Beta.8"
+val gitHash by lazy {
+ val baos = ByteArrayOutputStream()
+ exec {
+ standardOutput = baos
+ commandLine("git", "rev-parse", "--short", "HEAD")
+ isIgnoreExitValue = true
+ }
+ baos.toByteArray().decodeToString().trim()
+}
+
// Toolchains:
java {
toolchain.languageVersion.set(JavaLanguageVersion.of(8))
@@ -51,6 +62,11 @@ val devenvMod: Configuration by configurations.creating {
isVisible = false
}
+val headlessLwjgl by configurations.creating {
+ isTransitive = false
+ isVisible = false
+}
+
dependencies {
minecraft("com.mojang:minecraft:1.8.9")
mappings("de.oceanlabs.mcp:mcp_stable:22-1.8.9")
@@ -63,7 +79,9 @@ dependencies {
exclude(module = "gson")
because("Different version conflicts with Minecraft's Log4j")
}
+ compileOnly(libs.jbAnnotations)
+ headlessLwjgl(libs.headlessLwjgl)
shadowImpl("org.spongepowered:mixin:0.7.11-SNAPSHOT") {
isTransitive = false
@@ -149,6 +167,24 @@ tasks.processResources {
}
}
+val generateRepoPatterns by tasks.creating(JavaExec::class) {
+ javaLauncher.set(javaToolchains.launcherFor(java.toolchain))
+ mainClass.set("net.fabricmc.devlaunchinjector.Main")
+ workingDir(project.file("run"))
+ classpath(sourceSets.main.map { it.runtimeClasspath }, sourceSets.main.map { it.output })
+ jvmArgs(
+ "-Dfabric.dli.config=${project.file(".gradle/loom-cache/launch.cfg").absolutePath}",
+ "-Dfabric.dli.env=client",
+ "-Dfabric.dli.main=net.minecraft.launchwrapper.Launch",
+ "-Dorg.lwjgl.opengl.Display.allowSoftwareOpenGL=true",
+ "-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5006",
+ "-javaagent:${headlessLwjgl.singleFile.absolutePath}"
+ )
+ val outputFile = project.file("build/regexes/constants.json")
+ environment("SKYHANNI_DUMP_REGEXES", "${gitHash}:${outputFile.absolutePath}")
+ environment("SKYHANNI_DUMP_REGEXES_EXIT", "true")
+}
+
tasks.compileJava {
dependsOn(tasks.processResources)
}