From 44579fe04c21b8d7dca5d9b267e81ae8e46515f2 Mon Sep 17 00:00:00 2001 From: Roman / Nea Date: Sun, 16 Jan 2022 00:39:26 +0100 Subject: New buildscript (#59) * Rewrite build.gradle * Fix mixins * Finishing touches on the buildscript * maybe potentially fix a dependency issue that i cant reproduce on my end --- build.gradle.kts | 134 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 134 insertions(+) create mode 100644 build.gradle.kts (limited to 'build.gradle.kts') diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 index 00000000..26a89ab5 --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,134 @@ +import net.minecraftforge.gradle.user.ReobfMappingType + +plugins { + java + id("net.minecraftforge.gradle.forge") version "6f5327738df" + id("com.github.johnrengelman.shadow") version "6.1.0" + id("org.spongepowered.mixin") version "d75e32e" +} + +group = "io.github.moulberry" +version = "2.1" + +// Toolchains: + +java { + // Forge Gradle currently prevents using the toolchain: toolchain.languageVersion.set(JavaLanguageVersion.of(8)) + sourceCompatibility = JavaVersion.VERSION_1_8 + targetCompatibility = JavaVersion.VERSION_1_8 +} + +minecraft { + version = "1.8.9-11.15.1.2318-1.8.9" + runDir = "run" + mappings = "stable_22" + clientJvmArgs.addAll( + listOf( + "-Dmixin.debug=true", + "-Dasmhelper.verbose=true" + ) + ) + clientRunArgs.addAll( + listOf( + "--tweakClass org.spongepowered.asm.launch.MixinTweaker", + "--mixin mixins.notenoughupdates.json" + ) + ) +} + +mixin { + add(sourceSets.main.get(), "mixins.notenoughupdates.refmap.json") +} + +// Dependencies: + +repositories { + mavenCentral() + flatDir { dirs("deps/") } + maven("https://repo.spongepowered.org/maven/") +} + +dependencies { + implementation("org.spongepowered:mixin:0.7.11-SNAPSHOT") + annotationProcessor("org.spongepowered:mixin:0.7.11-SNAPSHOT") + implementation("com.fasterxml.jackson.core:jackson-core:2.13.1") + implementation("info.bliki.wiki:bliki-core:3.1.0") +} + + +// Tasks: + +tasks.withType(JavaCompile::class) { + options.encoding = "UTF-8" +} + +tasks.withType(Jar::class) { + archiveBaseName.set("NotEnoughUpdates") + manifest.attributes.run { + this["Main-Class"] = "NotSkyblockAddonsInstallerFrame" + this["TweakClass"] = "org.spongepowered.asm.launch.MixinTweaker" + this["MixinConfigs"] = "mixins.notenoughupdates.json" + this["FMLCorePluginContainsFMLMod"] = "true" + this["ForceLoadAsMod"] = "true" + this["FMLAT"] = "notenoughupdates_at.cfg" + } +} + +tasks.shadowJar { + archiveClassifier.set("dep") + exclude( + "module-info.class", + "LICENSE.txt" + ) + dependencies { + include(dependency("org.spongepowered:mixin:0.7.11-SNAPSHOT")) + + include(dependency("commons-io:commons-io")) + include(dependency("org.apache.commons:commons-lang3")) + include(dependency("com.fasterxml.jackson.core:jackson-databind:2.10.2")) + include(dependency("com.fasterxml.jackson.core:jackson-annotations:2.10.2")) + include(dependency("com.fasterxml.jackson.core:jackson-core:2.10.2")) + + include(dependency("info.bliki.wiki:bliki-core:3.1.0")) + include(dependency("org.slf4j:slf4j-api:1.7.18")) + include(dependency("org.luaj:luaj-jse:3.0.1")) + } + fun relocate(name: String) = relocate(name, "io.github.moulberry.notenoughupdates.deps.$name") + relocate("com.fasterxml.jackson") + relocate("org.eclipse") + relocate("org.slf4j") +} + +tasks.build.get().dependsOn(tasks.shadowJar) + +reobf { + create("shadowJar") { + mappingType = ReobfMappingType.SEARGE + } +} + +tasks.processResources { + from(sourceSets.main.get().resources.srcDirs) + filesMatching("mcmod.info") { + expand( + "version" to project.version, + "mcversion" to minecraft.version + ) + } + rename("(.+_at.cfg)".toPattern(), "META-INF/$1") +} + +val moveResources by tasks.creating { + doLast { + ant.withGroovyBuilder { + "move"( + "file" to "$buildDir/resources/main", + "todir" to "$buildDir/classes/java" + ) + } + } + dependsOn(tasks.processResources) +} + +tasks.classes { dependsOn(moveResources) } + -- cgit From 3a21023cdaf23f51ad27e0ec769adc47c8d3e44d Mon Sep 17 00:00:00 2001 From: Roman / Nea Date: Thu, 27 Jan 2022 11:21:50 +0100 Subject: Build Number (#70) Co-authored-by: IRONM00N <64110067+IRONM00N@users.noreply.github.com> --- build.gradle.kts | 19 +++++++++++++++++-- .../notenoughupdates/commands/StatsCommand.java | 2 +- 2 files changed, 18 insertions(+), 3 deletions(-) (limited to 'build.gradle.kts') diff --git a/build.gradle.kts b/build.gradle.kts index 26a89ab5..e824a9a0 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,5 +1,5 @@ +import java.io.ByteArrayOutputStream import net.minecraftforge.gradle.user.ReobfMappingType - plugins { java id("net.minecraftforge.gradle.forge") version "6f5327738df" @@ -8,7 +8,22 @@ plugins { } group = "io.github.moulberry" -version = "2.1" +val baseVersion = "2.1" + + +var buildVersion = properties["BUILD_VERSION"] +if (buildVersion == null) { + val stdout = ByteArrayOutputStream() + val execResult = exec { + commandLine("git", "describe", "--always", "--first-parent", "--abbrev=7") + standardOutput = stdout + } + if (execResult.exitValue == 0) + buildVersion = String(stdout.toByteArray()).trim() +} + +version = baseVersion + (buildVersion?.let { "+$it" } ?: "") + // Toolchains: diff --git a/src/main/java/io/github/moulberry/notenoughupdates/commands/StatsCommand.java b/src/main/java/io/github/moulberry/notenoughupdates/commands/StatsCommand.java index 525e8aea..f069a0e0 100644 --- a/src/main/java/io/github/moulberry/notenoughupdates/commands/StatsCommand.java +++ b/src/main/java/io/github/moulberry/notenoughupdates/commands/StatsCommand.java @@ -120,7 +120,7 @@ public class StatsCommand extends ClientCommandBase { builder.category("Neu Settings"); builder.append("API Key", NotEnoughUpdates.INSTANCE.config.apiKey.apiKey.isEmpty() ? "FALSE" : "TRUE"); builder.append("On Skyblock", NotEnoughUpdates.INSTANCE.hasSkyblockScoreboard() ? "TRUE" : "FALSE"); - builder.append("Mod Version", Loader.instance().getIndexedModList().get(NotEnoughUpdates.MODID).getSource().getName()); + builder.append("Mod Version", Loader.instance().getIndexedModList().get(NotEnoughUpdates.MODID).getDisplayVersion()); builder.append("SB Profile", SBInfo.getInstance().currentProfile); builder.append("Has Advanced Tab", SBInfo.getInstance().hasNewTab ? "TRUE" : "FALSE"); builder.category("Repo Stats"); -- cgit