Skip to content

Commit 6a16f5c

Browse files
committed
Add setupMCPSrg for non-renamed jar and downloadMapping tasks
Kind of scuffed, but uses caches to prevent duplicate work.
1 parent 7767786 commit 6a16f5c

File tree

3 files changed

+29
-9
lines changed

3 files changed

+29
-9
lines changed

settings.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ gradle.beforeProject { Project project ->
2020

2121
//@formatter:off
2222
dependencyResolutionManagement.versionCatalogs.register('libs') {
23-
version 'gradleutils', '3.3.26'
23+
version 'gradleutils', '3.3.32'
2424

2525
plugin 'licenser', 'net.minecraftforge.licenser' version '1.2.0'
2626
plugin 'gradleutils', 'net.minecraftforge.gradleutils' versionRef 'gradleutils'

src/main/groovy/net/minecraftforge/forgedev/ForgeDevExtension.java

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import net.minecraftforge.forgedev.tasks.compat.LegacyMergeFilesTask;
99
import net.minecraftforge.forgedev.tasks.filtering.LegacyFilterNewJar;
1010
import net.minecraftforge.forgedev.tasks.generation.GeneratePatcherConfigV2;
11+
import net.minecraftforge.forgedev.tasks.installertools.DownloadMappings;
1112
import net.minecraftforge.forgedev.tasks.launcher.SlimeLauncherExec;
1213
import net.minecraftforge.forgedev.tasks.mappings.LegacyApplyMappings;
1314
import net.minecraftforge.forgedev.tasks.mappings.LegacyGenerateSRG;
@@ -111,6 +112,10 @@ private void setup(ForgeDevPlugin plugin, Project project) {
111112
// needs to exist because it's currently referenced in the buildscript
112113
// TODO STOP DOING THAT SHIT
113114
var setupMCP = tasks.register("setupMCP", MavenizerMCPSetup.class);
115+
var setupMCPSrg = tasks.register("setupMCPSrg", MavenizerMCPSetup.class, task -> task.getRename().set(false));
116+
117+
var downloadClientMappings = tasks.register("downloadClientMappings", DownloadMappings.class, task -> task.getSide().set("client"));
118+
var downloadServerMappings = tasks.register("downloadServerMappings", DownloadMappings.class, task -> task.getSide().set("server"));
114119

115120
var syncMavenizer = tasks.register("syncMavenizer", MavenizerMCPMaven.class);
116121
var syncMavenizerForExtra = tasks.register("syncMavenizerForExtra", MavenizerMCPMaven.class);
@@ -296,6 +301,9 @@ private void setup(ForgeDevPlugin plugin, Project project) {
296301
});
297302

298303
project.afterEvaluate(p -> {
304+
downloadClientMappings.configure(task -> task.getVersion().set(legacyPatcher.getMappingVersion()));
305+
downloadServerMappings.configure(task -> task.getVersion().set(legacyPatcher.getMappingVersion()));
306+
299307
// TODO Add mappings as a dependency to FG7???
300308
// Add mappings so that it can be used by reflection tools.
301309
// net.minecraft:mappings_CHANNEL:VERSION@zip
@@ -341,6 +349,10 @@ private void setup(ForgeDevPlugin plugin, Project project) {
341349
task.getPipeline().set(legacyMcp.getPipeline());
342350
task.getArtifact().set(legacyMcp.getConfig());
343351
});
352+
setupMCPSrg.configure(task -> {
353+
task.getPipeline().set(legacyMcp.getPipeline());
354+
task.getArtifact().set(legacyMcp.getConfig());
355+
});
344356
legacyPatcher.getCleanSrc().set(setupMCP.flatMap(MavenizerMCPSetup::getOutput));
345357
applyPatches.configure(task -> task.getInput().convention(legacyPatcher.getCleanSrc()));
346358
genPatches.configure(task -> task.getInput().convention(legacyPatcher.getCleanSrc()));
@@ -370,6 +382,10 @@ private void setup(ForgeDevPlugin plugin, Project project) {
370382
task.dependsOn(mergeATs);
371383
task.getAccessTransformerConfig().set(mergeATs.flatMap(LegacyMergeFilesTask::getOutput));
372384
});
385+
setupMCPSrg.configure(task -> {
386+
task.dependsOn(mergeATs);
387+
task.getAccessTransformerConfig().set(mergeATs.flatMap(LegacyMergeFilesTask::getOutput));
388+
});
373389
for (var f : legacyPatcher.getAccessTransformers()) {
374390
userdevJar.configure(t -> t.from(f, e -> e.into("ats/")));
375391
userdevConfig.configure(t -> t.getATs().from(f));
@@ -381,6 +397,10 @@ private void setup(ForgeDevPlugin plugin, Project project) {
381397
// TODO do this better
382398
task.getSideAnnotationStripperConfig().fileProvider(getProviders().provider(() -> legacyPatcher.getSideAnnotationStrippers().getSingleFile()));
383399
});
400+
setupMCPSrg.configure(task -> {
401+
// TODO do this better
402+
task.getSideAnnotationStripperConfig().fileProvider(getProviders().provider(() -> legacyPatcher.getSideAnnotationStrippers().getSingleFile()));
403+
});
384404

385405
userdevConfig.configure(task -> task.getSASs().from(legacyPatcher.getSideAnnotationStrippers()));
386406
for (var sas : legacyPatcher.getSideAnnotationStrippers()) {

src/main/groovy/net/minecraftforge/forgedev/tasks/mcp/MavenizerMCPSetup.groovy

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,10 @@ import javax.inject.Inject
2424
abstract class MavenizerMCPSetup extends MavenizerMCPTask {
2525
abstract @InputFile @Optional RegularFileProperty getAccessTransformerConfig()
2626
abstract @InputFile @Optional RegularFileProperty getSideAnnotationStripperConfig()
27+
abstract @Input Property<Boolean> getRename();
2728
abstract @Input @Optional Property<String> getParchment()
2829

29-
protected abstract @OutputFile RegularFileProperty getSetupFiles();
30+
protected abstract @OutputFile RegularFileProperty getSetupFiles()
3031

3132
abstract @OutputFile RegularFileProperty getVersionManifest()
3233
abstract @OutputFile RegularFileProperty getVersionJson()
@@ -39,6 +40,8 @@ abstract class MavenizerMCPSetup extends MavenizerMCPTask {
3940

4041
@Inject
4142
MavenizerMCPSetup() {
43+
rename.convention(true)
44+
4245
setupFiles.convention(this.defaultOutputDirectory.map { it.file('setup_files.json') })
4346

4447
versionManifest.convention(this.defaultOutputDirectory.map { it.file('manifest.json') })
@@ -55,14 +58,11 @@ abstract class MavenizerMCPSetup extends MavenizerMCPTask {
5558
protected void addArguments() {
5659
super.addArguments()
5760

58-
this.args('--mappings')
61+
this.args('--mappings', this.rename)
5962

60-
if (this.accessTransformerConfig.present)
61-
this.args('--at', this.accessTransformerConfig)
62-
if (this.sideAnnotationStripperConfig.present)
63-
this.args('--sas', this.sideAnnotationStripperConfig)
64-
if (this.parchment.present)
65-
this.args('--parchment', this.parchment)
63+
this.args('--at', this.accessTransformerConfig)
64+
this.args('--sas', this.sideAnnotationStripperConfig)
65+
this.args('--parchment', this.parchment)
6666

6767
this.args('--output-files', this.setupFiles)
6868
}

0 commit comments

Comments
 (0)