Browse Source

Merge branch 'master' of git://git.debian.org/git/dpkg/dpkg into sourcev3

Joey Hess 18 years ago
parent
commit
11f3aad86b

+ 33 - 0
ChangeLog

@@ -1,5 +1,38 @@
+2007-12-05  Frank Lichtenheld  <djpig@debian.org>
+
+	* scripts/dpkg-buildpackage.pl: Add new
+	-A option (passed to dpkg-genchanges).
+	* scripts/dpkg-genchanges.pl: Add new -A
+	option that will include only arch-indep
+	packages into the upload.
+
+2007-12-05  Frank Lichtenheld  <djpig@debian.org>
+	    Goswin von Brederlow  <brederlo@informatik.uni-tuebingen.de>
+	    Bastian Blank  <waldi@debian.org>
+
+	* scripts/dpkg-genchanges.pl: Support more
+	than one arch and more than one type of
+	a package in debian/files.
+
 2007-12-04  Frank Lichtenheld  <djpig@debian.org>
 
+	* dpkg-deb/info.c (info_spew): Replace a
+	%ld with %lu to fix compiler warning.
+
+	* scripts/dpkg-genchanges.pl: Use comp_regex
+	from Dpkg to correctly exlucde the .orig.tar
+	even if it is not compressed with gzip.
+
+	* scripts/dpkg-source.pl: Move definition
+	of @comp_supported, %comp_supported, %comp_ext,
+	$comp_regex to...
+	* scripts/Dpkg.pm: ...here. Make them exportable
+	via the :compression tag.
+
+	* scripts/Dpkg/ErrorHandling.pm (usageerr):
+	Support format strings like all the other
+	error reporting functions.
+
 	* scripts/Makefile.am (EXTRA_DIST): Add
 	missing files from scripts/t/.
 

+ 8 - 1
debian/changelog

@@ -10,14 +10,21 @@ dpkg (1.14.13) UNRELEASED; urgency=low
     of using symlinks). The space requirements are minimal and adding
     the needed dependencies to comply with policy would be way more
     inconvenient. Pointed out by Rene Engelhard. Closes: #452730
+  * Allow more than one arch and more than one type of a package
+    in debian/files. Parts of the patch by Goswin von Brederlow
+    and Bastian Blank. Closes: #356299, #377400, #229143
+  * Allow building only architecture independent packages (-A).
+    Closes: #109794, #200454
+  * Bump Standards-Version to 3.7.3 (no changes)
 
   [ Updated man pages translations ]
   * Swedish (Peter Karlsson)
 
   [ Updated scripts translations ]
+  * French (Frédéric Bothamy).
   * Swedish (Peter Karlsson)
 
- -- Frank Lichtenheld <djpig@debian.org>  Thu, 29 Nov 2007 23:04:33 +0100
+ -- Frank Lichtenheld <djpig@debian.org>  Wed, 05 Dec 2007 15:05:56 +0100
 
 dpkg (1.14.12) unstable; urgency=low
 

+ 1 - 1
debian/control

@@ -8,7 +8,7 @@ Bugs: debbugs://bugs.debian.org
 Homepage: http://wiki.debian.org/Teams/Dpkg
 Vcs-Browser: http://git.debian.org/?p=dpkg/dpkg.git
 Vcs-Git: git://git.debian.org/git/dpkg/dpkg.git
-Standards-Version: 3.7.2
+Standards-Version: 3.7.3
 Build-Depends: debhelper (>= 4.1.81), pkg-config, po4a (>= 0.23),
  libncurses5-dev | libncurses-dev, zlib1g-dev (>= 1:1.1.3-19.1), libbz2-dev,
  libselinux1-dev (>= 1.28-4) [!hurd-i386 !kfreebsd-i386 !kfreebsd-amd64]

+ 1 - 1
dpkg-deb/info.c

@@ -96,7 +96,7 @@ static void info_spew(const char *debar, const char *directory,
     pathlen = strlen(directory) + strlen(component) + 2;
     controlfile = (void *) realloc((void *) controlfile, pathlen);
     if (!controlfile)
-      ohshite(_("realloc failed (%ld bytes)"), pathlen);
+      ohshite(_("realloc failed (%lu bytes)"), pathlen);
     memset(controlfile, 0, sizeof(controlfile));
 
     strcat(controlfile, directory);

+ 9 - 0
scripts/Dpkg.pm

@@ -5,6 +5,9 @@ use warnings;
 
 use base qw(Exporter);
 our @EXPORT = qw($version $progname $admindir $dpkglibdir $pkgdatadir);
+our %EXPORT_TAGS = ( 'compression' =>
+		     [ qw(@comp_supported %comp_supported %comp_ext $comp_regex) ] );
+our @EXPORT_OK = @{$EXPORT_TAGS{compression}};
 
 our ($progname) = $0 =~ m#(?:.*/)?([^/]*)#;
 
@@ -14,4 +17,10 @@ our $admindir = "/var/lib/dpkg";
 our $dpkglibdir = ".";
 our $pkgdatadir = "..";
 
+# Compression
+our @comp_supported = qw(gzip bzip2 lzma);
+our %comp_supported = map { $_ => 1 } @comp_supported;
+our %comp_ext = ( gzip => 'gz', bzip2 => 'bz2', lzma => 'lzma' );
+our $comp_regex = '(?:gz|bz2|lzma)';
+
 1;

+ 4 - 1
scripts/Dpkg/ErrorHandling.pm

@@ -80,7 +80,10 @@ sub subprocerr(@)
 
 sub usageerr(@)
 {
-    printf(STDERR "%s: %s\n\n", $progname, "@_");
+    my ($msg) = (shift);
+
+    $msg = sprintf($msg, @_) if (@_);
+    warn "$progname: $msg\n\n";
     # XXX: access to main namespace
     main::usage();
     exit(2);

+ 10 - 2
scripts/dpkg-buildpackage.pl

@@ -48,8 +48,9 @@ Options:
   -us            unsigned source.
   -uc            unsigned changes.
   -a<arch>       Debian architecture we build for (implies -d).
-  -b             binary-only, do not build source. } also passed to
-  -B             binary-only, no arch-indep files. } dpkg-genchanges
+  -b             binary-only, do not build source.   } also passed to
+  -B             binary-only, no arch-indep files.   } dpkg-genchanges
+  -A             binary-only, only arch-indep files. }
   -S             source only, no binary files.     }
   -t<system>     set GNU system type.           } passed to dpkg-architecture
   -v<version>    changes since version <version>.      }
@@ -175,6 +176,13 @@ while (@ARGV) {
 	if ($sourceonly) {
 	    usageerr(_g("cannot combine %s and %s"), '-B', '-S');
 	}
+    } elsif (/^-A$/) {
+	$binaryonly = '-A';
+	@checkbuilddep_args = ();
+	$binarytarget = 'binary-indep';
+	if ($sourceonly) {
+	    usageerr(_g("cannot combine %s and %s"), '-A', '-S');
+	}
     } elsif (/^-S$/) {
 	$sourceonly = '-S';
 	$checkbuilddep = 0;

+ 115 - 86
scripts/dpkg-genchanges.pl

@@ -5,7 +5,8 @@ use warnings;
 
 use POSIX;
 use POSIX qw(:errno_h :signal_h);
-use Dpkg;
+use English;
+use Dpkg qw(:DEFAULT :compression);
 use Dpkg::Gettext;
 use Dpkg::ErrorHandling qw(warning error failure unknown internerr syserr
                            subprocerr usageerr);
@@ -36,14 +37,14 @@ my $sourcestyle = 'i';
 my $quiet = 0;
 
 my %f2p;           # - file to package map
-my %p2f;           # - package to file map, has entries for both "packagename"
-                   #   and "packagename architecture"
+my %p2f;           # - package to file map, has entries for "packagename"
+my %pa2f;          # - likewise, has entries for "packagename architecture"
 my %p2ver;         # - package to version map
-my %p2arch;
+my %p2arch;        # - package to arch map
 my %f2sec;         # - file to section map
-my %f2seccf;
+my %f2seccf;       # - likewise, from control file
 my %f2pri;         # - file to priority map
-my %f2pricf;
+my %f2pricf;       # - likewise, from control file
 my %sourcedefault; # - default values as taken from source (used for Section,
                    #   Priority and Maintainer)
 
@@ -58,13 +59,24 @@ my %archadded;
 my @archvalues;
 my $dsc;
 my $changesdescription;
-my $sourceonly;
-my $binaryonly;
-my $archspecific;
 my $forcemaint;
 my $forcechangedby;
 my $since;
 
+use constant SOURCE     => 1;
+use constant ARCH_DEP   => 2;
+use constant ARCH_INDEP => 4;
+use constant BIN        => ARCH_DEP | ARCH_INDEP;
+use constant ALL        => BIN | SOURCE;
+my $include = ALL;
+
+sub is_sourceonly() { return $include == SOURCE; }
+sub is_binaryonly() { return !($include & SOURCE); }
+sub binary_opt() { return (($include == BIN) ? '-b' :
+			   (($include == ARCH_DEP) ? '-B' :
+			    (($include == ARCH_INDEP) ? '-A' :
+			     internerr("binary_opt called with include=$include"))));
+}
 
 sub version {
     printf _g("Debian %s version %s.\n"), $progname, $version;
@@ -86,6 +98,7 @@ sub usage {
 Options:
   -b                       binary-only build - no source files.
   -B                       arch-specific - no source or arch-indep files.
+  -A                       only arch-indep - no source or arch-specific files.
   -S                       source-only upload.
   -c<controlfile>          get control info from this file.
   -l<changelogfile>        get per-version info from this file.
@@ -113,46 +126,49 @@ Options:
 while (@ARGV) {
     $_=shift(@ARGV);
     if (m/^-b$/) {
-	$sourceonly && &usageerr(_g("cannot combine -b or -B and -S"));
-        $binaryonly= 1;
+	is_sourceonly && &usageerr(_g("cannot combine %s and -S"), $_);
+	$include = BIN;
     } elsif (m/^-B$/) {
-	$sourceonly && &usageerr(_g("cannot combine -b or -B and -S"));
-	$archspecific=1;
-	$binaryonly= 1;
+	is_sourceonly && &usageerr(_g("cannot combine %s and -S"), $_);
+	$include = ARCH_DEP;
 	printf STDERR _g("%s: arch-specific upload - not including arch-independent packages")."\n", $progname;
+    } elsif (m/^-A$/) {
+	is_sourceonly && &usageerr(_g("cannot combine %s and -S"), $_);
+	$include = ARCH_INDEP;
+	printf STDERR _g("%s: arch-indep upload - not including arch-specific packages")."\n", $progname;
     } elsif (m/^-S$/) {
-	$binaryonly && &usageerr(_g("cannot combine -b or -B and -S"));
-	$sourceonly= 1;
+	is_binaryonly && &usageerr(_g("cannot combine %s and -S"), binary_opt);
+	$include = SOURCE;
     } elsif (m/^-s([iad])$/) {
         $sourcestyle= $1;
     } elsif (m/^-q$/) {
         $quiet= 1;
     } elsif (m/^-c/) {
-        $controlfile= $';
+	$controlfile= $POSTMATCH;
     } elsif (m/^-l/) {
-        $changelogfile= $';
+	$changelogfile= $POSTMATCH;
     } elsif (m/^-C/) {
-        $changesdescription= $';
+	$changesdescription= $POSTMATCH;
     } elsif (m/^-f/) {
-        $fileslistfile= $';
+	$fileslistfile= $POSTMATCH;
     } elsif (m/^-v/) {
-        $since= $';
+	$since= $POSTMATCH;
     } elsif (m/^-T/) {
-        $varlistfile= $';
+	$varlistfile= $POSTMATCH;
     } elsif (m/^-m/) {
-        $forcemaint= $';
+	$forcemaint= $POSTMATCH;
     } elsif (m/^-e/) {
-        $forcechangedby= $';
+	$forcechangedby= $POSTMATCH;
     } elsif (m/^-F([0-9a-z]+)$/) {
         $changelogformat=$1;
     } elsif (m/^-D([^\=:]+)[=:]/) {
-        $override{$1}= $';
+	$override{$1}= $POSTMATCH;
     } elsif (m/^-u/) {
-        $uploadfilesdir= $';
+	$uploadfilesdir= $POSTMATCH;
     } elsif (m/^-U([^\=:]+)$/) {
         $remove{$1}= 1;
     } elsif (m/^-V(\w[-:0-9A-Za-z]*)[=:]/) {
-        $substvar{$1}= $';
+	$substvar{$1}= $POSTMATCH;
     } elsif (m/^-(h|-help)$/) {
         &usage; exit(0);
     } elsif (m/^--version$/) {
@@ -165,23 +181,24 @@ while (@ARGV) {
 parsechangelog($changelogfile, $changelogformat, $since);
 parsecontrolfile($controlfile);
 
-if (not $sourceonly) {
-    $fileslistfile="./$fileslistfile" if $fileslistfile =~ m/^\s/;
-    open(FL,"< $fileslistfile") || &syserr(_g("cannot read files list file"));
+if (not is_sourceonly) {
+    open(FL,"<",$fileslistfile) || &syserr(_g("cannot read files list file"));
     while(<FL>) {
 	if (m/^(([-+.0-9a-z]+)_([^_]+)_([-\w]+)\.u?deb) (\S+) (\S+)$/) {
 	    defined($p2f{"$2 $4"}) &&
 		warning(_g("duplicate files list entry for package %s (line %d)"),
-		        $2, $.);
+			$2, $NR);
 	    $f2p{$1}= $2;
-	    $p2f{"$2 $4"}= $1;
-	    $p2f{$2}= $1;
+	    $pa2f{"$2 $4"}= $1;
+	    $p2f{$2} ||= [];
+	    push @{$p2f{$2}}, $1;
 	    $p2ver{$2}= $3;
 	    defined($f2sec{$1}) &&
 		warning(_g("duplicate files list entry for file %s (line %d)"),
-		        $1, $.);
+			$1, $NR);
 	    $f2sec{$1}= $5;
 	    $f2pri{$1}= $6;
+	    push(@archvalues,$4) unless !$4 || $archadded{$4}++;
 	    push(@fileslistfiles,$1);
 	} elsif (m/^([-+.0-9a-z]+_[^_]+_([-\w]+)\.[a-z0-9.]+) (\S+) (\S+)$/) {
 	    # A non-deb package
@@ -192,12 +209,12 @@ if (not $sourceonly) {
 	} elsif (m/^([-+.,_0-9a-zA-Z]+) (\S+) (\S+)$/) {
 	    defined($f2sec{$1}) &&
 		warning(_g("duplicate files list entry for file %s (line %d)"),
-		        $1, $.);
+			$1, $NR);
 	    $f2sec{$1}= $2;
 	    $f2pri{$1}= $3;
 	    push(@fileslistfiles,$1);
 	} else {
-	    error(_g("badly formed line in files list file, line %d"), $.);
+	    error(_g("badly formed line in files list file, line %d"), $NR);
 	}
     }
     close(FL);
@@ -225,33 +242,39 @@ for $_ (keys %fi) {
 	my $a = $fi{"C$i Architecture"};
 	my $host_arch = get_host_arch();
 
-	if (!defined($p2f{$p}) && not $sourceonly) {
-	    if ((debarch_eq('all', $a) && !$archspecific) ||
-		grep(debarch_is($host_arch, $_), split(/\s+/, $a))) {
+	if (!defined($p2f{$p}) && not is_sourceonly) {
+	    if ((debarch_eq('all', $a) and ($include & ARCH_INDEP)) ||
+		(grep(debarch_is($host_arch, $_), split(/\s+/, $a))
+		      and ($include & ARCH_DEP))) {
 		warning(_g("package %s in control file but not in files list"),
 		        $p);
 		next;
 	    }
 	} else {
-	    my $f = $p2f{$p};
+	    my @f;
+	    @f = @{$p2f{$p}} if defined($p2f{$p});
 	    $p2arch{$p}=$a;
 
 	    if (m/^Description$/) {
-		$v=$` if $v =~ m/\n/;
-		if (defined($f) && $f =~ m/\.udeb$/) {
-			push(@descriptions,sprintf("%-10s - %-.65s (udeb)",$p,$v));
-		} else {
-			push(@descriptions,sprintf("%-10s - %-.65s",$p,$v));
+		$v=$PREMATCH if $v =~ m/\n/;
+		my %d;
+		# dummy file to get each description at least once (e.g. -S)
+		foreach my $f (("", @f)) {
+		    my $desc = sprintf("%-10s - %-.65s%s", $p, $v,
+				       $f =~ m/\.udeb$/ ? " (udeb)" : '');
+		    $d{$desc}++;
 		}
+		push @descriptions, keys %d;
 	    } elsif (m/^Section$/) {
-		$f2seccf{$f} = $v if defined($f);
+		$f2seccf{$_} = $v foreach (@f);
 	    } elsif (m/^Priority$/) {
-		$f2pricf{$f} = $v if defined($f);
+		$f2pricf{$_} = $v foreach (@f);
 	    } elsif (s/^X[BS]*C[BS]*-//i) {
 		$f{$_}= $v;
 	    } elsif (m/^Architecture$/) {
-		if (not $sourceonly) {
-		    if (grep(debarch_is($host_arch, $_), split(/\s+/, $v))) {
+		if (not is_sourceonly) {
+		    if (grep(debarch_is($host_arch, $_), split(/\s+/, $v))
+			and ($include & ARCH_DEP)) {
 			$v = $host_arch;
 		    } elsif (!debarch_eq('all', $v)) {
 			$v= '';
@@ -283,15 +306,14 @@ for $_ (keys %fi) {
         }
     } elsif (m/^o:.*/) {
     } else {
-        internerr(_g("value from nowhere, with key >%s< and value >%s<"),
+	internerr("value from nowhere, with key >%s< and value >%s<",
                   $_, $v);
     }
 }
 
 if ($changesdescription) {
-    $changesdescription="./$changesdescription" if $changesdescription =~ m/^\s/;
     $f{'Changes'}= '';
-    open(X,"< $changesdescription") || &syserr(_g("read changesdescription"));
+    open(X,"<",$changesdescription) || &syserr(_g("read changesdescription"));
     while(<X>) {
         s/\s*\n$//;
         $_= '.' unless m/\S/;
@@ -299,34 +321,36 @@ if ($changesdescription) {
     }
 }
 
-for my $p (keys %p2f) {
-    my ($pp, $aa) = (split / /, $p);
+for my $pa (keys %pa2f) {
+    my ($pp, $aa) = (split / /, $pa);
     defined($p2i{"C $pp"}) ||
 	warning(_g("package %s listed in files list but not in control info"),
 	        $pp);
 }
 
 for my $p (keys %p2f) {
-    my $f = $p2f{$p};
-
-    my $sec = $f2seccf{$f};
-    $sec = $sourcedefault{'Section'} if !defined($sec);
-    if (!defined($sec)) {
-	$sec = '-';
-	warning(_g("missing Section for binary package %s; using '-'"), $p);
-    }
-    $sec eq $f2sec{$f} || error(_g("package %s has section %s in " .
-                                   "control file but %s in files list"),
-                                $p, $sec, $f2sec{$f});
-    my $pri = $f2pricf{$f};
-    $pri = $sourcedefault{'Priority'} if !defined($pri);
-    if (!defined($pri)) {
-	$pri = '-';
-	warning(_g("missing Priority for binary package %s; using '-'"), $p);
+    my @f = @{$p2f{$p}};
+
+    foreach my $f (@f) {
+	my $sec = $f2seccf{$f};
+	$sec = $sourcedefault{'Section'} if !defined($sec);
+	if (!defined($sec)) {
+	    $sec = '-';
+	    warning(_g("missing Section for binary package %s; using '-'"), $p);
+	}
+	$sec eq $f2sec{$f} || error(_g("package %s has section %s in " .
+				       "control file but %s in files list"),
+				    $p, $sec, $f2sec{$f});
+	my $pri = $f2pricf{$f};
+	$pri = $sourcedefault{'Priority'} if !defined($pri);
+	if (!defined($pri)) {
+	    $pri = '-';
+	    warning(_g("missing Priority for binary package %s; using '-'"), $p);
+	}
+	$pri eq $f2pri{$f} || error(_g("package %s has priority %s in " .
+				       "control file but %s in files list"),
+				    $p, $pri, $f2pri{$f});
     }
-    $pri eq $f2pri{$f} || error(_g("package %s has priority %s in " .
-                                   "control file but %s in files list"),
-                                $p, $pri, $f2pri{$f});
 }
 
 &init_substvars;
@@ -334,7 +358,7 @@ init_substvar_arch();
 
 my $origsrcmsg;
 
-if (!$binaryonly) {
+if (!is_binaryonly) {
     my $sec = $sourcedefault{'Section'};
     if (!defined($sec)) {
 	$sec = '-';
@@ -348,7 +372,7 @@ if (!$binaryonly) {
 
     (my $sversion = $substvar{'source:Version'}) =~ s/^\d+://;
     $dsc= "$uploadfilesdir/${sourcepackage}_${sversion}.dsc";
-    open(CDATA,"< $dsc") || error(_g("cannot open .dsc file %s: %s"), $dsc, $!);
+    open(CDATA,"<",$dsc) || syserror(_g("cannot open .dsc file %s"), $dsc);
     push(@sourcefiles,"${sourcepackage}_${sversion}.dsc");
 
     parsecdata(\*CDATA, 'S', -1, sprintf(_g("source control file %s"), $dsc));
@@ -367,12 +391,13 @@ if (!$binaryonly) {
     }
 
     if (($sourcestyle =~ m/i/ && $sversion !~ m/-(0|1|0\.1)$/ ||
-         $sourcestyle =~ m/d/) &&
-        grep(m/\.diff\.gz$/,@sourcefiles)) {
-        $origsrcmsg= _g("not including original source code in upload");
-        @sourcefiles= grep(!m/\.orig\.tar\.gz$/,@sourcefiles);
+	 $sourcestyle =~ m/d/) &&
+	grep(m/\.diff\.$comp_regex$/,@sourcefiles)) {
+	$origsrcmsg= _g("not including original source code in upload");
+	@sourcefiles= grep(!m/\.orig\.tar\.$comp_regex$/,@sourcefiles);
     } else {
-	if ($sourcestyle =~ m/d/ && !grep(m/\.diff\.gz$/,@sourcefiles)) {
+	if ($sourcestyle =~ m/d/ &&
+	    !grep(m/\.diff\.$comp_regex$/,@sourcefiles)) {
 	    warning(_g("ignoring -sd option for native Debian package"));
 	}
         $origsrcmsg= _g("including full source code in upload");
@@ -387,14 +412,17 @@ print(STDERR "$progname: $origsrcmsg\n") ||
 $f{'Format'}= $substvar{'Format'};
 
 if (!defined($f{'Date'})) {
-    chop(my $date822 = `date -R`);
+    chomp(my $date822 = `date -R`);
     $? && subprocerr("date -R");
     $f{'Date'}= $date822;
 }
 
 $f{'Binary'}= join(' ',grep(s/C //,keys %p2i));
 
-unshift(@archvalues,'source') unless $binaryonly;
+unshift(@archvalues,'source') unless is_binaryonly;
+@archvalues = ('all') if $include == ARCH_INDEP;
+@archvalues = grep {!debarch_eq('all',$_)} @archvalues
+    unless $include & ARCH_INDEP;
 $f{'Architecture'}= join(' ',@archvalues);
 
 $f{'Description'}= "\n ".join("\n ",sort @descriptions);
@@ -404,11 +432,12 @@ $f{'Files'}= '';
 my %filedone;
 
 for my $f (@sourcefiles, @fileslistfiles) {
-    next if ($archspecific && debarch_eq('all', $p2arch{$f2p{$f}}));
+    next if ($include == ARCH_DEP and debarch_eq('all', $p2arch{$f2p{$f}}));
+    next if ($include == ARCH_INDEP and not debarch_eq('all', $p2arch{$f2p{$f}}));
     next if $filedone{$f}++;
     my $uf = "$uploadfilesdir/$f";
-    open(STDIN, "< $uf") ||
-        syserr(_g("cannot open upload file %s for reading"), $uf);
+    open(STDIN, "<", $uf) ||
+	syserr(_g("cannot open upload file %s for reading"), $uf);
     (my @s = stat(STDIN)) || syserr(_g("cannot fstat upload file %s"), $uf);
     my $size = $s[7];
     $size || warning(_g("upload file %s is empty"), $uf);
@@ -422,7 +451,7 @@ for my $f (@sourcefiles, @fileslistfiles) {
         error(_g("md5sum of source file %s (%s) is different from md5sum " .
                  "in %s (%s)"), $uf, $md5sum, $dsc, $md5sum{$f});
     $f{'Files'}.= "\n $md5sum $size $f2sec{$f} $f2pri{$f} $f";
-}    
+}
 
 $f{'Source'}= $sourcepackage;
 if ($f{'Version'} ne $substvar{'source:Version'}) {

+ 4 - 9
scripts/dpkg-source.pl

@@ -3,7 +3,7 @@
 use strict;
 use warnings;
 
-use Dpkg;
+use Dpkg qw(:DEFAULT :compression);
 use Dpkg::Gettext;
 use Dpkg::ErrorHandling qw(warning warnerror error failure unknown
                            internerr syserr subprocerr usageerr
@@ -39,6 +39,9 @@ my $diff_ignore_default_regexp = '
 (?:^|/)(?:CVS|RCS|\.deps|\{arch\}|\.arch-ids|\.svn|\.hg|_darcs|\.git|
 \.shelf|_MTN|\.bzr(?:\.backup|tags)?)(?:$|/.*$)
 ';
+# Take out comments and newlines
+$diff_ignore_default_regexp =~ s/^#.*$//mg;
+$diff_ignore_default_regexp =~ s/\n//sg;
 
 no warnings 'qw';
 my @tar_ignore_default_pattern = qw(
@@ -71,10 +74,6 @@ _darcs
 {arch}
 );
 
-# Take out comments and newlines
-$diff_ignore_default_regexp =~ s/^#.*$//mg;
-$diff_ignore_default_regexp =~ s/\n//sg;
-
 my $sourcestyle = 'X';
 my $min_dscformat = 1;
 my $max_dscformat = 3;
@@ -83,10 +82,6 @@ my $def_dscformat = "1.0"; # default format for -b
 my $expectprefix;
 
 # Compression
-my @comp_supported = qw(gzip bzip2 lzma);
-my %comp_supported = map { $_ => 1 } @comp_supported;
-my %comp_ext = ( gzip => 'gz', bzip2 => 'bz2', lzma => 'lzma' );
-my $comp_regex = '(?:gz|bz2|lzma)';
 my $compression = 'gzip';
 my $comp_level = '9';
 my $comp_ext = $comp_ext{$compression};

+ 4 - 0
scripts/po/ChangeLog

@@ -1,3 +1,7 @@
+2007-12-05  Frédéric Bothamy  <frederic.bothamy@free.fr>
+
+	* fr.po: Updated to 480t.
+
 2007-11-20  Peter Karlsson  <peterk@debian.org>
 
 	* sv.po: Updated to 480t.

+ 234 - 126
scripts/po/fr.po

@@ -8,8 +8,8 @@ msgstr ""
 "Project-Id-Version: dpkg scripts\n"
 "Report-Msgid-Bugs-To: debian-dpkg@lists.debian.org\n"
 "POT-Creation-Date: 2007-11-29 06:57+0200\n"
-"PO-Revision-Date: 2007-07-08 12:27+0200\n"
-"Last-Translator: Philippe Batailler <philippe.batailler@free.fr>\n"
+"PO-Revision-Date: 2007-12-05 23:20+0100\n"
+"Last-Translator: Frédéric Bothamy <frederic.bothamy@free.fr>\n"
 "Language-Team: French <debian-l10n-french@lists.debian.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=iso-8859-15\n"
@@ -324,7 +324,6 @@ msgid "%s is not a supported variable name"
 msgstr "%s n'est pas le nom d'une variable reconnue"
 
 #: scripts/dpkg-buildpackage.pl:23
-#, fuzzy
 msgid ""
 "\n"
 "Copyright (C) 1996 Ian Jackson.\n"
@@ -334,7 +333,7 @@ msgstr ""
 "\n"
 "Copyright (C) 1996 Ian Jackson.\n"
 "Copyright (C) 2000 Wichert Akkerman.\n"
-"Copyright (C) 2006 Frank Lichtenheld."
+"Copyright (C) 2007 Frank Lichtenheld."
 
 #: scripts/dpkg-buildpackage.pl:35
 #, perl-format
@@ -384,118 +383,178 @@ msgid ""
 "  -h, --help     show this help message.\n"
 "      --version  show the version.\n"
 msgstr ""
+"\n"
+"Usage : %s [<options> ...]\n"
+"\n"
+"Options :\n"
+"  -r<commande-gain-root>\n"
+"                 commande pour obtenir les privilèges administrateur\n"
+"                 (par défaut, fakeroot).\n"
+"  -p<commande-sign>\n"
+"  -d             ne pas vérifier les dépendances de construction et les "
+"conflits.\n"
+"  -D             vérifier les dépendances de construction et les conflits.\n"
+"  -j[<nombre>]   spécifier le nombre de tâches à exécuter simultanément } "
+"passé to debian/rules\n"
+"  -k<id-clé>     clé à utiliser pour signature.\n"
+"  -sgpg          la commande de signature est appelée comme GPG.\n"
+"  -spgp          la commande de signature est appelée comme PGP.\n"
+"  -us            fichier source non signé.\n"
+"  -uc            fichier changes non signé.\n"
+"  -a<arch>       architecture Debian de construction (implique -d).\n"
+"  -b             binaire uniquement, ne pas construire les sources. } "
+"également passé à\n"
+"  -B             binaire uniquement, pas de fichier « arch-indep ». } dpkg-"
+"genchanges\n"
+"  -S             source uniquement, pas de fichiers binaires.       }\n"
+"  -t<système>    définit le type système GNU.           } passé à dpkg-"
+"architecture\n"
+"  -v<version>    changements depuis la version <version>.             }\n"
+"  -m<resp>       le responsable pour le paquet est <resp>.            }\n"
+"  -e<resp>       le responsable pour la publication est <resp>.       } "
+"uniquement passé\n"
+"  -C<fichier-desc> les changements sont décrits dans <fichier-desc>.  } à "
+"dpkg-genchanges\n"
+"  -si (défaut)   src inclut l'orig pour les révisions 0 ou 1.         }\n"
+"  -sa            le source envoyé inclut toujours l'orig.             }\n"
+"  -sd            le source envoyé ne comprend que le diff et le .dsc. }\n"
+"  -sn            force le format source natif Debian.      }\n"
+"  -s[sAkurKUR]   voir dpkg-source pour l'explication.      } seulement "
+"passé\n"
+"  -z<niveau>     niveau de compression des sources         } à dpkg-source\n"
+"  -Z(gz|bz2|lzma) compression à utiliser pour les sources  }\n"
+"  -nc            ne pas nettoyer l'arborescence des sources (implique -b).\n"
+"  -tc            nettoyer l'arborescence des source à la fin.\n"
+"  -ap            ajouter une pause avant de lancer le processus de "
+"signature.\n"
+"  -E             transforme certains avertissements en erreurs. } passé à\n"
+"  -W             quand -E est activé, -W le désactive.          } dpkg-"
+"source\n"
+"  -i[<regex>]    ignorer les différences de fichiers correspondant à "
+"regex. } uniquement passé\n"
+"  -I[<format>]   filtrer les fichiers lors de la construction des "
+"tarballs. } à dpkg-source\n"
+"  --admindir=<répertoire>\n"
+"                 changer le répertoire d'administration.\n"
+"  -h, --help     afficher ce message d'aide.\n"
+"      --version  afficher la version.\n"
 
 #: scripts/dpkg-buildpackage.pl:159 scripts/dpkg-buildpackage.pl:169
 #: scripts/dpkg-buildpackage.pl:176 scripts/dpkg-buildpackage.pl:182
-#, fuzzy, perl-format
+#, perl-format
 msgid "cannot combine %s and %s"
-msgstr "impossible de combiner -b ou -B et -S"
+msgstr "impossible de combiner %s et %s"
 
 #: scripts/dpkg-buildpackage.pl:199
-#, fuzzy, perl-format
+#, perl-format
 msgid "unknown option or argument %s"
-msgstr "option ou argument inconnu %s"
+msgstr "option ou paramètre inconnu %s"
 
 #: scripts/dpkg-buildpackage.pl:204
 msgid "using a gain-root-command while being root"
 msgstr ""
+"utilisation d'une commande pour obtenir les privilèges administrateur en "
+"tant qu'administrateur"
 
 #: scripts/dpkg-buildpackage.pl:210
 msgid ""
 "fakeroot not found, either install the fakeroot\n"
 "package, specify a command with the -r option, or run this as root"
 msgstr ""
+"fakeroot non trouvé, veuillez soit installer le paquet fakeroot,\n"
+"soit spécifier une commande avec l'option -r ou exécuter cette\n"
+"commande en tant qu'administrateur"
 
 #: scripts/dpkg-buildpackage.pl:214
-#, fuzzy, perl-format
+#, perl-format
 msgid "gain-root-commmand '%s' not found"
-msgstr "Répertoire de binaires %s non trouvé"
+msgstr "commande pour obtenir les privilèges administrateur « %s » non trouvée"
 
 #: scripts/dpkg-buildpackage.pl:232
 msgid "unknown sign command, assuming pgp style interface"
-msgstr ""
+msgstr "commande de signature inconnue, suppose une interface de style pgp"
 
 #: scripts/dpkg-buildpackage.pl:269
-#, fuzzy, perl-format
+#, perl-format
 msgid "unable to determine %s"
-msgstr "impossible de créer %s"
+msgstr "impossible de déterminer %s"
 
 #: scripts/dpkg-buildpackage.pl:276
 msgid "source package"
-msgstr ""
+msgstr "paquet source"
 
 #: scripts/dpkg-buildpackage.pl:277
 msgid "source version"
-msgstr ""
+msgstr "version source"
 
 #: scripts/dpkg-buildpackage.pl:286
 msgid "source changed by"
-msgstr ""
+msgstr "source changé en"
 
 #: scripts/dpkg-buildpackage.pl:304
 msgid "host architecture"
-msgstr ""
+msgstr "architecture hôte"
 
 #: scripts/dpkg-buildpackage.pl:354
 msgid "Build dependencies/conflicts unsatisfied; aborting."
-msgstr ""
+msgstr "Dépendances de construction et conflits non satisfaits ; échec."
 
 #: scripts/dpkg-buildpackage.pl:355
 msgid "(Use -d flag to override.)"
-msgstr ""
+msgstr "(Utilisez l'option -d pour forcer.)"
 
 #: scripts/dpkg-buildpackage.pl:377
 msgid "Press the return key to start signing process\n"
-msgstr ""
+msgstr "Appuyez sur Return pour commencer le processus de signature\n"
 
 #: scripts/dpkg-buildpackage.pl:384
 msgid "Failed to sign .dsc and .changes file"
-msgstr ""
+msgstr "Échec de signature des fichiers .dsc et .changes"
 
 #: scripts/dpkg-buildpackage.pl:405 scripts/dpkg-buildpackage.pl:409
 #: scripts/dpkg-buildpackage.pl:422
-#, fuzzy
 msgid "write changes file"
-msgstr "analyse du changelog"
+msgstr "écriture du fichier changes"
 
 #: scripts/dpkg-buildpackage.pl:421
 msgid "dpkg-genchanges"
-msgstr ""
+msgstr "dpkg-genchanges"
 
 #: scripts/dpkg-buildpackage.pl:434
 msgid "source only upload: Debian-native package"
-msgstr ""
+msgstr "envoi de source uniquement : paquet Debian natif"
 
 #: scripts/dpkg-buildpackage.pl:436
 msgid "source only, diff-only upload (original source NOT included)"
 msgstr ""
+"source uniquement, envoi du fichier diff uniquement (aucune inclusion du "
+"code source d'origine)"
 
 #: scripts/dpkg-buildpackage.pl:438
-#, fuzzy
 msgid "source only upload (original source is included)"
-msgstr "pas d'inclusion du code source original dans l'envoi (« upload »)"
+msgstr "envoi du source seulement (inclusion du code source d'origine)"
 
 #: scripts/dpkg-buildpackage.pl:441 scripts/dpkg-buildpackage.pl:449
 msgid "full upload (original source is included)"
-msgstr ""
+msgstr "envoi complet (inclusion du code source d'origine)"
 
 #: scripts/dpkg-buildpackage.pl:443
-#, fuzzy
 msgid "binary only upload (no source included)"
-msgstr "envoi d'un binaire - aucune inclusion de code source"
+msgstr "envoi d'un binaire seulement (aucune inclusion de code source)"
 
 #: scripts/dpkg-buildpackage.pl:445
 msgid "full upload; Debian-native package (full source is included)"
-msgstr ""
+msgstr "envoi complet ; paquet Debian natif (inclusion du code source complet)"
 
 #: scripts/dpkg-buildpackage.pl:447
-#, fuzzy
 msgid "binary and diff upload (original source NOT included)"
-msgstr "envoi d'un binaire - aucune inclusion de code source"
+msgstr ""
+"envoi d'un binaire et du fichier diff (aucune inclusion du code source "
+"d'origine)"
 
 #: scripts/dpkg-buildpackage.pl:454
 msgid "Failed to sign .changes file"
-msgstr ""
+msgstr "Échec de signature du fichier .changes"
 
 #: scripts/dpkg-checkbuilddeps.pl:23
 #, perl-format
@@ -930,16 +989,18 @@ msgstr[0] "
 msgstr[1] "« %s » ne sont pas des architectures autorisées."
 
 #: scripts/dpkg-gencontrol.pl:199
-#, fuzzy, perl-format
+#, perl-format
 msgid ""
 "current host architecture '%s' does not appear in package's architecture "
 "list (%s)"
-msgstr "l'actuelle architecture de construction %s n'apparaît pas dans %s"
+msgstr ""
+"l'actuelle architecture hôte « %s » n'apparaît pas dans la liste "
+"d'architecture du paquet (%s)"
 
 #: scripts/dpkg-gencontrol.pl:291
 #, perl-format
 msgid "%s package with udeb specific field %s"
-msgstr ""
+msgstr "paquet %s avec champ spécifique udeb %s"
 
 #: scripts/dpkg-gencontrol.pl:304
 msgid "fork for du"
@@ -987,6 +1048,8 @@ msgid ""
 "\n"
 "Copyright (C) 2007 Raphael Hertzog.\n"
 msgstr ""
+"\n"
+"Copyright (C) 2007 Raphael Hertzog.\n"
 
 #: scripts/dpkg-gensymbols.pl:50
 #, perl-format
@@ -1013,42 +1076,71 @@ msgid ""
 "  -h, --help               show this help message.\n"
 "      --version            show the version.\n"
 msgstr ""
+"Usage : %s [<option> ...]\n"
+"\n"
+"Options :\n"
+"  -p<paquet>               générer le fichier des symboles pour ce paquet.\n"
+"  -P<répconstrpaquet>      répertoire de construction temporaire au lieu de "
+"debian/tmp.\n"
+"  -e<bibliothèque>         lister explicitement les bibliothèques à "
+"rechercher.\n"
+"  -v<version>              version des paquets (par défaut, la version "
+"extraite de\n"
+"                           debian/changelog).\n"
+"  -c<niveau>               comparer les symboles générés avec le fichier de "
+"référence\n"
+"                           dans le répertoire debian.\n"
+"\t\t\t   Échoue si les différences sont trop importantes\n"
+"\t\t\t   (le niveau va de 0 pour aucun contrôle à 4 pour tous\n"
+"\t\t\t   les contrôles). Par défaut, le niveau de contrôle est 1.\n"
+"  -I<fichier>              forcer l'utilisation de <fichier> comme fichier "
+"de symboles\n"
+"                           de référence au lieu du fichier par défaut.\n"
+"  -O<fichier>              écrire dans <fichier> au lieu de .../DEBIAN/"
+"symbols.\n"
+"  -O                       écrire dans la sortie standard au lieu de .../"
+"DEBIAN/symbols.\n"
+"  -d                       afficher les informations de déboguage pendant le "
+"traitement.\n"
+"  -h, --help               afficher ce message d'aide.\n"
+"      --version            afficher la version.\n"
 
 #: scripts/dpkg-gensymbols.pl:152
-#, fuzzy, perl-format
+#, perl-format
 msgid "Can't read directory %s: %s"
-msgstr "« stat » du répertoire %s impossible : %s"
+msgstr "Impossible de lire le répertoire %s : %s"
 
 #: scripts/dpkg-gensymbols.pl:167
 #, perl-format
 msgid "Objdump couldn't parse %s\n"
-msgstr ""
+msgstr "Objdump ne peut analyser %s\n"
 
 #: scripts/dpkg-gensymbols.pl:209
 msgid "new libraries appeared in the symbols file."
 msgstr ""
+"de nouvelles bibliothèques sont apparues dans le fichiers des symboles."
 
 #: scripts/dpkg-gensymbols.pl:213
 msgid "some libraries disappeared in the symbols file."
-msgstr ""
+msgstr "certaines bibliothèques ont disparu du fichier des symboles."
 
 #: scripts/dpkg-gensymbols.pl:217
 msgid "some new symbols appeared in the symbols file."
-msgstr ""
+msgstr "certains nouveaux symboles sont apparus dans le fichier des symboles."
 
 #: scripts/dpkg-gensymbols.pl:221
 msgid "some symbols disappeared in the symbols file."
-msgstr ""
+msgstr "certains symboles ont disparu du fichier des symboles."
 
 #: scripts/dpkg-gensymbols.pl:234
 #, perl-format
 msgid "%s doesn't match completely %s\n"
-msgstr ""
+msgstr "%s ne correspond pas complètement à %s\n"
 
 #: scripts/dpkg-gensymbols.pl:237
 #, perl-format
 msgid "no debian/symbols file used as basis for generating %s\n"
-msgstr ""
+msgstr "pas de fichier debian/symbols utilisé comme base pour générer %s\n"
 
 #: scripts/dpkg-parsechangelog.pl:26
 msgid ""
@@ -1132,7 +1224,7 @@ msgid "cannot exec format parser: %s"
 msgstr "impossible d'exécuter l'analyseur de format : %s"
 
 #: scripts/dpkg-scanpackages.pl:57
-#, fuzzy, perl-format
+#, perl-format
 msgid ""
 "Usage: %s [<option> ...] <binarypath> [<overridefile> [<pathprefix>]] > "
 "Packages\n"
@@ -1150,16 +1242,17 @@ msgstr ""
 "Paquets\n"
 "\n"
 "Options :\n"
-"  -u, --udeb            recherche d'udebs.\n"
+"  -t, --type <type>     recherche des paquets <type> (par défaut, « deb »).\n"
+"  -u, --udeb            recherche d'udebs (alias obsolète pour -tudeb).\n"
 "  -a, --arch <arch>     architecture à rechercher.\n"
 "  -m, --multiversion    permettre plusieurs versions d'un paquet.\n"
 "  -h, --help            afficher ce message d'aide.\n"
 "      --version         afficher la version.\n"
 
 #: scripts/dpkg-scanpackages.pl:73
-#, fuzzy, perl-format
+#, perl-format
 msgid "Couldn't open override file %s"
-msgstr "Impossible d'ouvrir le fichier d'override %s : %s"
+msgstr "Impossible d'ouvrir le fichier d'override %s"
 
 #: scripts/dpkg-scanpackages.pl:99
 #, perl-format
@@ -1181,9 +1274,9 @@ msgid "Override file %s not found"
 msgstr "Fichier override %s non trouvé"
 
 #: scripts/dpkg-scanpackages.pl:154
-#, fuzzy, perl-format
+#, perl-format
 msgid "Couldn't open %s for reading"
-msgstr "Impossible de lire %s : %s"
+msgstr "Impossible de lire %s"
 
 #: scripts/dpkg-scanpackages.pl:161
 #, perl-format
@@ -1196,13 +1289,13 @@ msgid "`dpkg-deb -I %s control' exited with %d, skipping package"
 msgstr "« dpkg-deb -I %s control », sortie avec %d, paquet sauté"
 
 #: scripts/dpkg-scanpackages.pl:179
-#, fuzzy, perl-format
+#, perl-format
 msgid ""
 "Unprocessed text from %s control file; info:\n"
 "%s / %s"
 msgstr ""
 "Texte non traité du fichier de contrôle %s ; info :\n"
-"%s / %s\n"
+"%s / %s"
 
 #: scripts/dpkg-scanpackages.pl:183
 #, perl-format
@@ -1233,29 +1326,27 @@ msgid " ! Package %s (filename %s) has Filename field!\n"
 msgstr " ! Paquet %s (nom %s) a un champ Filename !\n"
 
 #: scripts/dpkg-scanpackages.pl:213
-#, fuzzy, perl-format
+#, perl-format
 msgid "Strange text from 'md5sum < %s': '%s'"
 msgstr "Texte étrange produit par « md5sum < %s » : « %s »"
 
 #: scripts/dpkg-scanpackages.pl:216
-#, fuzzy, perl-format
+#, perl-format
 msgid "Couldn't stat %s"
-msgstr "stat de %s impossible : %s"
+msgstr "stat de %s impossible"
 
 #: scripts/dpkg-scanpackages.pl:217
-#, fuzzy, perl-format
+#, perl-format
 msgid "file %s is empty"
-msgstr "le fichier d'envoi %s est vide"
+msgstr "le fichier %s est vide"
 
 #: scripts/dpkg-scanpackages.pl:263
-#, fuzzy
 msgid "Failed when writing stdout"
-msgstr "Impossible d'écrire sur stdout : %s"
+msgstr "Impossible d'écrire sur stdout"
 
 #: scripts/dpkg-scanpackages.pl:266
-#, fuzzy
 msgid "Couldn't close stdout"
-msgstr "Impossible de fermer stdout : %s"
+msgstr "Impossible de fermer stdout"
 
 #: scripts/dpkg-scanpackages.pl:270
 msgid "** Packages in archive but missing from override file: **"
@@ -1449,9 +1540,9 @@ msgid "administrative directory '%s' does not exist"
 msgstr "répertoire d'administration %s n'existe pas"
 
 #: scripts/dpkg-shlibdeps.pl:66
-#, fuzzy, perl-format
+#, perl-format
 msgid "unrecognised dependency field `%s'"
-msgstr "champ de dépendance non reconnu %s"
+msgstr "champ de dépendance non reconnu « %s »"
 
 #: scripts/dpkg-shlibdeps.pl:84
 msgid "need at least one executable"
@@ -1466,26 +1557,35 @@ msgid ""
 "To help dpkg-shlibdeps find private libraries, you might need to set "
 "LD_LIBRARY_PATH."
 msgstr ""
+"impossible de trouver la bibliothèque %s demandée par %s (son RPATH est « %"
+"s »).\n"
+"Note : les bibliothèques ne sont pas cherchées dans d'autres paquets "
+"binaires qui n'ont pas de fichier shlibs.\n"
+"Pour aider dpkg-shlibdeps à trouver des bibliothèques privées, vous pouvez "
+"avoir à définir LD_LIBRARY_PATH."
 
 #: scripts/dpkg-shlibdeps.pl:188
 #, perl-format
 msgid "no dependency information found for %s (used by %s)."
-msgstr ""
+msgstr "pas d'informations de dépendance trouvées pour %s (utilisé par %s)."
 
 #: scripts/dpkg-shlibdeps.pl:240
 #, perl-format
 msgid "symbol %s used by %s found in none of the libraries."
-msgstr ""
+msgstr "symbole %s utilisé par %s trouvé dans aucun des bibliothèques."
 
 #: scripts/dpkg-shlibdeps.pl:253
 #, perl-format
 msgid "%d other similar warnings have been skipped (use -v to see them all)."
 msgstr ""
+"%d autres avertissements semblables ont été sautés (utiliser -v pour les "
+"voir tous)."
 
 #: scripts/dpkg-shlibdeps.pl:258
 #, perl-format
 msgid "%s shouldn't be linked with %s (it uses none of its symbols)."
 msgstr ""
+"%s ne devrait pas être lié avec %s (il n'utilise aucun de ses symboles)."
 
 #: scripts/dpkg-shlibdeps.pl:270
 #, perl-format
@@ -1508,7 +1608,6 @@ msgid "install new varlist file `%s'"
 msgstr "installation du nouveau fichier varlist %s"
 
 #: scripts/dpkg-shlibdeps.pl:346
-#, fuzzy
 msgid ""
 "\n"
 "Copyright (C) 1996 Ian Jackson.\n"
@@ -1519,10 +1618,11 @@ msgstr ""
 "\n"
 "Copyright (C) 1996 Ian Jackson.\n"
 "Copyright (C) 2000 Wichert Akkerman.\n"
-"Copyright (C) 2006 Frank Lichtenheld."
+"Copyright (C) 2006 Frank Lichtenheld.\n"
+"Copyright (C) 2007 Raphael Hertzog.\n"
 
 #: scripts/dpkg-shlibdeps.pl:361
-#, fuzzy, perl-format
+#, perl-format
 msgid ""
 "Usage: %s [<option> ...] <executable>|-e<executable> [<option> ...]\n"
 "\n"
@@ -1563,6 +1663,7 @@ msgstr ""
 "substvars.\n"
 "  --admindir=<répertoire>     change le répertoire d'administration.\n"
 "  -t<type>                    définir le type de paquet (.deb par défaut).\n"
+"  -x<paquet>                  exclut le paquet des dépendances générées.\n"
 "  -h, --help                  afficher ce message d'aide.\n"
 "      --version               afficher la version.\n"
 "\n"
@@ -1573,6 +1674,7 @@ msgstr ""
 #, perl-format
 msgid "Can't extract name and version from library name `%s'"
 msgstr ""
+"Impossible d'extraire le nom et la version du nom de la bibliothèque « %s »"
 
 #: scripts/dpkg-shlibdeps.pl:428
 #, perl-format
@@ -1580,16 +1682,16 @@ msgid "unable to open shared libs info file `%s'"
 msgstr "impossible d'ouvrir le fichier sur les bibliothèques partagées %s"
 
 #: scripts/dpkg-shlibdeps.pl:434
-#, fuzzy, perl-format
+#, perl-format
 msgid "shared libs info file `%s' line %d: bad line `%s'"
 msgstr ""
-"fichier info sur les bibliothèques partagées %s, ligne %d : ligne mal formée "
-"%s"
+"fichier info sur les bibliothèques partagées « %s », ligne %d : ligne mal "
+"formée « %s »"
 
 #: scripts/dpkg-shlibdeps.pl:475
-#, fuzzy, perl-format
+#, perl-format
 msgid "cannot open file %s"
-msgstr "impossible d'ouvrir %s : %s"
+msgstr "impossible d'ouvrir le fichier %s"
 
 #: scripts/dpkg-shlibdeps.pl:508
 #, perl-format
@@ -1598,6 +1700,9 @@ msgid ""
 "identified due to lack of DEBIAN sub-directory in the root of package's "
 "build tree"
 msgstr ""
+"$ORIGIN est utilisé dans le RPATH de %s et le répertoire correspondant n'a "
+"pas pu être identifié en raison de l'absence de sous-répertoire DEBIAN dans "
+"la racine de l'arborescence de construction du paquet"
 
 #: scripts/dpkg-shlibdeps.pl:555
 msgid "cannot fork for dpkg --search"
@@ -1629,7 +1734,7 @@ msgstr ""
 "Copyright (C) 1996 Ian Jackson and Klee Dienes."
 
 #: scripts/dpkg-source.pl:156
-#, fuzzy, perl-format
+#, perl-format
 msgid ""
 "Usage: %s [<option> ...] <command>\n"
 "\n"
@@ -1695,14 +1800,15 @@ msgstr ""
 "debian/substvars.\n"
 "  -D<champ>=<valeur>         remplacer ou ajouter une paire champ / valeur.\n"
 "  -U<champ>                  supprimer un champ.\n"
-"  -W                         transformer certaines erreurs en "
-"avertissements.\n"
-"  -E                         quand -W est activée, -E la désactive.\n"
+"  -E                         transformer certains avertissements en "
+"erreurs.\n"
+"  -W                         quand -E est activée, -W la désactive.\n"
 "  -q                         opération muette, ne pas afficher "
 "d'avertissements.\n"
 "  -i[<regexp>]               éliminer les fichiers à ignorer, défaut %s.\n"
-"  -I<fichier>                éliminer des fichiers en construisant les "
-"tarballs.\n"
+"  -I[<format>]               éliminer des fichiers en construisant les "
+"tarballs\n"
+"                             (par défaut : %s).\n"
 "  -sa                        sélection automatique des sources (-sA option "
 "par défaut).\n"
 "  -sk                        utiliser les sources empaquetées \n"
@@ -1719,6 +1825,13 @@ msgstr ""
 "  -sA,-sK,-sP,-sU,-sR        comme -sa,-sk,-sp,-su,-sr, mais modification "
 "possible\n"
 "                             d'un tar ou d'un rep existants.\n"
+"  -Z<compression>            choisir la compression à utiliser (par défaut, "
+"« gzip» ,\n"
+"                             les valeurs gérées sont : %s).\n"
+"  -z<niveau>                 niveau de compression à utiliser (par défaut, "
+"« 9 »,\n"
+"                             les valeurs gérées sont : « 1 » - « 9 », "
+"« best », « fast »)\n"
 "\n"
 "Options d'extraction :\n"
 "  -sp (défaut)               garder les sources empaquetées dans le rep "
@@ -1731,14 +1844,14 @@ msgstr ""
 "      --version              afficher la version.\n"
 
 #: scripts/dpkg-source.pl:225
-#, fuzzy, perl-format
+#, perl-format
 msgid "%s is not a supported compression"
-msgstr "%s n'est pas le nom d'une variable reconnue"
+msgstr "%s n'est pas une compression gérée"
 
 #: scripts/dpkg-source.pl:229
-#, fuzzy, perl-format
+#, perl-format
 msgid "%s is not a compression level"
-msgstr "%s n'est pas un fichier normal"
+msgstr "%s n'est pas un niveau de compression"
 
 #: scripts/dpkg-source.pl:232
 #, perl-format
@@ -1793,13 +1906,13 @@ msgid "cannot stat orig argument %s: %s"
 msgstr "« stat » du paramètre source %s impossible : %s"
 
 #: scripts/dpkg-source.pl:434
-#, fuzzy, perl-format
+#, perl-format
 msgid ""
 "orig argument is unpacked but source handling style -s%s calls for packed (."
 "orig.tar.<ext>)"
 msgstr ""
 "le paramètre source n'est pas compressé mais l'option -s%s demande des "
-"sources compressées (.orig.tar.gz)"
+"sources compressées (.orig.tar.<ext>)"
 
 #: scripts/dpkg-source.pl:441
 #, perl-format
@@ -1850,11 +1963,10 @@ msgid ".orig directory name %s is not <package>-<upstreamversion> (wanted %s)"
 msgstr "répertoire .orig %s n'est pas <paquet>-<version_amont> (%s demandé)"
 
 #: scripts/dpkg-source.pl:508
-#, fuzzy, perl-format
+#, perl-format
 msgid ""
 ".orig.tar name %s is not <package>_<upstreamversion>.orig.tar (wanted %s)"
-msgstr ""
-".orig.tar.gz %s n'est pas <paquet>_<version_amont>.orig.tar.gz (%s demandé)"
+msgstr ".orig.tar %s n'est pas <paquet>_<version_amont>.orig.tar (%s demandé)"
 
 #: scripts/dpkg-source.pl:521
 #, perl-format
@@ -2041,9 +2153,8 @@ msgid "unknown line from diff -u on %s: `%s'"
 msgstr "ligne inconnue dans diff -u sur %s : `%s'"
 
 #: scripts/dpkg-source.pl:685
-#, fuzzy
 msgid "failed to write to compression pipe"
-msgstr "échec d'écriture vers gzip"
+msgstr "échec d'écriture vers pipe de compression"
 
 #: scripts/dpkg-source.pl:691
 msgid "diff gave 1 but no diff lines found"
@@ -2072,9 +2183,8 @@ msgid "unknown file type (%s)"
 msgstr "type de fichier inconnu %s"
 
 #: scripts/dpkg-source.pl:715
-#, fuzzy
 msgid "finish write to compression pipe"
-msgstr "fin de l'écriture sur pipe gzip"
+msgstr "fin de l'écriture sur pipe de compression"
 
 #: scripts/dpkg-source.pl:723
 msgid "fork for 2nd find"
@@ -2466,9 +2576,9 @@ msgid "tarfile `%s' contains object `%s' with unknown or forbidden type `%s'"
 msgstr "le fichier tar %s contient un objet %s de type inconnu ou interdit %s"
 
 #: scripts/dpkg-source.pl:1267
-#, fuzzy, perl-format
+#, perl-format
 msgid "tarfile `%s' contains incomplete entry `%s'\n"
-msgstr "le fichier tar %s contient une entrée incomplète %s"
+msgstr "le fichier tar %s contient une entrée incomplète %s\n"
 
 #: scripts/dpkg-source.pl:1291
 #, perl-format
@@ -2668,9 +2778,8 @@ msgid "reopen gzip pipe"
 msgstr "réouverture de pipe gzip"
 
 #: scripts/dpkg-source.pl:1581
-#, fuzzy
 msgid "reopen tar"
-msgstr "réouverture tar.gz"
+msgstr "réouverture tar"
 
 #: scripts/dpkg-source.pl:1582
 msgid "exec gzip"
@@ -2846,14 +2955,14 @@ msgid "unable to open triplettable"
 msgstr "impossible d'ouvrir « triplettable »"
 
 #: scripts/Dpkg/Shlibs.pm:51
-#, fuzzy, perl-format
+#, perl-format
 msgid "couldn't open %s"
 msgstr "impossible d'ouvrir %s"
 
 #: scripts/Dpkg/Shlibs.pm:70
-#, fuzzy, perl-format
+#, perl-format
 msgid "couldn't close %s"
-msgstr "Impossible de fermer stdout : %s"
+msgstr "Impossible de fermer %s"
 
 #: scripts/Dpkg/Shlibs/Objdump.pm:74
 msgid "cannot fork for objdump"
@@ -2865,62 +2974,61 @@ msgid "objdump on `%s'"
 msgstr "objdump sur %s"
 
 #: scripts/Dpkg/Shlibs/Objdump.pm:90
-#, fuzzy, perl-format
+#, perl-format
 msgid "Can't open %s for test: %s"
-msgstr "Impossible de lire %s : %s"
+msgstr "Impossible de lire %s pour test : %s"
 
 #: scripts/Dpkg/Shlibs/Objdump.pm:148
-#, fuzzy, perl-format
+#, perl-format
 msgid "Can't execute objdump: %s"
-msgstr "impossible d'exécuter objdump"
+msgstr "impossible d'exécuter objdump : %s"
 
 #: scripts/Dpkg/Shlibs/Objdump.pm:286
-#, fuzzy, perl-format
+#, perl-format
 msgid "Couldn't parse dynamic symbol definition: %s"
-msgstr "Impossible de lire %s : %s"
+msgstr "Impossible d'analyser la définition de symboles dynamique : %s"
 
 #: scripts/Dpkg/Shlibs/SymbolFile.pm:100
-#, fuzzy, perl-format
+#, perl-format
 msgid "Can't open %s: %s"
-msgstr "impossible d'ouvrir %s : %s"
+msgstr "Impossible d'ouvrir %s : %s"
 
 #: scripts/Dpkg/Shlibs/SymbolFile.pm:106
 #, perl-format
 msgid "Symbol information must be preceded by a header (file %s, line %s)."
 msgstr ""
+"Les informations de symboles doivent être précédées par un en-tête (fichier %"
+"s, ligne %s)."
 
 #: scripts/Dpkg/Shlibs/SymbolFile.pm:146
-#, fuzzy, perl-format
+#, perl-format
 msgid "Failed to parse a line in %s: %s"
-msgstr "impossible de modifier le fichier sauvegardé %s en %s"
+msgstr "Impossible d'analyser une ligne dans %s : %s"
 
 #: scripts/Dpkg/Shlibs/SymbolFile.pm:160
-#, fuzzy, perl-format
+#, perl-format
 msgid "Can't open %s for writing: %s"
-msgstr "Impossible de lire %s : %s"
+msgstr "Impossible d'ouvrir %s en écriture : %s"
 
 #: scripts/Dpkg/Shlibs/SymbolFile.pm:189
 msgid "Can't merge symbols from objects without SONAME."
-msgstr ""
+msgstr "Impossible de fusionner les symboles depuis des objets sans SONAME."
 
 #: scripts/Dpkg/ErrorHandling.pm:23
-#, fuzzy
 msgid "warning"
-msgstr "%s : avertissement : %s"
+msgstr "avertissement"
 
 #: scripts/Dpkg/ErrorHandling.pm:37 scripts/Dpkg/ErrorHandling.pm:43
-#, fuzzy
 msgid "failure"
-msgstr "%s : échec : %s"
+msgstr "échec"
 
 #: scripts/Dpkg/ErrorHandling.pm:48
 msgid "error"
-msgstr ""
+msgstr "erreur"
 
 #: scripts/Dpkg/ErrorHandling.pm:53
-#, fuzzy
 msgid "internal error"
-msgstr "%s : erreur interne : %s"
+msgstr "erreur interne"
 
 #: scripts/Dpkg/ErrorHandling.pm:60
 #, perl-format
@@ -2928,19 +3036,19 @@ msgid "unknown information field '%s' in input data in %s"
 msgstr "champ d'information inconnu « %s » dans les données d'entrée de %s"
 
 #: scripts/Dpkg/ErrorHandling.pm:73
-#, fuzzy, perl-format
+#, perl-format
 msgid "%s gave error exit status %s"
-msgstr "%s : échec : %s a produit une erreur de sortie de type %s"
+msgstr "%s a produit une erreur de sortie de type %s"
 
 #: scripts/Dpkg/ErrorHandling.pm:75
-#, fuzzy, perl-format
+#, perl-format
 msgid "%s died from signal %s"
-msgstr "%s : échec : %s tué par le signal %s"
+msgstr "%s tué par le signal %s"
 
 #: scripts/Dpkg/ErrorHandling.pm:77
-#, fuzzy, perl-format
+#, perl-format
 msgid "%s failed with unknown exit code %d"
-msgstr "%s : échec : %s a échoué avec une erreur de sortie de type inconnu %d"
+msgstr "%s a échoué avec une erreur de sortie de type inconnu %d"
 
 #~ msgid "`md5sum < %s' exited with %d"
 #~ msgstr "« md5sum < %s », sortie avec %d"