[firmware-nonfree] 06/24: Move Config class from gencontrol.py to a module of its own

debian-kernel at lists.debian.org debian-kernel at lists.debian.org
Sun Oct 18 13:49:55 UTC 2015


This is an automated email from the git hooks/post-receive script.

benh pushed a commit to branch master
in repository firmware-nonfree.

commit 89bbdc563951b882b2498fa3799da9b67a76dff9
Author: Ben Hutchings <ben at decadent.org.uk>
Date:   Sun Oct 18 01:55:42 2015 +0100

    Move Config class from gencontrol.py to a module of its own
---
 debian/bin/check_upstream.py | 10 ++++------
 debian/bin/gencontrol.py     | 43 ++-----------------------------------------
 debian/lib/python/config.py  | 44 ++++++++++++++++++++++++++++++++++++++++++++
 debian/rules                 |  1 +
 4 files changed, 51 insertions(+), 47 deletions(-)

diff --git a/debian/bin/check_upstream.py b/debian/bin/check_upstream.py
index a3b2d44..083b83f 100755
--- a/debian/bin/check_upstream.py
+++ b/debian/bin/check_upstream.py
@@ -2,13 +2,15 @@
 
 import errno, filecmp, fnmatch, glob, os.path, re, sys
 from enum import Enum
+
+sys.path.insert(0, "debian/lib/python")
 rules_defs = dict((match.group(1), match.group(2))
                   for line in open('debian/rules.defs')
                   for match in [re.match(r'(\w+)\s*:=\s*(.*)\n', line)])
 sys.path.append('/usr/share/linux-support-%s/lib/python' %
                 rules_defs['KERNELVERSION'])
 from debian_linux.firmware import FirmwareWhence
-from debian_linux.config import ConfigParser, SchemaItemList
+from config import Config
 
 class DistState(Enum):
     undistributable = 1
@@ -46,11 +48,7 @@ def check_section(section):
         return DistState.undistributable
 
 def main(source_dir):
-    config = ConfigParser({
-            'base': {'packages': SchemaItemList()},
-            'upstream': {'exclude': SchemaItemList()},
-            })
-    config.read('defines')
+    config = Config()
     dest_dirs = config['base',]['packages']
     exclusions = config['upstream',]['exclude']
 
diff --git a/debian/bin/gencontrol.py b/debian/bin/gencontrol.py
index 49c928a..283d67f 100755
--- a/debian/bin/gencontrol.py
+++ b/debian/bin/gencontrol.py
@@ -2,9 +2,10 @@
 
 import os, re, sys, codecs
 
+sys.path.insert(0, "debian/lib/python")
 sys.path.append(sys.argv[1] + "/lib/python")
 
-from debian_linux.config import ConfigParser, SchemaItemList
+from config import Config
 from debian_linux.debian import Package, PackageRelation
 from debian_linux.debian import PackageDescription as PackageDescriptionBase
 import debian_linux.gencontrol
@@ -359,45 +360,5 @@ You must agree to the terms of this license before it is installed."""
                 f.write("%s: %s\n" % (key, value))
             f.write('\n')
 
-class Config(dict):
-    config_name = "defines"
-
-    schemas = {
-        'base': {
-            'files': SchemaItemList(),
-            'packages': SchemaItemList(),
-            'support': SchemaItemList(),
-        }
-    }
-
-    def __init__(self):
-        self._read_base()
-
-    def _read_base(self):
-        config = ConfigParser(self.schemas)
-        config.read(self.config_name)
-
-        packages = config['base',]['packages']
-
-        for section in iter(config):
-            real = (section[-1],) + section[:-1]
-            self[real] = config[section]
-
-        for package in packages:
-            self._read_package(package)
-
-    def _read_package(self, package):
-        config = ConfigParser(self.schemas)
-        config.read("%s/%s" % (package, self.config_name))
-
-        for section in iter(config):
-            if len(section) > 1:
-                real = (section[-1], package, '_'.join(section[:-1]))
-            else:
-                real = (section[-1], package)
-            s = self.get(real, {})
-            s.update(config[section])
-            self[real] = s
-
 if __name__ == '__main__':
     GenControl()()
diff --git a/debian/lib/python/config.py b/debian/lib/python/config.py
new file mode 100644
index 0000000..131f5dc
--- /dev/null
+++ b/debian/lib/python/config.py
@@ -0,0 +1,44 @@
+from debian_linux.config import ConfigParser, SchemaItemList
+
+class Config(dict):
+    config_name = "defines"
+
+    schemas = {
+        'base': {
+            'files': SchemaItemList(),
+            'packages': SchemaItemList(),
+            'support': SchemaItemList(),
+        },
+        'upstream': {
+            'exclude': SchemaItemList()
+        }
+    }
+
+    def __init__(self):
+        self._read_base()
+
+    def _read_base(self):
+        config = ConfigParser(self.schemas)
+        config.read(self.config_name)
+
+        packages = config['base',]['packages']
+
+        for section in iter(config):
+            real = (section[-1],) + section[:-1]
+            self[real] = config[section]
+
+        for package in packages:
+            self._read_package(package)
+
+    def _read_package(self, package):
+        config = ConfigParser(self.schemas)
+        config.read("%s/%s" % (package, self.config_name))
+
+        for section in iter(config):
+            if len(section) > 1:
+                real = (section[-1], package, '_'.join(section[:-1]))
+            else:
+                real = (section[-1], package)
+            s = self.get(real, {})
+            s.update(config[section])
+            self[real] = s
diff --git a/debian/rules b/debian/rules
index 8e87f9d..1d021a6 100755
--- a/debian/rules
+++ b/debian/rules
@@ -13,6 +13,7 @@ build: debian/control
 
 clean: debian/control
 	dh_testdir
+	rm -rf debian/lib/python/__pycache__
 	dh_clean
 
 binary-indep:

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/kernel/firmware-nonfree.git



More information about the Kernel-svn-changes mailing list