Blame view

bootloader/u-boot_2015_04/tools/buildman/bsettings.py 1.28 KB
6b13f685e   김민수   BSP 최초 추가
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
  # Copyright (c) 2012 The Chromium OS Authors.
  #
  # SPDX-License-Identifier:	GPL-2.0+
  #
  
  import ConfigParser
  import os
  import StringIO
  
  
  def Setup(fname=''):
      """Set up the buildman settings module by reading config files
  
      Args:
          config_fname:   Config filename to read ('' for default)
      """
      global settings
      global config_fname
  
      settings = ConfigParser.SafeConfigParser()
      if fname is not None:
          config_fname = fname
          if config_fname == '':
              config_fname = '%s/.buildman' % os.getenv('HOME')
          if config_fname:
              settings.read(config_fname)
  
  def AddFile(data):
      settings.readfp(StringIO.StringIO(data))
  
  def GetItems(section):
      """Get the items from a section of the config.
  
      Args:
          section: name of section to retrieve
  
      Returns:
          List of (name, value) tuples for the section
      """
      try:
          return settings.items(section)
      except ConfigParser.NoSectionError as e:
          return []
      except:
          raise
  
  def SetItem(section, tag, value):
      """Set an item and write it back to the settings file"""
      global settings
      global config_fname
  
      settings.set(section, tag, value)
      if config_fname is not None:
          with open(config_fname, 'w') as fd:
              settings.write(fd)