Author: ryan52-guest
Date: 2009-08-30 05:18:36 +0000 (Sun, 30 Aug 2009)
New Revision: 1977

Modified:
   trunk/debian/changelog
   trunk/debian/control
   trunk/scripts/uscan.1
   trunk/scripts/uscan.pl
Log:
uscan: add support for repacking lzma compressed tarballs, thanks to Michal 
Čihař for the patch (Closes: #514504)

Modified: trunk/debian/changelog
===================================================================
--- trunk/debian/changelog      2009-08-30 05:07:29 UTC (rev 1976)
+++ trunk/debian/changelog      2009-08-30 05:18:36 UTC (rev 1977)
@@ -54,10 +54,12 @@
     source package name (Closes: #515885)
   * debcheckout: use bzr+ssh instead of sftp, thanks to Colin Watson for
     the patch (Closes: #526068)
-  * remove NMU version when -i is ran without -n or auto nmu (Closes:
-    487323)
+  * debchange: remove NMU version when -i is ran without -n or auto nmu
+    (Closes: 487323)
+  * uscan: add support for repacking lzma compressed tarballs, thanks to
+    Michal Čihař for the patch (Closes: #514504)
 
- -- Ryan Niebur <[email protected]>  Sat, 29 Aug 2009 22:07:02 -0700
+ -- Ryan Niebur <[email protected]>  Sat, 29 Aug 2009 22:18:08 -0700
 
 devscripts (2.10.53) unstable; urgency=low
 

Modified: trunk/debian/control
===================================================================
--- trunk/debian/control        2009-08-30 05:07:29 UTC (rev 1976)
+++ trunk/debian/control        2009-08-30 05:18:36 UTC (rev 1977)
@@ -20,7 +20,7 @@
  libterm-size-perl, libtimedate-perl, liburi-perl, libwww-perl,
  libyaml-syck-perl, lintian, lsb-release, bsd-mailx | mailx | mailutils, 
  man-db, patch, patchutils, ssh-client, strace, unzip, wdiff, www-browser,
- subversion | cvs | svk | tla | bzr | git-core | mercurial,
+ subversion | cvs | svk | tla | bzr | git-core | mercurial, lzma
  sensible-utils
 Suggests: build-essential, cvs-buildpackage, devscripts-el, gnuplot,
  libfile-desktopentry-perl, libnet-smtp-ssl-perl (>= 1.01-2), mutt,
@@ -119,7 +119,7 @@
     transitions for which uploads to unstable are currently blocked
     [libwww-perl, libyaml-syck-perl]
   - uscan: scan upstream sites for new releases of packages
-    [libcrypt-ssleay-perl, libwww-perl, unzip]
+    [libcrypt-ssleay-perl, libwww-perl, unzip, lzma]
   - uupdate: integrate upstream changes into a source package [patch]
   - whodepends: check which maintainers' packages depend on a package
   - who-uploads: determine the most recent uploaders of a package to the Debian

Modified: trunk/scripts/uscan.1
===================================================================
--- trunk/scripts/uscan.1       2009-08-30 05:07:29 UTC (rev 1976)
+++ trunk/scripts/uscan.1       2009-08-30 05:18:36 UTC (rev 1977)
@@ -363,12 +363,14 @@
 and similarly for tar.bz2 files.
 .TP
 .B \-\-repack
-After having downloaded a bzip tar or zip archive, repack it to a gzip tar
-archive, which is still currently required as a member of a Debian source
-package. Does nothing if the downloaded archive is not a bzip tar archive or a
-zip archive (i.e. it doesn't match a .tbz, .tbz2, .tar.bz2 or .zip 
-extension). The unzip package must be installed in order to repack .zip 
-archives.
+After having downloaded a lzma tar, bzip tar or zip archive, repack it
+to a gzip tar archive, which is still currently required as a member
+of a Debian source package. Does nothing if the downloaded archive is
+not a lzma tar archive, bzip tar archive or a zip archive (i.e. it
+doesn't match a .tlzma, .tar.lzma, .tbz, .tbz2, .tar.bz2 or .zip
+extension). The unzip package must be installed in order to
+repack .zip archives, and the lzma package must be installed to repack
+lzma tar archives.
 .TP
 .B \-\-no\-symlink
 Don't make these symlinks and don't rename the files.
@@ -483,9 +485,9 @@
 equivalent to the \fB\-\-destdir\fR option.
 .TP
 .B USCAN_REPACK
-If this is set to \fIyes\fR, then after having downloaded a bzip tar or
-zip archive, \fBuscan\fR will repack it to a gzip tar.  This is
-equivalent to the \fB\-\-repack\fR option.
+If this is set to \fIyes\fR, then after having downloaded a bzip tar,
+lzma tar or zip archive, \fBuscan\fR will repack it to a gzip tar.
+This is equivalent to the \fB\-\-repack\fR option.
 .SH "EXIT STATUS"
 The exit status gives some indication of whether a newer version was
 found or not; one is advised to read the output to determine exactly

Modified: trunk/scripts/uscan.pl
===================================================================
--- trunk/scripts/uscan.pl      2009-08-30 05:07:29 UTC (rev 1976)
+++ trunk/scripts/uscan.pl      2009-08-30 05:18:36 UTC (rev 1977)
@@ -1305,6 +1305,15 @@
        $newfile_base = $newfile_base_gz;
     }
 
+    if ($repack and $newfile_base =~ /^(.*)\.(tar\.lzma|tlzma?)$/) {
+       print "-- Repacking from lzma to gzip\n" if $verbose;
+       my $newfile_base_gz = "$1.tar.gz";
+       system("lzma -cd $destdir/$newfile_base | gzip -n -9 > 
$destdir/$newfile_base_gz") == 0
+         or die "repacking from lzma to gzip failed\n";
+       unlink "$destdir/$newfile_base";
+       $newfile_base = $newfile_base_gz;
+    }
+
     if ($repack and $newfile_base =~ /^(.*)\.zip$/) {
        print "-- Repacking from zip to .tar.gz\n" if $verbose;
 



-- 
To unsubscribe, send mail to [email protected].

Reply via email to