diff options
-rw-r--r-- | fgbio.sh | 40 |
1 files changed, 38 insertions, 2 deletions
@@ -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 |