diff --git a/.gitignore b/.gitignore
index 398e8f1..229899a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,3 +2,4 @@
ant-build/output/
/build/
.settings/
+.project
diff --git a/.project b/.project
deleted file mode 100644
index 3e8ca47..0000000
--- a/.project
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
- E2U Installers
-
-
-
-
-
-
-
-
diff --git a/.travis.yml b/.travis.yml
index 5cb55fb..16428f6 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,5 +1,5 @@
language: java
os: osx
-osx_image: xcode9.1
+osx_image: xcode9.2
script: ./gradlew dmg
after_success: ./publish.sh
\ No newline at end of file
diff --git a/ant-build/resources/launch4j.manifest b/ant-build/resources/launch4j.manifest
new file mode 100644
index 0000000..a35eb9e
--- /dev/null
+++ b/ant-build/resources/launch4j.manifest
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ Creates, manages and embosses PEF-files
+
+
+
+
+
+
+
+
diff --git a/build.gradle b/build.gradle
index 0c26ab0..75cd38e 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,5 +1,6 @@
plugins {
id "de.inetsoftware.setupbuilder" version "3.4.3"
+ id 'edu.sc.seis.launch4j' version '2.4.2'
}
apply plugin: 'base'
@@ -58,10 +59,31 @@ task copyIcon(type: Copy, dependsOn: 'unzip', description: 'Copies file icon to
into ("${appBase}")
}
+task copyExe(type: Copy, dependsOn: 'createExe') {
+ from ('build/launch4j') {
+ include '*.exe'
+ }
+ into ("${appBase}")
+}
+
task deleteBin(type: Delete, dependsOn: 'unzip', description: 'Removes the bin folder from the distribution.') {
delete "${appBase}/bin"
}
+def launch4jManifest = file("$buildDir/launch4j.manifest")
+
+task createLaunch4jManifest(description: 'Creates the Launch4j manifest from a template.') {
+ doLast() {
+ String contents = file('ant-build/resources/launch4j.manifest').getText('UTF-8')
+ launch4jManifest.getParentFile().mkdirs()
+ launch4jManifest.write(contents.replaceAll('()', "\$1$version.0\$3"), 'UTF-8')
+ }
+ outputs.file launch4jManifest
+ outputs.upToDateWhen{ file('gradle.properties').lastModified()