[kernel] r9305 - dists/trunk/linux-2.6/debian/lib/python/debian_linux
Bastian Blank
waldi at alioth.debian.org
Wed Aug 15 14:29:58 UTC 2007
Author: waldi
Date: Wed Aug 15 14:29:58 2007
New Revision: 9305
Log:
* debian/lib/python/debian_linux/gencontrol.py:
Expect config and template dirs as list and set default.
* debian/lib/python/debian_linux/utils.py:
Read templates from a list of directories.
Modified:
dists/trunk/linux-2.6/debian/lib/python/debian_linux/gencontrol.py
dists/trunk/linux-2.6/debian/lib/python/debian_linux/utils.py
Modified: dists/trunk/linux-2.6/debian/lib/python/debian_linux/gencontrol.py
==============================================================================
--- dists/trunk/linux-2.6/debian/lib/python/debian_linux/gencontrol.py (original)
+++ dists/trunk/linux-2.6/debian/lib/python/debian_linux/gencontrol.py Wed Aug 15 14:29:58 2007
@@ -24,9 +24,9 @@
class Gencontrol(object):
makefile_targets = ('binary-arch', 'build', 'setup', 'source')
- def __init__(self, underlay = None):
- self.config = ConfigReaderCore([underlay, "debian/config"])
- self.templates = Templates()
+ def __init__(self, config_dirs = ["debian/config"], template_dirs = ["debian/templates"]):
+ self.config = ConfigReaderCore(config_dirs)
+ self.templates = Templates(template_dirs)
def __call__(self):
packages = PackagesList()
Modified: dists/trunk/linux-2.6/debian/lib/python/debian_linux/utils.py
==============================================================================
--- dists/trunk/linux-2.6/debian/lib/python/debian_linux/utils.py (original)
+++ dists/trunk/linux-2.6/debian/lib/python/debian_linux/utils.py Wed Aug 15 14:29:58 2007
@@ -1,4 +1,4 @@
-import debian, re, textwrap
+import debian, re, os, textwrap
class SortedDict(dict):
__slots__ = '_list',
@@ -32,30 +32,33 @@
yield self[i]
class Templates(dict):
- def __init__(self, dir = "debian/templates"):
- self.dir = dir
+ def __init__(self, dirs = ["debian/templates"]):
+ self.dirs = dirs
def __getitem__(self, key):
try:
- return dict.__getitem__(self, key)
+ return super(Templates, self).__getitem__(key)
except KeyError: pass
- ret = self._read(key)
- dict.__setitem__(self, key, ret)
- return ret
+ value = self._read(key)
+ super(Templates, self).__setitem__(key, value)
+ return value
def __setitem__(self, key, value):
raise NotImplemented()
def _read(self, name):
prefix, id = name.split('.', 1)
- f = file("%s/%s.in" % (self.dir, name))
- if prefix == 'control':
- return self._readControl(f)
+ for dir in self.dirs:
+ filename = "%s/%s.in" % (dir, name)
+ if os.path.exists(filename):
+ f = file(filename)
+ if prefix == 'control':
+ return self._read_control(f)
+ return f.read()
+ raise KeyError(name)
- return f.read()
-
- def _readControl(self, f):
+ def _read_control(self, f):
entries = []
while True:
More information about the Kernel-svn-changes
mailing list