Initial commit
This commit is contained in:
138
pshell
Executable file
138
pshell
Executable file
@@ -0,0 +1,138 @@
|
||||
#!/bin/bash
|
||||
|
||||
|
||||
|
||||
#Parse JVM arguments, Pshell version and JEP option
|
||||
export PSHELL_VER=default
|
||||
export JVM_ARGS=
|
||||
#export JAVA_VER=/opt/gfa/java/openjdk-1.8.0_40
|
||||
#export JAVA_VER=/opt/gfa/java/jdk1.8.0_72
|
||||
export JAVA_VER=/opt/gfa/java/openjdk-12_32
|
||||
#export JEP=
|
||||
|
||||
for i in "$@"
|
||||
do
|
||||
case $i in
|
||||
-jvmarg=*)
|
||||
JVM_ARGS="${i#*=}"
|
||||
#echo 'JVM args:' ${JVM_ARGS}
|
||||
shift
|
||||
;;
|
||||
|
||||
-version=*|--version=*)
|
||||
export PSHELL_VER="${i#*=}"
|
||||
echo "Using version " ${PSHELL_VER}
|
||||
#shift
|
||||
;;
|
||||
|
||||
-test)
|
||||
export PSHELL_VER=testing
|
||||
echo "Using testing version"
|
||||
#shift
|
||||
;;
|
||||
|
||||
-last)
|
||||
export PSHELL_VER=latest
|
||||
echo "Using latest version"
|
||||
#shift
|
||||
;;
|
||||
|
||||
-javaver=*|--javaver=*)
|
||||
export JAVA_VER="${i#*=}"
|
||||
echo "Using java version " ${JAVA_VER}
|
||||
#shift
|
||||
;;
|
||||
|
||||
# -py2)
|
||||
# JEP=2
|
||||
# echo "Setting Python 2 for JEP"
|
||||
# shift
|
||||
# ;;
|
||||
|
||||
# -py3)
|
||||
# JEP=3
|
||||
# echo "Setting Python 3 for JEP"
|
||||
# shift
|
||||
# ;;
|
||||
|
||||
*) # unknown option
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
#echo $@
|
||||
|
||||
#Parse Pshell version
|
||||
#if [[ $@ == **-test** ]] ; then
|
||||
# echo "Using testing version"
|
||||
# export PSHELL_VER=testing
|
||||
#else
|
||||
# if [[ $@ == **-last** ]] ; then
|
||||
# echo "Using latest version"
|
||||
# export PSHELL_VER=latest
|
||||
# fi
|
||||
#fi
|
||||
|
||||
|
||||
export JVM_EARGS=
|
||||
|
||||
|
||||
#Standard startup
|
||||
if [[ $@ != **-py** ]] ; then
|
||||
#if [[ $JEP == "" ]] ; then
|
||||
${JAVA_VER}/bin/java ${JVM_EARGS} ${JVM_ARGS} -jar /opt/gfa/pshell/${PSHELL_VER} $@
|
||||
exit
|
||||
fi
|
||||
|
||||
|
||||
#Using JEP
|
||||
#First clean path and vars
|
||||
#unset JCPDS_PATH
|
||||
#unset XRF_PEAK_LIBRARY
|
||||
unset PYTHONPATH
|
||||
CLEAN_PATH=""
|
||||
for p in $(echo $PATH | sed 's/:/ /g') ; do
|
||||
if [[ $p =~ ^.*/opt/gfa/python.*$ ]] ; then
|
||||
echo 'Remove from path' $p
|
||||
else
|
||||
if [ "$CLEAN_PATH" == "" ] ; then
|
||||
CLEAN_PATH=$p
|
||||
else
|
||||
CLEAN_PATH=$CLEAN_PATH:$p
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ $@ == **-py3** ]] ; then
|
||||
#Python 3
|
||||
echo "Setting Python 3 for JEP"
|
||||
#export PYTHONHOME=/opt/gfa/pshell/python/anaconda3
|
||||
#export PYTHONHOME=/exchange/tmp/pshell/python/anaconda3
|
||||
#export PYTHONHOME=/exchange/tmp/pshell/python/latest
|
||||
export PYTHONHOME=/opt/gfa/python-3.5/latest
|
||||
#export JEP_JAR=${PYTHONHOME}/lib/python3.5/site-packages/jep/jep-3.6.1.jar
|
||||
export JEP_JAR=${PYTHONHOME}/lib/python3.5/site-packages/jep/jep-3.6.3.jar
|
||||
#TODO: Check why had to set library I compiled myself
|
||||
#export LD_LIBRARY_PATH=${PYTHONHOME}/lib/python3.5/site-packages/jep
|
||||
#export LD_LIBRARY_PATH=/opt/gfa/python-3.5/latest/lib:/opt/gfa/pshell/python/jep/py3
|
||||
|
||||
#${PYTHONHOME}/lib is for OpenJDK
|
||||
export LD_LIBRARY_PATH=${PYTHONHOME}/lib:/opt/gfa/pshell/python/jep/py3
|
||||
export LD_PRELOAD=${PYTHONHOME}/lib/libpython3.5m.so
|
||||
else
|
||||
#Python 2
|
||||
echo "Setting Python 2 for JEP"
|
||||
export PYTHONHOME=/exchange/tmp/pshell/python/anaconda2
|
||||
export LD_LIBRARY_PATH=${PYTHONHOME}/lib/python2.7/site-packages/jep
|
||||
export JEP_JAR=${PYTHONHOME}/lib/python2.7/site-packages/jep/jep-3.5.3.jar
|
||||
fi
|
||||
|
||||
#If starting with -cp the options in PShell manifest fle are not executed: must be don by command line
|
||||
if [[ $JAVA_VER != *"1.8.0"* ]]; then
|
||||
#echo 'Java > 1.8'
|
||||
export JVM_EARGS="--add-opens java.base/sun.nio.ch=ALL-UNNAMED --add-opens java.base/java.io=ALL-UNNAMED --add-opens java.desktop/sun.awt=ALL-UNNAMED --add-opens java.desktop/javax.swing.text.html=ALL-UNNAMED --add-opens java.desktop/sun.swing=ALL-UNNAMED --add-opens java.base/jdk.internal.loader=ALL-UNNAMED"
|
||||
fi
|
||||
|
||||
export PATH=${PYTHONHOME}/bin:$CLEAN_PATH
|
||||
${JAVA_VER}/bin/java ${JVM_EARGS} ${JVM_ARGS} -cp /opt/gfa/pshell/${PSHELL_VER}:${JEP_JAR} ch.psi.pshell.ui.App $@
|
||||
|
||||
Reference in New Issue
Block a user