diff options
Diffstat (limited to 'dh_gencontrol')
-rwxr-xr-x | dh_gencontrol | 26 |
1 files changed, 21 insertions, 5 deletions
diff --git a/dh_gencontrol b/dh_gencontrol index bb39780c..d305b961 100755 --- a/dh_gencontrol +++ b/dh_gencontrol @@ -21,7 +21,15 @@ proper permissions. 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 including "-isp". +useful flags including "-isp". + +Note that L<dpkg-gencontrol(1)> expands certian substirution variables +when generating the control file (for details, see its man page). Those +variables are typically generated by L<dh_shlibdeps(1)> and like programs. +However, if you want to specify some of your own manually, you may do so, +by creating files named debian/package.substvars (where package is the +package these variables apply to). The files should be of the same form +output by L<dpkg-shlibdeps(1)> =head1 OPTIONS @@ -52,12 +60,20 @@ foreach my $package (@{$dh{DOPACKAGES}}) { doit("install","-o",0,"-g",0,"-d","$tmp/DEBIAN"); } - # Generate and install control file. Use complex_doit to allow for - # wild and wonderful U_PARAMS quoting. + # Merge in user-specified substvars file with debhelper generated + # one. + my $substvars=pkgfile($package,"substvars"); + if (-e $substvars) { + complex_doit("cat $substvars >> debian/${ext}substvars.debhelper"); + } + + # Generate and install control file. doit("dpkg-gencontrol","-l$changelog","-isp","-p$package", - "-Tdebian/${ext}substvars","-P$tmp",@{$dh{U_PARAMS}}); + "-Tdebian/${ext}substvars.debhelper", + "-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("chown","0.0","$tmp/DEBIAN/control"); |