aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/net/fabricmc/loom/LoomGradleExtension.java
diff options
context:
space:
mode:
authorshedaniel <daniel@shedaniel.me>2020-12-30 18:47:54 +0800
committershedaniel <daniel@shedaniel.me>2020-12-30 18:47:54 +0800
commit49f3b7209e9b7cfccdf60b5e23c7df6f6f1f8268 (patch)
tree3ef003ebdbed2f4904efd7d48f2ad7b554a8d92f /src/main/java/net/fabricmc/loom/LoomGradleExtension.java
parent7a1bf321345e2084d89397189534ffb9dd0759b7 (diff)
downloadarchitectury-loom-49f3b7209e9b7cfccdf60b5e23c7df6f6f1f8268.tar.gz
architectury-loom-49f3b7209e9b7cfccdf60b5e23c7df6f6f1f8268.tar.bz2
architectury-loom-49f3b7209e9b7cfccdf60b5e23c7df6f6f1f8268.zip
Allow the generation of tiny mappings with srg without being in a forge environment
Diffstat (limited to 'src/main/java/net/fabricmc/loom/LoomGradleExtension.java')
-rw-r--r--src/main/java/net/fabricmc/loom/LoomGradleExtension.java31
1 files changed, 21 insertions, 10 deletions
diff --git a/src/main/java/net/fabricmc/loom/LoomGradleExtension.java b/src/main/java/net/fabricmc/loom/LoomGradleExtension.java
index 8aaa180b..e9dccbc0 100644
--- a/src/main/java/net/fabricmc/loom/LoomGradleExtension.java
+++ b/src/main/java/net/fabricmc/loom/LoomGradleExtension.java
@@ -41,6 +41,7 @@ import java.util.stream.Collectors;
import javax.annotation.Nullable;
import com.google.gson.JsonObject;
+import net.fabricmc.loom.providers.*;
import org.cadixdev.lorenz.MappingSet;
import org.cadixdev.mercury.Mercury;
import org.gradle.api.Project;
@@ -52,14 +53,6 @@ import org.gradle.api.plugins.BasePluginConvention;
import net.fabricmc.loom.api.decompilers.LoomDecompiler;
import net.fabricmc.loom.processors.JarProcessor;
import net.fabricmc.loom.processors.JarProcessorManager;
-import net.fabricmc.loom.providers.ForgeProvider;
-import net.fabricmc.loom.providers.ForgeUniversalProvider;
-import net.fabricmc.loom.providers.ForgeUserdevProvider;
-import net.fabricmc.loom.providers.MappingsProvider;
-import net.fabricmc.loom.providers.MinecraftMappedProvider;
-import net.fabricmc.loom.providers.MinecraftProvider;
-import net.fabricmc.loom.providers.PatchProvider;
-import net.fabricmc.loom.providers.McpConfigProvider;
import net.fabricmc.loom.util.function.LazyBool;
import net.fabricmc.loom.util.LoomDependencyManager;
import net.fabricmc.loom.util.mappings.MojangMappingsDependency;
@@ -83,6 +76,8 @@ public class LoomGradleExtension {
final List<LoomDecompiler> decompilers = new ArrayList<>();
private final List<JarProcessor> jarProcessors = new ArrayList<>();
+ private boolean silentMojangMappingsLicense = false;
+ public Boolean generateSrgTiny = null;
// Not to be set in the build.gradle
private final Project project;
@@ -94,7 +89,6 @@ public class LoomGradleExtension {
private final LazyBool forge;
private Set<File> mixinMappings = Collections.synchronizedSet(new HashSet<>());
private final List<String> tasksBeforeRun = Collections.synchronizedList(new ArrayList<>());
- private boolean silentMojangMappingsLicense = false;
/**
* Loom will generate a new genSources task (with a new name, based off of {@link LoomDecompiler#name()})
@@ -397,6 +391,10 @@ public class LoomGradleExtension {
public McpConfigProvider getMcpConfigProvider() {
return getDependencyManager().getProvider(McpConfigProvider.class);
}
+
+ public SrgProvider getSrgProvider() {
+ return getDependencyManager().getProvider(SrgProvider.class);
+ }
public ForgeUniversalProvider getForgeUniversalProvider() {
return getDependencyManager().getProvider(ForgeUniversalProvider.class);
@@ -428,7 +426,12 @@ public class LoomGradleExtension {
public String getRefmapName() {
if (refmapName == null || refmapName.isEmpty()) {
- String defaultRefmapName = project.getConvention().getPlugin(BasePluginConvention.class).getArchivesBaseName() + "-refmap.json";
+ String defaultRefmapName;
+ if (isRootProject()) {
+ defaultRefmapName = project.getConvention().getPlugin(BasePluginConvention.class).getArchivesBaseName() + "-refmap.json";
+ } else {
+ defaultRefmapName = project.getConvention().getPlugin(BasePluginConvention.class).getArchivesBaseName() + "-" + project.getPath().replaceFirst(":", "") + "-refmap.json";
+ }
project.getLogger().info("Could not find refmap definition, will be using default name: " + defaultRefmapName);
refmapName = defaultRefmapName;
}
@@ -469,6 +472,14 @@ public class LoomGradleExtension {
public boolean isForge() {
return forge.getAsBoolean();
}
+
+ public boolean shouldGenerateSrgTiny() {
+ if (generateSrgTiny != null) {
+ return generateSrgTiny;
+ }
+
+ return isForge();
+ }
// Creates a new file each time its called, this is then held onto later when remapping the output jar
// Required as now when using parallel builds the old single file could be written by another sourceset compile task