]> git.donarmstrong.com Git - debhelper.git/blobdiff - dh_gencontrol
Fix typo: s/notmally/normally
[debhelper.git] / dh_gencontrol
index 46f192b64589d5502b0658be66b188cdf678a93b..93f0459411dc1bb448ad171ed4db095677904328 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,27 +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-deb(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) {
@@ -50,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.