baritone/common/build.gradle

136 lines
3.7 KiB
Groovy
Raw Normal View History

2022-04-03 04:36:18 +00:00
import baritone.gradle.task.CreateDistTask
import baritone.gradle.task.ProguardTask
architectury {
injectInjectables = false
2022-06-08 08:28:22 +00:00
common(System.getProperty("Baritone.enabled_platforms").split(","))
2022-04-03 04:36:18 +00:00
}
2022-04-16 09:57:29 +00:00
//loom {
// mixin {
// legacyRemapToNamespace = "official"
// }
//}
// ignore this jank, it's so I don't have to move the src folder, as that creates unnecessary git conflicts
2022-04-03 04:36:18 +00:00
sourceSets {
realmain {
2022-04-03 04:36:18 +00:00
java {
java {
srcDir "$rootDir/src/main/java"
2022-04-03 04:36:18 +00:00
}
resources {
srcDir "$rootDir/src/main/resources"
2022-04-03 04:36:18 +00:00
}
}
}
api {
compileClasspath += main.compileClasspath
runtimeClasspath += main.runtimeClasspath
2022-04-03 04:36:18 +00:00
java {
java {
srcDir "$rootDir/src/api/java"
2022-04-03 04:36:18 +00:00
}
resources {
srcDir "$rootDir/src/api/resources"
2022-04-03 04:36:18 +00:00
}
}
}
realmain {
compileClasspath += main.compileClasspath + api.output
runtimeClasspath += main.runtimeClasspath + api.output
}
2022-04-03 04:36:18 +00:00
test {
compileClasspath += realmain.compileClasspath + realmain.output
runtimeClasspath += realmain.runtimeClasspath + realmain.output
2022-04-03 04:36:18 +00:00
java {
java {
srcDir "$rootDir/src/test/java"
}
resources {
srcDir "$rootDir/src/test/resources"
}
}
}
main {
compileClasspath += realmain.output + api.output
runtimeClasspath += realmain.output + api.output
2022-04-03 04:36:18 +00:00
java {
java {
srcDir "$rootDir/src/launch/java"
}
resources {
srcDir "$rootDir/src/launch/resources"
}
}
}
schematica_api {
compileClasspath += realmain.compileClasspath
runtimeClasspath += realmain.runtimeClasspath
2022-04-03 04:36:18 +00:00
java {
java {
srcDir "$rootDir/src/schematica_api/java"
}
resources {
srcDir "$rootDir/src/schematica_api/resources"
}
}
}
realmain {
2022-04-03 04:36:18 +00:00
compileClasspath += schematica_api.output
runtimeClasspath += schematica_api.output
}
}
configurations {
transformProductionTweaker {
canBeConsumed = true
canBeResolved = false
// If you want this configuration to share the same dependencies, otherwise omit this line
extendsFrom implementation, runtimeOnly
2022-04-03 04:36:18 +00:00
}
}
dependencies {
// We depend on fabric loader here to use the fabric @Environment annotations and get the mixin dependencies
// Do NOT use other classes from fabric loader
modCompileOnly "net.fabricmc:fabric-loader:${project.fabric_version}"
compileOnly 'com.google.code.findbugs:jsr305:3.0.2'
2022-04-03 04:36:18 +00:00
testImplementation 'junit:junit:4.12'
}
javadoc {
options.addStringOption('Xwerror', '-quiet') // makes the build fail on travis when there is a javadoc error
options.linkSource true
options.encoding "UTF-8" // allow emoji in comments :^)
source = sourceSets.api.allJava
classpath += sourceSets.api.compileClasspath
}
jar {
classifier "dev"
from sourceSets.main.output, sourceSets.realmain.output, sourceSets.api.output
2022-04-03 04:36:18 +00:00
preserveFileTimestamps = false
reproducibleFileOrder = true
manifest {
attributes(
'MixinConfigs': 'mixins.baritone.json',
"MixinConnector": "baritone.launch.BaritoneMixinConnector",
'Implementation-Title': 'Baritone',
'Implementation-Version': version,
)
}
2022-06-08 08:28:22 +00:00
}
task removeDist(type: Delete) {
delete new File(rootProject.rootDir, "dist")
}
clean.finalizedBy(removeDist)