X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=dh_installcron;h=694e288cff4ec8ef9b2bee138ae28e6655fc8dc7;hb=e2a6d4cec4a7ee952cf6a7f250d80f1d75a38f95;hp=7db8cdc6a5d8d34a46452b5b1610e7b41f7b5c90;hpb=2cfd4c9cda59e11e29df58152fea76c1cfc696f6;p=debhelper.git diff --git a/dh_installcron b/dh_installcron index 7db8cdc..694e288 100755 --- a/dh_installcron +++ b/dh_installcron @@ -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 [S>] [B<--name=>I] + +=head1 DESCRIPTION + +B is a debhelper program that is responsible for installing +cron scripts. + +=head1 FILES + +=over 4 + +=item debian/I.cron.daily + +=item debian/I.cron.weekly + +=item debian/I.cron.monthly + +=item debian/I.cron.hourly + +=item debian/I.cron.d + +Installed into the appropriate F directory in the package +build directory. + +=back + +=head1 OPTIONS + +=over 4 + +=item B<--name=>I + +Look for files named F and install them as +F, 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 + +This program is a part of debhelper. + +=head1 AUTHOR + +Joey Hess + +=cut