97 lines
3.5 KiB
Groovy
97 lines
3.5 KiB
Groovy
version = '0.42.1'
|
|
base.archivesName = 'saltatory'
|
|
|
|
repositories {
|
|
ivy {
|
|
url = 'https://github.com/Pocky-l/dhturbo/releases/download'
|
|
patternLayout { artifact 'v[revision]/[artifact]-[revision].[ext]' }
|
|
metadataSources { artifact() }
|
|
content { includeModule 'com.pockyl', 'dhturbo-neoforge-1.21.1' }
|
|
}
|
|
ivy {
|
|
url = 'https://github.com/tlaplus/tlaplus/releases/download'
|
|
patternLayout { artifact '[revision]/[artifact].[ext]' }
|
|
metadataSources { artifact() }
|
|
content { includeModule 'org.lamport', 'tla2tools' }
|
|
}
|
|
maven {
|
|
url = 'https://maven.blamejared.com/'
|
|
content { includeGroup 'com.hrznstudio' }
|
|
}
|
|
maven {
|
|
url = 'https://modmaven.dev/'
|
|
content { includeGroup 'mekanism' }
|
|
}
|
|
maven {
|
|
url = 'https://www.cursemaven.com'
|
|
content { includeGroup 'curse.maven' }
|
|
}
|
|
maven {
|
|
url = 'https://api.modrinth.com/maven'
|
|
content { includeGroup 'maven.modrinth' }
|
|
}
|
|
}
|
|
|
|
sourceSets {
|
|
probe {
|
|
compileClasspath += sourceSets.main.output + configurations.compileClasspath
|
|
}
|
|
}
|
|
|
|
configurations { c2me }
|
|
|
|
def dfcJar = providers.provider {
|
|
zipTree(configurations.c2me.singleFile).matching {
|
|
include 'META-INF/jars/*-opts-dfc-*.jar'
|
|
}.files
|
|
}
|
|
|
|
dependencies {
|
|
c2me('curse.maven:c2me-533097:9344813') { transitive = false }
|
|
compileOnly files(dfcJar)
|
|
testImplementation files(dfcJar)
|
|
compileOnly('mekanism:Mekanism:1.21.1-10.7.19.85') { transitive = false }
|
|
compileOnly('curse.maven:functional-storage-556861:8459097') { transitive = false }
|
|
compileOnly('maven.modrinth:refined-storage:lHHiI26k') { transitive = false }
|
|
compileOnly('maven.modrinth:distanthorizons:9w34y8ai') { transitive = false }
|
|
compileOnly('maven.modrinth:chunky:LuFhm4eU') { transitive = false }
|
|
compileOnly('com.pockyl:dhturbo-neoforge-1.21.1:1.5.0') { transitive = false }
|
|
compileOnly 'org.jetbrains:annotations:24.1.0'
|
|
compileOnly 'org.apiguardian:apiguardian-api:1.1.2'
|
|
compileOnly 'io.github.llamalad7:mixinextras-neoforge:0.5.3'
|
|
probeCompileOnly('com.hrznstudio:titanium:1.21-4.0.43') { transitive = false }
|
|
testImplementation 'it.unimi.dsi:fastutil:8.5.12'
|
|
testImplementation('org.lamport:tla2tools:v1.7.4') { transitive = false }
|
|
}
|
|
|
|
tasks.named('quality') { dependsOn 'checkstyleProbe' }
|
|
tasks.named('checkstyleProbe') {
|
|
dependsOn 'compileProbeJava'
|
|
classpath = sourceSets.probe.compileClasspath
|
|
}
|
|
tasks.named('test') { inputs.dir('src/test/tla') }
|
|
|
|
tasks.named('processProbeResources') {
|
|
inputs.property 'version', provider { project.version.toString() }
|
|
filesMatching('META-INF/neoforge.mods.toml') { expand version: project.version.toString() }
|
|
dependsOn 'test'
|
|
['Slots', 'SlotOverflow', 'Traits'].each { name ->
|
|
from(layout.buildDirectory.dir("reports/models/${name}")) {
|
|
include 'cases.jsonl', 'stats.json'
|
|
eachFile { entry -> entry.path = "cases/${name}." + (entry.name == 'cases.jsonl' ? 'jsonl' : 'json') }
|
|
}
|
|
}
|
|
from({ zipTree(configurations.compileClasspath.resolvedConfiguration.resolvedArtifacts.find {
|
|
it.moduleVersion.id.group == 'mekanism' && it.name == 'Mekanism'
|
|
}.file) }) {
|
|
include 'mekanism/common/content/transporter/TransporterManager*.class'
|
|
into 'baseline'
|
|
}
|
|
}
|
|
|
|
tasks.register('probeJar', Jar) {
|
|
dependsOn 'quality', 'probeClasses'
|
|
archiveBaseName = 'saltatory-checks'
|
|
destinationDirectory = layout.buildDirectory.dir('probe')
|
|
from sourceSets.probe.output
|
|
}
|