From f670c933e0b49c331fcb177355243591ff4aef9c Mon Sep 17 00:00:00 2001
From: Wilson Liu <wliu5@unimelb.edu.au>
Date: Mon, 10 Dec 2018 12:09:11 +1100
Subject: [PATCH] increase heap size;

---
 pom.xml                                       | 62 +++++++++++++++++++
 src/main/scripts/unix/unimelb-mf-check        |  2 +-
 src/main/scripts/unix/unimelb-mf-upload       |  2 +-
 src/main/scripts/windows/unimelb-mf-check.cmd |  2 +-
 .../scripts/windows/unimelb-mf-upload.cmd     |  2 +-
 5 files changed, 66 insertions(+), 4 deletions(-)

diff --git a/pom.xml b/pom.xml
index d4c4a80..e3c4a51 100644
--- a/pom.xml
+++ b/pom.xml
@@ -20,6 +20,8 @@
 		<jre8mac64url>https://download.oracle.com/otn-pub/java/jdk/8u191-b12/2787e4a523244c269598db4e85c51e0c/jre-8u191-macosx-x64.tar.gz</jre8mac64url>
 		<jre8win64file>jre-8u191-windows-x64</jre8win64file>
 		<jre8win64url>https://download.oracle.com/otn-pub/java/jdk/8u191-b12/2787e4a523244c269598db4e85c51e0c/jre-8u191-windows-x64.tar.gz</jre8win64url>
+		<jre8linux64file>jre-8u191-linux-x64</jre8linux64file>
+		<jre8linux64url>https://download.oracle.com/otn-pub/java/jdk/8u191-b12/2787e4a523244c269598db4e85c51e0c/jre-8u191-linux-x64.tar.gz</jre8linux64url>
 		<dist>${project.build.directory}/dist</dist>
 	</properties>
 	<repositories>
@@ -247,6 +249,66 @@
 								<delete dir="${dist}/windows/temp" />
 								<delete file="${dist}/windows/${jre8win64file}.tar.gz" />
 								<delete file="${dist}/windows/${jre8win64file}.tar" />
+								
+								<!-- Linux package -->
+								<echo
+									message="building Linux package with 64 bit Java 8 Runtime..." />
+
+								<mkdir dir="${dist}/linux" />
+								<mkdir dir="${dist}/linux/temp" />
+								<mkdir
+									dir="${dist}/linux/temp/unimelb-mf-clients-${project.version}" />
+								<mkdir
+									dir="${dist}/linux/temp/unimelb-mf-clients-${project.version}/bin" />
+								<mkdir
+									dir="${dist}/linux/temp/unimelb-mf-clients-${project.version}/bin/unix" />
+								<mkdir
+									dir="${dist}/linux/temp/unimelb-mf-clients-${project.version}/lib" />
+								<copy
+									file="${project.build.directory}/unimelb-mf-clients-${project.version}-jar-with-dependencies.jar"
+									tofile="${dist}/linux/temp/unimelb-mf-clients-${project.version}/lib/unimelb-mf-clients.jar" />
+								<copy file="${project.build.directory}/mexplorer.jar"
+									tofile="${dist}/linux/temp/unimelb-mf-clients-${project.version}/lib/mexplorer.jar" />
+								<copy
+									todir="${dist}/linux/temp/unimelb-mf-clients-${project.version}/bin/unix">
+									<fileset dir="${project.basedir}/src/main/scripts/unix" />
+								</copy>
+								<exec executable="curl" dir="${dist}/linux">
+									<arg value="-L" />
+									<arg value="-O" />
+									<arg value="-H" />
+									<arg value="Cookie: oraclelicense=accept-securebackup-cookie" />
+									<arg value="-k" />
+									<arg value="${jre8linux64url}" />
+								</exec>
+								<gunzip src="${dist}/linux/${jre8linux64file}.tar.gz"
+									dest="${dist}/linux" />
+								<untar src="${dist}/linux/${jre8linux64file}.tar"
+									dest="${dist}/linux/temp/unimelb-mf-clients-${project.version}" />
+								<dirset
+									dir="${dist}/linux/temp/unimelb-mf-clients-${project.version}"
+									id="linuxJreDirId">
+									<include name="jre*" />
+								</dirset>
+								<property name="linuxJreDir" refid="linuxJreDirId" />
+								<property name="linuxJavaHome"
+									value="${linuxJreDir}" />
+								<replace
+									dir="${dist}/linux/temp/unimelb-mf-clients-${project.version}/bin/unix"
+									token="@JAVA_HOME@" value="${linuxJavaHome}" />
+								<replace
+									dir="${dist}/linux/temp/unimelb-mf-clients-${project.version}/bin/unix"
+									token="#export JAVA_HOME=" value="export JAVA_HOME=" />
+								<replace
+									dir="${dist}/linux/temp/unimelb-mf-clients-${project.version}/bin/unix"
+									token="#export PATH=" value="export PATH=" />
+								<zip
+									destfile="${dist}/linux/unimelb-mf-clients-${project.version}-linux-x64.zip">
+									<zipfileset dir="${dist}/linux/temp" filemode="755" />
+								</zip>
+								<delete dir="${dist}/linux/temp" />
+								<delete file="${dist}/linux/${jre8linux64file}.tar.gz" />
+								<delete file="${dist}/linux/${jre8linux64file}.tar" />
 							</target>
 						</configuration>
 						<goals>
diff --git a/src/main/scripts/unix/unimelb-mf-check b/src/main/scripts/unix/unimelb-mf-check
index a72dca3..4a63f0c 100644
--- a/src/main/scripts/unix/unimelb-mf-check
+++ b/src/main/scripts/unix/unimelb-mf-check
@@ -25,4 +25,4 @@ JAR=${LIB}/unimelb-mf-clients.jar
 [[ -z $(which java) ]] && echo "Java is not found." >&2 && exit 1
 
 # execute the command
-java -Xmx200m -cp "${JAR}" unimelb.mf.client.sync.cli.MFCheck ${1+"$@"}
+java -Xmx1024m -cp "${JAR}" unimelb.mf.client.sync.cli.MFCheck ${1+"$@"}
diff --git a/src/main/scripts/unix/unimelb-mf-upload b/src/main/scripts/unix/unimelb-mf-upload
index b82ac38..d143576 100644
--- a/src/main/scripts/unix/unimelb-mf-upload
+++ b/src/main/scripts/unix/unimelb-mf-upload
@@ -25,4 +25,4 @@ JAR=${LIB}/unimelb-mf-clients.jar
 [[ -z $(which java) ]] && echo "Java is not found." >&2 && exit 1
 
 # execute the command
-java -Xmx200m -cp "${JAR}" unimelb.mf.client.sync.cli.MFUpload ${1+"$@"}
+java -Xmx1024m -cp "${JAR}" unimelb.mf.client.sync.cli.MFUpload ${1+"$@"}
diff --git a/src/main/scripts/windows/unimelb-mf-check.cmd b/src/main/scripts/windows/unimelb-mf-check.cmd
index 8826433..f7ba1ba 100644
--- a/src/main/scripts/windows/unimelb-mf-check.cmd
+++ b/src/main/scripts/windows/unimelb-mf-check.cmd
@@ -9,4 +9,4 @@ popd
 
 set JAR=%ROOT%\lib\unimelb-mf-clients.jar
 
-java -Xmx200m -cp "%JAR%" unimelb.mf.client.sync.cli.MFCheck %*
+java -Xmx1024m -cp "%JAR%" unimelb.mf.client.sync.cli.MFCheck %*
diff --git a/src/main/scripts/windows/unimelb-mf-upload.cmd b/src/main/scripts/windows/unimelb-mf-upload.cmd
index 8412c85..639f27c 100644
--- a/src/main/scripts/windows/unimelb-mf-upload.cmd
+++ b/src/main/scripts/windows/unimelb-mf-upload.cmd
@@ -9,4 +9,4 @@ popd
 
 set JAR=%ROOT%\lib\unimelb-mf-clients.jar
 
-java -Xmx200m -cp "%JAR%" unimelb.mf.client.sync.cli.MFUpload %*
+java -Xmx1024m -cp "%JAR%" unimelb.mf.client.sync.cli.MFUpload %*
-- 
GitLab