summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorclintval2017-12-29 01:35:56 -0500
committerclintval2017-12-29 01:35:56 -0500
commite39868af0469095f0714aab4b0126c908d744c58 (patch)
treec32e26effc2f576fc4795925e54dfffbd7309a52
parent5e8c7af265e2f3d7fbdaccbb5d9e557af88c21e7 (diff)
downloadaur-fgbio-git.tar.gz
Add fgbio.sh better bash wrapper
-rw-r--r--fgbio.sh40
1 files changed, 38 insertions, 2 deletions
diff --git a/fgbio.sh b/fgbio.sh
index adc1a4511783..99d753b531d2 100644
--- a/fgbio.sh
+++ b/fgbio.sh
@@ -1,2 +1,38 @@
-#!/bin/sh
-exec /usr/bin/java -jar '/usr/share/java/fgbio/fgbio.jar' "$@"
+#!/bin/bash
+set -eou pipefail
+export LC_ALL=en_US.UTF-8
+
+default_jvm_mem_opts="-Xms512m -Xmx1g"
+jvm_mem_opts=""
+jvm_prop_opts=""
+pass_args=""
+
+for arg in "$@"; do
+ case $arg in
+ '-D'*)
+ jvm_prop_opts="$jvm_prop_opts $arg"
+ ;;
+ '-XX'*)
+ jvm_prop_opts="$jvm_prop_opts $arg"
+ ;;
+ '-Xm'*)
+ jvm_mem_opts="$jvm_mem_opts $arg"
+ ;;
+ *)
+ pass_args="$pass_args $arg"
+ ;;
+ esac
+done
+
+if [ "$jvm_mem_opts" == "" ]; then
+ jvm_mem_opts="$default_jvm_mem_opts"
+fi
+
+pass_arr=($pass_args)
+if [[ ${pass_arr[0]:=} == org* ]]
+then
+ eval java $jvm_mem_opts $jvm_prop_opts -cp '/usr/share/java/fgbio/fgbio.jar' $pass_args
+else
+ eval java $jvm_mem_opts $jvm_prop_opts -jar '/usr/share/java/fgbio/fgbio.jar' $pass_args
+fi
+exit