Moved API

Added temporary(!) API dependencies, will resolved via Maven later on
Added mcmod.info
Added pack.mcmeta template
Added hacked BC jar to use facades indev
Split build logic into several pieces
Update gitignore
Modify build.gradle to match changes
This commit is contained in:
thatsIch
2014-09-26 16:14:44 +02:00
parent b97f19bea8
commit 54802be11f
305 changed files with 22813 additions and 129 deletions
+22 -118
View File
@@ -1,7 +1,12 @@
apply plugin: 'forge'
apply from: 'gradle/scripts/propertyloader.gradle'
apply from: 'gradle/scripts/dependencies.gradle'
apply from: 'gradle/scripts/artifacts.gradle'
apply from: 'gradle/scripts/autoinstallruntime.gradle'
buildscript {
repositories {
mavenCentral()
maven {
@@ -13,89 +18,35 @@ buildscript {
name = "sonatype"
url = "https://oss.sonatype.org/content/repositories/snapshots/"
}
}
dependencies {
classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
}
}
apply plugin: 'forge'
repositories {
maven {
name 'CB Maven FS'
url "http://chickenbones.net/maven/"
}
maven {
name "IC2 Player Repo"
url "http://maven.ic2.player.to/"
}
maven {
name "Waila Mobius Repo"
url "http://mobiusstrip.eu/maven"
}
}
configurations.all {
resolutionStrategy.cacheDynamicVersionsFor 7200, 'hours'
}
// define the properties file
ext.configFile = file "build.properties"
configFile.withReader {
// read config. it shall from now on be referenced as simply config or as project.config
def prop = new Properties()
prop.load(it)
project.ext.config = new ConfigSlurper().parse prop
}
targetCompatibility = JavaVersion.VERSION_1_6
version = config.version+"-"+config.aechannel+"-"+config.build
version = config.version + "-" + config.aechannel + "-" + config.build
group = config.group
archivesBaseName = config.archivesBaseName
dependencies {
compile "net.industrial-craft:industrialcraft-2:${config.ic2_version}-experimental:dev"
compile "codechicken:ForgeMultipart:${config.cb_minecraft_version}-${config.fmp_version}:dev"
compile "codechicken:CodeChickenLib:${config.cb_minecraft_version}-${config.code_chicken_lib_version}:dev"
compile "codechicken:CodeChickenCore:${config.cb_minecraft_version}-${config.code_chicken_core_version}:dev"
compile "codechicken:NotEnoughItems:${config.cb_minecraft_version}-${config.nei_version}:dev"
compile "mcp.mobius.waila:Waila:${config.waila_version}"
compile files(fileTree(dir: 'libs', includes: ['*.jar']))
// compile "com.mod-buildcraft:buildcraft:6.0.8:dev"
}
// Add Coremod Manifest
jar {
manifest {
attributes 'FMLCorePlugin': 'appeng.transformer.AppEngCore'
attributes 'FMLCorePluginContainsFMLMod': 'true'
}
}
compileJava {
exclude("appeng/api/integration/*")
exclude("appeng/integration/modules/helpers/dead/**")
exclude("appeng/integration/modules/dead/**")
// exclude("appeng/fmp/**")
// specify which files are really included, can control which APIs should be in
include "appeng/**"
include "assets/**"
include "mcmod.info"
include "pack.mcmeta"
}
minecraft {
@@ -104,85 +55,38 @@ minecraft {
replace "@version@", project.version
replace "@aechannel@", config.aechannel
// used when launching minecraft in dev env
runDir = "run"
}
sourceSets {
main {
java {
srcDirs += 'src/api/java'
srcDirs += 'src/main/java/'
exclude("src/api/**")
}
resources {
srcDir 'src/main/resources/'
srcDir "src/main/resources/"
include "assets/appliedenergistics2/recipes/*.recipe",
"assets/appliedenergistics2/lang/*.lang",
"assets/appliedenergistics2/textures/blocks/*",
"assets/appliedenergistics2/textures/guis/*",
"assets/appliedenergistics2/textures/models/*",
"assets/appliedenergistics2/textures/items/*"
"assets/appliedenergistics2/lang/*.lang",
"assets/appliedenergistics2/textures/blocks/*",
"assets/appliedenergistics2/textures/guis/*",
"assets/appliedenergistics2/textures/models/*",
"assets/appliedenergistics2/textures/items/*"
}
}
}
processResources {
// replace stuff in mcmod.info, nothing else
from(sourceSets.main.resources.srcDirs) {
include 'mcmod.info'
expand 'version': project.version, 'mcversion': config.minecraft_version
}
// copy everything else, thats not the mcmod.info
// copy everything else, that is not the mcmod.info
from(sourceSets.main.resources.srcDirs) {
exclude 'mcmod.info'
}
}
task myJavadocs(type: Javadoc) {
source = sourceSets.api.java
include "appeng/api/**"
classpath = configurations.compile
}
task javadocJar(type: Jar, dependsOn: myJavadocs) {
classifier = 'javadoc'
from 'build/docs/javadoc/'
}
task devJar(type: Jar) {
manifest {
attributes 'FMLCorePlugin': 'appeng.transformer.AppEngCore'
attributes 'FMLCorePluginContainsFMLMod': 'true'
}
from(sourceSets.main.output) {
include "appeng/**"
include "assets/**"
include 'mcmod.info'
}
classifier = 'dev'
}
task apiJar(type: Jar) {
from(sourceSets.api.java) {
include "appeng/api/**"
}
classifier = 'api'
}
artifacts {
archives devJar
archives apiJar
archives javadocJar
}