From 74f0ba4bd31cd20aea234d6fb9655669648012b7 Mon Sep 17 00:00:00 2001 From: Ben Kerllenevich Date: Sat, 12 Jun 2021 19:42:41 -0400 Subject: [PATCH] submodule support --- .gitmodules | 4 ++++ Paper | 1 + build.gradle.kts | 47 +++++++++++++++++++++++++++++++-------------- gradle.properties | 1 - settings.gradle.kts | 1 - 5 files changed, 38 insertions(+), 16 deletions(-) create mode 100644 .gitmodules create mode 160000 Paper diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 000000000..8d68aa28c --- /dev/null +++ b/.gitmodules @@ -0,0 +1,4 @@ +[submodule "Paper"] + path = Paper + url = https://github.com/PaperMC/Paper + branch = dev/1.17 diff --git a/Paper b/Paper new file mode 160000 index 000000000..0c2d1544a --- /dev/null +++ b/Paper @@ -0,0 +1 @@ +Subproject commit 0c2d1544ac97a6c9a6060ee6bc1599aa673a28a1 diff --git a/build.gradle.kts b/build.gradle.kts index edc4abc39..af09fbc63 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,13 +1,15 @@ +import io.papermc.paperweight.util.Git + plugins { java id("com.github.johnrengelman.shadow") version "7.0.0" apply false - id("io.papermc.paperweight.patcher") version "1.0.0-LOCAL-SNAPSHOT" + id("io.papermc.paperweight.patcher") version "1.0.0-SNAPSHOT" } group = "net.pl3x.purpur" version = providers.gradleProperty("projectVersion").forUseAtConfigurationTime().get() -allprojects { +subprojects { apply(plugin = "java") java { @@ -15,9 +17,7 @@ allprojects { languageVersion.set(JavaLanguageVersion.of(16)) } } -} -subprojects { tasks.withType().configureEach { options.encoding = "UTF-8" options.release.set(16) @@ -25,7 +25,6 @@ subprojects { repositories { mavenCentral() - maven("https://repo1.maven.org/maven2/") maven("https://oss.sonatype.org/content/groups/public/") maven("https://papermc.io/repo/repository/maven-public/") maven("https://ci.emc.gs/nexus/content/groups/aikar/") @@ -33,9 +32,7 @@ subprojects { maven("https://repo.md-5.net/content/repositories/releases/") maven("https://hub.spigotmc.org/nexus/content/groups/public/") maven("https://nexus.velocitypowered.com/repository/velocity-artifacts-snapshots/") - maven("https://oss.sonatype.org/content/repositories/snapshots/") { - name = "sonatype-oss-snapshots" - } + maven("https://oss.sonatype.org/content/repositories/snapshots/") } } @@ -43,16 +40,38 @@ dependencies { implementation(gradleApi()) } +val paperDir = layout.projectDirectory.dir("Paper") +val initSubmodules by tasks.registering { + outputs.upToDateWhen { false } + doLast { + paperDir.asFile.mkdirs() + Git(paperDir)("submodule", "update", "--init", "--recursive").executeOut() + } +} + paperweight { serverProject.set(project(":Purpur-Server")) - usePaperUpstream(providers.gradleProperty("paperRef")) { - withPaperPatcher { - apiPatchDir.set(file("patches/api")) - apiOutputDir.set(file("Purpur-API")) + upstreams { + register("paper") { + upstreamDataTask { + dependsOn(initSubmodules) + projectDir.set(paperDir) + workDir.set(layout.projectDirectory) + } - serverPatchDir.set(file("patches/server")) - serverOutputDir.set(file("Purpur-Server")) + patchTasks { + register("api") { + sourceDir.set(paperDir.dir("Paper-API")) + patchDir.set(layout.projectDirectory.dir("patches/api")) + outputDir.set(layout.projectDirectory.dir("Purpur-API")) + } + register("server") { + sourceDir.set(paperDir.dir("Paper-Server")) + patchDir.set(layout.projectDirectory.dir("patches/server")) + outputDir.set(layout.projectDirectory.dir("Purpur-Server")) + } + } } } } diff --git a/gradle.properties b/gradle.properties index 433f2ba27..ccc088fb2 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,6 +1,5 @@ projectVersion=1.17-R0.1-SNAPSHOT packageVersion=1_17_R1 -paperRef=dev/1.17 org.gradle.daemon=true org.gradle.jvmargs=-Xmx3G diff --git a/settings.gradle.kts b/settings.gradle.kts index d6ae39792..551ef89c2 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -2,7 +2,6 @@ pluginManagement { repositories { gradlePluginPortal() maven("https://wav.jfrog.io/artifactory/repo/") - mavenLocal() } }