linux/debian/bin/apply.py

436 lines
13 KiB
Python
Raw Normal View History

* Move most parts of debian/bin/gencontrol.py to debian/lib. * Implement subarch. * Rewrite patch handling to integrate arch and subarch specific patches. r4300: waldi | 2005-10-03 22:23:02 +0200 debian/rules.real: Remove old definitions. r4304: waldi | 2005-10-03 23:02:13 +0200 Move template reading to lib. * debian/bin/gencontrol.py - Remove RFC822 routines. - Use templates class. * debian/lib/python/debian_linux.py: Add templates class. r4738: waldi | 2005-11-07 15:51:30 +0100 debian/bin/gencontrol.py: Set TYPE. r4796: waldi | 2005-11-13 15:09:40 +0100 * debian/bin/gencontrol.py: Use config_reader. * debian/lib/python/debian_linux: Add directory. * debian/lib/python/debian_linux/__init__.py: Move from debian/lib/python/python/debian_linux.py. * debian/lib/python/debian_linux/config.py: Add config_reader and config_parser. r4797: waldi | 2005-11-13 15:45:12 +0100 * debian/bin/gencontrol.py: Move code away. For now only use imported code. * debian/lib/python/debian_linux/__init__.py: Remove utils. * debian/lib/python/debian_linux/config.py: Update. * debian/lib/python/debian_linux/debian.py: Add debian packaging specific code. * debian/lib/python/debian_linux/gencontrol.py: Add code. * debian/lib/python/debian_linux/utils.py: Add utils. r4798: waldi | 2005-11-13 15:56:37 +0100 debian/lib/python/debian_linux/gencontrol.py: Don't try to generation extra packages if the template does not exist. r4799: waldi | 2005-11-13 16:04:25 +0100 debian/lib/python/debian_linux/gencontrol.py: Begin to split methods in smaller pieces. r4800: waldi | 2005-11-13 16:26:03 +0100 debian/lib/python/debian_linux/gencontrol.py: Split more code. r4802: waldi | 2005-11-13 16:40:08 +0100 debian/lib/python/debian_linux/gencontrol.py: Also allow strings in makefile write list. r4806: waldi | 2005-11-13 16:55:48 +0100 debian/bin/gencontrol.py: Move linux-2.6 specific code from debian/lib/python/debian_linux/gencontrol.py. r4807: waldi | 2005-11-13 17:07:26 +0100 debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py: Update. r4808: waldi | 2005-11-13 17:08:53 +0100 debian/bin/gencontrol.py: Move code from debian/lib/python/debian_linux/gencontrol.py. r4810: waldi | 2005-11-13 17:10:30 +0100 debian/bin/gencontrol.py - Move code from debian/lib/python/debian_linux/gencontrol.py. - Update. r4811: waldi | 2005-11-13 17:33:47 +0100 debian/bin/gencontrol.py: Move code from debian/lib/python/debian_linux/gencontrol.py. r4812: waldi | 2005-11-13 17:36:38 +0100 debian/bin/gencontrol.py: Update. r4813: waldi | 2005-11-13 18:36:28 +0100 debian/lib/python/debian_linux/config.py: Remove old code. r4814: waldi | 2005-11-13 18:38:50 +0100 * debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py, debian/lib/python/debian_linux/utils.py: Teach package object how to work with list attributes. * debian/lib/python/debian_linux/debian.py: Don't use utils.entry. r4815: waldi | 2005-11-13 18:41:55 +0100 * debian/lib/python/debian_linux/gencontrol.py - Use utils.package. - Remove debugging code. * debian/lib/python/debian_linux/utils.py - Use utils.package. - Remove utils.entry. r4816: waldi | 2005-11-13 18:47:46 +0100 debian/lib/python/debian_linux/utils.py: Don't output empty fields. r4965: waldi | 2005-12-04 12:36:20 +0100 Rewrite config reader to support more than one section per (arch, subarch, flavour). * debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py: Explicitely Use base entries. * debian/lib/python/debian_linux/config.py - Rewrite. - Loose support for entry merging for now. r5175: waldi | 2006-01-02 20:46:46 +0100 debian/bin/gencontrol.py: Fix. r5176: waldi | 2006-01-02 21:09:17 +0100 * debian/bin/apply: Don't expect upstream version in series file names. * debian/patches-debian/series/0experimental.1: Move from debian/patches-debian/series/2.6.14+2.6.15-rc7-0experimental.1. * debian/patches-debian/series/0experimental.2: Move from debian/patches-debian/series/2.6.14+2.6.15-rc7-0experimental.2. r5177: waldi | 2006-01-02 22:31:28 +0100 First prototype of improved patch util. debian/bin/apply.py: Add. r5178: waldi | 2006-01-02 23:40:11 +0100 * debian/bin/apply.py: Finish implementation. * debian/rules.real: Use apply.py. r5179: waldi | 2006-01-03 00:15:05 +0100 * debian/bin/apply.py: Implement arch and subarch specific patches. * debian/bin/unpatch: Remove old code. * debian/rules.real: Fix patch package installation. r5180: waldi | 2006-01-03 00:16:05 +0100 debian/bin/apply: Remove. r5181: waldi | 2006-01-03 00:16:56 +0100 * debian/bin/gencontrol.py: Readd missing build target. * debian/lib/python/debian_linux/debian.py: Raise if version is not parsable. r5192: waldi | 2006-01-03 15:32:43 +0100 debian/bin/apply.py - Add version_file class. - Use correct series for deapply. r5193: waldi | 2006-01-03 15:41:53 +0100 debian/bin/apply.py - Remove extra version handling from series class. - Add check for extra version in patch setup. r5194: waldi | 2006-01-03 15:45:49 +0100 debian/bin/apply.py: Move complete reverse logic into series class. r5195: waldi | 2006-01-03 16:14:33 +0100 debian/bin/apply.py: Implement patch per arch and subarch. It is currently done by completely deapply the arch specific patches if it needs to change set of general patches. r5196: waldi | 2006-01-03 16:18:55 +0100 debian/bin/apply.py: Don't record extra version without patch. r5197: waldi | 2006-01-03 16:25:03 +0100 debian/bin/apply.py: Record shortest possible extra version in version file. r5198: waldi | 2006-01-03 16:28:00 +0100 * debian/patches-debian/series/0experimental.3-extra: Add. * debian/patches-debian/hppa-incompatible.patch: Move from debian/patches-arch/hppa.diff. * debian/patches-debian/m68k-incompatible.patch Move from debian/patches-arch/m68k.diff. * debian/patches-arch: Remove. r5200: waldi | 2006-01-03 16:30:03 +0100 debian/rules.real: Use new apply script for arch and subarch patches. r5207: waldi | 2006-01-03 17:12:52 +0100 * debian/rules.real: Remove old arch patches installation. * debian/templates/control.source.in: Remove dh-kpatches from Buld-Depends-Indep. r5208: waldi | 2006-01-03 17:21:21 +0100 debian/lib/python/debian_linux: Set svn:ignore property. r5210: waldi | 2006-01-03 17:24:09 +0100 debian/templates/control.main.in: Fix depends of patch package. r5212: waldi | 2006-01-03 17:54:18 +0100 * debian/rules: Fix clean. * debian/rules.real - Remove definition of old arch patches. - Use a variable for patch command. r5213: waldi | 2006-01-03 20:45:41 +0100 * debian/templates: Move subarch part in package names in front of flavour. * debian/lib/python/debian_linux/gencontrol.py: Fix subarch text setting. r5214: waldi | 2006-01-03 20:46:05 +0100 debian/lib/python/debian_linux/config.py: Support subarches. r5215: waldi | 2006-01-04 00:51:46 +0100 Update svn:ignore property. r5216: waldi | 2006-01-04 00:53:20 +0100 debian/bin/apply.py - Use correct length in extra check. - Check for correct length of extra entries. r5217: waldi | 2006-01-04 00:54:38 +0100 debian/rules.real - Append subarch to kernel version. - Fix base of kconfig.ml call. r5234: waldi | 2006-01-04 15:34:59 +0100 * debian/bin/gencontrol.py: Use config entry merging when needed. * lib/python/debian_linux/config.py: Readd config entry merging. r5235: waldi | 2006-01-04 16:00:38 +0100 * debian/bin/install-image: Use DEBIAN_LOCALVERSION and DEBIAN_LOCALVERSION_HEADERS. * debian/rules.real: Set LOCALVERSION for scripts. r5240: waldi | 2006-01-04 17:50:12 +0100 debian/rules.real: Fix version of subarch headers package. svn path=/dists/trunk/linux-2.6/; revision=5242
2006-01-04 19:33:32 +00:00
#!/usr/bin/env python2.4
* Set compiler build dependencies from config informations. * Install debian/lib into headers-all package. * Unlink version file before writing to them. * debian/README: Remove outdated information. r5275: waldi | 2006-01-05 14:00:15 +0100 * debian/lib/python/debian_linux/debian.py: Move package class from utils. * debian/lib/python/debian_linux/utils.py: Use package class from debian. r5277: waldi | 2006-01-05 14:41:45 +0100 * debian/lib/python/debian_linux/debian.py - Add package_relation, package_relation_list and package_relation_group classes. - Use them in the package class. * debian/lib/python/debian_linux/gencontrol.py - Support new relation classes. r5278: waldi | 2006-01-05 14:46:55 +0100 debian/bin/gencontrol.py: Use relation objects for tree entry. r5279: waldi | 2006-01-05 15:20:00 +0100 * debian/bin/gencontrol.py: Don't fail if some relation fields are empty. * debian/lib/python/debian_linux/debian.py: Merge relation entries. r5280: waldi | 2006-01-05 15:24:08 +0100 * debian/arch/defines, debian/arch/hppa/defines: Set relations for compiler. * debian/lib/python/debian_linux/gencontrol.py: Set compiler build dependencies from config informations. * debian/templates/control.source.in: Remove compiler from Build-Depends. r5281: waldi | 2006-01-05 15:39:45 +0100 * debian/rules.real - Install debian/lib into headers-all package. - Call dh_python with python version 2.4. * debian/templates/control.source.in: Add python to build-depends, needed by dh_python. r5282: waldi | 2006-01-05 16:36:33 +0100 debian/rules.real - Remove outdated comment about include_common_config. - Remove support for headers_dirs. r5283: waldi | 2006-01-05 16:38:05 +0100 debian/arch/amd64/Makefile.inc, debian/arch/arm/Makefile.inc, debian/arch/hppa/Makefile.inc, debian/arch/powerpc/Makefile.inc, debian/arch/sparc/Makefile.inc: Remove not longer supported variables. r5284: waldi | 2006-01-05 16:42:33 +0100 debian/lib/python/debian_linux/gencontrol.py: Warn if the class setting is not available. r5287: waldi | 2006-01-05 19:07:05 +0100 debian/arch/powerpc/defines: Set kernel-arch for all except powerpc64 to ppc. r5288: waldi | 2006-01-05 19:08:35 +0100 debian/lib/python/debian_linux/config.py: Only bail out if a section is not found in any config file. r5294: waldi | 2006-01-05 19:26:57 +0100 debian/lib/python/debian_linux/gencontrol.py - Support config underlay. - Add some small default implementations. r5295: waldi | 2006-01-05 19:39:55 +0100 debian/README: Remove outdated information. r5325: waldi | 2006-01-06 22:40:17 +0100 debian/bin/apply.py - Don't reference the debian_linux module, it is not available. - Unlink version file before writing to them. svn path=/dists/trunk/linux-2.6/; revision=5327
2006-01-06 22:32:16 +00:00
import os, os.path, re, sys
* Move most parts of debian/bin/gencontrol.py to debian/lib. * Implement subarch. * Rewrite patch handling to integrate arch and subarch specific patches. r4300: waldi | 2005-10-03 22:23:02 +0200 debian/rules.real: Remove old definitions. r4304: waldi | 2005-10-03 23:02:13 +0200 Move template reading to lib. * debian/bin/gencontrol.py - Remove RFC822 routines. - Use templates class. * debian/lib/python/debian_linux.py: Add templates class. r4738: waldi | 2005-11-07 15:51:30 +0100 debian/bin/gencontrol.py: Set TYPE. r4796: waldi | 2005-11-13 15:09:40 +0100 * debian/bin/gencontrol.py: Use config_reader. * debian/lib/python/debian_linux: Add directory. * debian/lib/python/debian_linux/__init__.py: Move from debian/lib/python/python/debian_linux.py. * debian/lib/python/debian_linux/config.py: Add config_reader and config_parser. r4797: waldi | 2005-11-13 15:45:12 +0100 * debian/bin/gencontrol.py: Move code away. For now only use imported code. * debian/lib/python/debian_linux/__init__.py: Remove utils. * debian/lib/python/debian_linux/config.py: Update. * debian/lib/python/debian_linux/debian.py: Add debian packaging specific code. * debian/lib/python/debian_linux/gencontrol.py: Add code. * debian/lib/python/debian_linux/utils.py: Add utils. r4798: waldi | 2005-11-13 15:56:37 +0100 debian/lib/python/debian_linux/gencontrol.py: Don't try to generation extra packages if the template does not exist. r4799: waldi | 2005-11-13 16:04:25 +0100 debian/lib/python/debian_linux/gencontrol.py: Begin to split methods in smaller pieces. r4800: waldi | 2005-11-13 16:26:03 +0100 debian/lib/python/debian_linux/gencontrol.py: Split more code. r4802: waldi | 2005-11-13 16:40:08 +0100 debian/lib/python/debian_linux/gencontrol.py: Also allow strings in makefile write list. r4806: waldi | 2005-11-13 16:55:48 +0100 debian/bin/gencontrol.py: Move linux-2.6 specific code from debian/lib/python/debian_linux/gencontrol.py. r4807: waldi | 2005-11-13 17:07:26 +0100 debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py: Update. r4808: waldi | 2005-11-13 17:08:53 +0100 debian/bin/gencontrol.py: Move code from debian/lib/python/debian_linux/gencontrol.py. r4810: waldi | 2005-11-13 17:10:30 +0100 debian/bin/gencontrol.py - Move code from debian/lib/python/debian_linux/gencontrol.py. - Update. r4811: waldi | 2005-11-13 17:33:47 +0100 debian/bin/gencontrol.py: Move code from debian/lib/python/debian_linux/gencontrol.py. r4812: waldi | 2005-11-13 17:36:38 +0100 debian/bin/gencontrol.py: Update. r4813: waldi | 2005-11-13 18:36:28 +0100 debian/lib/python/debian_linux/config.py: Remove old code. r4814: waldi | 2005-11-13 18:38:50 +0100 * debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py, debian/lib/python/debian_linux/utils.py: Teach package object how to work with list attributes. * debian/lib/python/debian_linux/debian.py: Don't use utils.entry. r4815: waldi | 2005-11-13 18:41:55 +0100 * debian/lib/python/debian_linux/gencontrol.py - Use utils.package. - Remove debugging code. * debian/lib/python/debian_linux/utils.py - Use utils.package. - Remove utils.entry. r4816: waldi | 2005-11-13 18:47:46 +0100 debian/lib/python/debian_linux/utils.py: Don't output empty fields. r4965: waldi | 2005-12-04 12:36:20 +0100 Rewrite config reader to support more than one section per (arch, subarch, flavour). * debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py: Explicitely Use base entries. * debian/lib/python/debian_linux/config.py - Rewrite. - Loose support for entry merging for now. r5175: waldi | 2006-01-02 20:46:46 +0100 debian/bin/gencontrol.py: Fix. r5176: waldi | 2006-01-02 21:09:17 +0100 * debian/bin/apply: Don't expect upstream version in series file names. * debian/patches-debian/series/0experimental.1: Move from debian/patches-debian/series/2.6.14+2.6.15-rc7-0experimental.1. * debian/patches-debian/series/0experimental.2: Move from debian/patches-debian/series/2.6.14+2.6.15-rc7-0experimental.2. r5177: waldi | 2006-01-02 22:31:28 +0100 First prototype of improved patch util. debian/bin/apply.py: Add. r5178: waldi | 2006-01-02 23:40:11 +0100 * debian/bin/apply.py: Finish implementation. * debian/rules.real: Use apply.py. r5179: waldi | 2006-01-03 00:15:05 +0100 * debian/bin/apply.py: Implement arch and subarch specific patches. * debian/bin/unpatch: Remove old code. * debian/rules.real: Fix patch package installation. r5180: waldi | 2006-01-03 00:16:05 +0100 debian/bin/apply: Remove. r5181: waldi | 2006-01-03 00:16:56 +0100 * debian/bin/gencontrol.py: Readd missing build target. * debian/lib/python/debian_linux/debian.py: Raise if version is not parsable. r5192: waldi | 2006-01-03 15:32:43 +0100 debian/bin/apply.py - Add version_file class. - Use correct series for deapply. r5193: waldi | 2006-01-03 15:41:53 +0100 debian/bin/apply.py - Remove extra version handling from series class. - Add check for extra version in patch setup. r5194: waldi | 2006-01-03 15:45:49 +0100 debian/bin/apply.py: Move complete reverse logic into series class. r5195: waldi | 2006-01-03 16:14:33 +0100 debian/bin/apply.py: Implement patch per arch and subarch. It is currently done by completely deapply the arch specific patches if it needs to change set of general patches. r5196: waldi | 2006-01-03 16:18:55 +0100 debian/bin/apply.py: Don't record extra version without patch. r5197: waldi | 2006-01-03 16:25:03 +0100 debian/bin/apply.py: Record shortest possible extra version in version file. r5198: waldi | 2006-01-03 16:28:00 +0100 * debian/patches-debian/series/0experimental.3-extra: Add. * debian/patches-debian/hppa-incompatible.patch: Move from debian/patches-arch/hppa.diff. * debian/patches-debian/m68k-incompatible.patch Move from debian/patches-arch/m68k.diff. * debian/patches-arch: Remove. r5200: waldi | 2006-01-03 16:30:03 +0100 debian/rules.real: Use new apply script for arch and subarch patches. r5207: waldi | 2006-01-03 17:12:52 +0100 * debian/rules.real: Remove old arch patches installation. * debian/templates/control.source.in: Remove dh-kpatches from Buld-Depends-Indep. r5208: waldi | 2006-01-03 17:21:21 +0100 debian/lib/python/debian_linux: Set svn:ignore property. r5210: waldi | 2006-01-03 17:24:09 +0100 debian/templates/control.main.in: Fix depends of patch package. r5212: waldi | 2006-01-03 17:54:18 +0100 * debian/rules: Fix clean. * debian/rules.real - Remove definition of old arch patches. - Use a variable for patch command. r5213: waldi | 2006-01-03 20:45:41 +0100 * debian/templates: Move subarch part in package names in front of flavour. * debian/lib/python/debian_linux/gencontrol.py: Fix subarch text setting. r5214: waldi | 2006-01-03 20:46:05 +0100 debian/lib/python/debian_linux/config.py: Support subarches. r5215: waldi | 2006-01-04 00:51:46 +0100 Update svn:ignore property. r5216: waldi | 2006-01-04 00:53:20 +0100 debian/bin/apply.py - Use correct length in extra check. - Check for correct length of extra entries. r5217: waldi | 2006-01-04 00:54:38 +0100 debian/rules.real - Append subarch to kernel version. - Fix base of kconfig.ml call. r5234: waldi | 2006-01-04 15:34:59 +0100 * debian/bin/gencontrol.py: Use config entry merging when needed. * lib/python/debian_linux/config.py: Readd config entry merging. r5235: waldi | 2006-01-04 16:00:38 +0100 * debian/bin/install-image: Use DEBIAN_LOCALVERSION and DEBIAN_LOCALVERSION_HEADERS. * debian/rules.real: Set LOCALVERSION for scripts. r5240: waldi | 2006-01-04 17:50:12 +0100 debian/rules.real: Fix version of subarch headers package. svn path=/dists/trunk/linux-2.6/; revision=5242
2006-01-04 19:33:32 +00:00
from warnings import warn
_default_home = "@home@"
_default_revisions = "@revisions@"
_default_source = "@source@"
class series(list):
def __init__(self, name, home, reverse = False):
self.name = name
self.reverse = reverse
filename = os.path.join(home, 'series', name)
if not os.path.exists(filename):
raise RuntimeError, "Can't find series file for %s" % name
f = file(filename)
for line in f.readlines():
line = line.strip()
if len(line) == 0 or line[0] == '#':
continue
items = line.split(' ')
if len(items) != 2:
raise RuntimeError, "Line '%s' in file %s malformed." % (line, filename)
else:
operation, patch = items
* Move most parts of debian/bin/gencontrol.py to debian/lib. * Implement subarch. * Rewrite patch handling to integrate arch and subarch specific patches. r4300: waldi | 2005-10-03 22:23:02 +0200 debian/rules.real: Remove old definitions. r4304: waldi | 2005-10-03 23:02:13 +0200 Move template reading to lib. * debian/bin/gencontrol.py - Remove RFC822 routines. - Use templates class. * debian/lib/python/debian_linux.py: Add templates class. r4738: waldi | 2005-11-07 15:51:30 +0100 debian/bin/gencontrol.py: Set TYPE. r4796: waldi | 2005-11-13 15:09:40 +0100 * debian/bin/gencontrol.py: Use config_reader. * debian/lib/python/debian_linux: Add directory. * debian/lib/python/debian_linux/__init__.py: Move from debian/lib/python/python/debian_linux.py. * debian/lib/python/debian_linux/config.py: Add config_reader and config_parser. r4797: waldi | 2005-11-13 15:45:12 +0100 * debian/bin/gencontrol.py: Move code away. For now only use imported code. * debian/lib/python/debian_linux/__init__.py: Remove utils. * debian/lib/python/debian_linux/config.py: Update. * debian/lib/python/debian_linux/debian.py: Add debian packaging specific code. * debian/lib/python/debian_linux/gencontrol.py: Add code. * debian/lib/python/debian_linux/utils.py: Add utils. r4798: waldi | 2005-11-13 15:56:37 +0100 debian/lib/python/debian_linux/gencontrol.py: Don't try to generation extra packages if the template does not exist. r4799: waldi | 2005-11-13 16:04:25 +0100 debian/lib/python/debian_linux/gencontrol.py: Begin to split methods in smaller pieces. r4800: waldi | 2005-11-13 16:26:03 +0100 debian/lib/python/debian_linux/gencontrol.py: Split more code. r4802: waldi | 2005-11-13 16:40:08 +0100 debian/lib/python/debian_linux/gencontrol.py: Also allow strings in makefile write list. r4806: waldi | 2005-11-13 16:55:48 +0100 debian/bin/gencontrol.py: Move linux-2.6 specific code from debian/lib/python/debian_linux/gencontrol.py. r4807: waldi | 2005-11-13 17:07:26 +0100 debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py: Update. r4808: waldi | 2005-11-13 17:08:53 +0100 debian/bin/gencontrol.py: Move code from debian/lib/python/debian_linux/gencontrol.py. r4810: waldi | 2005-11-13 17:10:30 +0100 debian/bin/gencontrol.py - Move code from debian/lib/python/debian_linux/gencontrol.py. - Update. r4811: waldi | 2005-11-13 17:33:47 +0100 debian/bin/gencontrol.py: Move code from debian/lib/python/debian_linux/gencontrol.py. r4812: waldi | 2005-11-13 17:36:38 +0100 debian/bin/gencontrol.py: Update. r4813: waldi | 2005-11-13 18:36:28 +0100 debian/lib/python/debian_linux/config.py: Remove old code. r4814: waldi | 2005-11-13 18:38:50 +0100 * debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py, debian/lib/python/debian_linux/utils.py: Teach package object how to work with list attributes. * debian/lib/python/debian_linux/debian.py: Don't use utils.entry. r4815: waldi | 2005-11-13 18:41:55 +0100 * debian/lib/python/debian_linux/gencontrol.py - Use utils.package. - Remove debugging code. * debian/lib/python/debian_linux/utils.py - Use utils.package. - Remove utils.entry. r4816: waldi | 2005-11-13 18:47:46 +0100 debian/lib/python/debian_linux/utils.py: Don't output empty fields. r4965: waldi | 2005-12-04 12:36:20 +0100 Rewrite config reader to support more than one section per (arch, subarch, flavour). * debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py: Explicitely Use base entries. * debian/lib/python/debian_linux/config.py - Rewrite. - Loose support for entry merging for now. r5175: waldi | 2006-01-02 20:46:46 +0100 debian/bin/gencontrol.py: Fix. r5176: waldi | 2006-01-02 21:09:17 +0100 * debian/bin/apply: Don't expect upstream version in series file names. * debian/patches-debian/series/0experimental.1: Move from debian/patches-debian/series/2.6.14+2.6.15-rc7-0experimental.1. * debian/patches-debian/series/0experimental.2: Move from debian/patches-debian/series/2.6.14+2.6.15-rc7-0experimental.2. r5177: waldi | 2006-01-02 22:31:28 +0100 First prototype of improved patch util. debian/bin/apply.py: Add. r5178: waldi | 2006-01-02 23:40:11 +0100 * debian/bin/apply.py: Finish implementation. * debian/rules.real: Use apply.py. r5179: waldi | 2006-01-03 00:15:05 +0100 * debian/bin/apply.py: Implement arch and subarch specific patches. * debian/bin/unpatch: Remove old code. * debian/rules.real: Fix patch package installation. r5180: waldi | 2006-01-03 00:16:05 +0100 debian/bin/apply: Remove. r5181: waldi | 2006-01-03 00:16:56 +0100 * debian/bin/gencontrol.py: Readd missing build target. * debian/lib/python/debian_linux/debian.py: Raise if version is not parsable. r5192: waldi | 2006-01-03 15:32:43 +0100 debian/bin/apply.py - Add version_file class. - Use correct series for deapply. r5193: waldi | 2006-01-03 15:41:53 +0100 debian/bin/apply.py - Remove extra version handling from series class. - Add check for extra version in patch setup. r5194: waldi | 2006-01-03 15:45:49 +0100 debian/bin/apply.py: Move complete reverse logic into series class. r5195: waldi | 2006-01-03 16:14:33 +0100 debian/bin/apply.py: Implement patch per arch and subarch. It is currently done by completely deapply the arch specific patches if it needs to change set of general patches. r5196: waldi | 2006-01-03 16:18:55 +0100 debian/bin/apply.py: Don't record extra version without patch. r5197: waldi | 2006-01-03 16:25:03 +0100 debian/bin/apply.py: Record shortest possible extra version in version file. r5198: waldi | 2006-01-03 16:28:00 +0100 * debian/patches-debian/series/0experimental.3-extra: Add. * debian/patches-debian/hppa-incompatible.patch: Move from debian/patches-arch/hppa.diff. * debian/patches-debian/m68k-incompatible.patch Move from debian/patches-arch/m68k.diff. * debian/patches-arch: Remove. r5200: waldi | 2006-01-03 16:30:03 +0100 debian/rules.real: Use new apply script for arch and subarch patches. r5207: waldi | 2006-01-03 17:12:52 +0100 * debian/rules.real: Remove old arch patches installation. * debian/templates/control.source.in: Remove dh-kpatches from Buld-Depends-Indep. r5208: waldi | 2006-01-03 17:21:21 +0100 debian/lib/python/debian_linux: Set svn:ignore property. r5210: waldi | 2006-01-03 17:24:09 +0100 debian/templates/control.main.in: Fix depends of patch package. r5212: waldi | 2006-01-03 17:54:18 +0100 * debian/rules: Fix clean. * debian/rules.real - Remove definition of old arch patches. - Use a variable for patch command. r5213: waldi | 2006-01-03 20:45:41 +0100 * debian/templates: Move subarch part in package names in front of flavour. * debian/lib/python/debian_linux/gencontrol.py: Fix subarch text setting. r5214: waldi | 2006-01-03 20:46:05 +0100 debian/lib/python/debian_linux/config.py: Support subarches. r5215: waldi | 2006-01-04 00:51:46 +0100 Update svn:ignore property. r5216: waldi | 2006-01-04 00:53:20 +0100 debian/bin/apply.py - Use correct length in extra check. - Check for correct length of extra entries. r5217: waldi | 2006-01-04 00:54:38 +0100 debian/rules.real - Append subarch to kernel version. - Fix base of kconfig.ml call. r5234: waldi | 2006-01-04 15:34:59 +0100 * debian/bin/gencontrol.py: Use config entry merging when needed. * lib/python/debian_linux/config.py: Readd config entry merging. r5235: waldi | 2006-01-04 16:00:38 +0100 * debian/bin/install-image: Use DEBIAN_LOCALVERSION and DEBIAN_LOCALVERSION_HEADERS. * debian/rules.real: Set LOCALVERSION for scripts. r5240: waldi | 2006-01-04 17:50:12 +0100 debian/rules.real: Fix version of subarch headers package. svn path=/dists/trunk/linux-2.6/; revision=5242
2006-01-04 19:33:32 +00:00
if operation in ('+', '-'):
patchfile = os.path.join(home, patch)
for suffix, type in (('', 0), ('.bz2', 1), ('.gz', 2)):
if os.path.exists(patchfile + suffix):
patchinfo = patchfile + suffix, type
break
else:
raise RuntimeError, "Can't find patch %s for series %s" % (patchfile, name)
elif operation in ('X',):
backup = patch + ".bak"
if not os.path.exists(patch) and not os.path.exists(backup):
raise RuntimeError, "Can't find neither original nor backup file %s for series %s" % (patch, name)
patchinfo = patch, backup
else:
raise RuntimeError, 'Undefined operation "%s" in series %s' % (operation, name)
self.append((operation, patch, patchinfo))
def __repr__(self):
return '<%s object for %s>' % (self.__class__.__name__, self.name)
def apply(self):
if self.reverse:
for operation, patch, patchinfo in self[::-1]:
if operation == '.':
print """\
(.) IGNORED %s\
""" % patch
elif operation == '+':
self.patch_deapply(patch, patchinfo)
elif operation == '-':
self.patch_apply(patch, patchinfo)
elif operation == 'X':
os.rename(patchinfo[1], patchinfo[0])
print """\
(X) RESTORED %s\
""" % patch
print "--> %s fully unapplied." % self.name
else:
for operation, patch, patchinfo in self:
if operation == '.':
print """\
(.) IGNORED %s\
""" % patch
elif operation == '+':
self.patch_apply(patch, patchinfo)
elif operation == '-':
self.patch_deapply(patch, patchinfo)
* Move most parts of debian/bin/gencontrol.py to debian/lib. * Implement subarch. * Rewrite patch handling to integrate arch and subarch specific patches. r4300: waldi | 2005-10-03 22:23:02 +0200 debian/rules.real: Remove old definitions. r4304: waldi | 2005-10-03 23:02:13 +0200 Move template reading to lib. * debian/bin/gencontrol.py - Remove RFC822 routines. - Use templates class. * debian/lib/python/debian_linux.py: Add templates class. r4738: waldi | 2005-11-07 15:51:30 +0100 debian/bin/gencontrol.py: Set TYPE. r4796: waldi | 2005-11-13 15:09:40 +0100 * debian/bin/gencontrol.py: Use config_reader. * debian/lib/python/debian_linux: Add directory. * debian/lib/python/debian_linux/__init__.py: Move from debian/lib/python/python/debian_linux.py. * debian/lib/python/debian_linux/config.py: Add config_reader and config_parser. r4797: waldi | 2005-11-13 15:45:12 +0100 * debian/bin/gencontrol.py: Move code away. For now only use imported code. * debian/lib/python/debian_linux/__init__.py: Remove utils. * debian/lib/python/debian_linux/config.py: Update. * debian/lib/python/debian_linux/debian.py: Add debian packaging specific code. * debian/lib/python/debian_linux/gencontrol.py: Add code. * debian/lib/python/debian_linux/utils.py: Add utils. r4798: waldi | 2005-11-13 15:56:37 +0100 debian/lib/python/debian_linux/gencontrol.py: Don't try to generation extra packages if the template does not exist. r4799: waldi | 2005-11-13 16:04:25 +0100 debian/lib/python/debian_linux/gencontrol.py: Begin to split methods in smaller pieces. r4800: waldi | 2005-11-13 16:26:03 +0100 debian/lib/python/debian_linux/gencontrol.py: Split more code. r4802: waldi | 2005-11-13 16:40:08 +0100 debian/lib/python/debian_linux/gencontrol.py: Also allow strings in makefile write list. r4806: waldi | 2005-11-13 16:55:48 +0100 debian/bin/gencontrol.py: Move linux-2.6 specific code from debian/lib/python/debian_linux/gencontrol.py. r4807: waldi | 2005-11-13 17:07:26 +0100 debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py: Update. r4808: waldi | 2005-11-13 17:08:53 +0100 debian/bin/gencontrol.py: Move code from debian/lib/python/debian_linux/gencontrol.py. r4810: waldi | 2005-11-13 17:10:30 +0100 debian/bin/gencontrol.py - Move code from debian/lib/python/debian_linux/gencontrol.py. - Update. r4811: waldi | 2005-11-13 17:33:47 +0100 debian/bin/gencontrol.py: Move code from debian/lib/python/debian_linux/gencontrol.py. r4812: waldi | 2005-11-13 17:36:38 +0100 debian/bin/gencontrol.py: Update. r4813: waldi | 2005-11-13 18:36:28 +0100 debian/lib/python/debian_linux/config.py: Remove old code. r4814: waldi | 2005-11-13 18:38:50 +0100 * debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py, debian/lib/python/debian_linux/utils.py: Teach package object how to work with list attributes. * debian/lib/python/debian_linux/debian.py: Don't use utils.entry. r4815: waldi | 2005-11-13 18:41:55 +0100 * debian/lib/python/debian_linux/gencontrol.py - Use utils.package. - Remove debugging code. * debian/lib/python/debian_linux/utils.py - Use utils.package. - Remove utils.entry. r4816: waldi | 2005-11-13 18:47:46 +0100 debian/lib/python/debian_linux/utils.py: Don't output empty fields. r4965: waldi | 2005-12-04 12:36:20 +0100 Rewrite config reader to support more than one section per (arch, subarch, flavour). * debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py: Explicitely Use base entries. * debian/lib/python/debian_linux/config.py - Rewrite. - Loose support for entry merging for now. r5175: waldi | 2006-01-02 20:46:46 +0100 debian/bin/gencontrol.py: Fix. r5176: waldi | 2006-01-02 21:09:17 +0100 * debian/bin/apply: Don't expect upstream version in series file names. * debian/patches-debian/series/0experimental.1: Move from debian/patches-debian/series/2.6.14+2.6.15-rc7-0experimental.1. * debian/patches-debian/series/0experimental.2: Move from debian/patches-debian/series/2.6.14+2.6.15-rc7-0experimental.2. r5177: waldi | 2006-01-02 22:31:28 +0100 First prototype of improved patch util. debian/bin/apply.py: Add. r5178: waldi | 2006-01-02 23:40:11 +0100 * debian/bin/apply.py: Finish implementation. * debian/rules.real: Use apply.py. r5179: waldi | 2006-01-03 00:15:05 +0100 * debian/bin/apply.py: Implement arch and subarch specific patches. * debian/bin/unpatch: Remove old code. * debian/rules.real: Fix patch package installation. r5180: waldi | 2006-01-03 00:16:05 +0100 debian/bin/apply: Remove. r5181: waldi | 2006-01-03 00:16:56 +0100 * debian/bin/gencontrol.py: Readd missing build target. * debian/lib/python/debian_linux/debian.py: Raise if version is not parsable. r5192: waldi | 2006-01-03 15:32:43 +0100 debian/bin/apply.py - Add version_file class. - Use correct series for deapply. r5193: waldi | 2006-01-03 15:41:53 +0100 debian/bin/apply.py - Remove extra version handling from series class. - Add check for extra version in patch setup. r5194: waldi | 2006-01-03 15:45:49 +0100 debian/bin/apply.py: Move complete reverse logic into series class. r5195: waldi | 2006-01-03 16:14:33 +0100 debian/bin/apply.py: Implement patch per arch and subarch. It is currently done by completely deapply the arch specific patches if it needs to change set of general patches. r5196: waldi | 2006-01-03 16:18:55 +0100 debian/bin/apply.py: Don't record extra version without patch. r5197: waldi | 2006-01-03 16:25:03 +0100 debian/bin/apply.py: Record shortest possible extra version in version file. r5198: waldi | 2006-01-03 16:28:00 +0100 * debian/patches-debian/series/0experimental.3-extra: Add. * debian/patches-debian/hppa-incompatible.patch: Move from debian/patches-arch/hppa.diff. * debian/patches-debian/m68k-incompatible.patch Move from debian/patches-arch/m68k.diff. * debian/patches-arch: Remove. r5200: waldi | 2006-01-03 16:30:03 +0100 debian/rules.real: Use new apply script for arch and subarch patches. r5207: waldi | 2006-01-03 17:12:52 +0100 * debian/rules.real: Remove old arch patches installation. * debian/templates/control.source.in: Remove dh-kpatches from Buld-Depends-Indep. r5208: waldi | 2006-01-03 17:21:21 +0100 debian/lib/python/debian_linux: Set svn:ignore property. r5210: waldi | 2006-01-03 17:24:09 +0100 debian/templates/control.main.in: Fix depends of patch package. r5212: waldi | 2006-01-03 17:54:18 +0100 * debian/rules: Fix clean. * debian/rules.real - Remove definition of old arch patches. - Use a variable for patch command. r5213: waldi | 2006-01-03 20:45:41 +0100 * debian/templates: Move subarch part in package names in front of flavour. * debian/lib/python/debian_linux/gencontrol.py: Fix subarch text setting. r5214: waldi | 2006-01-03 20:46:05 +0100 debian/lib/python/debian_linux/config.py: Support subarches. r5215: waldi | 2006-01-04 00:51:46 +0100 Update svn:ignore property. r5216: waldi | 2006-01-04 00:53:20 +0100 debian/bin/apply.py - Use correct length in extra check. - Check for correct length of extra entries. r5217: waldi | 2006-01-04 00:54:38 +0100 debian/rules.real - Append subarch to kernel version. - Fix base of kconfig.ml call. r5234: waldi | 2006-01-04 15:34:59 +0100 * debian/bin/gencontrol.py: Use config entry merging when needed. * lib/python/debian_linux/config.py: Readd config entry merging. r5235: waldi | 2006-01-04 16:00:38 +0100 * debian/bin/install-image: Use DEBIAN_LOCALVERSION and DEBIAN_LOCALVERSION_HEADERS. * debian/rules.real: Set LOCALVERSION for scripts. r5240: waldi | 2006-01-04 17:50:12 +0100 debian/rules.real: Fix version of subarch headers package. svn path=/dists/trunk/linux-2.6/; revision=5242
2006-01-04 19:33:32 +00:00
elif operation == 'X':
os.rename(patchinfo[0], patchinfo[1])
print """\
(X) REMOVED %s\
""" % patch
print "--> %s fully applied." % self.name
def patch_apply(self, patch, patchinfo):
ret = self.patch_call(patchinfo, '--fuzz=1')
if ret == 0:
print """\
(+) OK %s\
""" % patch
else:
print """\
(+) FAIL %s\
""" % patch
raise SystemExit, 1
def patch_call(self, patchinfo, patchargs):
patchfile, type = patchinfo
cmdline = []
if type == 0:
cmdline.append('cat')
elif type == 1:
cmdline.append('bzcat')
elif type == 2:
cmdline.append('zcat')
cmdline.append(patchfile + ' | patch -p1 -f -s -t --no-backup-if-mismatch')
cmdline.append(patchargs)
return os.spawnv(os.P_WAIT, '/bin/sh', ['sh', '-c', ' '.join(cmdline)])
def patch_deapply(self, patch, patchinfo):
ret = self.patch_call(patchinfo, '-R')
if ret == 0:
print """\
(-) OK %s\
""" % patch
else:
print """\
(-) FAIL %s\
""" % patch
raise SystemExit, 1
@staticmethod
def read_all(s, home, reverse = False):
ret = []
for name in s:
filename = os.path.join(home, 'series', name)
if not os.path.exists(filename):
warn("Can't find series file for %s" % name)
else:
i = series(name, home, reverse)
ret.append(i)
return ret
class series_extra(series):
def __init__(self, name, home, extra, reverse = False):
self.extra = extra
self.extra_used = ()
self.name = name
self.reverse = reverse
filename = os.path.join(home, 'series', name + '-extra')
if not os.path.exists(filename):
raise RuntimeError, "Can't find series file for %s" % name
f = file(filename)
for line in f.readlines():
line = line.strip()
if len(line) == 0 or line[0] == '#':
continue
items = line.split(' ')
operation, patch = items[:2]
if operation in ('+', '-'):
patchfile = os.path.join(home, patch)
for suffix, type in (('', 0), ('.bz2', 1), ('.gz', 2)):
if os.path.exists(patchfile + suffix):
patchinfo = patchfile + suffix, type
break
else:
raise RuntimeError, "Can't find patch %s for series %s" % (patchfile, name)
else:
raise RuntimeError, 'Undefined operation "%s" in series %s' % (operation, name)
extra = {}
for s in items[2:]:
s = tuple(s.split('_'))
if len(s) > 3:
raise RuntimeError, "parse error"
if len(s) == 3:
raise RuntimeError, "Patch per flavour is not supported currently"
extra[s] = True
if not self._check_extra(extra):
operation = '.'
self.append((operation, patch, patchinfo))
def _check_extra(self, extra):
for i in (1, 2, 3):
t = self.extra[:i]
if extra.has_key(t):
if i > len(self.extra_used):
self.extra_used = t
return True
for i in (2, 3):
t = ('*',) + self.extra[1:i]
* Move most parts of debian/bin/gencontrol.py to debian/lib. * Implement subarch. * Rewrite patch handling to integrate arch and subarch specific patches. r4300: waldi | 2005-10-03 22:23:02 +0200 debian/rules.real: Remove old definitions. r4304: waldi | 2005-10-03 23:02:13 +0200 Move template reading to lib. * debian/bin/gencontrol.py - Remove RFC822 routines. - Use templates class. * debian/lib/python/debian_linux.py: Add templates class. r4738: waldi | 2005-11-07 15:51:30 +0100 debian/bin/gencontrol.py: Set TYPE. r4796: waldi | 2005-11-13 15:09:40 +0100 * debian/bin/gencontrol.py: Use config_reader. * debian/lib/python/debian_linux: Add directory. * debian/lib/python/debian_linux/__init__.py: Move from debian/lib/python/python/debian_linux.py. * debian/lib/python/debian_linux/config.py: Add config_reader and config_parser. r4797: waldi | 2005-11-13 15:45:12 +0100 * debian/bin/gencontrol.py: Move code away. For now only use imported code. * debian/lib/python/debian_linux/__init__.py: Remove utils. * debian/lib/python/debian_linux/config.py: Update. * debian/lib/python/debian_linux/debian.py: Add debian packaging specific code. * debian/lib/python/debian_linux/gencontrol.py: Add code. * debian/lib/python/debian_linux/utils.py: Add utils. r4798: waldi | 2005-11-13 15:56:37 +0100 debian/lib/python/debian_linux/gencontrol.py: Don't try to generation extra packages if the template does not exist. r4799: waldi | 2005-11-13 16:04:25 +0100 debian/lib/python/debian_linux/gencontrol.py: Begin to split methods in smaller pieces. r4800: waldi | 2005-11-13 16:26:03 +0100 debian/lib/python/debian_linux/gencontrol.py: Split more code. r4802: waldi | 2005-11-13 16:40:08 +0100 debian/lib/python/debian_linux/gencontrol.py: Also allow strings in makefile write list. r4806: waldi | 2005-11-13 16:55:48 +0100 debian/bin/gencontrol.py: Move linux-2.6 specific code from debian/lib/python/debian_linux/gencontrol.py. r4807: waldi | 2005-11-13 17:07:26 +0100 debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py: Update. r4808: waldi | 2005-11-13 17:08:53 +0100 debian/bin/gencontrol.py: Move code from debian/lib/python/debian_linux/gencontrol.py. r4810: waldi | 2005-11-13 17:10:30 +0100 debian/bin/gencontrol.py - Move code from debian/lib/python/debian_linux/gencontrol.py. - Update. r4811: waldi | 2005-11-13 17:33:47 +0100 debian/bin/gencontrol.py: Move code from debian/lib/python/debian_linux/gencontrol.py. r4812: waldi | 2005-11-13 17:36:38 +0100 debian/bin/gencontrol.py: Update. r4813: waldi | 2005-11-13 18:36:28 +0100 debian/lib/python/debian_linux/config.py: Remove old code. r4814: waldi | 2005-11-13 18:38:50 +0100 * debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py, debian/lib/python/debian_linux/utils.py: Teach package object how to work with list attributes. * debian/lib/python/debian_linux/debian.py: Don't use utils.entry. r4815: waldi | 2005-11-13 18:41:55 +0100 * debian/lib/python/debian_linux/gencontrol.py - Use utils.package. - Remove debugging code. * debian/lib/python/debian_linux/utils.py - Use utils.package. - Remove utils.entry. r4816: waldi | 2005-11-13 18:47:46 +0100 debian/lib/python/debian_linux/utils.py: Don't output empty fields. r4965: waldi | 2005-12-04 12:36:20 +0100 Rewrite config reader to support more than one section per (arch, subarch, flavour). * debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py: Explicitely Use base entries. * debian/lib/python/debian_linux/config.py - Rewrite. - Loose support for entry merging for now. r5175: waldi | 2006-01-02 20:46:46 +0100 debian/bin/gencontrol.py: Fix. r5176: waldi | 2006-01-02 21:09:17 +0100 * debian/bin/apply: Don't expect upstream version in series file names. * debian/patches-debian/series/0experimental.1: Move from debian/patches-debian/series/2.6.14+2.6.15-rc7-0experimental.1. * debian/patches-debian/series/0experimental.2: Move from debian/patches-debian/series/2.6.14+2.6.15-rc7-0experimental.2. r5177: waldi | 2006-01-02 22:31:28 +0100 First prototype of improved patch util. debian/bin/apply.py: Add. r5178: waldi | 2006-01-02 23:40:11 +0100 * debian/bin/apply.py: Finish implementation. * debian/rules.real: Use apply.py. r5179: waldi | 2006-01-03 00:15:05 +0100 * debian/bin/apply.py: Implement arch and subarch specific patches. * debian/bin/unpatch: Remove old code. * debian/rules.real: Fix patch package installation. r5180: waldi | 2006-01-03 00:16:05 +0100 debian/bin/apply: Remove. r5181: waldi | 2006-01-03 00:16:56 +0100 * debian/bin/gencontrol.py: Readd missing build target. * debian/lib/python/debian_linux/debian.py: Raise if version is not parsable. r5192: waldi | 2006-01-03 15:32:43 +0100 debian/bin/apply.py - Add version_file class. - Use correct series for deapply. r5193: waldi | 2006-01-03 15:41:53 +0100 debian/bin/apply.py - Remove extra version handling from series class. - Add check for extra version in patch setup. r5194: waldi | 2006-01-03 15:45:49 +0100 debian/bin/apply.py: Move complete reverse logic into series class. r5195: waldi | 2006-01-03 16:14:33 +0100 debian/bin/apply.py: Implement patch per arch and subarch. It is currently done by completely deapply the arch specific patches if it needs to change set of general patches. r5196: waldi | 2006-01-03 16:18:55 +0100 debian/bin/apply.py: Don't record extra version without patch. r5197: waldi | 2006-01-03 16:25:03 +0100 debian/bin/apply.py: Record shortest possible extra version in version file. r5198: waldi | 2006-01-03 16:28:00 +0100 * debian/patches-debian/series/0experimental.3-extra: Add. * debian/patches-debian/hppa-incompatible.patch: Move from debian/patches-arch/hppa.diff. * debian/patches-debian/m68k-incompatible.patch Move from debian/patches-arch/m68k.diff. * debian/patches-arch: Remove. r5200: waldi | 2006-01-03 16:30:03 +0100 debian/rules.real: Use new apply script for arch and subarch patches. r5207: waldi | 2006-01-03 17:12:52 +0100 * debian/rules.real: Remove old arch patches installation. * debian/templates/control.source.in: Remove dh-kpatches from Buld-Depends-Indep. r5208: waldi | 2006-01-03 17:21:21 +0100 debian/lib/python/debian_linux: Set svn:ignore property. r5210: waldi | 2006-01-03 17:24:09 +0100 debian/templates/control.main.in: Fix depends of patch package. r5212: waldi | 2006-01-03 17:54:18 +0100 * debian/rules: Fix clean. * debian/rules.real - Remove definition of old arch patches. - Use a variable for patch command. r5213: waldi | 2006-01-03 20:45:41 +0100 * debian/templates: Move subarch part in package names in front of flavour. * debian/lib/python/debian_linux/gencontrol.py: Fix subarch text setting. r5214: waldi | 2006-01-03 20:46:05 +0100 debian/lib/python/debian_linux/config.py: Support subarches. r5215: waldi | 2006-01-04 00:51:46 +0100 Update svn:ignore property. r5216: waldi | 2006-01-04 00:53:20 +0100 debian/bin/apply.py - Use correct length in extra check. - Check for correct length of extra entries. r5217: waldi | 2006-01-04 00:54:38 +0100 debian/rules.real - Append subarch to kernel version. - Fix base of kconfig.ml call. r5234: waldi | 2006-01-04 15:34:59 +0100 * debian/bin/gencontrol.py: Use config entry merging when needed. * lib/python/debian_linux/config.py: Readd config entry merging. r5235: waldi | 2006-01-04 16:00:38 +0100 * debian/bin/install-image: Use DEBIAN_LOCALVERSION and DEBIAN_LOCALVERSION_HEADERS. * debian/rules.real: Set LOCALVERSION for scripts. r5240: waldi | 2006-01-04 17:50:12 +0100 debian/rules.real: Fix version of subarch headers package. svn path=/dists/trunk/linux-2.6/; revision=5242
2006-01-04 19:33:32 +00:00
if extra.has_key(t):
if i > len(self.extra_used):
self.extra_used = t
return True
return False
@staticmethod
def read_all(s, home, extra, reverse = False):
ret = []
for name in s:
filename = os.path.join(home, 'series', name + '-extra')
if not os.path.exists(filename):
warn("Can't find series file for %s" % name)
else:
i = series_extra(name, home, extra, reverse)
ret.append(i)
return ret
class version(object):
__slots__ = "upstream", "revision"
def __init__(self, string = None):
if string is not None:
* Set compiler build dependencies from config informations. * Install debian/lib into headers-all package. * Unlink version file before writing to them. * debian/README: Remove outdated information. r5275: waldi | 2006-01-05 14:00:15 +0100 * debian/lib/python/debian_linux/debian.py: Move package class from utils. * debian/lib/python/debian_linux/utils.py: Use package class from debian. r5277: waldi | 2006-01-05 14:41:45 +0100 * debian/lib/python/debian_linux/debian.py - Add package_relation, package_relation_list and package_relation_group classes. - Use them in the package class. * debian/lib/python/debian_linux/gencontrol.py - Support new relation classes. r5278: waldi | 2006-01-05 14:46:55 +0100 debian/bin/gencontrol.py: Use relation objects for tree entry. r5279: waldi | 2006-01-05 15:20:00 +0100 * debian/bin/gencontrol.py: Don't fail if some relation fields are empty. * debian/lib/python/debian_linux/debian.py: Merge relation entries. r5280: waldi | 2006-01-05 15:24:08 +0100 * debian/arch/defines, debian/arch/hppa/defines: Set relations for compiler. * debian/lib/python/debian_linux/gencontrol.py: Set compiler build dependencies from config informations. * debian/templates/control.source.in: Remove compiler from Build-Depends. r5281: waldi | 2006-01-05 15:39:45 +0100 * debian/rules.real - Install debian/lib into headers-all package. - Call dh_python with python version 2.4. * debian/templates/control.source.in: Add python to build-depends, needed by dh_python. r5282: waldi | 2006-01-05 16:36:33 +0100 debian/rules.real - Remove outdated comment about include_common_config. - Remove support for headers_dirs. r5283: waldi | 2006-01-05 16:38:05 +0100 debian/arch/amd64/Makefile.inc, debian/arch/arm/Makefile.inc, debian/arch/hppa/Makefile.inc, debian/arch/powerpc/Makefile.inc, debian/arch/sparc/Makefile.inc: Remove not longer supported variables. r5284: waldi | 2006-01-05 16:42:33 +0100 debian/lib/python/debian_linux/gencontrol.py: Warn if the class setting is not available. r5287: waldi | 2006-01-05 19:07:05 +0100 debian/arch/powerpc/defines: Set kernel-arch for all except powerpc64 to ppc. r5288: waldi | 2006-01-05 19:08:35 +0100 debian/lib/python/debian_linux/config.py: Only bail out if a section is not found in any config file. r5294: waldi | 2006-01-05 19:26:57 +0100 debian/lib/python/debian_linux/gencontrol.py - Support config underlay. - Add some small default implementations. r5295: waldi | 2006-01-05 19:39:55 +0100 debian/README: Remove outdated information. r5325: waldi | 2006-01-06 22:40:17 +0100 debian/bin/apply.py - Don't reference the debian_linux module, it is not available. - Unlink version file before writing to them. svn path=/dists/trunk/linux-2.6/; revision=5327
2006-01-06 22:32:16 +00:00
self.upstream, self.revision = self.parse(string)
* Move most parts of debian/bin/gencontrol.py to debian/lib. * Implement subarch. * Rewrite patch handling to integrate arch and subarch specific patches. r4300: waldi | 2005-10-03 22:23:02 +0200 debian/rules.real: Remove old definitions. r4304: waldi | 2005-10-03 23:02:13 +0200 Move template reading to lib. * debian/bin/gencontrol.py - Remove RFC822 routines. - Use templates class. * debian/lib/python/debian_linux.py: Add templates class. r4738: waldi | 2005-11-07 15:51:30 +0100 debian/bin/gencontrol.py: Set TYPE. r4796: waldi | 2005-11-13 15:09:40 +0100 * debian/bin/gencontrol.py: Use config_reader. * debian/lib/python/debian_linux: Add directory. * debian/lib/python/debian_linux/__init__.py: Move from debian/lib/python/python/debian_linux.py. * debian/lib/python/debian_linux/config.py: Add config_reader and config_parser. r4797: waldi | 2005-11-13 15:45:12 +0100 * debian/bin/gencontrol.py: Move code away. For now only use imported code. * debian/lib/python/debian_linux/__init__.py: Remove utils. * debian/lib/python/debian_linux/config.py: Update. * debian/lib/python/debian_linux/debian.py: Add debian packaging specific code. * debian/lib/python/debian_linux/gencontrol.py: Add code. * debian/lib/python/debian_linux/utils.py: Add utils. r4798: waldi | 2005-11-13 15:56:37 +0100 debian/lib/python/debian_linux/gencontrol.py: Don't try to generation extra packages if the template does not exist. r4799: waldi | 2005-11-13 16:04:25 +0100 debian/lib/python/debian_linux/gencontrol.py: Begin to split methods in smaller pieces. r4800: waldi | 2005-11-13 16:26:03 +0100 debian/lib/python/debian_linux/gencontrol.py: Split more code. r4802: waldi | 2005-11-13 16:40:08 +0100 debian/lib/python/debian_linux/gencontrol.py: Also allow strings in makefile write list. r4806: waldi | 2005-11-13 16:55:48 +0100 debian/bin/gencontrol.py: Move linux-2.6 specific code from debian/lib/python/debian_linux/gencontrol.py. r4807: waldi | 2005-11-13 17:07:26 +0100 debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py: Update. r4808: waldi | 2005-11-13 17:08:53 +0100 debian/bin/gencontrol.py: Move code from debian/lib/python/debian_linux/gencontrol.py. r4810: waldi | 2005-11-13 17:10:30 +0100 debian/bin/gencontrol.py - Move code from debian/lib/python/debian_linux/gencontrol.py. - Update. r4811: waldi | 2005-11-13 17:33:47 +0100 debian/bin/gencontrol.py: Move code from debian/lib/python/debian_linux/gencontrol.py. r4812: waldi | 2005-11-13 17:36:38 +0100 debian/bin/gencontrol.py: Update. r4813: waldi | 2005-11-13 18:36:28 +0100 debian/lib/python/debian_linux/config.py: Remove old code. r4814: waldi | 2005-11-13 18:38:50 +0100 * debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py, debian/lib/python/debian_linux/utils.py: Teach package object how to work with list attributes. * debian/lib/python/debian_linux/debian.py: Don't use utils.entry. r4815: waldi | 2005-11-13 18:41:55 +0100 * debian/lib/python/debian_linux/gencontrol.py - Use utils.package. - Remove debugging code. * debian/lib/python/debian_linux/utils.py - Use utils.package. - Remove utils.entry. r4816: waldi | 2005-11-13 18:47:46 +0100 debian/lib/python/debian_linux/utils.py: Don't output empty fields. r4965: waldi | 2005-12-04 12:36:20 +0100 Rewrite config reader to support more than one section per (arch, subarch, flavour). * debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py: Explicitely Use base entries. * debian/lib/python/debian_linux/config.py - Rewrite. - Loose support for entry merging for now. r5175: waldi | 2006-01-02 20:46:46 +0100 debian/bin/gencontrol.py: Fix. r5176: waldi | 2006-01-02 21:09:17 +0100 * debian/bin/apply: Don't expect upstream version in series file names. * debian/patches-debian/series/0experimental.1: Move from debian/patches-debian/series/2.6.14+2.6.15-rc7-0experimental.1. * debian/patches-debian/series/0experimental.2: Move from debian/patches-debian/series/2.6.14+2.6.15-rc7-0experimental.2. r5177: waldi | 2006-01-02 22:31:28 +0100 First prototype of improved patch util. debian/bin/apply.py: Add. r5178: waldi | 2006-01-02 23:40:11 +0100 * debian/bin/apply.py: Finish implementation. * debian/rules.real: Use apply.py. r5179: waldi | 2006-01-03 00:15:05 +0100 * debian/bin/apply.py: Implement arch and subarch specific patches. * debian/bin/unpatch: Remove old code. * debian/rules.real: Fix patch package installation. r5180: waldi | 2006-01-03 00:16:05 +0100 debian/bin/apply: Remove. r5181: waldi | 2006-01-03 00:16:56 +0100 * debian/bin/gencontrol.py: Readd missing build target. * debian/lib/python/debian_linux/debian.py: Raise if version is not parsable. r5192: waldi | 2006-01-03 15:32:43 +0100 debian/bin/apply.py - Add version_file class. - Use correct series for deapply. r5193: waldi | 2006-01-03 15:41:53 +0100 debian/bin/apply.py - Remove extra version handling from series class. - Add check for extra version in patch setup. r5194: waldi | 2006-01-03 15:45:49 +0100 debian/bin/apply.py: Move complete reverse logic into series class. r5195: waldi | 2006-01-03 16:14:33 +0100 debian/bin/apply.py: Implement patch per arch and subarch. It is currently done by completely deapply the arch specific patches if it needs to change set of general patches. r5196: waldi | 2006-01-03 16:18:55 +0100 debian/bin/apply.py: Don't record extra version without patch. r5197: waldi | 2006-01-03 16:25:03 +0100 debian/bin/apply.py: Record shortest possible extra version in version file. r5198: waldi | 2006-01-03 16:28:00 +0100 * debian/patches-debian/series/0experimental.3-extra: Add. * debian/patches-debian/hppa-incompatible.patch: Move from debian/patches-arch/hppa.diff. * debian/patches-debian/m68k-incompatible.patch Move from debian/patches-arch/m68k.diff. * debian/patches-arch: Remove. r5200: waldi | 2006-01-03 16:30:03 +0100 debian/rules.real: Use new apply script for arch and subarch patches. r5207: waldi | 2006-01-03 17:12:52 +0100 * debian/rules.real: Remove old arch patches installation. * debian/templates/control.source.in: Remove dh-kpatches from Buld-Depends-Indep. r5208: waldi | 2006-01-03 17:21:21 +0100 debian/lib/python/debian_linux: Set svn:ignore property. r5210: waldi | 2006-01-03 17:24:09 +0100 debian/templates/control.main.in: Fix depends of patch package. r5212: waldi | 2006-01-03 17:54:18 +0100 * debian/rules: Fix clean. * debian/rules.real - Remove definition of old arch patches. - Use a variable for patch command. r5213: waldi | 2006-01-03 20:45:41 +0100 * debian/templates: Move subarch part in package names in front of flavour. * debian/lib/python/debian_linux/gencontrol.py: Fix subarch text setting. r5214: waldi | 2006-01-03 20:46:05 +0100 debian/lib/python/debian_linux/config.py: Support subarches. r5215: waldi | 2006-01-04 00:51:46 +0100 Update svn:ignore property. r5216: waldi | 2006-01-04 00:53:20 +0100 debian/bin/apply.py - Use correct length in extra check. - Check for correct length of extra entries. r5217: waldi | 2006-01-04 00:54:38 +0100 debian/rules.real - Append subarch to kernel version. - Fix base of kconfig.ml call. r5234: waldi | 2006-01-04 15:34:59 +0100 * debian/bin/gencontrol.py: Use config entry merging when needed. * lib/python/debian_linux/config.py: Readd config entry merging. r5235: waldi | 2006-01-04 16:00:38 +0100 * debian/bin/install-image: Use DEBIAN_LOCALVERSION and DEBIAN_LOCALVERSION_HEADERS. * debian/rules.real: Set LOCALVERSION for scripts. r5240: waldi | 2006-01-04 17:50:12 +0100 debian/rules.real: Fix version of subarch headers package. svn path=/dists/trunk/linux-2.6/; revision=5242
2006-01-04 19:33:32 +00:00
def __str__(self):
return "%s-%s" % (self.upstream, self.revision)
* Set compiler build dependencies from config informations. * Install debian/lib into headers-all package. * Unlink version file before writing to them. * debian/README: Remove outdated information. r5275: waldi | 2006-01-05 14:00:15 +0100 * debian/lib/python/debian_linux/debian.py: Move package class from utils. * debian/lib/python/debian_linux/utils.py: Use package class from debian. r5277: waldi | 2006-01-05 14:41:45 +0100 * debian/lib/python/debian_linux/debian.py - Add package_relation, package_relation_list and package_relation_group classes. - Use them in the package class. * debian/lib/python/debian_linux/gencontrol.py - Support new relation classes. r5278: waldi | 2006-01-05 14:46:55 +0100 debian/bin/gencontrol.py: Use relation objects for tree entry. r5279: waldi | 2006-01-05 15:20:00 +0100 * debian/bin/gencontrol.py: Don't fail if some relation fields are empty. * debian/lib/python/debian_linux/debian.py: Merge relation entries. r5280: waldi | 2006-01-05 15:24:08 +0100 * debian/arch/defines, debian/arch/hppa/defines: Set relations for compiler. * debian/lib/python/debian_linux/gencontrol.py: Set compiler build dependencies from config informations. * debian/templates/control.source.in: Remove compiler from Build-Depends. r5281: waldi | 2006-01-05 15:39:45 +0100 * debian/rules.real - Install debian/lib into headers-all package. - Call dh_python with python version 2.4. * debian/templates/control.source.in: Add python to build-depends, needed by dh_python. r5282: waldi | 2006-01-05 16:36:33 +0100 debian/rules.real - Remove outdated comment about include_common_config. - Remove support for headers_dirs. r5283: waldi | 2006-01-05 16:38:05 +0100 debian/arch/amd64/Makefile.inc, debian/arch/arm/Makefile.inc, debian/arch/hppa/Makefile.inc, debian/arch/powerpc/Makefile.inc, debian/arch/sparc/Makefile.inc: Remove not longer supported variables. r5284: waldi | 2006-01-05 16:42:33 +0100 debian/lib/python/debian_linux/gencontrol.py: Warn if the class setting is not available. r5287: waldi | 2006-01-05 19:07:05 +0100 debian/arch/powerpc/defines: Set kernel-arch for all except powerpc64 to ppc. r5288: waldi | 2006-01-05 19:08:35 +0100 debian/lib/python/debian_linux/config.py: Only bail out if a section is not found in any config file. r5294: waldi | 2006-01-05 19:26:57 +0100 debian/lib/python/debian_linux/gencontrol.py - Support config underlay. - Add some small default implementations. r5295: waldi | 2006-01-05 19:39:55 +0100 debian/README: Remove outdated information. r5325: waldi | 2006-01-06 22:40:17 +0100 debian/bin/apply.py - Don't reference the debian_linux module, it is not available. - Unlink version file before writing to them. svn path=/dists/trunk/linux-2.6/; revision=5327
2006-01-06 22:32:16 +00:00
_re = r"""
^
(
(?:
\d+\.\d+\.\d+\+
)?
\d+\.\d+\.\d+
(?:
-.+?
)?
)
-
([^-]+)
$
"""
def parse(self, version):
match = re.match(self._re, version, re.X)
if match is None:
raise ValueError
return match.groups()
* Move most parts of debian/bin/gencontrol.py to debian/lib. * Implement subarch. * Rewrite patch handling to integrate arch and subarch specific patches. r4300: waldi | 2005-10-03 22:23:02 +0200 debian/rules.real: Remove old definitions. r4304: waldi | 2005-10-03 23:02:13 +0200 Move template reading to lib. * debian/bin/gencontrol.py - Remove RFC822 routines. - Use templates class. * debian/lib/python/debian_linux.py: Add templates class. r4738: waldi | 2005-11-07 15:51:30 +0100 debian/bin/gencontrol.py: Set TYPE. r4796: waldi | 2005-11-13 15:09:40 +0100 * debian/bin/gencontrol.py: Use config_reader. * debian/lib/python/debian_linux: Add directory. * debian/lib/python/debian_linux/__init__.py: Move from debian/lib/python/python/debian_linux.py. * debian/lib/python/debian_linux/config.py: Add config_reader and config_parser. r4797: waldi | 2005-11-13 15:45:12 +0100 * debian/bin/gencontrol.py: Move code away. For now only use imported code. * debian/lib/python/debian_linux/__init__.py: Remove utils. * debian/lib/python/debian_linux/config.py: Update. * debian/lib/python/debian_linux/debian.py: Add debian packaging specific code. * debian/lib/python/debian_linux/gencontrol.py: Add code. * debian/lib/python/debian_linux/utils.py: Add utils. r4798: waldi | 2005-11-13 15:56:37 +0100 debian/lib/python/debian_linux/gencontrol.py: Don't try to generation extra packages if the template does not exist. r4799: waldi | 2005-11-13 16:04:25 +0100 debian/lib/python/debian_linux/gencontrol.py: Begin to split methods in smaller pieces. r4800: waldi | 2005-11-13 16:26:03 +0100 debian/lib/python/debian_linux/gencontrol.py: Split more code. r4802: waldi | 2005-11-13 16:40:08 +0100 debian/lib/python/debian_linux/gencontrol.py: Also allow strings in makefile write list. r4806: waldi | 2005-11-13 16:55:48 +0100 debian/bin/gencontrol.py: Move linux-2.6 specific code from debian/lib/python/debian_linux/gencontrol.py. r4807: waldi | 2005-11-13 17:07:26 +0100 debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py: Update. r4808: waldi | 2005-11-13 17:08:53 +0100 debian/bin/gencontrol.py: Move code from debian/lib/python/debian_linux/gencontrol.py. r4810: waldi | 2005-11-13 17:10:30 +0100 debian/bin/gencontrol.py - Move code from debian/lib/python/debian_linux/gencontrol.py. - Update. r4811: waldi | 2005-11-13 17:33:47 +0100 debian/bin/gencontrol.py: Move code from debian/lib/python/debian_linux/gencontrol.py. r4812: waldi | 2005-11-13 17:36:38 +0100 debian/bin/gencontrol.py: Update. r4813: waldi | 2005-11-13 18:36:28 +0100 debian/lib/python/debian_linux/config.py: Remove old code. r4814: waldi | 2005-11-13 18:38:50 +0100 * debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py, debian/lib/python/debian_linux/utils.py: Teach package object how to work with list attributes. * debian/lib/python/debian_linux/debian.py: Don't use utils.entry. r4815: waldi | 2005-11-13 18:41:55 +0100 * debian/lib/python/debian_linux/gencontrol.py - Use utils.package. - Remove debugging code. * debian/lib/python/debian_linux/utils.py - Use utils.package. - Remove utils.entry. r4816: waldi | 2005-11-13 18:47:46 +0100 debian/lib/python/debian_linux/utils.py: Don't output empty fields. r4965: waldi | 2005-12-04 12:36:20 +0100 Rewrite config reader to support more than one section per (arch, subarch, flavour). * debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py: Explicitely Use base entries. * debian/lib/python/debian_linux/config.py - Rewrite. - Loose support for entry merging for now. r5175: waldi | 2006-01-02 20:46:46 +0100 debian/bin/gencontrol.py: Fix. r5176: waldi | 2006-01-02 21:09:17 +0100 * debian/bin/apply: Don't expect upstream version in series file names. * debian/patches-debian/series/0experimental.1: Move from debian/patches-debian/series/2.6.14+2.6.15-rc7-0experimental.1. * debian/patches-debian/series/0experimental.2: Move from debian/patches-debian/series/2.6.14+2.6.15-rc7-0experimental.2. r5177: waldi | 2006-01-02 22:31:28 +0100 First prototype of improved patch util. debian/bin/apply.py: Add. r5178: waldi | 2006-01-02 23:40:11 +0100 * debian/bin/apply.py: Finish implementation. * debian/rules.real: Use apply.py. r5179: waldi | 2006-01-03 00:15:05 +0100 * debian/bin/apply.py: Implement arch and subarch specific patches. * debian/bin/unpatch: Remove old code. * debian/rules.real: Fix patch package installation. r5180: waldi | 2006-01-03 00:16:05 +0100 debian/bin/apply: Remove. r5181: waldi | 2006-01-03 00:16:56 +0100 * debian/bin/gencontrol.py: Readd missing build target. * debian/lib/python/debian_linux/debian.py: Raise if version is not parsable. r5192: waldi | 2006-01-03 15:32:43 +0100 debian/bin/apply.py - Add version_file class. - Use correct series for deapply. r5193: waldi | 2006-01-03 15:41:53 +0100 debian/bin/apply.py - Remove extra version handling from series class. - Add check for extra version in patch setup. r5194: waldi | 2006-01-03 15:45:49 +0100 debian/bin/apply.py: Move complete reverse logic into series class. r5195: waldi | 2006-01-03 16:14:33 +0100 debian/bin/apply.py: Implement patch per arch and subarch. It is currently done by completely deapply the arch specific patches if it needs to change set of general patches. r5196: waldi | 2006-01-03 16:18:55 +0100 debian/bin/apply.py: Don't record extra version without patch. r5197: waldi | 2006-01-03 16:25:03 +0100 debian/bin/apply.py: Record shortest possible extra version in version file. r5198: waldi | 2006-01-03 16:28:00 +0100 * debian/patches-debian/series/0experimental.3-extra: Add. * debian/patches-debian/hppa-incompatible.patch: Move from debian/patches-arch/hppa.diff. * debian/patches-debian/m68k-incompatible.patch Move from debian/patches-arch/m68k.diff. * debian/patches-arch: Remove. r5200: waldi | 2006-01-03 16:30:03 +0100 debian/rules.real: Use new apply script for arch and subarch patches. r5207: waldi | 2006-01-03 17:12:52 +0100 * debian/rules.real: Remove old arch patches installation. * debian/templates/control.source.in: Remove dh-kpatches from Buld-Depends-Indep. r5208: waldi | 2006-01-03 17:21:21 +0100 debian/lib/python/debian_linux: Set svn:ignore property. r5210: waldi | 2006-01-03 17:24:09 +0100 debian/templates/control.main.in: Fix depends of patch package. r5212: waldi | 2006-01-03 17:54:18 +0100 * debian/rules: Fix clean. * debian/rules.real - Remove definition of old arch patches. - Use a variable for patch command. r5213: waldi | 2006-01-03 20:45:41 +0100 * debian/templates: Move subarch part in package names in front of flavour. * debian/lib/python/debian_linux/gencontrol.py: Fix subarch text setting. r5214: waldi | 2006-01-03 20:46:05 +0100 debian/lib/python/debian_linux/config.py: Support subarches. r5215: waldi | 2006-01-04 00:51:46 +0100 Update svn:ignore property. r5216: waldi | 2006-01-04 00:53:20 +0100 debian/bin/apply.py - Use correct length in extra check. - Check for correct length of extra entries. r5217: waldi | 2006-01-04 00:54:38 +0100 debian/rules.real - Append subarch to kernel version. - Fix base of kconfig.ml call. r5234: waldi | 2006-01-04 15:34:59 +0100 * debian/bin/gencontrol.py: Use config entry merging when needed. * lib/python/debian_linux/config.py: Readd config entry merging. r5235: waldi | 2006-01-04 16:00:38 +0100 * debian/bin/install-image: Use DEBIAN_LOCALVERSION and DEBIAN_LOCALVERSION_HEADERS. * debian/rules.real: Set LOCALVERSION for scripts. r5240: waldi | 2006-01-04 17:50:12 +0100 debian/rules.real: Fix version of subarch headers package. svn path=/dists/trunk/linux-2.6/; revision=5242
2006-01-04 19:33:32 +00:00
class version_file(object):
_file = 'version.Debian'
extra = ()
in_progress = False
def __init__(self, ver = None, overwrite = False):
if overwrite:
self._read(ver)
elif os.path.exists(self._file):
s = file(self._file).readline().strip()
self._read(s)
elif ver:
warn('No %s file, assuming pristine Linux %s' % (self._file, ver.upstream))
self.version = version()
self.version.upstream = ver.upstream
self.version.revision = '0'
else:
raise RuntimeError, "Not possible to determine version"
def __str__(self):
if self.in_progress:
return "unstable"
if self.extra:
return "%s %s" % (self.version, '_'.join(self.extra))
return str(self.version)
def _read(self, s):
list = s.split(' ')
if len(list) > 2:
raise RuntimeError, "Can't parse %s" % self._file
try:
self.version = version(list[0])
except ValueError:
raise RuntimeError, 'Can\'t read version in %s: "%s"' % (self._file, list[0])
if len(list) == 2:
self.extra = tuple(list[1].split('_'))
def _write(self):
* Set compiler build dependencies from config informations. * Install debian/lib into headers-all package. * Unlink version file before writing to them. * debian/README: Remove outdated information. r5275: waldi | 2006-01-05 14:00:15 +0100 * debian/lib/python/debian_linux/debian.py: Move package class from utils. * debian/lib/python/debian_linux/utils.py: Use package class from debian. r5277: waldi | 2006-01-05 14:41:45 +0100 * debian/lib/python/debian_linux/debian.py - Add package_relation, package_relation_list and package_relation_group classes. - Use them in the package class. * debian/lib/python/debian_linux/gencontrol.py - Support new relation classes. r5278: waldi | 2006-01-05 14:46:55 +0100 debian/bin/gencontrol.py: Use relation objects for tree entry. r5279: waldi | 2006-01-05 15:20:00 +0100 * debian/bin/gencontrol.py: Don't fail if some relation fields are empty. * debian/lib/python/debian_linux/debian.py: Merge relation entries. r5280: waldi | 2006-01-05 15:24:08 +0100 * debian/arch/defines, debian/arch/hppa/defines: Set relations for compiler. * debian/lib/python/debian_linux/gencontrol.py: Set compiler build dependencies from config informations. * debian/templates/control.source.in: Remove compiler from Build-Depends. r5281: waldi | 2006-01-05 15:39:45 +0100 * debian/rules.real - Install debian/lib into headers-all package. - Call dh_python with python version 2.4. * debian/templates/control.source.in: Add python to build-depends, needed by dh_python. r5282: waldi | 2006-01-05 16:36:33 +0100 debian/rules.real - Remove outdated comment about include_common_config. - Remove support for headers_dirs. r5283: waldi | 2006-01-05 16:38:05 +0100 debian/arch/amd64/Makefile.inc, debian/arch/arm/Makefile.inc, debian/arch/hppa/Makefile.inc, debian/arch/powerpc/Makefile.inc, debian/arch/sparc/Makefile.inc: Remove not longer supported variables. r5284: waldi | 2006-01-05 16:42:33 +0100 debian/lib/python/debian_linux/gencontrol.py: Warn if the class setting is not available. r5287: waldi | 2006-01-05 19:07:05 +0100 debian/arch/powerpc/defines: Set kernel-arch for all except powerpc64 to ppc. r5288: waldi | 2006-01-05 19:08:35 +0100 debian/lib/python/debian_linux/config.py: Only bail out if a section is not found in any config file. r5294: waldi | 2006-01-05 19:26:57 +0100 debian/lib/python/debian_linux/gencontrol.py - Support config underlay. - Add some small default implementations. r5295: waldi | 2006-01-05 19:39:55 +0100 debian/README: Remove outdated information. r5325: waldi | 2006-01-06 22:40:17 +0100 debian/bin/apply.py - Don't reference the debian_linux module, it is not available. - Unlink version file before writing to them. svn path=/dists/trunk/linux-2.6/; revision=5327
2006-01-06 22:32:16 +00:00
if os.path.lexists(self._file):
os.unlink(self._file)
* Move most parts of debian/bin/gencontrol.py to debian/lib. * Implement subarch. * Rewrite patch handling to integrate arch and subarch specific patches. r4300: waldi | 2005-10-03 22:23:02 +0200 debian/rules.real: Remove old definitions. r4304: waldi | 2005-10-03 23:02:13 +0200 Move template reading to lib. * debian/bin/gencontrol.py - Remove RFC822 routines. - Use templates class. * debian/lib/python/debian_linux.py: Add templates class. r4738: waldi | 2005-11-07 15:51:30 +0100 debian/bin/gencontrol.py: Set TYPE. r4796: waldi | 2005-11-13 15:09:40 +0100 * debian/bin/gencontrol.py: Use config_reader. * debian/lib/python/debian_linux: Add directory. * debian/lib/python/debian_linux/__init__.py: Move from debian/lib/python/python/debian_linux.py. * debian/lib/python/debian_linux/config.py: Add config_reader and config_parser. r4797: waldi | 2005-11-13 15:45:12 +0100 * debian/bin/gencontrol.py: Move code away. For now only use imported code. * debian/lib/python/debian_linux/__init__.py: Remove utils. * debian/lib/python/debian_linux/config.py: Update. * debian/lib/python/debian_linux/debian.py: Add debian packaging specific code. * debian/lib/python/debian_linux/gencontrol.py: Add code. * debian/lib/python/debian_linux/utils.py: Add utils. r4798: waldi | 2005-11-13 15:56:37 +0100 debian/lib/python/debian_linux/gencontrol.py: Don't try to generation extra packages if the template does not exist. r4799: waldi | 2005-11-13 16:04:25 +0100 debian/lib/python/debian_linux/gencontrol.py: Begin to split methods in smaller pieces. r4800: waldi | 2005-11-13 16:26:03 +0100 debian/lib/python/debian_linux/gencontrol.py: Split more code. r4802: waldi | 2005-11-13 16:40:08 +0100 debian/lib/python/debian_linux/gencontrol.py: Also allow strings in makefile write list. r4806: waldi | 2005-11-13 16:55:48 +0100 debian/bin/gencontrol.py: Move linux-2.6 specific code from debian/lib/python/debian_linux/gencontrol.py. r4807: waldi | 2005-11-13 17:07:26 +0100 debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py: Update. r4808: waldi | 2005-11-13 17:08:53 +0100 debian/bin/gencontrol.py: Move code from debian/lib/python/debian_linux/gencontrol.py. r4810: waldi | 2005-11-13 17:10:30 +0100 debian/bin/gencontrol.py - Move code from debian/lib/python/debian_linux/gencontrol.py. - Update. r4811: waldi | 2005-11-13 17:33:47 +0100 debian/bin/gencontrol.py: Move code from debian/lib/python/debian_linux/gencontrol.py. r4812: waldi | 2005-11-13 17:36:38 +0100 debian/bin/gencontrol.py: Update. r4813: waldi | 2005-11-13 18:36:28 +0100 debian/lib/python/debian_linux/config.py: Remove old code. r4814: waldi | 2005-11-13 18:38:50 +0100 * debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py, debian/lib/python/debian_linux/utils.py: Teach package object how to work with list attributes. * debian/lib/python/debian_linux/debian.py: Don't use utils.entry. r4815: waldi | 2005-11-13 18:41:55 +0100 * debian/lib/python/debian_linux/gencontrol.py - Use utils.package. - Remove debugging code. * debian/lib/python/debian_linux/utils.py - Use utils.package. - Remove utils.entry. r4816: waldi | 2005-11-13 18:47:46 +0100 debian/lib/python/debian_linux/utils.py: Don't output empty fields. r4965: waldi | 2005-12-04 12:36:20 +0100 Rewrite config reader to support more than one section per (arch, subarch, flavour). * debian/bin/gencontrol.py, debian/lib/python/debian_linux/gencontrol.py: Explicitely Use base entries. * debian/lib/python/debian_linux/config.py - Rewrite. - Loose support for entry merging for now. r5175: waldi | 2006-01-02 20:46:46 +0100 debian/bin/gencontrol.py: Fix. r5176: waldi | 2006-01-02 21:09:17 +0100 * debian/bin/apply: Don't expect upstream version in series file names. * debian/patches-debian/series/0experimental.1: Move from debian/patches-debian/series/2.6.14+2.6.15-rc7-0experimental.1. * debian/patches-debian/series/0experimental.2: Move from debian/patches-debian/series/2.6.14+2.6.15-rc7-0experimental.2. r5177: waldi | 2006-01-02 22:31:28 +0100 First prototype of improved patch util. debian/bin/apply.py: Add. r5178: waldi | 2006-01-02 23:40:11 +0100 * debian/bin/apply.py: Finish implementation. * debian/rules.real: Use apply.py. r5179: waldi | 2006-01-03 00:15:05 +0100 * debian/bin/apply.py: Implement arch and subarch specific patches. * debian/bin/unpatch: Remove old code. * debian/rules.real: Fix patch package installation. r5180: waldi | 2006-01-03 00:16:05 +0100 debian/bin/apply: Remove. r5181: waldi | 2006-01-03 00:16:56 +0100 * debian/bin/gencontrol.py: Readd missing build target. * debian/lib/python/debian_linux/debian.py: Raise if version is not parsable. r5192: waldi | 2006-01-03 15:32:43 +0100 debian/bin/apply.py - Add version_file class. - Use correct series for deapply. r5193: waldi | 2006-01-03 15:41:53 +0100 debian/bin/apply.py - Remove extra version handling from series class. - Add check for extra version in patch setup. r5194: waldi | 2006-01-03 15:45:49 +0100 debian/bin/apply.py: Move complete reverse logic into series class. r5195: waldi | 2006-01-03 16:14:33 +0100 debian/bin/apply.py: Implement patch per arch and subarch. It is currently done by completely deapply the arch specific patches if it needs to change set of general patches. r5196: waldi | 2006-01-03 16:18:55 +0100 debian/bin/apply.py: Don't record extra version without patch. r5197: waldi | 2006-01-03 16:25:03 +0100 debian/bin/apply.py: Record shortest possible extra version in version file. r5198: waldi | 2006-01-03 16:28:00 +0100 * debian/patches-debian/series/0experimental.3-extra: Add. * debian/patches-debian/hppa-incompatible.patch: Move from debian/patches-arch/hppa.diff. * debian/patches-debian/m68k-incompatible.patch Move from debian/patches-arch/m68k.diff. * debian/patches-arch: Remove. r5200: waldi | 2006-01-03 16:30:03 +0100 debian/rules.real: Use new apply script for arch and subarch patches. r5207: waldi | 2006-01-03 17:12:52 +0100 * debian/rules.real: Remove old arch patches installation. * debian/templates/control.source.in: Remove dh-kpatches from Buld-Depends-Indep. r5208: waldi | 2006-01-03 17:21:21 +0100 debian/lib/python/debian_linux: Set svn:ignore property. r5210: waldi | 2006-01-03 17:24:09 +0100 debian/templates/control.main.in: Fix depends of patch package. r5212: waldi | 2006-01-03 17:54:18 +0100 * debian/rules: Fix clean. * debian/rules.real - Remove definition of old arch patches. - Use a variable for patch command. r5213: waldi | 2006-01-03 20:45:41 +0100 * debian/templates: Move subarch part in package names in front of flavour. * debian/lib/python/debian_linux/gencontrol.py: Fix subarch text setting. r5214: waldi | 2006-01-03 20:46:05 +0100 debian/lib/python/debian_linux/config.py: Support subarches. r5215: waldi | 2006-01-04 00:51:46 +0100 Update svn:ignore property. r5216: waldi | 2006-01-04 00:53:20 +0100 debian/bin/apply.py - Use correct length in extra check. - Check for correct length of extra entries. r5217: waldi | 2006-01-04 00:54:38 +0100 debian/rules.real - Append subarch to kernel version. - Fix base of kconfig.ml call. r5234: waldi | 2006-01-04 15:34:59 +0100 * debian/bin/gencontrol.py: Use config entry merging when needed. * lib/python/debian_linux/config.py: Readd config entry merging. r5235: waldi | 2006-01-04 16:00:38 +0100 * debian/bin/install-image: Use DEBIAN_LOCALVERSION and DEBIAN_LOCALVERSION_HEADERS. * debian/rules.real: Set LOCALVERSION for scripts. r5240: waldi | 2006-01-04 17:50:12 +0100 debian/rules.real: Fix version of subarch headers package. svn path=/dists/trunk/linux-2.6/; revision=5242
2006-01-04 19:33:32 +00:00
file(self._file, 'w').write('%s\n' % self)
def begin(self):
self.in_progress = True
self._write()
def commit(self, version = None, extra = None):
self.in_progress = False
if version is not None:
self.version = version
if extra is not None:
self.extra = extra
self._write()
def main():
options, args = parse_options()
if len(args) > 1:
print "Too much arguments"
return
home = options.home
revisions = ['0'] + options.revisions.split()
source = version(options.source)
if len(args) == 1:
target = version(args[0])
else:
target = source
if options.current is not None:
vfile = version_file(options.current, True)
else:
vfile = version_file(source)
current = vfile.version
current_extra = vfile.extra
target_extra = []
if options.arch: target_extra.append(options.arch)
if options.subarch: target_extra.append(options.subarch)
if options.flavour: target_extra.append(options.flavour)
target_extra = tuple(target_extra)
if current.revision not in revisions:
raise RuntimeError, "Current revision is not in our list of revisions"
if target.revision not in revisions:
raise RuntimeError, "Target revision is not in our list of revisions"
if current.revision == target.revision and current_extra == target_extra:
print "Nothing to do"
return
current_index = revisions.index(current.revision)
target_index = revisions.index(target.revision)
if current_extra:
consider = revisions[current_index:0:-1]
s = series_extra.read_all(consider, home, current_extra, reverse = True)
vfile.begin()
for i in s:
i.apply()
vfile.commit(current, ())
if current_index < target_index:
consider = revisions[current_index + 1:target_index + 1]
s = series.read_all(consider, home)
vfile.begin()
for i in s:
i.apply()
vfile.commit(target, ())
elif current_index > target_index:
consider = revisions[current_index:target_index:-1]
s = series.read_all(consider, home, reverse = True)
vfile.begin()
for i in s:
i.apply()
vfile.commit(target, ())
if target_extra:
consider = revisions[1:target_index + 1]
s = series_extra.read_all(consider, home, target_extra)
real_extra = ()
for i in s:
t = i.extra_used
if len(t) > len(real_extra):
real_extra = t
vfile.begin()
for i in s:
i.apply()
vfile.commit(target, real_extra)
def parse_options():
from optparse import OptionParser
parser = OptionParser(
usage = "%prog [OPTION]... [TARGET]",
)
parser.add_option(
'-a', '--arch',
dest = 'arch',
help = "arch",
)
parser.add_option(
'-f', '--flavour',
dest = 'flavour',
help = "flavour",
)
parser.add_option(
'-s', '--subarch',
dest = 'subarch',
help = "subarch",
)
parser.add_option(
'-C', '--overwrite-current',
dest = 'current',
help = "overwrite current",
)
parser.add_option(
'-H', '--overwrite-home',
default = _default_home, dest = 'home',
help = "overwrite home [default: %default]",
)
parser.add_option(
'-R', '--overwrite-revisions',
default = _default_revisions, dest = 'revisions',
help = "overwrite revisions [default: %default]",
)
parser.add_option(
'-S', '--overwrite-source',
default = _default_source, dest = 'source',
help = "overwrite source [default: %default]",
)
options, args = parser.parse_args()
if options.arch is None and options.subarch is not None:
raise RuntimeError('You specified a subarch without an arch, this is not really working')
if options.subarch is None and options.flavour is not None:
raise RuntimeError('You specified a flavour without a subarch, this is not really working')
return options, args
if __name__ == '__main__':
def showwarning(message, category, filename, lineno):
sys.stderr.write("Warning: %s\n" % message)
import warnings
warnings.showwarning = showwarning
try:
main()
except RuntimeError, e:
sys.stderr.write("Error: %s\n" % e)
raise SystemExit, 1