[kernel] r18637 - dists/trunk/linux-2.6/debian/bin

Ben Hutchings benh at alioth.debian.org
Thu Jan 26 05:27:41 UTC 2012


Author: benh
Date: Thu Jan 26 05:27:39 2012
New Revision: 18637

Log:
Add support for getting ABI information from debian-ports

Modified:
   dists/trunk/linux-2.6/debian/bin/abiupdate.py

Modified: dists/trunk/linux-2.6/debian/bin/abiupdate.py
==============================================================================
--- dists/trunk/linux-2.6/debian/bin/abiupdate.py	Thu Jan 26 05:08:33 2012	(r18636)
+++ dists/trunk/linux-2.6/debian/bin/abiupdate.py	Thu Jan 26 05:27:39 2012	(r18637)
@@ -15,13 +15,14 @@
 
 default_url_base = "http://ftp.de.debian.org/debian/"
 default_url_base_incoming = "http://incoming.debian.org/"
+default_url_base_ports = "http://ftp.debian-ports.org/debian/"
 
 
 class url_debian_flat(object):
     def __init__(self, base):
         self.base = base
 
-    def __call__(self, source, filename):
+    def __call__(self, source, filename, arch):
         return self.base + filename
 
 
@@ -29,10 +30,17 @@
     def __init__(self, base):
         self.base = base
 
-    def __call__(self, source, filename):
+    def __call__(self, source, filename, arch):
         return self.base + "pool/main/" + source[0] + "/" + source + "/" + filename
 
 
+class url_debian_ports_pool(url_debian_pool):
+    def __call__(self, source, filename, arch):
+        if arch == 'all':
+            return url_debian_ports_pool(self, source, filename, arch)
+        return self.base + "pool-" + arch + "/main/" + source[0] + "/" + source + "/" + filename
+
+
 class Main(object):
     dir = None
 
@@ -81,7 +89,7 @@
 
     def get_abi(self, arch, prefix):
         filename = "linux-headers-%s-%s_%s_%s.deb" % (self.version_abi, prefix, self.version_source, arch)
-        f = self.retrieve_package(self.url, filename)
+        f = self.retrieve_package(self.url, filename, arch)
         d = self.extract_package(f, "linux-headers-%s_%s" % (prefix, arch))
         f1 = d + "/usr/src/linux-headers-%s-%s/Module.symvers" % (self.version_abi, prefix)
         s = Symbols(open(f1))
@@ -90,15 +98,15 @@
 
     def get_config(self):
         filename = "linux-support-%s_%s_all.deb" % (self.version_abi, self.version_source)
-        f = self.retrieve_package(self.url_config, filename)
+        f = self.retrieve_package(self.url_config, filename, 'all')
         d = self.extract_package(f, "linux-support")
         c = d + "/usr/src/linux-support-" + self.version_abi + "/config.defines.dump"
         config = ConfigCoreDump(fp=file(c))
         shutil.rmtree(d)
         return config
 
-    def retrieve_package(self, url, filename):
-        u = url(self.source, filename)
+    def retrieve_package(self, url, filename, arch):
+        u = url(self.source, filename, arch)
         filename_out = self.dir + "/" + filename
 
         f_in = urllib2.urlopen(u)
@@ -165,8 +173,10 @@
     options = optparse.OptionParser()
     options.add_option("-i", "--incoming", action="store_true", dest="incoming")
     options.add_option("--incoming-config", action="store_true", dest="incoming_config")
+    options.add_option("--ports", action="store_true", dest="ports")
     options.add_option("-u", "--url-base", dest="url_base", default=default_url_base)
     options.add_option("--url-base-incoming", dest="url_base_incoming", default=default_url_base_incoming)
+    options.add_option("--url-base-ports", dest="url_base_ports", default=default_url_base_ports)
 
     opts, args = options.parse_args()
 
@@ -180,12 +190,15 @@
 
     url_base = url_debian_pool(opts.url_base)
     url_base_incoming = url_debian_flat(opts.url_base_incoming)
+    url_base_ports = url_debian_ports_pool(opts.url_base_ports)
     if opts.incoming_config:
         url = url_config = url_base_incoming
     else:
         url_config = url_base
         if opts.incoming:
             url = url_base_incoming
+        elif opts.ports:
+            url = url_base_ports
         else:
             url = url_base
 



More information about the Kernel-svn-changes mailing list