electrodynamics/build.gradle

153 lines
4.0 KiB
Groovy

buildscript {
repositories {
mavenCentral()
jcenter()
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:1.2-SNAPSHOT'
}
}
apply plugin: 'scala'
apply plugin: 'forge'
apply plugin: 'maven-publish'
ext.buildProps = file "build.properties"
project.sourceCompatibility = '1.8'
project.targetCompatibility = '1.8'
buildProps.withReader {
def prop = new Properties()
prop.load(it)
ext.config = new ConfigSlurper().parse prop
}
version = "${config.version.mod.major}.${config.version.mod.minor}.${config.version.mod.revis}"
group = "dev.calclavia.electrodynamics"
archivesBaseName = "electrodynamics"
minecraft {
version = "${config.version.minecraft}-${config.version.forge}-${config.version.minecraft}"
replaceIn "Electrodynamics.scala"
replace "@MAJOR@", config.version.mod.major
replace "@MINOR@", config.version.mod.minor
replace "@REVIS@", config.version.mod.revis
}
if (System.getenv("BUILD_NUMBER") != null)
version += ".${System.getenv("BUILD_NUMBER")}"
processResources {
inputs.property "version", project.version
inputs.property "mcversion", project.minecraft.version
// replace stuff in text files, not binary ones.
from(sourceSets.main.resources.srcDirs) {
include '**/*.info'
// replace version and MCVersion
// forge version is also accessible via project.minecraftforgeVersion
// it contains the full minecraft version, including buildNumber
expand 'version': project.version, 'mcversion': project.minecraft.version
}
// copy everything else, thats not text
from 'build.properties'
}
task copyBuildXml(type: Copy) {
from 'build.properties'
into 'output'
}
jar {
dependsOn copyBuildXml
classifier = 'core'
destinationDir = file 'output'
manifest {
attributes FMLCorePlugin: "resonant.engine.ResonantPluginLoader", FMLCorePluginContainsFMLMod: "true"
}
}
publishing {
publications {
mavenJava(MavenPublication) {
artifact jar
artifact("output/changelog.xml") {
classifier "changelog"
extension "xml"
}
artifact("output/build.properties") {
classifier "build"
extension "properties"
}
}
}
repositories {
maven {
url "file://var/www/maven"
}
}
}
repositories {
maven {
name "tilera Maven"
url "https://data.tilera.xyz/maven"
}
maven {
name = "forge"
url = "https://files.minecraftforge.net/maven"
}
maven {
name "Mobius Repo"
url "http://mobiusstrip.eu/maven"
}
maven {
name "chickenbones"
url "https://chickenbones.net/maven"
}
maven {
name 'OC Maven'
url = "https://maven.cil.li/"
}
mavenCentral()
maven {
name = "ic2"
url = "http://maven.ic2.player.to/"
}
maven {
name = "curse"
url = "https://www.cursemaven.com/"
}
}
dependencies {
compile files("engine")
testCompile 'junit:junit:4.11'
testCompile 'jmock:jmock:1.1.0'
compile "li.cil.oc:OpenComputers:MC1.7.10-1.7.5.1356:api"
compile "codechicken:CodeChickenLib:${config.version.minecraft}-${config.version.cclib}:dev"
compile "codechicken:ForgeMultipart:${config.version.minecraft}-${config.version.fmp}:dev"
compile "codechicken:CodeChickenCore:${config.version.minecraft}-${config.version.cccore}:dev"
compile "codechicken:NotEnoughItems:${config.version.minecraft}-${config.version.nei}:dev"
compile "mcp.mobius.waila:Waila:1.5.8_dev3_1.7.10"
compile "net.industrial-craft:industrialcraft-2:2.2.654-experimental:dev"
compile "curse.maven:ftbu-237102:2291494"
}