From 603aa1e61c2290cfa48fd5b86c918fb1397248b3 Mon Sep 17 00:00:00 2001 From: Mark Olesen <Mark.Olesen@Germany> Date: Wed, 22 Dec 2010 15:41:51 +0100 Subject: [PATCH] ENH: preserve command-line settings in FOAM_SETTINGS --- bin/mpirunDebug | 7 ++++--- etc/bashrc | 3 ++- etc/cshrc | 3 ++- wmake/wmakeScheduler | 7 ++++--- 4 files changed, 12 insertions(+), 8 deletions(-) diff --git a/bin/mpirunDebug b/bin/mpirunDebug index 3c4aaf6a9a3..bd207e0b8e0 100755 --- a/bin/mpirunDebug +++ b/bin/mpirunDebug @@ -142,14 +142,15 @@ fi # Construct test string for remote execution. # Source OpenFOAM settings if OpenFOAM environment not set. # attempt to preserve the installation directory 'FOAM_INST_DIR' +# use FOAM_SETTINGS to pass command-line settings if [ "$FOAM_INST_DIR" ] then - sourceFoam='[ "$WM_PROJECT" ] || '"FOAM_INST_DIR=$FOAM_INST_DIR . $sourceFoam" + sourceFoam='[ "$WM_PROJECT" ] || '"FOAM_INST_DIR=$FOAM_INST_DIR . $sourceFoam $FOAM_SETTINGS" else - sourceFoam='[ "$WM_PROJECT" ] || '". $sourceFoam" + sourceFoam='[ "$WM_PROJECT" ] || '". $sourceFoam $FOAM_SETTINGS" fi -echo "**sourceFoam:$sourceFoam" +echo "**sourceFoam:$sourceFoam $FOAM_SETTINGS" rm -f $PWD/mpirun.schema touch $PWD/mpirun.schema diff --git a/etc/bashrc b/etc/bashrc index 8bbc1b2c2dd..2b0e3d0be71 100644 --- a/etc/bashrc +++ b/etc/bashrc @@ -89,7 +89,8 @@ _foamSource() # Add in preset user or site preferences: _foamSource `$WM_PROJECT_DIR/bin/foamEtcFile prefs.sh` -# Evaluate command-line parameters +# Evaluate command-line parameters and record settings for later +export FOAM_SETTINGS="$@" while [ $# -gt 0 ] do case "$1" in diff --git a/etc/cshrc b/etc/cshrc index 719a211f532..0ef3f0ce78c 100644 --- a/etc/cshrc +++ b/etc/cshrc @@ -74,7 +74,8 @@ alias _foamSource 'if ($?FOAM_VERBOSE && $?prompt) echo "Sourcing: \!*"; if (\!* # Add in preset user or site preferences: _foamSource `$WM_PROJECT_DIR/bin/foamEtcFile prefs.csh` -# Evaluate command-line parameters +# Evaluate command-line parameters and record settings for later +setenv FOAM_SETTINGS "${*}" while ( $#argv > 0 ) switch ($argv[1]) case *=: diff --git a/wmake/wmakeScheduler b/wmake/wmakeScheduler index fc60b9be4dd..919c34ea050 100755 --- a/wmake/wmakeScheduler +++ b/wmake/wmakeScheduler @@ -108,19 +108,20 @@ fi # Construct test string for remote execution. # Source WM_PROJECT settings if WM_PROJECT environment not set. # attempt to preserve the installation directory 'FOAM_INST_DIR' +# use FOAM_SETTINGS to pass command-line settings case $sourceFoam in */bashrc) if [ "$FOAM_INST_DIR" ] then - sourceFoam='[ "$WM_PROJECT" ] || '"FOAM_INST_DIR=$FOAM_INST_DIR . $sourceFoam" + sourceFoam='[ "$WM_PROJECT" ] || '"FOAM_INST_DIR=$FOAM_INST_DIR . $sourceFoam $FOAM_SETTINGS" else - sourceFoam='[ "$WM_PROJECT" ] || '". $sourceFoam" + sourceFoam='[ "$WM_PROJECT" ] || '". $sourceFoam $FOAM_SETTINGS" fi ;; */cshrc) # TODO: csh equivalent to bash code (preserving FOAM_INST_DIR) - sourceFoam='if ( ! $?WM_PROJECT ) source '"$sourceFoam" + sourceFoam='if ( ! $?WM_PROJECT ) source '"$sourceFoam $FOAM_SETTINGS" ;; esac -- GitLab