aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorshedaniel <daniel@shedaniel.me>2021-04-14 08:40:11 +0800
committershedaniel <daniel@shedaniel.me>2021-04-14 08:45:26 +0800
commitaa009c2b2daac03b7ad4d9041fce5440c7183d08 (patch)
tree3a5b6ec3090c93aa1ddd009aa461c13132742231 /src
parente3a446965d5b49a942347859b3e8c051dcb211ae (diff)
downloadarchitectury-loom-aa009c2b2daac03b7ad4d9041fce5440c7183d08.tar.gz
architectury-loom-aa009c2b2daac03b7ad4d9041fce5440c7183d08.tar.bz2
architectury-loom-aa009c2b2daac03b7ad4d9041fce5440c7183d08.zip
Add "loom.forge.include" for include configuration on forge
Diffstat (limited to 'src')
-rw-r--r--src/main/java/net/fabricmc/loom/LoomGradleExtension.java7
-rw-r--r--src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java2
-rw-r--r--src/main/java/net/fabricmc/loom/configuration/RemapConfiguration.java2
-rw-r--r--src/main/java/net/fabricmc/loom/task/RemapJarTask.java2
4 files changed, 10 insertions, 3 deletions
diff --git a/src/main/java/net/fabricmc/loom/LoomGradleExtension.java b/src/main/java/net/fabricmc/loom/LoomGradleExtension.java
index dd11e8e0..967921f1 100644
--- a/src/main/java/net/fabricmc/loom/LoomGradleExtension.java
+++ b/src/main/java/net/fabricmc/loom/LoomGradleExtension.java
@@ -72,6 +72,7 @@ import net.fabricmc.loom.util.function.LazyBool;
public class LoomGradleExtension {
private static final String FORGE_PROPERTY = "loom.forge";
+ private static final String INCLUDE_PROPERTY = "loom.forge.include";
public String refmapName;
public String loaderLaunchMethod;
@@ -100,6 +101,7 @@ public class LoomGradleExtension {
private MappingSet[] srcMappingCache = new MappingSet[2];
private Mercury[] srcMercuryCache = new Mercury[2];
private final LazyBool forge;
+ private final LazyBool supportsInclude;
private Set<File> mixinMappings = Collections.synchronizedSet(new HashSet<>());
private final List<String> tasksBeforeRun = Collections.synchronizedList(new ArrayList<>());
public final List<Supplier<SourceSet>> forgeLocalMods = Collections.synchronizedList(new ArrayList<>(Arrays.asList(new Supplier<SourceSet>() {
@@ -217,6 +219,7 @@ public class LoomGradleExtension {
this.project = project;
this.unmappedMods = project.files();
this.forge = new LazyBool(() -> Boolean.parseBoolean(Objects.toString(project.findProperty(FORGE_PROPERTY))));
+ this.supportsInclude = new LazyBool(() -> Boolean.parseBoolean(Objects.toString(project.findProperty(INCLUDE_PROPERTY))));
this.runConfigs = project.container(RunConfigSettings.class,
baseName -> new RunConfigSettings(project, baseName));
this.launchConfigs = project.container(LaunchProviderSettings.class,
@@ -472,6 +475,10 @@ public class LoomGradleExtension {
return forge.getAsBoolean();
}
+ public boolean supportsInclude() {
+ return !isForge() || supportsInclude.getAsBoolean();
+ }
+
public boolean shouldGenerateSrgTiny() {
if (generateSrgTiny != null) {
return generateSrgTiny;
diff --git a/src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java b/src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java
index 078a777d..ad591f76 100644
--- a/src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java
+++ b/src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java
@@ -99,7 +99,7 @@ public final class CompileConfiguration {
extendsFrom(Constants.Configurations.MINECRAFT_DEPENDENCIES, Constants.Configurations.FORGE_DEPENDENCIES, project);
}
- if (!project.getExtensions().getByType(LoomGradleExtension.class).isForge()) {
+ if (project.getExtensions().getByType(LoomGradleExtension.class).supportsInclude()) {
Configuration includeConfig = project.getConfigurations().maybeCreate(Constants.Configurations.INCLUDE);
includeConfig.setTransitive(false); // Dont get transitive deps
}
diff --git a/src/main/java/net/fabricmc/loom/configuration/RemapConfiguration.java b/src/main/java/net/fabricmc/loom/configuration/RemapConfiguration.java
index e4044a68..7e1a1f3f 100644
--- a/src/main/java/net/fabricmc/loom/configuration/RemapConfiguration.java
+++ b/src/main/java/net/fabricmc/loom/configuration/RemapConfiguration.java
@@ -95,7 +95,7 @@ public class RemapConfiguration {
// TODO this might be wrong?
project.getTasks().withType(RemapJarTask.class).forEach(task -> {
- if (!extension.isForge() && task.getAddNestedDependencies().getOrElse(false)) {
+ if (extension.supportsInclude() && task.getAddNestedDependencies().getOrElse(false)) {
NestedDependencyProvider.getRequiredTasks(project).forEach(task::dependsOn);
}
});
diff --git a/src/main/java/net/fabricmc/loom/task/RemapJarTask.java b/src/main/java/net/fabricmc/loom/task/RemapJarTask.java
index 85fb8350..cf03e57c 100644
--- a/src/main/java/net/fabricmc/loom/task/RemapJarTask.java
+++ b/src/main/java/net/fabricmc/loom/task/RemapJarTask.java
@@ -330,7 +330,7 @@ public class RemapJarTask extends Jar {
}
private NestedJarProvider getNestedJarProvider() {
- if (getProject().getExtensions().getByType(LoomGradleExtension.class).isForge()) {
+ if (!getProject().getExtensions().getByType(LoomGradleExtension.class).supportsInclude()) {
return EmptyNestedJarProvider.INSTANCE;
}