-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle
82 lines (65 loc) · 2.87 KB
/
build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
/*
* This file was generated by the Gradle 'init' task.
*
* This generated file contains a sample Java project to get you started.
* For more details take a look at the Java Quickstart chapter in the Gradle
* User Manual available at https://docs.gradle.org/5.4.1/userguide/tutorial_java_projects.html
*/
plugins {
// Apply the java plugin to add support for Java
id 'java'
// Apply the application plugin to add support for building an application
id 'application'
// Apply the groovy plugin to also add support for Groovy (needed for Spock)
id 'groovy'
}
import static org.apache.tools.ant.taskdefs.condition.Os.*
repositories {
// Use jcenter for resolving your dependencies.
// You can declare any Maven/Ivy/file repository here.
jcenter()
}
project.ext.lwjglVersion = "3.2.2"
dependencies {
implementation "org.lwjgl:lwjgl:$lwjglVersion"
implementation "org.lwjgl:lwjgl:$lwjglVersion:natives-windows"
implementation "org.lwjgl:lwjgl:$lwjglVersion:natives-linux"
implementation "org.lwjgl:lwjgl:$lwjglVersion:natives-macos"
implementation "org.lwjgl:lwjgl-opengl:$lwjglVersion"
implementation "org.lwjgl:lwjgl-opengl:$lwjglVersion:natives-windows"
implementation "org.lwjgl:lwjgl-opengl:$lwjglVersion:natives-linux"
implementation "org.lwjgl:lwjgl-opengl:$lwjglVersion:natives-macos"
implementation "org.lwjgl:lwjgl-glfw:$lwjglVersion"
implementation "org.lwjgl:lwjgl-glfw:$lwjglVersion:natives-windows"
implementation "org.lwjgl:lwjgl-glfw:$lwjglVersion:natives-linux"
implementation "org.lwjgl:lwjgl-glfw:$lwjglVersion:natives-macos"
compileOnly 'org.projectlombok:lombok:1.18.8'
annotationProcessor 'org.projectlombok:lombok:1.18.8'
// This dependency is found on compile classpath of this component and consumers.
implementation 'com.google.guava:guava:28.1-jre'
// Use the latest Groovy version for Spock testing
testImplementation 'org.codehaus.groovy:groovy-all:3.0.0-beta-2'
// Use the awesome Spock testing and specification framework even with Java
testImplementation 'org.spockframework:spock-core:1.2-groovy-2.5'
testImplementation 'junit:junit:4.12'
}
// Define the main class for the application
mainClassName = 'learnopengl.App'
task(runHelloWindow, dependsOn: 'classes', type:JavaExec) {
if (isFamily(FAMILY_MAC))
jvmArgs '-XstartOnFirstThread'
main = 'learnopengl.chap3.HelloWindow'
classpath = sourceSets.main.runtimeClasspath
}
task(runHelloTriangle, dependsOn: 'classes', type:JavaExec) {
if (isFamily(FAMILY_MAC))
jvmArgs '-XstartOnFirstThread'
main = 'learnopengl.chap3.HelloTriangle'
classpath = sourceSets.main.runtimeClasspath
}
task(runWindowGL, dependsOn: 'classes', type:JavaExec) {
if (isFamily(FAMILY_MAC))
jvmArgs '-XstartOnFirstThread'
main = 'oglib.App'
classpath = sourceSets.main.runtimeClasspath
}