5 dh_gencontrol - generate and install control file
10 use Debian::Debhelper::Dh_Lib;
14 B<dh_gencontrol> [S<I<debhelper options>>] [S<B<--> I<params>>]
18 dh_gencontrol is a debhelper program that is responsible for generating
19 control files, and installing them into the DEBIAN directory with the
22 This program is merely a wrapper around L<dpkg-gencontrol(1)>, which calls
23 it once for each package being acted on, and passes in some additional
30 =item B<-u>I<params>, B<--dpkg-gencontrol-params>=I<params>
34 Pass "params" to L<dpkg-gencontrol(1)>.
41 "dpkg-gencontrol-params=s", => \$dh{U_PARAMS},
44 foreach my $package (@{$dh{DOPACKAGES}}) {
45 my $tmp=tmpdir($package);
46 my $ext=pkgext($package);
48 my $substvars="debian/${ext}substvars";
50 my $changelog=pkgfile($package,'changelog');
52 $changelog='debian/changelog';
55 if ( ! -d "$tmp/DEBIAN" ) {
56 doit("install","-o",0,"-g",0,"-d","$tmp/DEBIAN");
59 # avoid gratuitous warning
60 if (! -e $substvars || system("grep -q '^misc:Depends=' $substvars") != 0) {
61 complex_doit("echo misc:Depends= >> $substvars");
64 # Generate and install control file.
65 my @command="dpkg-gencontrol";
66 if (getpackages() > 1) {
67 push @command, "-p$package";
69 doit(@command, "-l$changelog", "-T$substvars",
70 "-P$tmp",@{$dh{U_PARAMS}});
72 # This chmod is only necessary if the user sets the umask to
74 doit("chmod","644","$tmp/DEBIAN/control");
76 doit("chown","0:0","$tmp/DEBIAN/control");
83 This program is a part of debhelper.
87 Joey Hess <joeyh@debian.org>