xref: /openbmc/u-boot/tools/buildman/bsettings.py (revision 03efcb05)
1# Copyright (c) 2012 The Chromium OS Authors.
2#
3# SPDX-License-Identifier:	GPL-2.0+
4#
5
6import ConfigParser
7import os
8
9
10def Setup(fname=''):
11    """Set up the buildman settings module by reading config files
12
13    Args:
14        config_fname:   Config filename to read ('' for default)
15    """
16    global settings
17    global config_fname
18
19    settings = ConfigParser.SafeConfigParser()
20    config_fname = fname
21    if config_fname == '':
22        config_fname = '%s/.buildman' % os.getenv('HOME')
23    if config_fname:
24        settings.read(config_fname)
25
26def GetItems(section):
27    """Get the items from a section of the config.
28
29    Args:
30        section: name of section to retrieve
31
32    Returns:
33        List of (name, value) tuples for the section
34    """
35    try:
36        return settings.items(section)
37    except ConfigParser.NoSectionError as e:
38        print e
39        print ("Warning: No tool chains - please add a [toolchain] section "
40                "to your buildman config file %s. See README for details" %
41                config_fname)
42        return []
43    except:
44        raise
45