diff options
Diffstat (limited to 'source-builder/sb/log.py')
-rwxr-xr-x | source-builder/sb/log.py | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/source-builder/sb/log.py b/source-builder/sb/log.py index 301bd96..7ad4763 100755 --- a/source-builder/sb/log.py +++ b/source-builder/sb/log.py @@ -1,6 +1,6 @@ # # RTEMS Tools Project (http://www.rtems.org/) -# Copyright 2010-2012 Chris Johns (chrisj@rtems.org) +# Copyright 2010-2017 Chris Johns (chrisj@rtems.org) # All rights reserved. # # This file is part of the RTEMS Tools package in 'rtems-testing'. @@ -26,7 +26,7 @@ from __future__ import print_function import os import sys -import error +from . import error # # A global log. @@ -34,6 +34,11 @@ import error default = None # +# A global capture handler. +# +capture = None + +# # Global parameters. # tracing = False @@ -70,6 +75,8 @@ def stderr(text = os.linesep, log = None): for l in text.replace(chr(13), '').splitlines(): print(l, file = sys.stderr) sys.stderr.flush() + if capture is not None: + capture(text) def output(text = os.linesep, log = None): if not quiet: @@ -80,10 +87,12 @@ def notice(text = os.linesep, log = None): for l in text.replace(chr(13), '').splitlines(): print(l) sys.stdout.flush() + if capture is not None: + capture(text) _output(text, log) def trace(text = os.linesep, log = None): - if tracing: + if not quiet and tracing: _output(text, log) def warning(text = os.linesep, log = None): @@ -105,7 +114,7 @@ def tail(log = None): class log: """Log output to stdout or a file.""" - def __init__(self, streams = None, tail_size = 200): + def __init__(self, streams = None, tail_size = 400): self.tail = [] self.tail_size = tail_size self.fhs = [None, None] |