74 lines
2.1 KiB
Groovy
74 lines
2.1 KiB
Groovy
group = 'lwjake2'
|
|
version = '1.1-SNAPSHOT'
|
|
|
|
import org.gradle.internal.os.OperatingSystem
|
|
|
|
apply plugin: 'java'
|
|
apply plugin: 'application'
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
compileJava {
|
|
sourceCompatibility = 1.8
|
|
targetCompatibility = 1.8
|
|
options.encoding = 'UTF-8'
|
|
}
|
|
|
|
ext {
|
|
slf4j_version = '1.7.25'
|
|
log4j_version = '2.11.1'
|
|
lwjgl_version = '2.9.3'
|
|
lombok_version = '1.18.2'
|
|
|
|
platform = 'linux'
|
|
dependencies_dir = 'libs'
|
|
}
|
|
|
|
dependencies {
|
|
/* LOGGER */
|
|
compile (group: 'org.slf4j', name: 'slf4j-api', version: slf4j_version)
|
|
compile (group: 'org.apache.logging.log4j', name: 'log4j-core', version: log4j_version)
|
|
compile (group: 'org.apache.logging.log4j', name: 'log4j-slf4j-impl', version: log4j_version)
|
|
|
|
/* LOMBOK */
|
|
annotationProcessor (group: 'org.projectlombok', name: 'lombok', version: lombok_version)
|
|
compileOnly (group: 'org.projectlombok', name: 'lombok', version: lombok_version)
|
|
|
|
/* LWJGL */
|
|
compile (group: 'org.lwjgl.lwjgl', name: 'lwjgl', version: lwjgl_version)
|
|
compile (group: 'org.lwjgl.lwjgl', name: 'lwjgl_util', version: lwjgl_version)
|
|
|
|
/* COMPONENTS */
|
|
compileOnly (group: 'com.google.code.findbugs', name: 'annotations', version: '3.0.1')
|
|
}
|
|
|
|
task unpackNatibeLibraries(type: Copy) {
|
|
if (OperatingSystem.current().isWindows()) {
|
|
platform = 'windows'
|
|
} else if (OperatingSystem.current().isMacOsX()) {
|
|
platform = 'osx'
|
|
}
|
|
|
|
configurations.compile.filter {
|
|
(it.getName().indexOf("lwjgl-platform-") >= 0) &&
|
|
(it.getName().indexOf("$platform") >= 0)
|
|
}.each {
|
|
includeEmptyDirs = false
|
|
from (zipTree(it)) {
|
|
exclude "META-INF/*"
|
|
}
|
|
into "$buildDir/natives/$platform"
|
|
}
|
|
}
|
|
|
|
tasks.run.doFirst {
|
|
mainClassName = 'lwjake2.LWJake2'
|
|
applicationDefaultJvmArgs = ["-Djava.library.path=$buildDir/natives/$platform"]
|
|
}.dependsOn(unpackNatibeLibraries)
|
|
|
|
run {
|
|
mainClassName = 'lwjake2.LWJake2'
|
|
applicationDefaultJvmArgs = ["-Djava.library.path=$buildDir/natives/$platform"]
|
|
} |