]> git.donarmstrong.com Git - debhelper.git/blobdiff - dh_installcron
Typo. Closes: #653339
[debhelper.git] / dh_installcron
index 7db8cdc6a5d8d34a46452b5b1610e7b41f7b5c90..694e288cff4ec8ef9b2bee138ae28e6655fc8dc7 100755 (executable)
@@ -1,20 +1,87 @@
-#!/bin/sh -e
-#
-# Install cron scripts into the appropriate places.
-
-PATH=debian:$PATH:/usr/lib/debhelper
-source dh_lib
-
-for PACKAGE in $DH_DOPACKAGES; do
-       TMP=`tmpdir $PACKAGE`
-       EXT=`pkgext $PACKAGE`
-
-       for type in daily weekly monthly; do
-               if [ -e debian/${EXT}cron.$type ]; then
-                       if [ ! -d debian/$TMP/etc/cron.$type ]; then
-                               doit "install -o root -g root -d debian/$TMP/etc/cron.$type"
-                       fi
-                       doit "install debian/${EXT}cron.$type debian/$TMP/etc/cron.$type/$PACKAGE"
-               fi
-       done
-done
+#!/usr/bin/perl -w
+
+=head1 NAME
+
+dh_installcron - install cron scripts into etc/cron.*
+
+=cut
+
+use strict;
+use Debian::Debhelper::Dh_Lib;
+
+=head1 SYNOPSIS
+
+B<dh_installcron> [S<B<debhelper options>>] [B<--name=>I<name>]
+
+=head1 DESCRIPTION
+
+B<dh_installcron> is a debhelper program that is responsible for installing
+cron scripts.
+
+=head1 FILES
+
+=over 4
+
+=item debian/I<package>.cron.daily
+
+=item debian/I<package>.cron.weekly
+
+=item debian/I<package>.cron.monthly
+
+=item debian/I<package>.cron.hourly
+
+=item debian/I<package>.cron.d
+
+Installed into the appropriate F<etc/cron.*/> directory in the package
+build directory.
+
+=back
+
+=head1 OPTIONS
+
+=over 4
+
+=item B<--name=>I<name>
+
+Look for files named F<debian/package.name.cron.*> and install them as
+F<etc/cron.*/name>, instead of using the usual files and installing them
+as the package name.
+
+=back
+
+=cut
+
+init();
+
+foreach my $package (@{$dh{DOPACKAGES}}) {
+       my $tmp=tmpdir($package);
+       foreach my $type (qw{hourly daily weekly monthly}) {
+               my $cron=pkgfile($package,"cron.$type");
+               if ($cron) {
+                       if (! -d "$tmp/etc/cron.$type") {
+                               doit("install","-o",0,"-g",0,"-d","$tmp/etc/cron.$type");
+                       }
+                       doit("install",$cron,"$tmp/etc/cron.$type/".pkgfilename($package));
+               }
+       }
+       # Seperate because this needs to be mode 644.
+       my $cron=pkgfile($package,"cron.d");
+       if ($cron) {
+               if (! -d "$tmp/etc/cron.d") {
+                       doit("install","-o",0,"-g",0,"-d","$tmp/etc/cron.d");
+               }       
+               doit("install","-m",644,$cron,"$tmp/etc/cron.d/".pkgfilename($package));
+       }
+}
+
+=head1 SEE ALSO
+
+L<debhelper(7)>
+
+This program is a part of debhelper.
+
+=head1 AUTHOR
+
+Joey Hess <joeyh@debian.org>
+
+=cut