Mercurial > treepkg > treepkg
diff treepkg/packager.py @ 367:fb92f3c1b238
treepkg is now able to handle debian source format 1.0 and source format 3.0 (quilt)
author | Bjoern Ricks <bricks@intevation.de> |
---|---|
date | Mon, 31 May 2010 10:20:25 +0000 |
parents | f06f707d9fda |
children | 0bee91b435ab |
line wrap: on
line diff
--- a/treepkg/packager.py Mon May 31 09:54:31 2010 +0000 +++ b/treepkg/packager.py Mon May 31 10:20:25 2010 +0000 @@ -153,12 +153,33 @@ dpkg_source_log = os.path.join(self.log_dir, "dpkg_source.txt") logging.info("Creating new source package; logging to %s", dpkg_source_log) - run.call(cmdexpand("dpkg-source -b $directory $tarball", + + format = self.get_debian_source_format(pkgbasedir) + if format == "1.0": + run.call(cmdexpand("dpkg-source -b $directory $tarball", directory=os.path.basename(pkgbasedir), tarball=os.path.basename(origtargz)), cwd=os.path.dirname(pkgbasedir), logfile=dpkg_source_log, env=self.track.debian_environment()) + elif format == "3.0 (quilt)": + run.call(cmdexpand("dpkg-source -b $directory", + directory=os.path.basename(pkgbasedir)), + cwd=os.path.dirname(pkgbasedir), + logfile=dpkg_source_log, + env=self.track.debian_environment()) + else: + raise RuntimeError("debian source format %s is not supported by treepkg" % format) + + def get_debian_source_format(self, pkgbasedir): + formatfile = os.path.join(pkgbasedir, "debian", "source", "format") + if not os.path.exists(formatfile): + return "1.0" + else: + file = open(formatfile, "r") + line = file.readline() + file.close() + return line.strip() def move_source_package(self, pkgbasename): """Moves the new source package from the work_dir to the src_dir"""