[kernel] r18579 - in dists/trunk/firmware-nonfree/debian: . bin
Ben Hutchings
benh at alioth.debian.org
Thu Jan 19 03:24:13 UTC 2012
Author: benh
Date: Thu Jan 19 03:24:10 2012
New Revision: 18579
Log:
Update to linux-support-3.2.0-1
Add the makefile rules we need and used to get from rules.include.
Adapt gencontrol.py to renamed/removed utils.
Sprinkle unicode liberally through gencontrol.py.
Remove build-dependency on linux-support-<abi-version>. This is now
only needed when preparing the source package.
Modified:
dists/trunk/firmware-nonfree/debian/bin/gencontrol.py
dists/trunk/firmware-nonfree/debian/rules
dists/trunk/firmware-nonfree/debian/rules.defs
dists/trunk/firmware-nonfree/debian/rules.real
Modified: dists/trunk/firmware-nonfree/debian/bin/gencontrol.py
==============================================================================
--- dists/trunk/firmware-nonfree/debian/bin/gencontrol.py Thu Jan 19 02:48:42 2012 (r18578)
+++ dists/trunk/firmware-nonfree/debian/bin/gencontrol.py Thu Jan 19 03:24:10 2012 (r18579)
@@ -1,16 +1,17 @@
#!/usr/bin/env python
-import os, re, sys
+import os, re, sys, codecs
-sys.path.append(sys.argv[2] + "/lib/python")
+sys.path.append(sys.argv[1] + "/lib/python")
from debian_linux.config import ConfigParser, SchemaItemList
from debian_linux.debian import Package, PackageRelation
from debian_linux.debian import PackageDescription as PackageDescriptionBase
import debian_linux.gencontrol
from debian_linux.gencontrol import Makefile, MakeFlags, PackagesList
-from debian_linux.utils import SortedDict, TextWrapper
+from debian_linux.utils import TextWrapper, read_control
from debian_linux.utils import Templates as TemplatesBase
+from collections import OrderedDict
class PackageDescription(PackageDescriptionBase):
__slots__ = ()
@@ -19,21 +20,21 @@
self.short = []
self.long = []
if value is not None:
- value = value.split("\n", 1)
+ value = value.split(u"\n", 1)
self.append_short(value[0])
if len(value) > 1:
self.append(value[1])
- def __str__(self):
+ def __unicode__(self):
wrap = TextWrapper(width = 74, fix_sentence_endings = True).wrap
- short = ', '.join(self.short)
+ short = u', '.join(self.short)
long_pars = []
for t in self.long:
if isinstance(t, basestring):
t = wrap(t)
- long_pars.append('\n '.join(t))
- long = '\n .\n '.join(long_pars)
- return short + '\n ' + long
+ long_pars.append(u'\n '.join(t))
+ long = u'\n .\n '.join(long_pars)
+ return short + u'\n ' + long
def append_pre(self, l):
self.long.append(l)
@@ -49,10 +50,10 @@
Package._fields['Description'] = PackageDescription
class Template(dict):
- _fields = SortedDict((
- ('Template', str),
- ('Type', str),
- ('Default', str),
+ _fields = OrderedDict((
+ ('Template', unicode),
+ ('Type', unicode),
+ ('Default', unicode),
('Description', PackageDescription),
))
@@ -85,14 +86,14 @@
class Templates(TemplatesBase):
# TODO
def _read(self, name):
- prefix, id = name.split('.', 1)
+ prefix, id = name.split(u'.', 1)
for dir in self.dirs:
filename = "%s/%s.in" % (dir, name)
if os.path.exists(filename):
- f = file(filename)
+ f = codecs.open(filename, 'r', 'utf-8')
if prefix == 'control':
- return self._read_control(f)
+ return read_control(f)
elif prefix == 'templates':
return self._read_templates(f)
return f.read()
@@ -108,23 +109,23 @@
line = f.readline()
if not line:
break
- line = line.strip('\n')
+ line = line.strip(u'\n')
if not line:
break
- if line[0] in ' \t':
+ if line[0] in u' \t':
if not last:
raise ValueError('Continuation line seen before first header')
lines.append(line.lstrip())
continue
if last:
- e[last] = '\n'.join(lines)
- i = line.find(':')
+ e[last] = u'\n'.join(lines)
+ i = line.find(u':')
if i < 0:
raise ValueError("Not a header, not a continuation: ``%s''" % line)
last = line[:i]
lines = [line[i+1:].lstrip()]
if last:
- e[last] = '\n'.join(lines)
+ e[last] = u'\n'.join(lines)
if not e:
break
@@ -134,10 +135,9 @@
class GenControl(debian_linux.gencontrol.Gencontrol):
- def __init__(self, kernelversion):
+ def __init__(self):
self.config = Config()
self.templates = Templates()
- self.kernelversion = kernelversion
def __call__(self):
packages = PackagesList()
@@ -152,7 +152,6 @@
def do_source(self, packages):
source = self.templates["control.source"]
packages['source'] = self.process_package(source[0], ())
- packages['source']['Build-Depends'].append('linux-support-%s' % self.kernelversion)
def do_meta(self, packages, makefile):
config_entry = self.config['base',]
@@ -161,8 +160,8 @@
for entry in self.templates["control.binary.meta"]:
package_binary = self.process_package(entry, {})
- assert package_binary['Package'].startswith('firmware-')
- package = package_binary['Package'].replace('firmware-', '')
+ assert package_binary['Package'].startswith(u'firmware-')
+ package = package_binary['Package'].replace(u'firmware-', u'')
f = open('debian/copyright.meta')
file("debian/firmware-%s.copyright" % package, 'w').write(f.read())
@@ -201,8 +200,8 @@
f = open('%s/copyright' % package)
open("debian/firmware-%s.copyright" % package, 'w').write(f.read())
else:
- vars['license'] = file("%s/LICENSE" % package).read()
- file("debian/firmware-%s.copyright" % package, 'w').write(self.substitute(copyright, vars))
+ vars['license'] = codecs.open("%s/LICENSE" % package, 'r', 'utf-8').read()
+ codecs.open("debian/firmware-%s.copyright" % package, 'w', 'utf-8').write(self.substitute(copyright, vars))
try:
os.unlink('debian/firmware-%s.bug-presubj' % package)
@@ -257,7 +256,7 @@
makeflags['LINKS'] = ' '.join(["%s:%s" % (link, target)
for link, target in links.iteritems()])
- files_desc = ["Contents:"]
+ files_desc = [u"Contents:"]
for f in config_entry['files']:
if f in links:
@@ -268,15 +267,15 @@
if version is None:
version = c.get('version')
try:
- f = f + ', ' + ', '.join(links_rev[f])
+ f = f + u', ' + u', '.join(links_rev[f])
except KeyError:
pass
if desc and version:
- files_desc.append(" * %s, version %s (%s)" % (desc, version, f))
+ files_desc.append(u" * %s, version %s (%s)" % (desc, version, f))
elif desc:
- files_desc.append(" * %s (%s)" % (desc, f))
+ files_desc.append(u" * %s (%s)" % (desc, f))
else:
- files_desc.append(" * %s" % f)
+ files_desc.append(u" * %s" % f)
packages_binary = self.process_packages(binary, vars)
@@ -284,23 +283,23 @@
if 'initramfs-tools' in config_entry.get('support', []):
postinst = self.templates['postinst.initramfs-tools']
- file("debian/firmware-%s.postinst" % package, 'w').write(self.substitute(postinst, vars))
+ codecs.open("debian/firmware-%s.postinst" % package, 'w', 'utf-8').write(self.substitute(postinst, vars))
if 'license-accept' in config_entry:
- license = file("%s/LICENSE.install" % package).read()
+ license = codecs.open("%s/LICENSE.install" % package, 'r', 'utf-8').read()
preinst = self.templates['preinst.license']
preinst_filename = "debian/firmware-%s.preinst" % package
- file(preinst_filename, 'w').write(self.substitute(preinst, vars))
+ codecs.open(preinst_filename, 'w', 'utf-8').write(self.substitute(preinst, vars))
templates = self.process_templates(self.templates['templates.license'], vars)
- license_split = re.split(r'\n\s*\n', license)
+ license_split = re.split(ur'\n\s*\n', license)
templates[0]['Description'].extend(license_split)
templates_filename = "debian/firmware-%s.templates" % package
- self.write_rfc822(file(templates_filename, 'w'), templates)
+ self.write_rfc822(codecs.open(templates_filename, 'w', 'utf-8'), templates)
desc = packages_binary[0]['Description']
desc.append(
-"""This firmware is covered by the %s.
+u"""This firmware is covered by the %s.
You must agree to the terms of this license before it is installed."""
% vars['license-title'])
packages_binary[0]['Pre-Depends'] = PackageRelation('debconf | debconf-2.0')
@@ -334,25 +333,25 @@
return vars.get(match.group(2), '')
else:
return vars[match.group(2)]
- return re.sub(r'@(\??)([-_a-z]+)@', subst, s)
+ return re.sub(ur'@(\??)([-_a-z]+)@', subst, unicode(s))
def write(self, packages, makefile):
self.write_control(packages.itervalues())
self.write_makefile(makefile)
def write_control(self, list):
- self.write_rfc822(file("debian/control", 'w'), list)
+ self.write_rfc822(codecs.open("debian/control", 'w', 'utf-8'), list)
def write_makefile(self, makefile):
- f = file("debian/rules.gen", 'w')
+ f = codecs.open("debian/rules.gen", 'w', 'utf-8')
makefile.write(f)
f.close()
def write_rfc822(self, f, list):
for entry in list:
for key, value in entry.iteritems():
- f.write("%s: %s\n" % (key, value))
- f.write('\n')
+ f.write(u"%s: %s\n" % (key, value))
+ f.write(u'\n')
class Config(dict):
config_name = "defines"
@@ -395,4 +394,4 @@
self[real] = s
if __name__ == '__main__':
- GenControl(sys.argv[1])()
+ GenControl()()
Modified: dists/trunk/firmware-nonfree/debian/rules
==============================================================================
--- dists/trunk/firmware-nonfree/debian/rules Thu Jan 19 02:48:42 2012 (r18578)
+++ dists/trunk/firmware-nonfree/debian/rules Thu Jan 19 03:24:10 2012 (r18579)
@@ -4,9 +4,46 @@
CONTROL_FILES += debian/bin/gencontrol.py defines $(wildcard */defines) $(wildcard */copyright) $(wildcard */LICENSE*)
include debian/rules.defs
-include /usr/src/linux-support-$(KERNELVERSION)/modules/rules.include
-GENCONTROL = debian/bin/gencontrol.py $(KERNELVERSION)
+GENCONTROL = debian/bin/gencontrol.py
+
+__BINNMU := $(shell dpkg-parsechangelog | sed -rne 's,^Version: .*\+b([0-9]+)$$,\1,p')
+
+build: debian/control
+
+clean: debian/control
+ dh_testdir
+ dh_clean
+
+binary-indep:
+ dh_testdir
+ $(MAKE) -f debian/rules.gen binary-indep
+
+binary-arch:
+
+binary: binary-indep binary-arch
+
+debian/control debian/rules.gen: $(GENCONTROL) $(CONTROL_FILES)
+ifeq ($(wildcard debian/control.md5sum),)
+ $(MAKE) -f debian/rules debian/control-real
+else ifeq ($(__BINNMU),)
+ md5sum --check debian/control.md5sum --status || \
+ $(MAKE) -f debian/rules debian/control-real
+else
+ grep -v debian/changelog debian/control.md5sum | md5sum --check - --status || \
+ $(MAKE) -f debian/rules debian/control-real
+endif
+
+debian/control-real: $(GENCONTROL) $(CONTROL_FILES)
+ $(GENCONTROL) /usr/src/linux-support-$(KERNELVERSION)
+ md5sum $^ > debian/control.md5sum
+ @echo
+ @echo This target is made to fail intentionally, to make sure
+ @echo that it is NEVER run during the automated build. Please
+ @echo ignore the following error, the debian/control file has
+ @echo been generated SUCCESSFULLY.
+ @echo
+ exit 1
maintainerclean:
-rm debian/control debian/control.md5sum debian/rules.gen
@@ -16,3 +53,5 @@
-rm debian/*.preinst
-rm debian/*.postinst
-rm debian/*.templates
+
+.PHONY: clean build binary-indep binary-arch binary
Modified: dists/trunk/firmware-nonfree/debian/rules.defs
==============================================================================
--- dists/trunk/firmware-nonfree/debian/rules.defs Thu Jan 19 02:48:42 2012 (r18578)
+++ dists/trunk/firmware-nonfree/debian/rules.defs Thu Jan 19 03:24:10 2012 (r18579)
@@ -1 +1 @@
-KERNELVERSION := 3.0.0-1
+KERNELVERSION := 3.2.0-1
Modified: dists/trunk/firmware-nonfree/debian/rules.real
==============================================================================
--- dists/trunk/firmware-nonfree/debian/rules.real Thu Jan 19 02:48:42 2012 (r18578)
+++ dists/trunk/firmware-nonfree/debian/rules.real Thu Jan 19 03:24:10 2012 (r18579)
@@ -5,9 +5,6 @@
export DH_OPTIONS
-include debian/rules.defs
-include /usr/src/linux-support-$(KERNELVERSION)/modules/rules.real.include
-
#
# Targets
#
More information about the Kernel-svn-changes
mailing list