From 0e05c3a982fb87856bf232774b15a6076c670880 Mon Sep 17 00:00:00 2001 From: zml Date: Sun, 15 Jan 2023 19:28:28 -0800 Subject: [PATCH 1/2] feat(build): Make loom automatically pull in mods for testing in dev Currently it doesn't seem like canvas, iris, or sodium actually publish to a maven repo This feature isn't too useful until that can be resolved --- build.gradle.kts | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/build.gradle.kts b/build.gradle.kts index c71e56d1..76b3affe 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,4 +1,6 @@ import net.fabricmc.loom.LoomGradleExtension +import net.fabricmc.loom.api.RemapConfigurationSettings +import org.gradle.configurationcache.extensions.capitalized plugins { java @@ -72,6 +74,30 @@ afterEvaluate { } } +fun createAlternateRun(name: String): Configuration { + // create a run with the main project plus additional dependencies + val set = sourceSets.create(name) + set.compileClasspath += sourceSets.main.get().compileClasspath + set.runtimeClasspath += sourceSets.main.get().runtimeClasspath + + val config = loom.addRemapConfiguration("mod${name.capitalized()}") { + sourceSet.set(set) + onCompileClasspath.set(false) + onRuntimeClasspath.set(true) + publishingMode.set(RemapConfigurationSettings.PublishingMode.NONE) + targetConfigurationName.set(set.implementationConfigurationName) + } + + loom.runConfigs.create(name + "Client") { + client() + source(set) + } + + return configurations.getByName(config.name) +} + +val canvas = createAlternateRun("canvas") +val iris = createAlternateRun("iris") val fabricApi by configurations.creating dependencies { minecraft(libs.minecraft) From 71830f8bad077e1c6d07d62dd700c1e7d47aa89f Mon Sep 17 00:00:00 2001 From: zml Date: Sun, 15 Jan 2023 19:37:39 -0800 Subject: [PATCH 2/2] actually add the mod to the secondary configs --- build.gradle.kts | 1 + 1 file changed, 1 insertion(+) diff --git a/build.gradle.kts b/build.gradle.kts index 76b3affe..e6b4ddf8 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -79,6 +79,7 @@ fun createAlternateRun(name: String): Configuration { val set = sourceSets.create(name) set.compileClasspath += sourceSets.main.get().compileClasspath set.runtimeClasspath += sourceSets.main.get().runtimeClasspath + dependencies.add(set.implementationConfigurationName, sourceSets.main.map { it.output}) val config = loom.addRemapConfiguration("mod${name.capitalized()}") { sourceSet.set(set)