]> err.no Git - dpkg/commitdiff
Add -u -a<arch> commands.
authorAdam Heath <doogie@debian.org>
Mon, 27 Oct 2003 16:50:00 +0000 (16:50 +0000)
committerAdam Heath <doogie@debian.org>
Mon, 27 Oct 2003 16:50:00 +0000 (16:50 +0000)
ChangeLog
debian/changelog
scripts/dpkg-scanpackages.8
scripts/dpkg-scanpackages.pl

index c47e294bdfa17273a7cabf74ead3928cb4fe11e5..62490527c77ca9faa07e79ee2cbc35286db43195 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Mon Oct 27 09:49:29 CST 2003 Adam Heath <doogie@debian.org>
+
+  * scripts/dpkg-scanpackages.pl: Add -u -a<arch> commands.
+
 Mon Oct 27 09:42:57 CST 2003 Adam Heath <doogie@debian.org>
 
   * scripts/dpkg-checkbuilddeps.pl: Set $reduce_arch when calling parsedep.
index 844c632b9d979f6550946308884a007f52c54c26..0a5c2f71567254ccffb062824610fc09281b22d0 100644 (file)
@@ -6,6 +6,9 @@ dpkg (1.10.17) unstable; urgency=medium
   * Branden Robinson <branden@debian.org>:
     s/dpkg-checkbuild/dpkg-checkbuilddeps/ in usage.
   * dpkg-checkbuilddeps now sets $reduce_arch.  Closes: #212796.
+  * Goswin Brederlow <brederlo@informatik.uni-tuebingen.de>:
+    Add -u in dpkg-scanpackages.  Closes: #214123.
+    Add -a<arch> command to dpkg-scanpackages.
 
  -- Wichert Akkerman <wakkerma@debian.org>  UNRELEASED
 
index 9521f446e8fa6138e9592de343fc9469c07f16e3..c90555f92bd81c09d740bba40e8ba1916942da9b 100644 (file)
@@ -19,6 +19,8 @@ dpkg-scanpackages \- create Packages files
 .
 .SH SYNOPSIS
 .B dpkg-scanpackages
+.RI [ -u ]
+.RI [ -a<arch> ]
 .I binarydir
 .I overridefile
 .RI [ pathprefix ]
@@ -50,6 +52,13 @@ package fits into the distribution; see below.
 .PP
 .I pathprefix
 is an optional string to be prepended to the Filename fields.
+.PP
+If
+.I -u
+is specified, then scan for *.udeb, instead of *.deb.
+.PP
+When -a\fI<arch>\fP is specified, then instead of scanning for all debs,
+a pattern consisting of *_all.deb and *_arch.deb is used.
 .
 .SH THE OVERRIDE FILE
 While most information about a package can be found in the control file,
index 50c859745835fe068f373028f762f8c50edcc59e..4f77944f45266cff87cce3b38bd14996c72f9a1f 100755 (executable)
@@ -31,8 +31,32 @@ $version= '1.2.6'; # This line modified by Makefile
 $written=0;
 $i=100; grep($pri{$_}=$i--,@fieldpri);
 
+$udeb = 0;
+$arch = '';
+while ($ARGV[1] =~ m/^-.*/) {
+    my $opt = shift @ARGV;
+    if ($opt eq '-u') {
+        $udeb = 1;
+    } elsif ($opt =~ m/-a(.*)/) {
+        if ($1) {
+            $arch = $1;
+        } else {
+            $arch = shift @ARGV;
+        }
+    } else {
+        print STDERR "Unknown option($opt)!\n";
+        exit(1);
+    }
+}
+$ext = $udeb ? 'udeb' : 'deb';
+$pattern = $arch ? "-name '*_all.$ext' -o -name '*_$arch.$ext'" : "-name '*.$ext'";
+if ($ARGV[1] eq '-u') {
+    $udeb = 1;
+    shift @ARGV;
+}
+
 $#ARGV == 1 || $#ARGV == 2
-    or die "Usage: dpkg-scanpackages binarypath overridefile [pathprefix] > Packages\n";
+    or die "Usage: dpkg-scanpackages [-u] [-a<arch>] binarypath overridefile [pathprefix] > Packages\n";
 ($binarydir, $override, $pathprefix) = @ARGV;
 -d $binarydir or die "Binary dir $binarydir not found\n";
 -e $override or die "Override file $override not found\n";
@@ -46,7 +70,7 @@ sub vercmp {
 }
 
 # The extra slash causes symlinks to be followed.
-open(F,"find $binarydir/ -follow -name '*.deb' -print |")
+open(F,"find $binarydir/ -follow $pattern -print |")
     or die "Couldn't open pipe to find: $!\n";
 while (<F>) {
     chomp($fn=$_);