Rewrote build script, improved packaging
- Renamed :packageWindows to :packageNsis
- ImageMagick now required for :packageNsis
- Packaging output is now in build/packages
- Rewrote build script
- Packaging logic and LWJGL dependencies now in separate files
- Packaging logic now implemented with Gradle, not Bash scripts
- Cross-platform?
- Added :packageZip
- Universal ZIP with start scripts
- Changed version detection logic
- Tags of ancestor commits are now considered
- Only tags with format vMAJOR.MINOR.PATCH[-SUFFIX] are considered
- If the tag's commit isn't HEAD, PATCH is incremented
- When version detection fails, dummy version is 999.0.0-<buildID or date>
- LWJGL target platforms can be overridden with forceTargets project property
This commit is contained in:
41
build_logic/packaging/zip/script.gradle
Normal file
41
build_logic/packaging/zip/script.gradle
Normal file
@@ -0,0 +1,41 @@
|
||||
task packageZip_processResources(type: Copy) {
|
||||
dependsOn preparePackaging
|
||||
|
||||
from ('src/packaging/zip') {
|
||||
filesMatching('start.*') {
|
||||
filter(
|
||||
org.apache.tools.ant.filters.ReplaceTokens,
|
||||
tokens: [mainJarFile: project.tasks.jar.archiveFileName.get()]
|
||||
)
|
||||
}
|
||||
}
|
||||
from ('src/main/resource/assets/icons/logo256.original.png') {
|
||||
rename 'logo256.original.png', 'logo.png'
|
||||
}
|
||||
from('LICENSE') {
|
||||
rename 'LICENSE', 'LICENSE.txt'
|
||||
}
|
||||
into 'build/tmp/packaging/workingDir'
|
||||
}
|
||||
|
||||
task packageZip(type: Zip) {
|
||||
description 'Builds the project and creates a cross-platform ZIP package.'
|
||||
group 'Progressia'
|
||||
|
||||
dependsOn resolveVersion
|
||||
dependsOn requestCrossPlatformDependencies
|
||||
dependsOn build
|
||||
dependsOn preparePackaging
|
||||
|
||||
dependsOn packageZip_processResources
|
||||
|
||||
archiveBaseName = project.name
|
||||
archiveAppendix = 'universal'
|
||||
|
||||
doFirst {
|
||||
archiveVersion = project.version
|
||||
}
|
||||
|
||||
from 'build/tmp/packaging/workingDir'
|
||||
destinationDirectory = file('build/packages')
|
||||
}
|
||||
Reference in New Issue
Block a user