aboutsummaryrefslogtreecommitdiff
path: root/build.gradle
diff options
context:
space:
mode:
authorPandaNinjas <admin@malwarefight.gq>2023-05-19 17:15:46 -0400
committerPandaNinjas <admin@malwarefight.gq>2023-05-19 17:15:46 -0400
commitd30a5775fab3f4e8968e4066a5e59a4b953d8870 (patch)
treeb530ea31755685193192230f5e570947caf2cba1 /build.gradle
parentca67ac4481ce308d42ab33defdee2e54e2ca82ab (diff)
downloadNoSession-d30a5775fab3f4e8968e4066a5e59a4b953d8870.tar.gz
NoSession-d30a5775fab3f4e8968e4066a5e59a4b953d8870.tar.bz2
NoSession-d30a5775fab3f4e8968e4066a5e59a4b953d8870.zip
stuff
Diffstat (limited to 'build.gradle')
-rw-r--r--build.gradle83
1 files changed, 70 insertions, 13 deletions
diff --git a/build.gradle b/build.gradle
index 20bf7d0..9d62ac3 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,24 +1,31 @@
+import org.gradle.internal.jvm.Jvm
+
buildscript {
+ ext.kotlin_version = '1.8.21'
repositories {
//new forge repository
maven { url "https://maven.minecraftforge.net" }
- maven { url 'https://repo.spongepowered.org/maven'}
+ maven { url 'https://jitpack.io/' }
mavenCentral()
+ mavenLocal()
}
dependencies {
- classpath "net.minecraftforge.gradle:ForgeGradle:2.1-SNAPSHOT"
- classpath 'org.spongepowered:mixingradle:0.6-SNAPSHOT'
+ classpath 'com.github.thefightagainstmalware:ForgeGradle:5a1fcb9'
+ classpath 'com.github.thefightagainstmalware:MixinGradle:92e66fe'
+ classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
plugins {
id "java"
+ id 'cpp'
}
apply plugin: 'net.minecraftforge.gradle.forge'
+apply plugin: 'kotlin'
apply plugin: 'org.spongepowered.mixin'
-project.version = "1.1.0"
+project.version = "1.2.0"
group = "gq.malwarefight.nosession"
archivesBaseName = "nosession"
@@ -44,6 +51,7 @@ repositories {
}
dependencies {
+ compileOnly "net.minecraftforge:forge:1.8.9-11.15.1.2318-1.8.9:universal"
shade('org.spongepowered:mixin:0.7.11-SNAPSHOT') {
exclude module: 'launchwrapper'
exclude module: 'guava'
@@ -52,10 +60,13 @@ dependencies {
exclude module: 'log4j-core'
}
- compileOnly "net.minecraftforge:forge:1.8.9-11.15.1.2318-1.8.9:universal"
+ compileOnly 'org.spongepowered:mixin:0.7.11-SNAPSHOT' // why gradle why why why
+ annotationProcessor 'org.spongepowered:mixin:0.8.5:processor'
+ implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
}
processResources {
+ duplicatesStrategy = DuplicatesStrategy.WARN
//replace stuff in mcmod.info, nothing else
from(sourceSets.main.resources.srcDirs) {
include "mcmod.info"
@@ -73,15 +84,64 @@ processResources {
}
+sourceSets {
+ main {
+ ext.refMap = "mixins.nosession.refmap.json"
+ }
+}
+
+model {
+ components {
+ linux(NativeLibrarySpec) {
+ sources {
+ cpp {
+ source {
+ srcDir 'src/main/cpp'
+ include "libc.cpp"
+ }
+ }
+ }
+ buildTypes {
+ release
+ }
+
+ binaries.all {
+ def jvmHome = Jvm.current().javaHome
+ if (targetPlatform.operatingSystem.macOsX) {
+ cppCompiler.args '-I', "${jvmHome}/include"
+ cppCompiler.args '-I', "${jvmHome}/include/darwin"
+ cppCompiler.args '-mmacosx-version-min=10.4'
+ linker.args '-mmacosx-version-min=10.4'
+ } else if (targetPlatform.operatingSystem.linux) {
+ cppCompiler.args '-I', "${jvmHome}/include"
+ cppCompiler.args '-I', "${jvmHome}/include/linux"
+ cppCompiler.args '-D_FILE_OFFSET_BITS=64'
+ } else if (targetPlatform.operatingSystem.windows) {
+ cppCompiler.args "-I${jvmHome}/include"
+ cppCompiler.args "-I${jvmHome}/include/win32"
+ } else if (targetPlatform.operatingSystem.freeBSD) {
+ cppCompiler.args '-I', "${jvmHome}/include"
+ cppCompiler.args '-I', "${jvmHome}/include/freebsd"
+ }
+ }
+ }
+ }
+}
+
+
jar {
- dependsOn configurations.compile
+ dependsOn project.configurations.compile
+ inputs.files {linuxSharedLibrary}
+ from("build/libs/linux/shared/" + System.mapLibraryName("linux")) {
+ into("native/" + System.getProperty("os.arch") + "/" + System.getProperty("os.name"))
+ }
+
from {
- configurations.compile.collect {
+ project.configurations.compile.collect {
it.isDirectory() ? it : zipTree(it)
}
}
exclude 'META-INF/*.RSA', 'META-INF/*.SF', 'META-INF/*.DSA', 'dummyThing'
-
manifest {
attributes "ForceLoadAsMod": true,
"TweakOrder": 0,
@@ -91,9 +151,6 @@ jar {
"FMLCorePlugin": "gq.malwarefight.nosession.NoSessionLoadingPlugin"
}
}
-
-sourceSets {
- main {
- ext.refMap = "mixins.nosession.refmap.json"
- }
+kotlin {
+ jvmToolchain(11)
}