Paper/patches/server/0003-Build-system-changes.patch
2021-06-18 00:25:16 -05:00

98 lines
4.7 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Mon, 29 Feb 2016 20:40:33 -0600
Subject: [PATCH] Build system changes
diff --git a/build.gradle.kts b/build.gradle.kts
index 596b4f52bc57eca8cc7a0138a1e36d71c1d73ca6..74bde15e021f306a2f1247678f92becbdce313b8 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -20,21 +20,23 @@ repositories {
dependencies {
implementation(project(":Paper-API"))
implementation("jline:jline:2.12.1")
- implementation("org.apache.logging.log4j:log4j-iostreams:2.14.1") {
- exclude(group = "org.apache.logging.log4j", module = "log4j-api")
- }
+ implementation("org.apache.logging.log4j:log4j-iostreams:2.14.1") // Paper
+ implementation("org.apache.logging.log4j:log4j-api:2.14.1") // Paper
implementation("org.ow2.asm:asm:9.1")
implementation("com.googlecode.json-simple:json-simple:1.1.1") {
// This includes junit transitively for whatever reason
isTransitive = false
}
runtimeOnly("org.xerial:sqlite-jdbc:3.34.0")
- runtimeOnly("mysql:mysql-connector-java:5.1.49")
+ runtimeOnly("mysql:mysql-connector-java:8.0.23") // Paper
runtimeOnly("org.apache.maven:maven-resolver-provider:3.8.1")
runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.7.0")
runtimeOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.7.0")
+ implementation("co.aikar:cleaner:1.0-SNAPSHOT") // Paper
+ implementation("io.netty:netty-all:4.1.65.Final") // Paper
+
testImplementation("junit:junit:4.13.1")
testImplementation("org.hamcrest:hamcrest-library:1.3")
}
@@ -53,6 +55,7 @@ tasks.jar {
"Specification-Title" to "Bukkit",
"Specification-Version" to project.version,
"Specification-Vendor" to "Bukkit Team",
+ "Multi-Release" to "true", // Paper
)
for (tld in setOf("net", "com", "org")) {
attributes("$tld/bukkit", "Sealed" to true)
@@ -70,15 +73,23 @@ publishing {
}
}
+val generatePom = tasks.named<GenerateMavenPom>("generatePomFileForMavenPublication")
+
tasks.shadowJar {
archiveClassifier.set("mojang-mapped")
+ // Needed for Paperclip's install to maven local feature
+ from(generatePom) {
+ into("META-INF/maven/io.papermc.paper/paper")
+ rename { "pom.xml" }
+ }
+
val packageVersion = "1_17_R1"
relocate("org.bukkit.craftbukkit", "org.bukkit.craftbukkit.v$packageVersion") {
exclude("org.bukkit.craftbukkit.Main*")
}
listOf(
- "jline", "it.unimi", "org.apache.commons.codec", "org.apache.commons.io",
+ "jline", "org.apache.commons.codec", "org.apache.commons.io", // Paper - don't relocate fastutil
"org.apache.commons.lang3", "org.apache.http", "org.apache.maven", "org.codehaus.plexus",
"org.eclipse.aether", "org.eclipse.sisu", "org.objectweb.asm"
).forEach { pack ->
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index b06a4c8f5e1dfcbda171910279d6861dc3d4d2e7..358475974cf7dfced302bdd7d2390bd95848c737 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -190,7 +190,7 @@ public class Main {
}
if (Main.class.getPackage().getImplementationVendor() != null && System.getProperty("IReallyKnowWhatIAmDoingISwear") == null) {
- Date buildDate = new Date(Integer.parseInt(Main.class.getPackage().getImplementationVendor()) * 1000L);
+ Date buildDate = new java.text.SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'").parse(Main.class.getPackage().getImplementationVendor()); // Paper
Calendar deadline = Calendar.getInstance();
deadline.add(Calendar.DAY_OF_YEAR, -7);
diff --git a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java
index 93046379d0cefd5d3236fc59e698809acdc18f80..774556a62eb240da42e84db4502e2ed43495be17 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java
@@ -11,7 +11,7 @@ public final class Versioning {
public static String getBukkitVersion() {
String result = "Unknown-Version";
- InputStream stream = Bukkit.class.getClassLoader().getResourceAsStream("META-INF/maven/org.spigotmc/spigot-api/pom.properties");
+ InputStream stream = Bukkit.class.getClassLoader().getResourceAsStream("META-INF/maven/io.papermc.paper/paper-api/pom.properties");
Properties properties = new Properties();
if (stream != null) {