diff options
Diffstat (limited to 'share')
-rw-r--r-- | share/spack/csh/spack.csh | 4 | ||||
-rwxr-xr-x | share/spack/setup-env.sh | 5 |
2 files changed, 5 insertions, 4 deletions
diff --git a/share/spack/csh/spack.csh b/share/spack/csh/spack.csh index 6690f08eed..a773dd216b 100644 --- a/share/spack/csh/spack.csh +++ b/share/spack/csh/spack.csh @@ -77,8 +77,8 @@ case env: set _sp_env_arg="" [ $#_sp_args -gt 1 ] && set _sp_env_arg = ($_sp_args[2]) - if ( "$_sp_env_arg" == "" || "$_sp_env_arg" =~ "-*" ) then - # no args or does not start with -: just execute + if ( "$_sp_env_arg" == "" || "$_sp_args" =~ "*--sh*" || "$_sp_args" =~ "*--csh*" || "$_sp_args" =~ "*-h*" ) then + # no args or args contain -h/--help, --sh, or --csh: just execute \spack $_sp_flags env $_sp_args else shift _sp_args # consume 'activate' or 'deactivate' diff --git a/share/spack/setup-env.sh b/share/spack/setup-env.sh index af18fcd4e1..79688455bf 100755 --- a/share/spack/setup-env.sh +++ b/share/spack/setup-env.sh @@ -101,8 +101,9 @@ function spack { else case $_sp_arg in activate) - if [ -z "$1" -o "${1#-}" != "$1" ]; then - # no args or does not start with -: just execute + _a="$@" + if [ -z "$1" -o "${_a#*--sh}" != "$_a" -o "${_a#*--csh}" != "$_a" -o "${_a#*-h}" != "$_a" ]; then + # no args or args contain -h/--help, --sh, or --csh: just execute command spack "${args[@]}" else # actual call to activate: source the output |