2016-08-16 22:29:10 +00:00
|
|
|
plugins {
|
2018-11-03 13:01:34 +00:00
|
|
|
id 'java'
|
|
|
|
id 'maven-publish'
|
|
|
|
id 'java-gradle-plugin'
|
|
|
|
id 'idea'
|
|
|
|
id 'eclipse'
|
2019-06-11 02:26:04 +00:00
|
|
|
id 'groovy'
|
2019-11-02 20:23:27 +00:00
|
|
|
id 'checkstyle'
|
2016-08-15 10:22:14 +00:00
|
|
|
}
|
|
|
|
|
2016-08-16 22:29:10 +00:00
|
|
|
sourceCompatibility = 1.8
|
|
|
|
targetCompatibility = 1.8
|
|
|
|
|
2018-10-22 18:25:18 +00:00
|
|
|
group = 'net.fabricmc'
|
2018-05-11 20:57:42 +00:00
|
|
|
archivesBaseName = project.name
|
2019-11-28 18:02:51 +00:00
|
|
|
version = '0.2.7-SNAPSHOT'
|
2018-11-03 18:03:43 +00:00
|
|
|
|
|
|
|
def build = "local"
|
|
|
|
def ENV = System.getenv()
|
|
|
|
if (ENV.BUILD_NUMBER) {
|
|
|
|
build = "jenkins #${ENV.BUILD_NUMBER}"
|
|
|
|
}
|
|
|
|
|
2016-08-15 10:22:14 +00:00
|
|
|
repositories {
|
2016-08-21 15:11:03 +00:00
|
|
|
maven {
|
2018-12-09 07:21:32 +00:00
|
|
|
name = "Fabric"
|
|
|
|
url = 'https://maven.fabricmc.net/'
|
2016-08-21 15:11:03 +00:00
|
|
|
}
|
2020-04-11 18:28:48 +00:00
|
|
|
mavenCentral()
|
2016-08-15 10:22:14 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
dependencies {
|
2018-11-03 13:01:34 +00:00
|
|
|
implementation gradleApi()
|
2018-10-22 18:53:07 +00:00
|
|
|
|
2019-05-10 22:53:50 +00:00
|
|
|
// libraries
|
2018-11-04 00:27:55 +00:00
|
|
|
implementation ('commons-io:commons-io:2.6')
|
|
|
|
implementation ('org.zeroturnaround:zt-zip:1.13')
|
|
|
|
implementation ('com.google.code.gson:gson:2.8.5')
|
2019-06-20 13:25:40 +00:00
|
|
|
implementation ('com.google.guava:guava:28.0-jre')
|
2019-05-10 22:53:50 +00:00
|
|
|
|
|
|
|
// game handling utils
|
2020-02-14 18:50:50 +00:00
|
|
|
implementation ('net.fabricmc:stitch:0.4.3.71') {
|
2019-02-12 19:32:42 +00:00
|
|
|
exclude module: 'enigma'
|
|
|
|
}
|
2019-05-10 22:53:50 +00:00
|
|
|
|
|
|
|
// tinyfile management
|
2019-11-13 12:32:44 +00:00
|
|
|
implementation ('net.fabricmc:tiny-remapper:0.2.0.57') {
|
2018-11-03 13:01:34 +00:00
|
|
|
transitive = false
|
|
|
|
}
|
2018-12-18 22:36:22 +00:00
|
|
|
|
0.2.7 refactors (#178)
* Rough work on project based jars, skeleton for AccessEscalators?
* First working draft
* Minor changes
* Add support for mutable, better error checking when parsing file.
Code cleanup
Remap if needed when reading
* Fix inner classes and genSources
* Fix CME
* Caching, only regen jar when input changes
* Some work, untested
* Fix writing, fix checkstyle issues
* More fixes
* Move jars into a maven file structure, cleans up the file structure, and will benefit idea 2020
Add some basic validation to the AccessWidenerRemapper, will present any issues with the mappings when building (May need a way to disable?)
+ Some bugs fixes
* Fix issues with source jars in idea 2020, should be backwards compatible with 2019
* Move to lorenz-tiny
* Build fix + small cleanup
* Remove accesswidener's for now
* Update dev launch injector, should fix all issues with spaces in the path.
2020-03-06 11:15:34 +00:00
|
|
|
implementation ('net.fabricmc:lorenz-tiny:1.0.0+build.1') {
|
|
|
|
transitive = false
|
|
|
|
}
|
|
|
|
|
2019-05-10 22:53:50 +00:00
|
|
|
// decompilers
|
2020-04-11 18:28:48 +00:00
|
|
|
implementation ('net.fabricmc:procyon-fabric-compilertools:0.5.35.13')
|
2019-12-02 13:32:10 +00:00
|
|
|
implementation ('org.jetbrains:intellij-fernflower:1.1.0.11')
|
2019-05-10 22:53:50 +00:00
|
|
|
|
|
|
|
// source code remapping
|
2018-12-22 16:08:34 +00:00
|
|
|
implementation ('org.cadixdev:mercury:0.1.0.fabric-SNAPSHOT')
|
2018-12-18 22:36:22 +00:00
|
|
|
|
2019-06-11 02:26:04 +00:00
|
|
|
// Testing
|
|
|
|
testImplementation(gradleTestKit())
|
2019-07-24 20:34:27 +00:00
|
|
|
testImplementation("org.spockframework:spock-core:1.3-groovy-2.4")
|
2016-08-15 10:22:14 +00:00
|
|
|
}
|
|
|
|
|
2019-11-02 20:23:27 +00:00
|
|
|
configurations.all {
|
|
|
|
resolutionStrategy {
|
|
|
|
force 'org.codehaus.groovy:groovy-all:2.4.12'
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2016-08-15 10:22:14 +00:00
|
|
|
jar {
|
2018-11-03 18:03:43 +00:00
|
|
|
manifest {
|
2018-11-05 10:57:29 +00:00
|
|
|
attributes 'Implementation-Version': version + " Build(" + build + ")"
|
2018-11-03 18:03:43 +00:00
|
|
|
}
|
2016-08-15 10:22:14 +00:00
|
|
|
}
|
|
|
|
|
2018-11-04 00:27:55 +00:00
|
|
|
task sourcesJar(type: Jar, dependsOn: classes) {
|
2019-07-24 20:34:27 +00:00
|
|
|
classifier = 'sources'
|
2018-11-04 00:27:55 +00:00
|
|
|
from sourceSets.main.allSource
|
|
|
|
}
|
|
|
|
|
|
|
|
task javadocJar(type: Jar, dependsOn: javadoc) {
|
2019-07-24 20:34:27 +00:00
|
|
|
classifier = 'javadoc'
|
2018-11-04 00:27:55 +00:00
|
|
|
from javadoc.destinationDir
|
|
|
|
}
|
|
|
|
|
2018-10-27 14:14:05 +00:00
|
|
|
apply from: 'https://github.com/FabricMC/fabric-docs/raw/master/gradle/license.gradle'
|
2016-08-16 22:29:10 +00:00
|
|
|
|
2019-04-19 19:56:58 +00:00
|
|
|
license {
|
|
|
|
exclude '**/loom/util/DownloadUtil.java'
|
|
|
|
}
|
|
|
|
|
2019-11-02 20:23:27 +00:00
|
|
|
checkstyle {
|
|
|
|
configFile = file("checkstyle.xml")
|
|
|
|
toolVersion = '8.25'
|
|
|
|
}
|
|
|
|
|
|
|
|
checkstyleMain {
|
|
|
|
logging.setLevel(LogLevel.LIFECYCLE)
|
|
|
|
}
|
|
|
|
|
2018-11-03 13:01:34 +00:00
|
|
|
gradlePlugin {
|
|
|
|
plugins {
|
2019-07-24 21:10:13 +00:00
|
|
|
fabricLoom {
|
2018-11-03 13:01:34 +00:00
|
|
|
id = "fabric-loom"
|
|
|
|
implementationClass = "net.fabricmc.loom.LoomGradlePlugin"
|
|
|
|
}
|
|
|
|
}
|
2018-05-14 10:50:02 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
publishing {
|
|
|
|
publications {
|
2018-11-04 00:27:55 +00:00
|
|
|
plugin(MavenPublication) { publication ->
|
2018-08-10 17:15:05 +00:00
|
|
|
groupId project.group
|
2018-05-14 10:50:02 +00:00
|
|
|
artifactId project.archivesBaseName
|
|
|
|
version project.version
|
|
|
|
|
2018-11-04 00:27:55 +00:00
|
|
|
from components["java"]
|
2019-06-11 02:26:04 +00:00
|
|
|
|
2018-11-04 00:27:55 +00:00
|
|
|
artifact sourcesJar
|
|
|
|
artifact javadocJar
|
2018-05-14 10:50:02 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
repositories {
|
|
|
|
maven {
|
|
|
|
url "http://mavenupload.modmuss50.me/"
|
|
|
|
if (project.hasProperty('mavenPass')) {
|
|
|
|
credentials {
|
|
|
|
username 'buildslave'
|
|
|
|
password project.getProperty('mavenPass')
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2018-11-03 15:38:19 +00:00
|
|
|
}
|
2019-11-09 19:00:36 +00:00
|
|
|
configurations.all {
|
|
|
|
resolutionStrategy {
|
|
|
|
force 'org.codehaus.groovy:groovy-all:2.4.12'
|
|
|
|
}
|
|
|
|
}
|