Advertisement
Guest User

Untitled

a guest
Nov 10th, 2014
178
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.30 KB | None | 0 0
  1. buildscript {
  2. repositories {
  3. mavenCentral()
  4. maven {
  5. name = "forge"
  6. url = "http://files.minecraftforge.net/maven"
  7. }
  8. maven {
  9. name = "sonatype"
  10. url = "https://oss.sonatype.org/content/repositories/snapshots/"
  11. }
  12. }
  13. dependencies {
  14. classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
  15. }
  16. }
  17.  
  18. apply plugin: 'scala'
  19. apply plugin: 'forge'
  20. apply plugin: 'maven-publish'
  21.  
  22. file "build.properties" withReader {
  23. def prop = new Properties()
  24. prop.load(it)
  25. ext.config = new ConfigSlurper().parse prop
  26. }
  27.  
  28. version = "${config.oc.version}"
  29. group = "li.cil.oc"
  30. archivesBaseName = "OpenComputers"
  31.  
  32. if (System.getenv("BUILD_NUMBER") != null)
  33. version += ".${System.getenv("BUILD_NUMBER")}"
  34.  
  35. if (config.oc.subversion != null && config.oc.subversion != "")
  36. version += "-${config.oc.subversion}"
  37.  
  38. ext.simpleVersion = version
  39. version = "MC${config.minecraft.version}-${project.version}"
  40.  
  41. runClient {
  42. jvmArgs '-Dfml.coreMods.load=li.cil.oc.common.launch.TransformerLoader'
  43. }
  44. runServer {
  45. jvmArgs '-Dfml.coreMods.load=li.cil.oc.common.launch.TransformerLoader'
  46. }
  47.  
  48. repositories {
  49. maven {
  50. name = "bc"
  51. url = "http://mod-buildcraft.com/"
  52. }
  53. maven {
  54. name = "chickenbones"
  55. url = "http://chickenbones.net/maven/"
  56. }
  57. maven {
  58. name = "ic2, forestry"
  59. url = "http://maven.ic2.player.to/"
  60. }
  61. maven {
  62. name = "mobius"
  63. url = "http://mobiusstrip.eu/maven"
  64. }
  65. maven {
  66. name = "ue"
  67. url = "http://calclavia.com/maven/"
  68. }
  69. maven {
  70. name "FireBall API Depot"
  71. url "http://dl.tsr.me/artifactory/libs-release-local"
  72. }
  73. maven {
  74. name 'DVS1 Maven FS'
  75. url 'http://dvs1.progwml6.com/files/maven'
  76. }
  77.  
  78. ivy {
  79. name 'Galacticraft'
  80. artifactPattern "http://ci.micdoodle8.com/job/Galacticraft-1.7/${config.gc.build}/artifact/Forge/build/libs/[module]-BETA-1.7-[revision].${config.gc.build}.[ext]"
  81. }
  82. ivy {
  83. name 'Mekanism'
  84. artifactPattern "http://ci.indiewikis.com:8080/job/Mekanism/${config.mekanism.build}/artifact/output/[module]-${config.minecraft.version}-[revision].${config.mekanism.build}.[ext]"
  85. }
  86. ivy {
  87. name 'ProjectRed'
  88. artifactPattern "http://ci.indiewikis.com:8080/job/Project%20Red/${config.projred.build}/artifact/build/libs/[module]-${config.minecraft.version}-[revision].${config.projred.build}.[ext]"
  89. }
  90. ivy {
  91. name 'immibis'
  92. artifactPattern "https://dl.dropboxusercontent.com/u/2944265/mods/autobuilt/files/[module]-[revision].[ext]"
  93. }
  94.  
  95. ivy {
  96. name 'CoFHLib'
  97. artifactPattern "http://addons.cursecdn.com/files/${config.cofhlib.cf}/[module]-[revision].[ext]"
  98. }
  99. ivy {
  100. name 'MineFactoryReloaded'
  101. artifactPattern "http://addons.cursecdn.com/files/${config.mfr.cf}/[module]-[revision].[ext]"
  102. }
  103. ivy {
  104. name 'ComputerCraft'
  105. artifactPattern "http://addons.cursecdn.com/files/${config.cc.cf}/[module][revision].[ext]"
  106. }
  107. ivy {
  108. name 'EnderIO'
  109. artifactPattern "http://addons.cursecdn.com/files/${config.eio.cf}/[module]-[revision].[ext]"
  110. }
  111. ivy {
  112. name 'Railcraft'
  113. artifactPattern "http://addons.cursecdn.com/files/${config.rc.cf}/[module]_[revision].[ext]"
  114. }
  115. }
  116.  
  117. configurations {
  118. provided
  119. embedded
  120. compile.extendsFrom provided, embedded
  121. }
  122.  
  123. dependencies {
  124. provided "api:rotarycraft:${config.rotc.version}"
  125. provided "appeng:appliedenergistics2:${config.ae2.version}:dev"
  126. provided "codechicken:CodeChickenLib:${config.minecraft.version}-${config.ccl.version}:dev"
  127. provided "codechicken:EnderStorage:${config.minecraft.version}-${config.es.version}:dev"
  128. provided "codechicken:ForgeMultipart:${config.minecraft.version}-${config.fmp.version}:dev"
  129. provided "codechicken:NotEnoughItems:${config.minecraft.version}-${config.nei.version}:dev"
  130. provided "codechicken:WR-CBE:${config.minecraft.version}-${config.wrcbe.version}:dev"
  131. provided "com.gregoriust.gregtech:gregtech_${config.minecraft.version}:${config.gt.version}:dev"
  132. provided "com.mod-buildcraft:buildcraft:${config.bc.version}:dev"
  133. provided "dev.calclavia.universalelectricity:universal-electricity:${config.ue.version}:dev"
  134. provided "mcp.mobius.waila:Waila:${config.waila.version}_${config.minecraft.version}:dev"
  135. provided "net.industrial-craft:industrialcraft-2:${config.ic2.version}:api"
  136. provided "net.sengir.forestry:forestry_${config.minecraft.version}:${config.forestry.version}:dev"
  137. provided "tmech:TMechworks:${config.minecraft.version}-${config.tmech.version}:deobf"
  138.  
  139. provided name: 'GalacticraftCore', version: config.gc.version, ext: 'jar'
  140. provided name: 'Mekanism', version: config.mekanism.version, ext: 'jar'
  141. provided name: 'ProjectRed-Base', version: config.projred.version, ext: 'jar'
  142. provided name: 'ProjectRed-Integration', version: config.projred.version, ext: 'jar'
  143. provided name: 'redlogic', version: config.redlogic.version, ext: 'jar'
  144.  
  145. provided name: 'CoFHLib', version: URLEncoder.encode(config.cofhlib.version, "UTF-8"), ext: 'jar'
  146. provided name: 'MineFactoryReloaded', version: URLEncoder.encode(config.mfr.version, "UTF-8"), ext: 'jar'
  147. provided name: 'ComputerCraft', version: config.cc.version, ext: 'jar'
  148. provided name: 'EnderIO', version: config.eio.version, ext: 'jar'
  149. provided name: 'Railcraft', version: config.rc.version, ext: 'jar'
  150.  
  151. compile 'com.google.code.findbugs:jsr305:1.3.9' // Annotations used by google libs.
  152.  
  153. embedded files('libs/OpenComputers-JNLua.jar', 'libs/OpenComputers-LuaJ.jar')
  154. }
  155.  
  156. idea.module.scopes.PROVIDED.plus += configurations.provided
  157. eclipse.classpath.plusConfigurations += configurations.provided
  158.  
  159. minecraft {
  160. version = "${config.minecraft.version}-${config.forge.version}"
  161.  
  162. replaceIn "li/cil/oc/OpenComputers.scala"
  163. replace "@VERSION@", project.simpleVersion
  164. }
  165.  
  166. processResources {
  167. from(sourceSets.main.resources.srcDirs) {
  168. include 'mcmod.info'
  169. expand 'version': project.simpleVersion, 'mcversion': config.minecraft.version
  170. }
  171. from(sourceSets.main.resources.srcDirs) {
  172. include 'application.conf'
  173. filter { line ->
  174. line.replaceAll("@VERSION@", project.simpleVersion)
  175. }
  176. }
  177. from(sourceSets.main.resources.srcDirs) {
  178. exclude 'mcmod.info'
  179. exclude 'application.conf'
  180. }
  181. }
  182.  
  183. jar {
  184. exclude "cofh/**"
  185. configurations.embedded.each { dep ->
  186. from(project.zipTree(dep)){
  187. exclude 'META-INF', 'META-INF/**'
  188. }
  189. }
  190. classifier = 'universal'
  191. manifest {
  192. attributes FMLCorePlugin: "li.cil.oc.common.launch.TransformerLoader"
  193. attributes FMLCorePluginContainsFMLMod: "true"
  194. }
  195. }
  196.  
  197. javadoc {
  198. include 'li/cil/oc/api/**'
  199. }
  200.  
  201. // because the normal default jar task has been modified to be obfuscated
  202. task deobfJar(type: Jar) {
  203. from sourceSets.main.output
  204. exclude "cofh/**"
  205. configurations.embedded.each { dep ->
  206. from(project.zipTree(dep)){
  207. exclude 'META-INF', 'META-INF/**'
  208. }
  209. }
  210. classifier = 'dev'
  211. manifest {
  212. attributes FMLCorePlugin: "li.cil.oc.common.launch.TransformerLoader"
  213. attributes FMLCorePluginContainsFMLMod: "true"
  214. }
  215. }
  216.  
  217. task apiJar(type: Jar) {
  218. from sourceSets.main.output
  219. from sourceSets.main.java
  220. classifier = 'api'
  221. include 'li/cil/oc/api/**'
  222. }
  223.  
  224. task javadocJar(type: Jar, dependsOn: javadoc) {
  225. from 'build/docs/javadoc'
  226. classifier 'javadoc'
  227. }
  228.  
  229. task sourcesJar(type: Jar) {
  230. from sourceSets.main.java
  231. from sourceSets.main.scala
  232. classifier = 'sources'
  233. }
  234.  
  235. artifacts {
  236. archives deobfJar
  237. archives apiJar
  238. archives javadocJar
  239. archives sourcesJar
  240. }
  241.  
  242. publishing {
  243. publications {
  244. mavenJava(MavenPublication) {
  245. artifact jar
  246. artifact apiJar
  247. artifact javadocJar
  248. artifact sourcesJar
  249. artifact deobfJar { classifier 'dev' }
  250. }
  251. }
  252. repositories {
  253. maven {
  254. url "${config.maven.url}"
  255. }
  256. }
  257. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement