TechReborn/build.gradle
2016-02-29 11:20:40 +00:00

258 lines
7.9 KiB
Groovy

buildscript {
repositories {
mavenCentral()
maven {
name = "forge"
url = "http://files.minecraftforge.net/maven"
}
maven {
name = "sonatype"
url = "https://oss.sonatype.org/content/repositories/snapshots/"
}
}
dependencies {
classpath 'net.minecraftforge.gradle:ForgeGradle:2.1-SNAPSHOT'
}
}
apply plugin: 'net.minecraftforge.gradle.forge'
apply plugin: 'maven'
apply plugin: 'maven-publish'
sourceCompatibility = 1.8
targetCompatibility = 1.8
repositories {
maven {
name = "ic2"
url = "http://maven.ic2.player.to/"
}
maven {
name "Mobius Repo"
url "http://mobiusstrip.eu/maven"
}
maven {
name 'CB Repo'
url "http://chickenbones.net/maven/"
}
maven {
name = "Modmuss50"
url = "http://maven.modmuss50.me/"
}
maven {
name = "Qmunity"
url = "http://maven.bluepowermod.com/"
}
maven {
name "TiC"
url "http://dvs1.progwml6.com/files/maven"
}
ivy {
name = 'ThaumCraft 4 API'
artifactPattern 'https://dl.dropboxusercontent.com/u/47135879/[module]-1.8.9-[revision]-[classifier].[ext]'
}
ivy {
name "MineTweaker3"
// artifactPattern "http://minetweaker3.powerofbytes.com/download/[module]-[classifier]-[revision].[ext]" //This is the offical MT download url
artifactPattern "http://www.blamejared.com/content/[module]-[classifier]-Full-[revision].[ext]" //This is a forked version of it to allow 1.8.8 support.
}
ivy {
name "BuildCraft"
artifactPattern "https://github.com/AlexIIL/BuildCraft/releases/download/[revision]/[module]-[classifier].[ext]"
}
maven {
name = "Amadornes"
url "http://maven.amadornes.com/"
}
}
configurations {
shade
compile.extendsFrom shade
}
version = "0.7.11"
def ENV = System.getenv()
if (ENV.BUILD_NUMBER) {
version = version + "." + "${System.getenv().BUILD_NUMBER}"
}
minecraft {
version = "1.8.9-11.15.1.1722"
mappings = 'snapshot_20151230'
replace "@MODVERSION@", project.version
makeObfSourceJar = false
useDepAts = true
runDir = "run"
}
group = 'TechReborn'
def grabDep(name, url){
ant.get(src: url, dest: 'dep')
file("dep/" + url.substring(url.lastIndexOf("/"))).renameTo(file("dep/" + name + ".jar"))
}
dependencies {
def f = new File('dep/')
if(f.exists()){
f.delete()
}
f.mkdirs()
if(!f.exists()){
f.mkdir()
}
// compile 'net.industrial-craft:industrialcraft-2:2.2.796-experimental:dev'
// shade 'net.industrial-craft:industrialcraft-2:2.2.796-experimental:api'
// compile "codechicken:CodeChickenLib:1.7.10-1.1.3.140:dev"
// compile "codechicken:CodeChickenCore:1.7.10-1.0.7.+:dev"
// compile "codechicken:NotEnoughItems:1.7.10-1.0.5.+:dev"
// compile "codechicken:ForgeMultipart:1.7.10-1.2.0.345:dev"
compile ("mcp.mobius.waila:Waila:1.6.0-B3_1.8.8:dev") {
exclude group: 'mcp.mobius.waila'
}
// compile "qmunity:QmunityLib:0.2.+:deobf"
// compile "com.pahimar.ee3:EquivalentExchange3:1.7.10-0.3.507:dev"
// compile "net.sengir.forestry:forestry_1.7.10:4.2.0.47:dev"
// shade "net.sengir.forestry:forestry_1.7.10:4.2.0.47:api"
compile "slimeknights:TConstruct:1.8.8-2.0.1.jenkins11:deobf"
// compile "mods.natura:natura:1.7.10-107.779621d:deobf"
compile "slimeknights.mantle:Mantle:1.8.8-0.6.jenkins60:deobf"
compile "com.github.glitchfiend.biomesoplenty:BiomesOPlenty:1.8.9-3.0.0.1923:deobf"
compile 'Azanor:Thaumcraft:5.1.6:deobf@jar'
compile "com.github.azanor:baubles:1.1.3.0:deobf@jar"
compile name: "CraftTweaker", version: "1.8.8-3.0.0", classifier: "Dev"
// shade 'IC2-Classic-API-STANDALONE:IC2-Classic-API-STANDALONE:1.1.0.19-5:api'
deobfCompile 'RebornCore:RebornCore-1.8.9:1.4.4.+:universal'
deobfCompile "mezz.jei:jei_1.8.9:2.27.+"
deobfCompile 'MCMultiPart:MCMultiPart:1.0.6:universal'
println("Downloading dependencies that have no maven :/")
//This is done becuase
grabDep('buildcraft-7.2.0-pre12', 'http://modmuss50.me/files/buildcraft-7.2.0-pre12-deobf.jar')
compile files("dep/buildcraft-7.2.0-pre12.jar")
}
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
exclude "**/*.psd"
classifier = 'dev'
}
jar {
exclude "**/*.psd"
classifier = 'universal'
// configurations.shade.each { dep ->
// from(project.zipTree(dep)){
// include 'ic2/api/'
// include 'forestry/api/fuels/'
// exclude 'META-INF', 'META-INF/**', '**/*.java'
// }
// }
}
task apiJar(type: Jar) {
from sourceSets.main.allSource
from sourceSets.main.output
include 'techreborn/api/**/*'
classifier = "api"
}
apiJar.mustRunAfter deobfJar
artifacts {
archives deobfJar
archives apiJar
}
build.dependsOn deobfJar, apiJar
uploadArchives {
repositories {
mavenDeployer {
//This is used when the build is done on a slave node
if (project.hasProperty('mavenPass'))
{
println 'Uploading to remote Maven Repo'
repository(url: "http://mavenupload.modmuss50.me/") {
authentication(userName: "buildslave", password: project.getProperty('mavenPass'))
}
}
else
{
//this is when the build is executed on the master node
println 'Uploading to local Maven Repo'
repository(url: "file:///var/www/maven/")
}
pom {
groupId = "TechReborn"
version = project.version
artifactId = project.archivesBaseName
project {
name project.archivesBaseName
packaging 'jar'
description 'TechReborn'
url 'https://github.com/TechReborn/TechReborn'
scm {
url 'https://github.com/TechReborn/TechReborn'
connection 'scm:git:git@github.com:TechReborn/TechReborn.git'
developerConnection 'scm:git:git@github.com:TechReborn/TechReborn.git'
}
issueManagement {
system 'github'
url 'https://github.com/TechReborn/TechReborn/issues'
}
licenses {
license {
name 'License'
url 'https://raw.githubusercontent.com/TechReborn/TechReborn/master/LICENSE.md'
distribution 'repo'
}
}
developers {
developer {
id 'modmuss50'
name 'modmuss50'
roles { role 'developer' }
}
developer {
id 'Gigabit101'
name 'Gigabit101'
roles { role 'developer' }
}
}
}
}
}
}
}
task wrapper(type: Wrapper) {
//To update the wrapper change the version bellow then run: gradle wrapper
gradleVersion = '2.11'
}