forked from TAIGA/TAIGA
146 lines
4.2 KiB
Groovy
146 lines
4.2 KiB
Groovy
// For those who want the bleeding edge
|
|
buildscript {
|
|
repositories {
|
|
jcenter()
|
|
maven {
|
|
name = "forge"
|
|
url = "http://files.minecraftforge.net/maven"
|
|
}
|
|
maven {
|
|
url "https://plugins.gradle.org/m2/"
|
|
}
|
|
}
|
|
dependencies {
|
|
classpath 'net.minecraftforge.gradle:ForgeGradle:2.2-SNAPSHOT'
|
|
classpath 'gradle.plugin.com.matthewprenger:CurseGradle:1.0.7'
|
|
}
|
|
}
|
|
|
|
apply plugin: 'net.minecraftforge.gradle.forge'
|
|
apply plugin: "com.matthewprenger.cursegradle"
|
|
|
|
repositories {
|
|
mavenLocal()
|
|
mavenCentral()
|
|
maven {
|
|
name = "chickenbones"
|
|
url = "http://chickenbones.net/maven/"
|
|
}
|
|
|
|
maven {
|
|
name 'DVS1 Maven FS'
|
|
url 'http://dvs1.progwml6.com/files/maven'
|
|
}
|
|
}
|
|
|
|
group = "com.sosnitzka" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
|
|
archivesBaseName = "taiga"
|
|
ext.tag = "snapshot"
|
|
ext.changes = ""
|
|
|
|
task buildInfo {
|
|
def cmd = "git describe --tags \$(git rev-list --tags --max-count=1)"
|
|
def proc = cmd.execute()
|
|
proc.waitFor()
|
|
if (proc.exitValue() == 0) {
|
|
logger.info("Found tag for current version: ${proc.text.trim()}")
|
|
project.ext.tag = proc.text.trim()
|
|
} else {
|
|
logger.info("Could not find tag infos, assume snapshot build")
|
|
}
|
|
|
|
if (System.getenv().BUILD_NUMBER != null) {
|
|
ext.buildNum = System.getenv().BUILD_NUMBER
|
|
}
|
|
|
|
def cmd_changes = "git log \$(git describe --tags --abbrev=0)..\$(git describe --tags \$(git rev-list --tags --max-count=1)) --oneline"
|
|
def proc_changes = cmd_changes.execute()
|
|
proc_changes.waitFor()
|
|
if (proc_changes.exitValue() == 0) {
|
|
project.ext.changes = proc_changes.text.trim()
|
|
}
|
|
}
|
|
|
|
version = tag
|
|
|
|
minecraft {
|
|
version = "1.10.2-12.18.1.2011"
|
|
runDir = "run"
|
|
|
|
// the mappings can be changed at any time, and must be in the following format.
|
|
// snapshot_YYYYMMDD snapshot are built nightly.
|
|
// stable_# stables are built at the discretion of the MCP team.
|
|
// Use non-default mappings at your own risk. they may not allways work.
|
|
// simply re-run your setup task after changing the mappings to update your workspace.
|
|
mappings = "snapshot_20160701"
|
|
// makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable.
|
|
|
|
replace "${version}", project.version
|
|
}
|
|
|
|
ext.mc_version = project.minecraft.version.split('-')[0]
|
|
version = "${mc_version}-${tag}"
|
|
|
|
dependencies {
|
|
//deobfCompile "codechicken:CodeChickenLib:1.9.4-2.0.2.39:deobf"
|
|
//deobfCompile "codechicken:CodeChickenCore:1.9.4-2.0.3.65:deobf"
|
|
//deobfCompile "codechicken:NotEnoughItems:1.9-${nei_version}:dev"
|
|
deobfCompile "slimeknights.mantle:Mantle:1.10.2-0.10.3.jenkins161:deobf"
|
|
//Old: deobfCompile "slimeknights.mantle:Mantle:1.9-0.10.0.jenkins132:deobf"
|
|
deobfCompile "mezz.jei:jei_1.10.2:3.7.6.231"
|
|
deobfCompile "slimeknights:TConstruct:1.10-2.3.3a.jenkins271:deobf"
|
|
//compile files('libs/TConstruct-1.9-2.3.1.DEV.1d4c1de-deobf.jar')
|
|
}
|
|
|
|
sourceSets {
|
|
main {
|
|
resources {
|
|
srcDir 'resources'
|
|
}
|
|
}
|
|
}
|
|
|
|
//noinspection GroovyAssignabilityCheck
|
|
processResources {
|
|
// this will ensure that this task is redone when the versions change.
|
|
inputs.property "version", project.version
|
|
inputs.property "mcversion", project.minecraft.version
|
|
|
|
// replace stuff in mcmod.info, nothing else
|
|
from(sourceSets.main.resources.srcDirs) {
|
|
include 'mcmod.info'
|
|
|
|
// replace version and mcversion
|
|
expand 'version': project.version, 'mcversion': project.minecraft.version
|
|
}
|
|
|
|
// copy everything else, thats not the mcmod.info
|
|
from(sourceSets.main.resources.srcDirs) {
|
|
exclude 'mcmod.info'
|
|
}
|
|
}
|
|
|
|
task deobfJar(type: Jar) {
|
|
from sourceSets.main.output
|
|
classifier = 'deobf'
|
|
}
|
|
|
|
artifacts {
|
|
archives deobfJar
|
|
}
|
|
|
|
curseforge {
|
|
apiKey = System.getenv().CURSE_API_KEY ? System.getenv().CURSE_API_KEY : "devBuild"
|
|
project {
|
|
id = '247661'
|
|
changelog = project.changes // A file can also be set using: changelog = file('changelog.txt')
|
|
releaseType = 'release'
|
|
|
|
mainArtifact(jar) {
|
|
displayName = "taiga-${project.tag}"
|
|
}
|
|
}
|
|
}
|
|
|
|
jar.dependsOn buildInfo
|