Files
makamys 28b93dd4f7 Reject RFG, return to FG
RFG's performance is unsuitable for this project, see
https://github.com/GTNewHorizons/RetroFuturaGradle/issues/49

Reverts the following commits:

ba1f02d Begin RFG move. Common module compiles
b589106 Mixin module works now I think
46a5c6d Use VERSION tag in Mixin module
2409b24 Mixingasm seems to work now
f0b355c Sources jar get
23e833f Remove redundant calls
2e78938 Update gradle in hopes that it will magically fix all my problems
80e0723 Port all the modules
28e98d5 Port All module (not the same thing)
3a09260 Fix common module build failing
1088934 Get rid of bloat from buildscript template
bff36c3 Porting is done now maybe
27e3058 Fix what I broke
bbc0b48 zulu?
9b4bde7 I guess I need Java 17 too
c3af516 RFG needs alot of ram apparently

But keeps these:

9152c1a Don't build alternate flavors by default
24f6c06 Move compat module's MixinExtras temp jar to temp dir
2023-10-21 00:32:29 +02:00

152 lines
3.5 KiB
Groovy

/** Common code for Forge 1.7.10 builds */
apply plugin: 'forge'
ext.publishDir = project.multiproject_structure.toBoolean() ? "${projectDir}/../publish" : "${rootDir}/publish"
def runCommand(cmd) {
def commitHashProc = cmd.execute(null, file("${projectDir}"))
commitHashProc.waitFor()
if(commitHashProc.exitValue() == 0){
def commitHash = commitHashProc.text.trim()
return commitHash
} else {
println commitHashProc.err.text
println(cmd + " exited with non-zero return value")
return null
}
}
def getCommitVersion() {
def ver = null
def versionPath = publishDir + "/version.txt"
if(file(versionPath).isFile()) {
ver = file(versionPath).text
} else {
try {
ver = runCommand("git describe --tags --dirty") ?: "UNKNOWN-" + runCommand("git describe --always --dirty") ?: "UNKNOWN"
} catch(Exception e){
println "Failed to run " + cmd + ": " + e.getMessage()
ver = "UNKNOWN"
}
}
ver = ver.trim()
if(ver.charAt(0) == 'v') {
ver = ver.substring(1)
}
return ver
}
project.version = getCommitVersion()
group = project.group
archivesBaseName = "${project.archives_base}-${project.minecraft_version}"
minecraft {
version = "${project.minecraft_version}-${project.forge_version}"
runDir = "run"
replace '@VERSION@', project.version
}
// These settings allow you to choose what version of Java you want to be compatible with. Forge 1.7.10 runs on Java 6 to 8.
sourceCompatibility = 1.8
targetCompatibility = 1.8
repositories {
maven {
name = "chickenbones"
url = "http://chickenbones.net/maven/"
}
}
configurations {
embed
compile.extendsFrom(embed)
shade
compile.extendsFrom(shade)
}
if(project.enable_mixin.toBoolean()) {
apply from: "buildscript/forge-1.7-mixin.gradle"
}
project.ext.override_dependencies = false
if(file("project.gradle").exists()){
apply from: "project.gradle"
}
if(!project.ext.override_dependencies) {
dependencies {
runtimeOnly "codechicken:CodeChickenLib:1.7.10-1.1.3.140:dev"
runtimeOnly "codechicken:CodeChickenCore:1.7.10-1.0.7.47:dev"
}
}
jar {
from(sourceSets.main.output);
// embed libraries in jar
from configurations.embed.collect {
exclude '**/LICENSE', '**/LICENSE.txt'
it.isDirectory() ? it : zipTree(it)
}
configurations.shade.each { dep ->
from(project.zipTree(dep)){
exclude '**/LICENSE', '**/LICENSE.txt', 'META-INF', 'META-INF/**'
}
}
}
processResources {
// This will ensure that this task is redone when the versions or any
// user-defined properties change.
inputs.property "version", version
inputs.property "mcversion", project.minecraft.version
inputs.properties project.ext.getProperties()
filesMatching('*.info') {
expand project.properties
}
}
// Ensures that the encoding of source files is set to UTF-8, see http://yodaconditions.net/blog/fix-for-java-file-encoding-problems-with-gradle.html
tasks.withType(JavaCompile) {
options.encoding = "UTF-8"
}
// Add git commit hash to MANIFEST.MF
def getCommitHash(){
try {
def commitHashProc = "git describe --always --dirty".execute()
commitHashProc.waitFor()
if(commitHashProc.exitValue() == 0){
def commitHash = commitHashProc.text.trim()
return commitHash
} else {
println commitHashProc.err.text
throw new Exception("git describe exited with non-zero return value")
}
} catch(Exception e){
println "Failed to get commit version: " + e.getMessage()
}
return "UNKNOWN" // fallback
}
jar {
manifest {
attributes (
'Commit-ID': getCommitHash(),
)
}
}