diff options
| -rw-r--r-- | build.gradle | 223 | ||||
| -rw-r--r-- | build.gradle.kts | 216 | ||||
| -rw-r--r-- | gradle.properties (renamed from build.properties) | 15 |
3 files changed, 222 insertions, 232 deletions
diff --git a/build.gradle b/build.gradle deleted file mode 100644 index 9bbee2d10b..0000000000 --- a/build.gradle +++ /dev/null @@ -1,223 +0,0 @@ -/* - * Copyright (c) 2018-2020 bartimaeusnek - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ -buildscript { - repositories { - mavenCentral() - maven { - name = "forge" - url = "http://files.minecraftforge.net/maven" - } - maven { - name = "jitpack" - url = "https://jitpack.io" - } - } - dependencies { - classpath "com.github.GTNH2:ForgeGradle:0d2484b" - } -} - -apply plugin: "forge" -apply plugin: "signing" -apply plugin: "idea" -idea{ - module { - downloadJavadoc = true - downloadSources = true - } -} - -//noinspection GroovyUnusedAssignment -sourceCompatibility = JavaVersion.VERSION_1_8 -//noinspection GroovyUnusedAssignment -targetCompatibility = JavaVersion.VERSION_1_8 - -compileJava.options.encoding = "UTF-8" - -ext.configFile = file "build.properties" -configFile.withReader { - def prop = new Properties() - prop.load(it) - project.ext.config = new ConfigSlurper().parse prop -} - - -version = config.majorUpdate+"."+config.minorUpdate+"."+config.buildNumber -//noinspection GroovyUnusedAssignment -group= "com.github.bartimaeusnek.bartworks" // http://maven.apache.org/guides/mini/guide-naming-conventions.html -//noinspection GroovyUnusedAssignment -archivesBaseName = "bartworks"+ "[" + config.mc_version + "]" - -minecraft { - version = "1.7.10-10.13.4.1614-1.7.10" - replaceIn "MainMod.java" - replaceIn "API_REFERENCE.java" - replace "@version@", project.version - replace "@apiversion@", config.APIVersion - runDir = "run" -} - -repositories { - mavenLocal() - maven { - name = "gt" - url = "https://gregtech.overminddl1.com/" - } - maven { - name = "ic2" - url = "http://maven.ic2.player.to/" - } - maven { // GalacticGreg, YAMCore,.. - name "UsrvDE" - url "http://jenkins.usrv.eu:8081/nexus/content/repositories/releases/" - } - ivy { - name "gtnh_download_source_stupid_underscore_typo" - artifactPattern "http://downloads.gtnewhorizons.com/Mods_for_Jenkins/[module]_[revision].[ext]" - } - ivy { - name "gtnh_download_source" - artifactPattern "http://downloads.gtnewhorizons.com/Mods_for_Jenkins/[module]-[revision].[ext]" - } - maven { - name = "OC repo" - url = "http://maven.cil.li/" - } - maven { - name = "jabba" - url = "http://default.mobiusstrip.eu/maven" - } - maven { - name = "chickenbones" - url = "http://chickenbones.net/maven/" - } - maven { - name = "Apple" - url "http://www.ryanliptak.com/maven/" - } - ivy { - name "BuildCraft" - artifactPattern "http://www.mod-buildcraft.com/releases/BuildCraft/[revision]/[module]-[revision](-[classifier]).[ext]" - } - maven { - name = "jitpack" - url = "https://jitpack.io" - } -} - -dependencies { - //hard deps - compile "net.industrial-craft:industrialcraft-2:${config.ic2.version}:dev" - //compile "com.github.GTNH2:GT5-Unofficial:experimental-SNAPSHOT:dev" //broken jitpack.io dep - //soft deps - compileOnly "com.azanor.baubles:Baubles:1.7.10-1.0.1.10:deobf" - compileOnly "thaumcraft:Thaumcraft:1.7.10-4.2.3.5:dev" - compileOnly "mods.railcraft:Railcraft_1.7.10:9.12.3.0:dev" - compileOnly "micdoodle8.mods:MicdoodleCore:${config.galacticraft.version}:Dev" - compileOnly "micdoodle8.mods:GalacticraftCore:${config.galacticraft.version}:Dev" - compileOnly "micdoodle8.mods:Galacticraft-Planets:${config.galacticraft.version}:Dev" - compileOnly "li.cil.oc:OpenComputers:MC1.7.10-1.5.+:api" - compileOnly "net.sengir.forestry:forestry_1.7.10:4.2.16.64:dev" - compileOnly "com.github.GTNewHorizons:GalacticGregGT5:master-SNAPSHOT" - compileOnly fileTree(dir: "libs", include: "*.jar") - - //CoreLibs for compile-age - //compileOnly "com.github.GTNH2:Yamcl:master-SNAPSHOT" //broken jitpack.io dep - compileOnly "applecore:AppleCore:${config.applecore.version}:api" - compileOnly "com.enderio.core:EnderCore:${config.enderiocore.version}:dev" - compileOnly "com.enderio:EnderIO:${config.enderio.version}:dev" - compileOnly "com.enderio:EnderIO:${config.enderio.version}:dev" - - //NEI - compile "codechicken:CodeChickenLib:1.7.10-1.1.3.140:dev" - compile "codechicken:CodeChickenCore:1.7.10-1.0.7.47:dev" - compile "codechicken:NotEnoughItems:1.7.10-1.0.5.120:dev" -} - -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" - } -} - -jar { - exclude ("assets/gregtech/textures/items/materialicons/copy.bat") - exclude ("assets/gregtech/textures/blocks/materialicons/copy.bat") - manifest { - attributes "FMLCorePlugin": "com.github.bartimaeusnek.ASM.BWCorePlugin","FMLCorePluginContainsFMLMod": "true" - } -} - -task apiJar(type: Jar){ - from(sourceSets.main.output) { - include "com/github/bartimaeusnek/bartworks/API/**" - include "com/github/bartimaeusnek/bartworks/util/**" - include "com/github/bartimaeusnek/bartworks/system/material/Werkstoff.class" - include "com/github/bartimaeusnek/crossmod/thaumcraft/util/**" - } - classifier = "API" -} - -task sourceJar(type: Jar) { - from sourceSets.main.allSource - classifier = "sources" -} - -task devJar(type: Jar) { - from sourceSets.main.output - classifier = "dev" -} - -artifacts { - archives devJar - archives sourceJar - archives apiJar -} - -task signJar(dependsOn: "reobf"){ - doLast { - ant.signjar( - destDir: jar.destinationDir, - jar: jar.getArchivePath(), - alias: findProperty("keyStoreAlias") ?: "", - keystore: findProperty("keyStore") ?: "", - storepass: findProperty("keyStorePass") ?: "", - digestalg: findProperty("signDigestAlg") ?: "", - tsaurl: findProperty("signTSAurl") ?: "", - verbose: true - ) - } -}
\ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 index 0000000000..97376f1af6 --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,216 @@ +/* + * Copyright (c) 2018-2020 bartimaeusnek + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +import net.minecraftforge.gradle.user.UserExtension + +buildscript { + repositories { + mavenCentral() + maven { + name = "forge" + url = uri("http://files.minecraftforge.net/maven") + } + maven { + name = "jitpack" + url = uri("https://jitpack.io") + } + } + dependencies { + classpath("com.github.GTNH2:ForgeGradle:FG_1.2-SNAPSHOT") + } +} + +plugins { + idea + java +} + +apply(plugin = "forge") + +idea { + module { + isDownloadJavadoc = true + isDownloadSources = true + } +} + +java { + sourceCompatibility = JavaVersion.VERSION_1_8 + targetCompatibility = JavaVersion.VERSION_1_8 +} + +tasks.withType<JavaCompile> { + options.encoding = "UTF-8" +} + +val majorUpdate : String by project +val minorUpdate : String by project +val buildNumber : String by project + +version = "$majorUpdate.$minorUpdate.$buildNumber" +group = "com.github.bartimaeusnek.bartworks" + +//minecraft block +configure<UserExtension>{ + version = "1.7.10-10.13.4.1614-1.7.10" + replaceIn("MainMod.java") + replaceIn("API_REFERENCE.java") + replace("@version@", project.version) + val apiVersion : String by project + replace("@apiversion@", apiVersion) + runDir = "run" +} + +repositories { + mavenLocal() + maven { + name = "gt" + url = uri("https://gregtech.overminddl1.com/") + } + maven { + name = "ic2" + url = uri("http://maven.ic2.player.to/") + } + maven { // GalacticGreg, YAMCore,.. + name = "UsrvDE" + url = uri("http://jenkins.usrv.eu:8081/nexus/content/repositories/releases/") + } + ivy { + name = "gtnh_download_source_stupid_underscore_typo" + artifactPattern("http://downloads.gtnewhorizons.com/Mods_for_Jenkins/[module]_[revision].[ext]") + } + ivy { + name = "gtnh_download_source" + artifactPattern("http://downloads.gtnewhorizons.com/Mods_for_Jenkins/[module]-[revision].[ext]") + } + maven { + name = "OC repo" + url = uri("http://maven.cil.li/") + } + maven { + name = "jabba" + url = uri("http://default.mobiusstrip.eu/maven") + } + maven { + name = "chickenbones" + url = uri("http://chickenbones.net/maven/") + } + maven { + name = "Apple" + url = uri("http://www.ryanliptak.com/maven/") + } + ivy { + name = "BuildCraft" + artifactPattern("http://www.mod-buildcraft.com/releases/BuildCraft/[revision]/[module]-[revision](-[classifier]).[ext]") + } + maven { + name = "jitpack" + url = uri("https://jitpack.io") + } +} + +dependencies { + //Needed properties + val ic2Version : String by project + val galacticraftVersion : String by project + val applecoreVersion : String by project + val enderCoreVersion : String by project + val enderioVersion : String by project + //hard deps + compile("net.industrial-craft:industrialcraft-2:$ic2Version:dev") + //compile("com.github.GTNH2:GT5-Unofficial:experimental-SNAPSHOT:dev") //broken jitpack.io dep + //soft deps + compileOnly("com.azanor.baubles:Baubles:1.7.10-1.0.1.10:deobf") + compileOnly("thaumcraft:Thaumcraft:1.7.10-4.2.3.5:dev") + compileOnly("mods.railcraft:Railcraft_1.7.10:9.12.3.0:dev") + compileOnly("micdoodle8.mods:MicdoodleCore:$galacticraftVersion:Dev") + compileOnly("micdoodle8.mods:GalacticraftCore:$galacticraftVersion:Dev") + compileOnly("micdoodle8.mods:Galacticraft-Planets:$galacticraftVersion:Dev") + compileOnly("li.cil.oc:OpenComputers:MC1.7.10-1.5.+:api") + compileOnly("net.sengir.forestry:forestry_1.7.10:4.2.16.64:dev") + compileOnly("com.github.GTNewHorizons:GalacticGregGT5:master-SNAPSHOT") + //compileOnly(fileTree(dir = "libs", include = "*.jar")) + + //CoreLibs for compile-age + //compileOnly("com.github.GTNH2:Yamcl:master-SNAPSHOT") //broken jitpack.io dep + compileOnly("applecore:AppleCore:$applecoreVersion:api") + compileOnly("com.enderio.core:EnderCore:$enderCoreVersion:dev") + compileOnly("com.enderio:EnderIO:$enderioVersion:dev") + + //NEI + compile("codechicken:CodeChickenLib:1.7.10-1.1.3.140:dev") + compile("codechicken:CodeChickenCore:1.7.10-1.0.7.47:dev") + compile("codechicken:NotEnoughItems:1.7.10-1.0.5.120:dev") +} + +val Project.minecraft : UserExtension + get() = extensions.getByName<UserExtension>("minecraft") + +tasks.withType<Jar> { + // this will ensure that this task is redone when the versions change. + inputs.properties += "version" to project.version + inputs.properties += "mcversion" to project.minecraft.version + archiveBaseName.set("bartworks[${project.minecraft.version}]") + + // replace stuff in mcmod.info, nothing else + filesMatching("/mcmod.info") { + expand(mapOf( + "version" to project.version, + "mcversion" to project.minecraft.version + )) + } +} + +tasks.jar { + exclude ("assets/gregtech/textures/items/materialicons/copy.bat") + exclude ("assets/gregtech/textures/blocks/materialicons/copy.bat") + manifest { + attributes["FMLCorePlugin"] = "com.github.bartimaeusnek.ASM.BWCorePlugin" + attributes["FMLCorePluginContainsFMLMod"] = "true" + } +} + +val apiJar by tasks.creating(Jar::class) { + from(sourceSets.main.get().output) { + include("com/github/bartimaeusnek/bartworks/API/**") + include("com/github/bartimaeusnek/bartworks/util/**") + include("com/github/bartimaeusnek/bartworks/system/material/Werkstoff.class") + include("com/github/bartimaeusnek/crossmod/thaumcraft/util/**") + } + archiveClassifier.set("API") +} + +val sourcesJar by tasks.creating(Jar::class) { + from(sourceSets.main.get().allSource) + archiveClassifier.set("sources") +} + +val devJar by tasks.creating(Jar::class) { + from(sourceSets.main.get().output) + archiveClassifier.set("dev") +} + +artifacts { + add("archives", apiJar) + add("archives", sourcesJar) + add("archives", devJar) +}
\ No newline at end of file diff --git a/build.properties b/gradle.properties index bfd657b23f..4fdf782092 100644 --- a/build.properties +++ b/gradle.properties @@ -19,15 +19,12 @@ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE # SOFTWARE. # -mc_version=1.7.10 majorUpdate=0 minorUpdate=5 buildNumber=13.1 -APIVersion=11 -ic2.version=2.2.828-experimental -gregtech.version=5.09.33.38 -gregtech.jenkinsbuild=454 -applecore.version=1.7.10-3.1.1 -galacticraft.version=1.7-3.0.12.504 -enderio.version=1.7.10-2.3.0.429_beta -enderiocore.version=1.7.10-0.2.0.39_beta
\ No newline at end of file +apiVersion=11 +ic2Version=2.2.828-experimental +applecoreVersion=1.7.10-3.1.1 +galacticraftVersion=1.7-3.0.12.504 +enderioVersion=1.7.10-2.3.0.429_beta +enderCoreVersion=1.7.10-0.2.0.39_beta
\ No newline at end of file |
