summaryrefslogtreecommitdiff
path: root/bin
diff options
context:
space:
mode:
Diffstat (limited to 'bin')
-rwxr-xr-xbin/spack8
1 files changed, 8 insertions, 0 deletions
diff --git a/bin/spack b/bin/spack
index 8386adaa37..a4cd169bf1 100755
--- a/bin/spack
+++ b/bin/spack
@@ -19,6 +19,7 @@ sys.path.insert(0, SPACK_LIB_PATH)
del SPACK_FILE, SPACK_PREFIX, SPACK_LIB_PATH
import spack
import spack.tty as tty
+from spack.error import SpackError
# Command parsing
parser = argparse.ArgumentParser(
@@ -50,5 +51,12 @@ spack.debug = args.debug
command = spack.cmd.get_command(args.command)
try:
command(parser, args)
+except SpackError, e:
+ if spack.debug:
+ # In debug mode, raise with a full stack trace.
+ raise
+ else:
+ # Otherwise print a nice simple message.
+ tty.die(e.message)
except KeyboardInterrupt:
tty.die("Got a keyboard interrupt from the user.")