diff options
author | unknown <unknown> | 2003-07-28 18:46:16 +0000 |
---|---|---|
committer | unknown <unknown> | 2003-07-28 18:46:16 +0000 |
commit | ae87933e9cdce79689a0a3160aed4ca4c17b547c (patch) | |
tree | b3099bdd844566555941f8b4e8336c415a489646 /dh_installinit | |
parent | d579dae0cf159c50dcd902ff4a35590f7dcff395 (diff) | |
parent | 63e45075003b1d9fcff097b5644a81131c346653 (diff) | |
download | debhelper-version_2.0.51.tar.gz |
r977: This commit was manufactured by cvs2svn to create tagversion_2.0.51
'debian_version_2_0_51'.
Diffstat (limited to 'dh_installinit')
-rwxr-xr-x | dh_installinit | 181 |
1 files changed, 0 insertions, 181 deletions
diff --git a/dh_installinit b/dh_installinit deleted file mode 100755 index 5e4e1f35..00000000 --- a/dh_installinit +++ /dev/null @@ -1,181 +0,0 @@ -#!/usr/bin/perl -w - -=head1 NAME - -dh_installinit - install init scripts into package build directories - -=cut - -use strict; -use Debian::Debhelper::Dh_Lib; - -=head1 SYNOPSIS - -B<dh_installinit> [S<I<debhelper options>>] [B<--init-script=>I<scriptname>] [B<-n>] [B<-r>] [B<-d>] [S<B<--> I<params>>] - -=head1 DESCRIPTION - -dh_installinit is a debhelper program that is responsible for installing -init scripts and associated defaults files into package build directories. - -It also automatically generates the postinst and postrm and prerm commands -needed to set up the symlinks in /etc/rc*.d/ and to start and stop the init -scripts. - -If a file named debian/package.init exists, then it is installed into -etc/init.d/package in the package build directory, with "package" replaced -by the package name. - -If a file named debian/package.default exists, then it is installed into -etc/default/package in the package build directory, with "package" replaced -by the package name. - -=head1 OPTIONS - -=over 4 - -=item B<-n>, B<--noscripts> - -Do not modify postinst/postrm/prerm scripts. - -=item B<-r>, B<--no-restart-on-upgrade> - -Do not restart init script on upgrade. - -=item B<--no-start> - -Do not start the init script on install or upgrade, or stop it on removal. -Only call update-rc.d. Useful for rcS scripts. - -=item B<-d>, B<--remove-d> - -Remove trailing "d" from the name of the package, and use the result for the -filename the init script is installed as in etc/init.d/ , and the default file -is installed as in etc/default/ . This may be useful for daemons with names -ending in "d". (Note: this takes precedence over the --init-script parameter -described below.) - -=item B<-u>I<params> B<--update-rcd-params=>I<params> - -=item B<--> I<params> - -Pass "params" to L<update-rc.d(8)>. If not specified, "defaults" will be -passed to L<update-rc.d(8)>. - -=item B<--init-script=>I<scriptname> - -Use "scriptname" as for the filename the init script is installed as in -etc/init.d/ (and also use it as the filename for the defaults file, if it -is installed). This is useful if you need to have an init script with a name -different from the package's name. Note that if you use this parameter, -dh_installinit will look to see if a file in the debian/ directory exists -that looks like "package.scriptname" and if so will install it as the init -script in preference to the files it normally installs. This feature is really -only useful if you need a single package to install more than one init script. - -=back - -=head1 NOTES - -Note that this command is not idempotent. "dh_clean -k" should be called -between invocations of this command. Otherwise, it may cause multiple -instances of the same text to be added to maintainer scripts. - -=cut - -init(); - -foreach my $package (@{$dh{DOPACKAGES}}) { - my $tmp=tmpdir($package); - - # Figure out what filename to install it as. - my $script; - if ($dh{D_FLAG}) { - # -d on the command line sets D_FLAG. We will - # remove a trailing 'd' from the package name and - # use that as the name. - $script=$package; - if ($script=~m/(.*)d$/) { - $script=$1; - } - else { - warning("\"$package\" has no final d' in its name, but -d was specified."); - } - } - elsif ($dh{INIT_SCRIPT}) { - $script=$dh{INIT_SCRIPT}; - } - else { - $script=$package; - } - - my $init=pkgfile($package,$script) || pkgfile($package,"init") || - pkgfile($package,"init.d"); - my $default=pkgfile($package,'default'); - - if ($default ne '') { - if (! -d "$tmp/etc/default") { - doit("install","-d","$tmp/etc/default"); - } - doit("install","-p","-m644",$default,"$tmp/etc/default/$script"); - } - - if ($init ne '') { - if (! -d "$tmp/etc/init.d") { - doit("install","-d","$tmp/etc/init.d"); - } - - doit("install","-p","-m755",$init,"$tmp/etc/init.d/$script"); - - # This is set by the -u "foo" command line switch, it's - # the parameters to pass to update-rc.d. If not set, - # we have to say "defaults". - my $params=''; - if (defined($dh{U_PARAMS})) { - $params=join(' ',@{$dh{U_PARAMS}}); - } - if ($params eq '') { - $params="defaults"; - } - - if (! $dh{NOSCRIPTS}) { - if (! $dh{NO_START}) { - # update-rc.d, and start script - autoscript($package,"postinst", "postinst-init", - "s/#SCRIPT#/$script/;s/#INITPARMS#/$params/"); - - if ($dh{R_FLAG}) { - # stops script only on remove - autoscript($package,"prerm","prerm-init-norestart", - "s/#SCRIPT#/$script/;s/#INITPARMS#/$params/"); - } - else { - # always stops script - autoscript($package,"prerm","prerm-init", - "s/#SCRIPT#/$script/;s/#INITPARMS#/$params/"); - } - } - else { - # just update-rc.d - autoscript($package,"postinst", "postinst-init-nostart", - "s/#SCRIPT#/$script/;s/#INITPARMS#/$params/"); - } - - # removes rc.d links - autoscript($package,"postrm","postrm-init", - "s/#SCRIPT#/$script/;s/#INITPARMS#/$params/"); - } - } -} - -=head1 SEE ALSO - -L<debhelper(7)> - -This program is a part of debhelper. - -=head1 AUTHOR - -Joey Hess <joeyh@debian.org> - -=cut |