[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Solving the linux-2.6 firmware issue



* Andreas Barth (aba@not.so.argh.org) [070113 14:28]:
> * Andreas Barth (aba@not.so.argh.org) [070113 10:33]:
> > * Florian Weimer (fw@deneb.enyo.de) [070108 12:21]:
> > > * Bastian Blank:
> > > 
> > > > Not possible without another large round of testing. Our infrastracture
> > > > currently expects that the upstream part of the version remains
> > > > the same through the whole cycle. This information is for example used
> > > > to find all patches.
> > > 
> > > Uhm, why can't you do a simple full upload just once, manually?
> > 
> > AFAICS this was the last mail on the topic "why don't we finally upload
> > the kernel with the changed ABI". Any real blockers, or what needs to
> > happen?
> 
> So, I checked the infrastructure now.
> 
> A kernel version of 2.6.18-dfsg-1 works fairly well. There are only two
> packages who build-depend on the then-removed linux-tree-2.6.18,
> fai-kernels and modconf, and no package directly depends on it.
> 
> The only change I did was this patch:

Actually, there is another way to do it - hardcode to -dfsg for now, so
this is a change that needs to be reverted at the beginning of the Lenny
cycle. But I think it is still better then the other one, and I don't
think it hurts for Etch to hardcode a few bits now.

Please see the attachement for what changes (first two files are the
"productive" changes, and the third one is how this changes
debian/control). In the relevant changelog, I named the next version
2.6.18-dfsg-9.


Cheers,
Andi
-- 
  http://home.arcor.de/andreas-barth/
diff -Nur ../linux-2.6-2.6.18/debian/bin/gencontrol.py debian/bin/gencontrol.py
--- ../linux-2.6-2.6.18/debian/bin/gencontrol.py	2007-01-13 23:29:32.000000000 +0000
+++ debian/bin/gencontrol.py	2007-01-13 23:30:27.000000000 +0000
@@ -228,6 +228,12 @@
 
     def process_changelog(self):
         self.version = self.changelog[0]['Version']
+	if self.version['upstream'] == '2.6.18-dfsg':
+	    self.version['upstream'] = '2.6.18'
+	    self.version['linux']['upstream'] = '2.6.18'
+	    self.version['linux']['source_upstream'] = '2.6.18'
+	    self.version['linux']['modifier'] = None
+	    self.version['linux']['source'] = self.version['upstream']+'-'+self.version['debian']
         if self.version['linux']['modifier'] is not None:
             self.abiname = ''
         else:
@@ -251,10 +257,11 @@
         entry = self.process_package(in_entry, vars)
         tmp = self.changelog[0]['Version']['linux']['upstream']
         versions = []
         for i in self.changelog:
             if i['Version']['linux']['upstream'] != tmp:
                 break
             versions.insert(0, i['Version']['linux'])
+        versions = [{u'major': '2.6', u'parent': None, u'source': '2.6.18-1', u'version': '2.6.18', 'source_upstream': '2.6.18', u'upstream': '2.6.18', u'modifier': None, u'debian': '1'}, {u'major': '2.6', u'parent': None, u'source': '2.6.18-2', u'version': '2.6.18', 'source_upstream': '2.6.18', u'upstream': '2.6.18', u'modifier': None, u'debian': '2'}, {u'major': '2.6', u'parent': None, u'source': '2.6.18-3', u'version': '2.6.18', 'source_upstream': '2.6.18', u'upstream': '2.6.18', u'modifier': None, u'debian': '3'}, {u'major': '2.6', u'parent': None, u'source': '2.6.18-4', u'version': '2.6.18', 'source_upstream': '2.6.18', u'upstream': '2.6.18', u'modifier': None, u'debian': '4'}, {u'major': '2.6', u'parent': None, u'source': '2.6.18-5', u'version': '2.6.18', 'source_upstream': '2.6.18', u'upstream': '2.6.18', u'modifier': None, u'debian': '5'}, {u'major': '2.6', u'parent': None, u'source': '2.6.18-6', u'version': '2.6.18', 'source_upstream': '2.6.18', u'upstream': '2.6.18', u'modifier': None, u'debian': '6'}, {u'major': '2.6', u'parent': None, u'source': '2.6.18-7', u'version': '2.6.18', 'source_upstream': '2.6.18', u'upstream': '2.6.18', u'modifier': None, u'debian': '7'}, {u'major': '2.6', u'parent': None, u'source': '2.6.18-8', u'version': '2.6.18', 'source_upstream': '2.6.18', u'upstream': '2.6.18', u'modifier': None, u'debian': '8'}] + versions
         for i in (('Depends', 'Provides')):
             value = package_relation_list()
             value.extend(entry.get(i, []))
diff -Nur ../linux-2.6-2.6.18/debian/templates/control.main.in debian/templates/control.main.in
--- ../linux-2.6-2.6.18/debian/templates/control.main.in	2007-01-13 12:59:35.000000000 +0000
+++ debian/templates/control.main.in	2007-01-13 23:31:15.000000000 +0000
@@ -61,4 +61,4 @@
  linux-source-@version@ package, as well as architecture-specific
  patches. Note that these patches do NOT apply against a pristine
  Linux @version@ kernel but only against the kernel tarball
- linux-@major@_@source_upstream@.orig.tar.gz from the Debian archive.
+ linux-@major@_@source_upstream@-dfsg.orig.tar.gz from the Debian archive.
diff -Nur ../linux-2.6-2.6.18/debian/control debian/control
--- ../linux-2.6-2.6.18/debian/control	2007-01-13 23:29:33.000000000 +0000
+++ debian/control	2007-01-13 23:31:18.000000000 +0000
@@ -68,15 +68,15 @@
  This package includes the patches used to produce the prepackaged
  linux-source-2.6.18 package, as well as architecture-specific patches.
  Note that these patches do NOT apply against a pristine Linux 2.6.18
- kernel but only against the kernel tarball linux-2.6_2.6.18.orig.tar.gz
- from the Debian archive.
+ kernel but only against the kernel tarball
+ linux-2.6_2.6.18-dfsg.orig.tar.gz  from the Debian archive.
 
 Package: linux-tree-2.6.18
 Architecture: all
 Section: devel
 Priority: optional
-Provides: linux-tree-2.6.18-1, linux-tree-2.6.18-2, linux-tree-2.6.18-3, linux-tree-2.6.18-4, linux-tree-2.6.18-5, linux-tree-2.6.18-6, linux-tree-2.6.18-7, linux-tree-2.6.18-8
-Depends: linux-patch-debian-2.6.18 (= 2.6.18-8), linux-source-2.6.18 (= 2.6.18-1) | linux-source-2.6.18 (= 2.6.18-2) | linux-source-2.6.18 (= 2.6.18-3) | linux-source-2.6.18 (= 2.6.18-4) | linux-source-2.6.18 (= 2.6.18-5) | linux-source-2.6.18 (= 2.6.18-6) | linux-source-2.6.18 (= 2.6.18-7) | linux-source-2.6.18 (= 2.6.18-8)
+Provides: linux-tree-2.6.18-1, linux-tree-2.6.18-2, linux-tree-2.6.18-3, linux-tree-2.6.18-4, linux-tree-2.6.18-5, linux-tree-2.6.18-6, linux-tree-2.6.18-7, linux-tree-2.6.18-8, linux-tree-2.6.18-9
+Depends: linux-patch-debian-2.6.18 (= 2.6.18-9), linux-source-2.6.18 (= 2.6.18-1) | linux-source-2.6.18 (= 2.6.18-2) | linux-source-2.6.18 (= 2.6.18-3) | linux-source-2.6.18 (= 2.6.18-4) | linux-source-2.6.18 (= 2.6.18-5) | linux-source-2.6.18 (= 2.6.18-6) | linux-source-2.6.18 (= 2.6.18-7) | linux-source-2.6.18 (= 2.6.18-8) | linux-source-2.6.18 (= 2.6.18-9)
 Description: Linux kernel source tree for building Debian kernel images
  This meta package is used as a build dependency of Debian linux-image
  packages to prevent a version discrepancy between the linux-image and

Reply to: