diff --git a/Cassiopee/Envs/sh_Cassiopee_local b/Cassiopee/Envs/sh_Cassiopee_local
index 428b0fa7b..51c126f3c 100644
--- a/Cassiopee/Envs/sh_Cassiopee_local
+++ b/Cassiopee/Envs/sh_Cassiopee_local
@@ -29,7 +29,7 @@ if echo "$KC" | grep -q 'ubuntu'; then export MAC="ubuntu"; fi
if echo "$KC" | grep -q 'visio'; then export MAC="visio"; fi
if echo "$KC" | grep -q 'austri'; then export MAC="austri"; fi
if echo "$KC" | grep -q 'celeste'; then export MAC="visio"; fi
-if echo "$KC" | grep -q 'visung'; then export MAC="juno"; fi
+if echo "$KC" | grep -q 'visung'; then export MAC="visung"; fi
if echo "$KC" | grep -q 'giulia'; then export MAC="giulia"; fi
if echo "$KC" | grep -q 'sator'; then export MAC="sator_cas"; fi
if echo "$KC" | grep -q 'jean-zay'; then export MAC="jean-zay"; fi
@@ -198,38 +198,38 @@ elif [ "$MAC" = "spiro_gcc" ]; then
export OMP_PLACES=cores
unset $(env | grep SLURM | cut -d'=' -f 1)
-elif [ "$MAC" = "visung" ]; then
-#----------------------------- visung -----------------------------------------
- export ELSAPROD=visung_r8
+elif [ "$MAC" = "visung_gcc" ]; then
+#----------------------------- visung_gcc -------------------------------------
+ export ELSAPROD=visung_gcc
export ELSAPROD=$ELSAPROD$EXT
- # Nbre de threads
- export OMP_NUM_THREADS=72
. /etc/profile.d/modules-onera.sh
module purge
- module load subversion
- module load occt/7.6.1-gnu831
- module load python/3.8.14-gnu831
- #module load intel/21.2.0
- module load gcc/10.2.0
- module load hdf5/1.10.5-gnu831-ompi405
module load lapack/3.9.1-gnu831
- export PRODMODE=1
+ module load occt/7.6.1-gnu831
+ module load socle-cfd/7.0-gnu850-ompi502
+ module load subversion/1.14.1-gnu831
+ module load emacs/27.2-gnu831
export PYTHONEXE=python3
+ export OMP_NUM_THREADS=72
+ #export PRODMODE=1
-elif [ "$MAC" = "visung_el8" ]; then
+elif [ "$MAC" = "visung" ]; then
#----------------------------- visung -----------------------------------------
- export ELSAPROD=visung_el8
+ export ELSAPROD=visung
export ELSAPROD=$ELSAPROD$EXT
#. /etc/profile.d/modules-dri.sh
module purge
- module load subversion
- module load python/3.7.4-intel2120
- module load intel/21.2.0
module load hdf5/1.10.5-intel2120-impi
module load occt/7.6.1-gnu831
+ module load emacs/27.2-gnu831
+ module load subversion/1.14.1-gnu831
+ module load socle-cfd/6.0-intel2220-impi
export PYTHONEXE=python3
export OMP_NUM_THREADS=72
#export PRODMODE=1
+ unset I_MPI_FABRICS_LIST
+ unset I_MPI_FABRICS
+ unset I_MPI_TCP_NETMASK
unset I_MPI_PMI_LIBRARY
elif [ "$MAC" = "austri" ]; then
diff --git a/tools/moveDist b/tools/moveDist
index ae06bc14e..04af59d1b 100755
--- a/tools/moveDist
+++ b/tools/moveDist
@@ -1,92 +1,161 @@
#! /bin/sh
-# moveDist
-# moveDist
-# recopie le module dans un nouveau directory d'installation
-# ex: moveDist Transform /home/benoit/Cassiopee/Dist/bin/x86_r8
+# Copy a CASSIOPEE distribution into a destination path with a new prod. name
+
+# Print help message
+usage() {
+ echo "moveDist --destination= # Copy all modules of a CASSIOPEE distribution into a destination path with the same prod. name"
+ echo "moveDist --destination= --new-prod-name= # Copy all modules of a CASSIOPEE distribution into a destination path with a new prod. name"
+ echo "moveDist --destination= --module= # Copy a single module of a CASSIOPEE distribution into a destination path with the same prod. name"
+ exit 1
+}
+
+# Parse command-line arguments
+DEST_PROD_PATH=""
+NEW_ELSAPROD=""
+while [[ "$1" != "" ]]; do
+ case "$1" in
+ --destination=*)
+ DEST_PROD_PATH="${1#*=}"
+ ;;
+ -d)
+ shift
+ DEST_PROD_PATH="${1#*=}"
+ ;;
+ --module=*)
+ MODULE="${1#*=}"
+ ;;
+ -m)
+ shift
+ MODULE="${1#*=}"
+ ;;
+ --new-prod-name=*)
+ NEW_ELSAPROD="${1#*=}"
+ ;;
+ --help | -h)
+ usage
+ ;;
+ *)
+ echo "Invalid argument: $1"
+ usage
+ ;;
+ esac
+ shift
+done
+
+# Sanitise arguments
+if [ -z $MODULE ]; then
+ MODULE="all"
+fi
+
+if [ -z $NEW_ELSAPROD ]; then
+ NEW_ELSAPROD=$ELSAPROD
+fi
+
+if [ -z $DEST_PROD_PATH ]; then
+ echo ">>> Please set a destination path using --destination="
+ usage
+ exit 1
+fi
if [ "$CASSIOPEE" = "" ]; then
- echo "You must specify a CASSIOPEE variable in your environment."
- echo "This variable specifies the installation path of *Cassiopee*."
- exit
+ echo "You must set a CASSIOPEE variable in your environment."
+ echo "This variable specifies the installation path of *Cassiopee*."
+ exit 1
fi
if [ "$ELSAPROD" = "" ]; then
- echo "You must specify a ELSAPROD in your environment."
- echo "This variable identifies the processor type."
- exit
+ echo "You must set a ELSAPROD in your environment."
+ echo "This variable identifies the processor type."
+ exit 1
fi
+# Setting vars
+CWD=$(pwd)
+CASSIOPEE=${CASSIOPEE%/}
+mkdir -p $DEST_PROD_PATH
+DEST_CAS_PATH=$(dirname $(dirname $(dirname $DEST_PROD_PATH)))
+
if [ "$PYTHONEXE" = "python3" ]; then
- pyversion="python"`python3 -c "import sys; print('.'.join(str(n) for n in sys.version_info[:2]))"`
- alias python=python3
+ pyversion="python"`python3 -c "import sys; print('.'.join(str(n) for n in sys.version_info[:2]))"`
+ alias python=python3
else
- pyversion="python"`python -c "import sys; print('.'.join(str(n) for n in sys.version_info[:2]))"`
+ pyversion="python"`python -c "import sys; print('.'.join(str(n) for n in sys.version_info[:2]))"`
fi
+pylib="lib"
+case $ELSAPROD in
+ ubuntu*)
+ pylib="local/"$pylib
+ pysite="dist-packages"
+ ;;
+ *)
+ pysite="site-packages"
+ ;;
+esac
+pylvs="$pylib/$pyversion/$pysite"
-if ([ $# -eq 0 ]); then
- echo "moveDist "
- echo "moveDist /tmp/Cassiopee/Dist/bin/x86_r8"
- echo "Recopie le Dist dans "
- echo "moveDist "
- echo "ex: moveDist Transform /tmp/Cassiopee/Dist/bin/x86_r8"
- echo "Recopie le Dist du module dans /lib/$pyversion/site-packages"
-fi
+new_pylib="lib"
+case $NEW_ELSAPROD in
+ ubuntu*)
+ new_pylib="local/"$new_pylib
+ pysite="dist-packages"
+ ;;
+ *)
+ pysite="site-packages"
+ ;;
+esac
+new_pylvs="$new_pylib/$pyversion/$pysite"
-# push module a la position dir
-if [ $# -eq 2 ]; then
- module=$1
- path=$2
- mkdir -p $path
-
- here=`pwd`
- cd "$CASSIOPEE/Dist/bin/$ELSAPROD/lib/$pyversion/site-packages"
- tar cvf $module.tar $module
- mv $module.tar $path
- cd $path
- mkdir -p lib/$pyversion/site-packages
- if [ -L lib64 ]; then
- rm lib64
- ln -s lib lib64
- else
- ln -s lib lib64
- fi
- mv $module.tar lib/$pyversion/site-packages
- cd lib/$pyversion/site-packages
- tar xvf $module.tar
- rm $module.tar
- cd $here
-fi
-# push all modules a la position dir
-if [ $# -eq 1 ]; then
- path=$1
- mkdir -p $path
- here=`pwd`
- cd "$CASSIOPEE/Dist/bin/$ELSAPROD"
- tar cvf all.tar .
- mv all.tar $path
- cd $path
- tar xvf all.tar
- rm all.tar
- if [ -L lib64 ]; then
- rm lib64
- ln -s lib lib64
- else
- ln -s lib lib64
- fi
- # Change installPath
- cd lib/$pyversion/site-packages
- cd KCore
- cp "$CASSIOPEE/Dist/bin/$ELSAPROD/lib/$pyversion/site-packages/KCore/installPath.py" .
-
- cp installPath.py installPath_old.py
- dirname=$(dirname $(dirname $(dirname $path)))
- s1=$(sed 's/[\/&]/\\&/g' <<< $CASSIOPEE)
- s2=$(sed 's/[\/&]/\\&/g' <<< $dirname)
- # Remplace $CASSIOPEE par $dirname
+if [ $MODULE = "all" ]; then
+ # Copy all modules to their destination
+ cd "$CASSIOPEE/Dist/bin/$ELSAPROD"
+ tar cvf all.tar .
+ mv all.tar $DEST_PROD_PATH
+ cd $DEST_PROD_PATH
+ tar xvf all.tar
+ rm all.tar
+ if [ -L lib64 ]; then
+ rm lib64
+ ln -s lib lib64
+ else
+ ln -s lib lib64
+ fi
+
+ # Edit installPath (replace $CASSIOPEE by $DEST_CAS_PATH and edit prod. name)
+ cd "$pylvs/KCore"
+ cp "$CASSIOPEE/Dist/bin/$ELSAPROD/$pylvs/KCore/installPath.py" .
+ s1=$(sed 's/[\/&]/\\&/g' <<< "$CASSIOPEE")
+ s2=$(sed 's/[\/&]/\\&/g' <<< "$DEST_CAS_PATH")
+ sed -i "s/$s1/$s2/g" installPath.py
+ if [ "$ELSAPROD" != "$NEW_ELSAPROD" ]; then
+ s1=$(sed 's/[\/&]/\\&/g' <<< "$ELSAPROD/$pylvs")
+ s2=$(sed 's/[\/&]/\\&/g' <<< "$NEW_ELSAPROD/$new_pylvs")
sed -i "s/$s1/$s2/g" installPath.py
- more installPath.py
- cd $here
- # Copie les fichiers d'environnement
- cp "$CASSIOPEE"/Dist/env_* $path/../..
- cp "$CASSIOPEE"/Dist/sh_* $path/../..
+ s1=$(sed 's/[\/&]/\\&/g' <<< "$ELSAPROD/$pylib")
+ s2=$(sed 's/[\/&]/\\&/g' <<< "$NEW_ELSAPROD/$new_pylib")
+ sed -i "s/$s1/$s2/g" installPath.py
+ fi
+ more installPath.py
+
+ # Copy environment files
+ cp "$CASSIOPEE"/Dist/env_* "$DEST_PROD_PATH"/../..
+ cp "$CASSIOPEE"/Dist/sh_* "$DEST_PROD_PATH"/../..
+ cd $CWD
+else
+ # Copy a single module to its destination
+ cd "$CASSIOPEE/Dist/bin/$ELSAPROD/$pylvs"
+ tar cvf $MODULE.tar $MODULE
+ mv $MODULE.tar $DEST_PROD_PATH
+ cd $DEST_PROD_PATH
+ mkdir -p $pylvs
+ if [ -L lib64 ]; then
+ rm lib64
+ ln -s lib lib64
+ else
+ ln -s lib lib64
+ fi
+ mv $MODULE.tar $pylvs
+ cd $pylvs
+ tar xvf $MODULE.tar
+ rm $MODULE.tar
+ cd $CWD
fi