forked from lightbringer/clipper-java
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathbuild.gradle
More file actions
72 lines (59 loc) · 1.75 KB
/
build.gradle
File metadata and controls
72 lines (59 loc) · 1.75 KB
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
allprojects {
group = "de.lighti"
version = "6.4.2"
}
description = 'ClipperJava is a 1:1 Java port of the Clipper project developed by Angus Johnson, which as an implementation of the algorithm proposed by Bala R. Vatti. Clipper has various boolean operations (Union, Difference, XOR, etc.) on arbitrary 2D polygons, e.g. calculate the area in which two polygons overlap. It comes with two Demo applications, one for the Console and one using a Swing-based GUI.'
subprojects {
apply plugin: 'java'
apply plugin: 'maven-publish'
java {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
withSourcesJar()
withJavadocJar()
}
jar {
manifest {
attributes 'Implementation-Title': project.name,
'Implementation-Version': project.version
}
}
sourceSets {
main {
java {
srcDirs 'src'
}
}
}
tasks.withType(JavaCompile) {
options.compilerArgs << '-Xlint:unchecked'
options.deprecation = true
}
publishing {
publications {
ClipperJava(MavenPublication) {
from components.java
}
}
}
javadoc {
if(JavaVersion.current().isJava9Compatible()) {
options.addBooleanOption('html5', true)
}
}
}
project(':Clipper') {
description = 'Clipper is a library with various boolean operations (Union, Difference, XOR, etc.) on arbitrary 2D polygons, e.g. calculate the area in which two polygons overlap.'
}
project(':ClipperConsole') {
description = 'ClipperConsole is a command line tool to read and process polygon files.'
dependencies {
implementation project(':Clipper')
}
}
project(':ClipperGUI') {
description = 'ClipperGUI is a swing-based application to visualize the various operations of the Clipper library.'
dependencies {
implementation project(':Clipper')
}
}