@@ -63,9 +63,7 @@ if [[ -z "$COMPUTER" ]]; then
6363    return 
6464fi 
6565
66- MODULES=($( __extract " $u_c -$cg " )   $( __combine $( __extract " $u_c -all" ) )  )
67- 
68- log " Loading modules for $M$COMPUTER$CR  on $M$CG$CR " ' s:' 
66+ log " Loading modules (& env variables) for $M$COMPUTER$CR  on $M$CG$CR " ' s:' 
6967
7068#  Reset modules to default system configuration
7169if  [ " $u_c "   !=  ' p'   ];  then 
8078    module purge >  /dev/null 2>&1 
8179fi 
8280
83- #  Find length of longest module_name in $MODULES for $COMPUTER
84- max_module_length=" 0" 
85- for  module_name  in  ${MODULES[@]} ;  do 
86-     module_length=" ${# module_name} " 
81+ ELEMENTS=($( __extract " $u_c -$cg " )   $( __combine $( __extract " $u_c -all" ) )  )
8782
88-      if  [  " $module_length "   -gt   " $max_module_length "  ] ;   then 
89-         max_module_length= " $module_length " 
90-     fi 
91- done 
83+ for   element   in   ${ELEMENTS[@]} ;   do 
84+     if  [[  " $element "   !=   * ' = ' *  ]] ;   then 
85+         log  "  $ module load  $M$element$CR " 
86+         module load  " $element "   >  /dev/null  2>&1 
9287
93- #  Load modules ($MODULES)
94- for  module_name  in  ${MODULES[@]} ;  do 
95-     log_n "  - $CYAN$module_name$COLOR_RESET  " 
96- 
97-     #  Add padding spaces
98-     module_length=" ${# module_name} " 
99-     delta=" $(( max_module_length- module_length- 1 )) " 
100-     if  [ " $delta "   -ge  " 0"   ];  then 
101-         printf  " %0.s "   $( seq 0 $delta ) 
102-     fi 
88+         #  Handle Success / Failure
89+         code=$? 
90+         if  [ " $code "   !=  ' 0'   ];  then 
91+             error " Failed to load module $M$element$CR :" 
10392
104-     #  Load the module 
105-     module load " $module_name  "   >  /dev/null  2>&1 
93+              #  Run load again to show error message 
94+              module load " $element  " 
10695
107-     #  Handle Success / Failure
108-     code=$? 
109-     if  [ " $code "   ==  ' 0'   ];  then 
110-         echo  -e " [$G " " SUCCESS$W ]" 
96+             return 
97+         fi 
11198    else 
112-         echo  -e " [$R " " FAILURE$W ]" 
113- 
114-         #  Run load again to show error message
115-         module load " $module_name " 
116- 
117-         return 
99+         log "  $ export $M$element$CR " 
100+         export  $element 
118101    fi 
119102done 
120103
121- if  [ " $cg "   ==  ' gpu'   ];  then 
122-     isnv=$( $FC  --version |  grep NVIDIA |  wc -l) 
123-     if  [ $isnv  -eq  0 ];  then 
124-         export  CC=nvc CXX=nvc++ FC=nvfortran
125-     fi 
126- fi 
127104ok ' All modules and environment variables have been loaded.' 
128105
129- 
130106return 
0 commit comments