[kernel] r10821 - people/waldi/utils/kconfigeditor2/bin

Bastian Blank waldi at alioth.debian.org
Thu Mar 13 09:02:34 UTC 2008


Author: waldi
Date: Thu Mar 13 09:01:39 2008
New Revision: 10821

Log:
bin/process.py: Document options.


Modified:
   people/waldi/utils/kconfigeditor2/bin/process.py

Modified: people/waldi/utils/kconfigeditor2/bin/process.py
==============================================================================
--- people/waldi/utils/kconfigeditor2/bin/process.py	(original)
+++ people/waldi/utils/kconfigeditor2/bin/process.py	Thu Mar 13 09:01:39 2008
@@ -1,31 +1,57 @@
-import os, sys
+import optparse, os, sys
 
-root = sys.argv[1]
-output = sys.argv[2]
+def main(linux_root, package_root, config_output):
+    from kconfigeditor.kconfig.menu.all import All
+    from kconfigeditor.kconfig.package.files import Files
+
+    package = Files(package_root)
+    arches = {}
+    for i in package.kernelarch.values():
+        if i is not None:
+            arches[i] = 1
+    arches = arches.keys()
+
+    menu = All(linux_root, arches)
+
+    files = {}
+    for key, filelist in package.iteritems():
+        for f in filelist._files:
+            files.setdefault(f.filename, (f, package.kernelarch[key]))
+
+    for file, arch in files.itervalues():
+        if arch is None:
+            menufiles = menu.files_all.values()
+        else:
+            menufiles = menu.files_arch[arch].values()
+        file.dump(config_output, menufiles)
+
+if __name__ == '__main__':
+    try:
+        import kconfigeditor
+    except ImportError:
+        sys.path.append(os.path.join(sys.path[0], '../lib'))
+
+    options = optparse.OptionParser(
+        usage = "%prog [OPTION]... LINUX_ROOT"
+    )
+    options.add_option(
+        "-p", "--package",
+        dest = "package",
+        help = "location of linux-2.6 package [default: LINUX_ROOT]"
+    )
+    options.add_option(
+        "-c", "--config-output",
+        dest = "config_output",
+        help = "output directory for config [default: {LINUX_ROOT,PACKAGE}/debian/config]"
+    )
+
+    opts, args = options.parse_args()
+
+    linux_root = args[0]
+    package_root = opts.package or linux_root
+    config_output = opts.config_output or os.path.join(package_root, 'debian/config')
 
-sys.path.append(os.path.join(sys.path[0], '../lib'))
-sys.path.append(os.path.join(root, "debian/lib/python"))
+    sys.path.append(os.path.join(package_root, "debian/lib/python"))
+
+    main(linux_root, package_root, config_output)
 
-from kconfigeditor.kconfig.menu.all import All
-from kconfigeditor.kconfig.package.files import Files
-
-package = Files(root)
-arches = {}
-for i in package.kernelarch.values():
-    if i is not None:
-        arches[i] = 1
-arches = arches.keys()
-
-menu = All(root, arches)
-
-files = {}
-for key, filelist in package.iteritems():
-    for f in filelist._files:
-        files.setdefault(f.filename, (f, package.kernelarch[key]))
-
-for file, arch in files.itervalues():
-    if arch is None:
-        menufiles = menu.files_all.values()
-    else:
-        menufiles = menu.files_arch[arch].values()
-    file.dump(output, menufiles)



More information about the Kernel-svn-changes mailing list