diff options
author | Richard Purdie <rpurdie@linux.intel.com> | 2006-07-08 16:30:02 +0000 |
---|---|---|
committer | Richard Purdie <rpurdie@linux.intel.com> | 2006-07-08 16:30:02 +0000 |
commit | 4651e6cf84fea69c52d88b57f7ccc9a322933d7b (patch) | |
tree | b9cbe20a8591f2fc1b2d74b807f07429a22bdd5e /lib/bb/msg.py | |
parent | da652d60033fc735e6d5000fa05c6c8174ab3125 (diff) | |
download | bitbake-4651e6cf84fea69c52d88b57f7ccc9a322933d7b.tar.gz |
bitbake/lib/bb/__init__.py:
bitbake/lib/bb/build.py:
bitbake/lib/bb/utils.py:
bitbake/lib/bb/shell.py:
bitbake/lib/bb/providers.py:
bitbake/lib/bb/msg.py:
bitbake/bin/bitbake:
bitbake/bin/bitdoc:
bitbake/classes/base.bbclass:
Start an overhaul of the message handling in bitbake:
- Introduce a new msg module to replace the existing simple calls.
- The msg module adds the conncept of message domains so ultimately we can
select which kinds of debug messages we want to see (it uses an Enum class
for this)
- Add a warn logging level for things the user should really pay attention to
as note is a little overloaded at present
- Start converting to use the new fuctions
Diffstat (limited to 'lib/bb/msg.py')
-rw-r--r-- | lib/bb/msg.py | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/lib/bb/msg.py b/lib/bb/msg.py new file mode 100644 index 000000000..1de0e4591 --- /dev/null +++ b/lib/bb/msg.py @@ -0,0 +1,84 @@ +#!/usr/bin/env python +# ex:ts=4:sw=4:sts=4:et +# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- +""" +BitBake 'msg' implementation + +Message handling infrastructure for bitbake + +# Copyright (C) 2006 Richard Purdie + +This program is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free Software +Foundation; either version 2 of the License, or (at your option) any later +version. + +This program is distributed in the hope that it will be useful, but WITHOUT +ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public License along with +this program; if not, write to the Free Software Foundation, Inc., 59 Temple +Place, Suite 330, Boston, MA 02111-1307 USA. + +""" + +import os, re, bb +from bb import utils + +debug_level = 0 + +verbose = False + +domain = bb.utils.Enum('Depends', 'Provider', 'Build', 'Parsing', 'Collection') + +# +# Message control functions +# + +def set_debug_level(level): + bb.msg.debug_level = level + +def set_verbose(level): + bb.msg.verbose = level + +# +# Message handling functions +# + +def debug(level, domain, msg, fn = None): + std_debug(level, msg) + +def note(level, domain, msg, fn = None): + if level == 1 or verbose: + std_note(msg) + +def warn(domain, msg, fn = None): + std_warn(msg) + +def error(domain, msg, fn = None): + std_error(msg) + +def fatal(domain, msg, fn = None): + std_fatal(msg) + +# +# Compatibility functions for the original message interface +# +def std_debug(lvl, msg): + if debug_level >= lvl: + print 'DEBUG: ' + msg + +def std_note(msg): + print 'NOTE: ' + msg + +def std_warn(msg): + print 'WARNING: ' + msg + +def std_error(msg): + print 'ERROR: ' + msg + +def std_fatal(msg): + print 'ERROR: ' + msg + sys.exit(1) + |