diff options
author | Guido Günther <agx@sigxcpu.org> | 2010-01-25 20:59:18 +0100 |
---|---|---|
committer | Guido Günther <agx@sigxcpu.org> | 2010-01-25 21:02:21 +0100 |
commit | ea6311eed38688ce0a2aac0f6b1c041ba6ef6923 (patch) | |
tree | 49778b5d01c91e4a1bfd81b9e061ec1edcfbd10b | |
parent | 34c1c43672f2b08864fe1fce04aae562772da5af (diff) |
DscFile: Parse name of debian.tar.gz
-rw-r--r-- | gbp/deb.py | 17 |
1 files changed, 12 insertions, 5 deletions
@@ -34,16 +34,19 @@ class ParseChangeLogError(Exception): class DscFile(object): """Keeps all needed data read from a dscfile""" - pkg_re = re.compile('Source:\s+(?P<pkg>.+)\s*') - version_re = re.compile("Version:\s((?P<epoch>\d+)\:)?(?P<version>[%s]+)\s*$" % debian_version_chars) - tar_re = re.compile('^\s\w+\s\d+\s+(?P<tar>[^_]+_[^_]+(\.orig)?\.tar\.(gz|bz2))') - diff_re = re.compile('^\s\w+\s\d+\s+(?P<diff>[^_]+_[^_]+\.diff.(gz|bz2))') - format_re = re.compile('Format:\s+(?P<format>[0-9.]+)\s*') + compressions = r"(gz|bz2)" + pkg_re = re.compile(r'Source:\s+(?P<pkg>.+)\s*') + version_re = re.compile(r'Version:\s((?P<epoch>\d+)\:)?(?P<version>[%s]+)\s*$' % debian_version_chars) + tar_re = re.compile(r'^\s\w+\s\d+\s+(?P<tar>[^_]+_[^_]+(\.orig)?\.tar\.%s)' % compressions) + diff_re = re.compile(r'^\s\w+\s\d+\s+(?P<diff>[^_]+_[^_]+\.diff.(gz|bz2))') + deb_tgz_re = re.compile(r'^\s\w+\s\d+\s+(?P<deb_tgz>[^_]+_[^_]+\.debian.tar.%s)' % compressions) + format_re = re.compile(r'Format:\s+(?P<format>[0-9.]+)\s*') def __init__(self, dscfile): self.pkg = "" self.tgz = "" self.diff = "" + self.deb_tgz = "" self.pkgformat = "1.0" self.debian_version = "" self.upstream_version = "" @@ -71,6 +74,10 @@ class DscFile(object): if m: self.pkg = m.group('pkg') continue + m = self.deb_tgz_re.match(line) + if m: + self.deb_tgz = os.path.join(fromdir, m.group('deb_tgz')) + continue m = self.tar_re.match(line) if m: self.tgz = os.path.join(fromdir, m.group('tar')) |