From 27a01d4da30840079a85d615368bf91b16e55477 Mon Sep 17 00:00:00 2001 From: coolGi Date: Sun, 29 Jan 2023 14:49:29 +1030 Subject: [PATCH] Added most of the core dependencies, fixed fabric runClient and disabled Forge for now --- build.gradle | 39 ++++++++++++++++++++++------- fabric/build.gradle | 4 +-- gradle.properties | 4 +++ settings.gradle | 2 +- versionProperties/1.18.2.properties | 2 +- 5 files changed, 38 insertions(+), 13 deletions(-) diff --git a/build.gradle b/build.gradle index aff4c4277..95e563a38 100644 --- a/build.gradle +++ b/build.gradle @@ -174,6 +174,13 @@ subprojects { p -> // Manifold annotationProcessor("systems.manifold:manifold-preprocessor:${rootProject.manifold_version}") + // Log4j + implementation("org.apache.logging.log4j:log4j-api:${rootProject.log4j_version}") + implementation("org.apache.logging.log4j:log4j-core:${rootProject.log4j_version}") + + // JOML + implementation("org.joml:joml:${rootProject.joml_version}") + // JUnit tests implementation("org.junit.jupiter:junit-jupiter:5.8.2") implementation("org.junit.jupiter:junit-jupiter-engine:5.8.2") @@ -268,13 +275,17 @@ allprojects { p -> def isMinecraftSubProject = p != project(":core") && p != project(":api") repositories { + // The central repo mavenCentral() + // Used for Google's Collect library // TODO: Attempt to remove this library + maven { url "https://repo.enonic.com/public/" } + // For parchment mappings maven { url "https://maven.parchmentmc.org" } // For Architectury API -// maven { url "https://maven.architectury.dev" } + maven { url "https://maven.architectury.dev" } // For Git repositories maven { url "https://jitpack.io" } @@ -323,14 +334,16 @@ allprojects { p -> } } - - // Only uncomment this when testing stuff with lwjgl in the core jar - /* + // Adds some dependencies that are in vanilla but not in core if (p == project(":core")) { - dependencies { - project.ext.lwjglNatives = "natives-linux" + OperatingSystem os = org.gradle.nativeplatform.platform.internal.DefaultNativePlatform.currentOperatingSystem; - implementation platform("org.lwjgl:lwjgl-bom:3.3.0") + // Set the OS lwjgl is using to the current os + project.ext.lwjglNatives = "natives-" + os.toFamilyName() + + dependencies { + // Imports most of lwjgl's libraries (well, only the ones that we need) + implementation platform("org.lwjgl:lwjgl-bom:${rootProject.lwjgl_version}") implementation "org.lwjgl:lwjgl" implementation "org.lwjgl:lwjgl-assimp" @@ -346,10 +359,18 @@ allprojects { p -> runtimeOnly "org.lwjgl:lwjgl-opengl::$lwjglNatives" runtimeOnly "org.lwjgl:lwjgl-stb::$lwjglNatives" runtimeOnly "org.lwjgl:lwjgl-tinyfd::$lwjglNatives" - implementation "org.joml:joml:1.10.2" + implementation "org.joml:joml:${rootProject.joml_version}" + + + // Some other dependencies + // TODO: Attempt to remove some of these dependencies from the core + implementation("org.jetbrains:annotations:16.0.2") + implementation("com.google.code.findbugs:jsr305:3.0.2") + implementation("com.google.common:google-collect:0.5") + implementation("com.google.guava:guava:11.0.2") + implementation("it.unimi.dsi:fastutil:8.5.11") } } - */ // Fix forge version numbering system as it is weird def compatible_forgemc_versions = "${compatible_minecraft_versions}".replaceAll("\"", "").replaceAll("]", ",)") diff --git a/fabric/build.gradle b/fabric/build.gradle index 634449d32..511905610 100644 --- a/fabric/build.gradle +++ b/fabric/build.gradle @@ -109,8 +109,8 @@ dependencies { */ - common(project(path: ":common", configuration: "namedElements")) { transitive false } - shadowCommon(project(path: ":common", configuration: "transformProductionFabric")) { transitive false } + common(project(path: ":common")) { transitive false } + shadowCommon(project(path: ":common")) { transitive false } } shadowJar { diff --git a/gradle.properties b/gradle.properties index ce910082f..4a51cd98a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -19,6 +19,10 @@ nightconfig_version=3.6.6 flatlaf_version=2.3 svgSalamander_version=1.1.3 +log4j_version=2.19.0 +lwjgl_version=3.3.0 +joml_version=1.10.2 + # Internal Properties (These are set at runtime for Forgix to merge jar's) versionStr= diff --git a/settings.gradle b/settings.gradle index f577f9eaf..f8e386e7f 100644 --- a/settings.gradle +++ b/settings.gradle @@ -31,7 +31,7 @@ project(":api").projectDir = file('coreSubProjects/api') include("common") include("fabric") //include("quilt") // Just put this here for once we need it -include("forge") +//include("forge") // FIXME: Fix forge, its just annoying rootProject.name = "DistantHorizons" diff --git a/versionProperties/1.18.2.properties b/versionProperties/1.18.2.properties index 3f04b457d..1451fb35c 100644 --- a/versionProperties/1.18.2.properties +++ b/versionProperties/1.18.2.properties @@ -9,9 +9,9 @@ builds_for=["fabric", "forge"] # Fabric loader fabric_loader_version=0.13.3 fabric_api_version=0.48.0+1.18.2 -architectury_version=4.4.59 # Fabric mod versions modmenu_version=3.1.0 + #architectury_version=4.4.59 starlight_version_fabric=3667443 phosphor_version_fabric=3573395 lithium_version=mc1.18.2-0.7.9