From a134913c713491d723359126e6b63defb0457ac6 Mon Sep 17 00:00:00 2001 From: Joe Date: Mon, 11 May 2020 12:48:04 +0100 Subject: [PATCH] Allow other source sets to be remapped without needing an access widener --- src/main/java/net/fabricmc/loom/AbstractPlugin.java | 1 + src/main/java/net/fabricmc/loom/LoomGradleExtension.java | 4 ++++ src/main/java/net/fabricmc/loom/task/RemapJarTask.java | 9 ++++++++- 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/main/java/net/fabricmc/loom/AbstractPlugin.java b/src/main/java/net/fabricmc/loom/AbstractPlugin.java index 6337536..5d86428 100644 --- a/src/main/java/net/fabricmc/loom/AbstractPlugin.java +++ b/src/main/java/net/fabricmc/loom/AbstractPlugin.java @@ -295,6 +295,7 @@ public class AbstractPlugin implements Plugin { extension.addUnmappedMod(jarTask.getArchivePath().toPath()); remapJarTask.getAddNestedDependencies().set(true); + remapJarTask.getRemapAccessWidener().set(true); project1.getArtifacts().add("archives", remapJarTask); remapJarTask.dependsOn(jarTask); diff --git a/src/main/java/net/fabricmc/loom/LoomGradleExtension.java b/src/main/java/net/fabricmc/loom/LoomGradleExtension.java index 3fe00fe..09df6f4 100644 --- a/src/main/java/net/fabricmc/loom/LoomGradleExtension.java +++ b/src/main/java/net/fabricmc/loom/LoomGradleExtension.java @@ -100,6 +100,10 @@ public class LoomGradleExtension { return installerJson; } + public void accessWidener(Object file) { + this.accessWidener = project.file(file); + } + public File getUserCache() { File userCache = new File(project.getGradle().getGradleUserHomeDir(), "caches" + File.separator + "fabric-loom"); diff --git a/src/main/java/net/fabricmc/loom/task/RemapJarTask.java b/src/main/java/net/fabricmc/loom/task/RemapJarTask.java index 33c6b70..fbe4185 100644 --- a/src/main/java/net/fabricmc/loom/task/RemapJarTask.java +++ b/src/main/java/net/fabricmc/loom/task/RemapJarTask.java @@ -53,11 +53,13 @@ import net.fabricmc.tinyremapper.TinyUtils; public class RemapJarTask extends Jar { private RegularFileProperty input; private Property addNestedDependencies; + private Property remapAccessWidener; public RemapJarTask() { super(); input = GradleSupport.getfileProperty(getProject()); addNestedDependencies = getProject().getObjects().property(Boolean.class); + remapAccessWidener = getProject().getObjects().property(Boolean.class); } @TaskAction @@ -129,7 +131,7 @@ public class RemapJarTask extends Jar { } } - if (extension.accessWidener != null) { + if (getRemapAccessWidener().getOrElse(false) && extension.accessWidener != null) { extension.getJarProcessorManager().getByType(AccessWidenerJarProcessor.class).remapAccessWidener(output); } @@ -154,4 +156,9 @@ public class RemapJarTask extends Jar { public Property getAddNestedDependencies() { return addNestedDependencies; } + + @Input + public Property getRemapAccessWidener() { + return remapAccessWidener; + } }