diff --git a/tweed5-minecraft/conventions/build.gradle.kts b/tweed5-minecraft/buildSrc/build.gradle.kts similarity index 100% rename from tweed5-minecraft/conventions/build.gradle.kts rename to tweed5-minecraft/buildSrc/build.gradle.kts diff --git a/tweed5-minecraft/conventions/settings.gradle.kts b/tweed5-minecraft/buildSrc/settings.gradle.kts similarity index 86% rename from tweed5-minecraft/conventions/settings.gradle.kts rename to tweed5-minecraft/buildSrc/settings.gradle.kts index 1694407..67ff685 100644 --- a/tweed5-minecraft/conventions/settings.gradle.kts +++ b/tweed5-minecraft/buildSrc/settings.gradle.kts @@ -25,11 +25,6 @@ dependencyResolutionManagement { } } } - versionCatalogs { - create("libs") { - from(files("../../gradle/libs.versions.toml")) - } - } } includeBuild("../../conventions") diff --git a/tweed5-minecraft/conventions/src/main/kotlin/de.siphalor.tweed5.minecraft.mod.cross-version.gradle.kts b/tweed5-minecraft/buildSrc/src/main/kotlin/de.siphalor.tweed5.minecraft.mod.cross-version.gradle.kts similarity index 100% rename from tweed5-minecraft/conventions/src/main/kotlin/de.siphalor.tweed5.minecraft.mod.cross-version.gradle.kts rename to tweed5-minecraft/buildSrc/src/main/kotlin/de.siphalor.tweed5.minecraft.mod.cross-version.gradle.kts diff --git a/tweed5-minecraft/buildSrc/src/main/kotlin/de/siphalor/tweed5/minecraft/bundled/sources/BundledSourcesJar.kt b/tweed5-minecraft/buildSrc/src/main/kotlin/de/siphalor/tweed5/minecraft/bundled/sources/BundledSourcesJar.kt new file mode 100644 index 0000000..6fa83e9 --- /dev/null +++ b/tweed5-minecraft/buildSrc/src/main/kotlin/de/siphalor/tweed5/minecraft/bundled/sources/BundledSourcesJar.kt @@ -0,0 +1,21 @@ +package de.siphalor.tweed5.minecraft.bundled.sources + +import org.gradle.api.file.ArchiveOperations +import org.gradle.api.file.ConfigurableFileCollection +import org.gradle.api.tasks.InputFiles +import org.gradle.api.tasks.TaskAction +import org.gradle.api.tasks.bundling.Jar +import javax.inject.Inject + +abstract class BundledSourcesJar: Jar() { + @get:InputFiles + abstract val sources: ConfigurableFileCollection + + @get:Inject + abstract val archiveOperations: ArchiveOperations + + @TaskAction + override fun copy() { + from(sources.filter { it.name.startsWith("tweed5") }.map { archiveOperations.zipTree(it) }) + } +} diff --git a/tweed5-minecraft/bundle/build.gradle.kts b/tweed5-minecraft/bundle/build.gradle.kts index 4f5cb3b..110498f 100644 --- a/tweed5-minecraft/bundle/build.gradle.kts +++ b/tweed5-minecraft/bundle/build.gradle.kts @@ -1,3 +1,5 @@ +import de.siphalor.tweed5.minecraft.bundled.sources.BundledSourcesJar + plugins { id("de.siphalor.tweed5.minecraft.mod.dummy") } @@ -25,12 +27,7 @@ tasks.shadowJar { relocate("org.objectweb.asm", "de.siphalor.tweed5.shadowed.org.objectweb.asm") } -tasks.register("sourcesJar") { - inputs.files(bundledSourcesConfiguration) - from( - bundledSourcesConfiguration.get().resolve() - .filter { it.name.startsWith(rootProject.name) } - .map { zipTree(it) } - ) +tasks.register("sourcesJar") { + sources.from(bundledSourcesConfiguration) archiveClassifier.set("sources") } diff --git a/tweed5-minecraft/settings.gradle.kts b/tweed5-minecraft/settings.gradle.kts index 6ecca74..18e4c5f 100644 --- a/tweed5-minecraft/settings.gradle.kts +++ b/tweed5-minecraft/settings.gradle.kts @@ -2,7 +2,6 @@ rootProject.name = "tweed5-minecraft" pluginManagement { includeBuild("../conventions") - includeBuild("conventions") repositories { gradlePluginPortal()