]> git.donarmstrong.com Git - debhelper.git/blobdiff - dh_gencontrol
Man page fixes about what program -u passes params to. Closes: #593342
[debhelper.git] / dh_gencontrol
index 0c8c88a29180379861222eb3ca4eca21eaffbeaa..52e944c2708b10298b3b960cfe28202ccad213e4 100755 (executable)
@@ -11,7 +11,7 @@ use Debian::Debhelper::Dh_Lib;
 
 =head1 SYNOPSIS
 
 
 =head1 SYNOPSIS
 
-  dh_gencontrol [debhelper options] [-uparams] [-- params]
+B<dh_gencontrol> [S<I<debhelper options>>] [S<B<--> I<params>>]
 
 =head1 DESCRIPTION
 
 
 =head1 DESCRIPTION
 
@@ -19,26 +19,36 @@ dh_gencontrol is a debhelper program that is responsible for generating
 control files, and installing them into the DEBIAN directory with the
 proper permissions.
 
 control files, and installing them into the DEBIAN directory with the
 proper permissions.
 
-This program is merely a wrapper around L<dpkg-gencontrol(1)>.
+This program is merely a wrapper around L<dpkg-gencontrol(1)>, which calls
+it once for each package being acted on, and passes in some additional
+useful flags.
 
 =head1 OPTIONS
 
 =over 4
 
 
 =head1 OPTIONS
 
 =over 4
 
-=item B<-u>I<params>, B<--dpkg-gencontrol-params>I<params>
 =item B<--> I<params>
 
 Pass "params" to L<dpkg-gencontrol(1)>.
 
 =item B<--> I<params>
 
 Pass "params" to L<dpkg-gencontrol(1)>.
 
+=item B<-u>I<params>, B<--dpkg-gencontrol-params>=I<params>
+
+This is another way to pass I<params> to L<dpkg-gencontrol(1)>.
+It is deprecated; use B<--> instead.
+
 =back
 
 =cut
 
 =back
 
 =cut
 
-init();
+init(options => {
+       "dpkg-gencontrol-params=s", => \$dh{U_PARAMS},
+});
 
 foreach my $package (@{$dh{DOPACKAGES}}) {
        my $tmp=tmpdir($package);
        my $ext=pkgext($package);
 
 foreach my $package (@{$dh{DOPACKAGES}}) {
        my $tmp=tmpdir($package);
        my $ext=pkgext($package);
+
+       my $substvars="debian/${ext}substvars";
        
        my $changelog=pkgfile($package,'changelog');
        if (! $changelog) {
        
        my $changelog=pkgfile($package,'changelog');
        if (! $changelog) {
@@ -49,19 +59,29 @@ foreach my $package (@{$dh{DOPACKAGES}}) {
                doit("install","-o",0,"-g",0,"-d","$tmp/DEBIAN");
        }
 
                doit("install","-o",0,"-g",0,"-d","$tmp/DEBIAN");
        }
 
+       # avoid gratuitous warning
+       if (! -e $substvars || system("grep -q '^misc:Depends=' $substvars") != 0) {
+               complex_doit("echo misc:Depends= >> $substvars");
+       }
+       
        # Generate and install control file.
        # Generate and install control file.
-       doit("dpkg-gencontrol","-l$changelog","-isp","-p$package",
-               "-Tdebian/${ext}substvars","-P$tmp",@{$dh{U_PARAMS}});
+       my @command="dpkg-gencontrol";
+       if (getpackages() > 1) {
+               push @command, "-p$package";
+       }
+       doit(@command, "-l$changelog", "-T$substvars", 
+               "-P$tmp",@{$dh{U_PARAMS}});
 
 
-       # This chmod is only necessary if the user sets the umask to something odd.
+       # This chmod is only necessary if the user sets the umask to
+       # something odd.
        doit("chmod","644","$tmp/DEBIAN/control");
        
        doit("chmod","644","$tmp/DEBIAN/control");
        
-       doit("chown","0.0","$tmp/DEBIAN/control");
+       doit("chown","0:0","$tmp/DEBIAN/control");
 }
 
 =head1 SEE ALSO
 
 }
 
 =head1 SEE ALSO
 
-L<debhelper(1)>
+L<debhelper(7)>
 
 This program is a part of debhelper.
 
 
 This program is a part of debhelper.