Major infrastructure changes, part 2.

* Moved helpers, common and triggers dirs into xbps-src, where
  they belong.
* Renamed the templates dir to srcpkgs, it was so redundant before.
* Make it possible to add subpkgs with no restriction in names, for
  example udev now has a subpkgs called "libgudev". Previously
  subpkgs were named "${sourcepkg}-${pkgname}".
* xbps-src: changed to look for template files in current directory.
  That means that most arguments from the targets have been removed.
* xbps-src: added a reinstall target, to remove + install.
* xbps-src: do not overwrite binpkgs by default, skip them.

And more that I forgot because it's a mega-commit that I've been
working for some days already...

--HG--
extra : convert_revision : 0f466878584d1e6895d2a234f07ea1b2d1e61b3e
This commit is contained in:
Juan RP
2009-11-22 08:31:44 +01:00
parent 3c58e3ad40
commit 85cc462e1d
1305 changed files with 719 additions and 654 deletions

View File

@@ -0,0 +1,5 @@
#!/bin/sh
#
# Update anacron time stamps.
anacron -u cron.daily

View File

@@ -0,0 +1,5 @@
#!/bin/sh
#
# Update anacron time stamps.
anacron -u cron.monthly

View File

@@ -0,0 +1,5 @@
#!/bin/sh
#
# Update anacron time stamps.
anacron -u cron.weekly

View File

@@ -0,0 +1,15 @@
#!/sbin/runscript
#
depend()
{
use logger
need clock hostname
}
start()
{
ebegin "Starting anacron"
/usr/sbin/anacron -s >> /var/log/cron 2>&1
eend $?
}

View File

@@ -0,0 +1,7 @@
# /etc/anacrontab example
SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
# format: period delay job-identifier command
1 5 cron.daily run-parts /etc/cron.daily
7 10 cron.weekly run-parts /etc/cron.weekly
30 15 cron.monthly run-parts /etc/cron.monthly

44
srcpkgs/anacron/template Normal file
View File

@@ -0,0 +1,44 @@
# Template file for 'anacron'
pkgname=anacron
version=2.3
distfiles="${SOURCEFORGE_SITE}/$pkgname/$pkgname-$version.tar.gz"
build_style=gnu_makefile
make_install_args="PREFIX=$XBPS_DESTDIR/$pkgname-$version
MANDIR=$XBPS_DESTDIR/$pkgname-$version/usr/share/man"
short_desc="cron-like program that doesn't go by time"
maintainer="Juan RP <xtraeme@gmail.com>"
checksum=5ceee6f22cd089bdaf1c0841200dbe5726babaf9e2c432bb17c1fc95da5ca99f
long_desc="
Anacron is a periodic command scheduler. It executes commands at intervals
specified in days. Unlike cron, it does not assume that the system is
running continuously. It can therefore be used to control the execution
of daily, weekly and monthly jobs (or anything with a period of n days),
on systems that don't run 24 hours a day. When installed and configured
properly, Anacron will make sure that the commands are run at the specified
intervals as closely as machine-uptime permits."
keep_empty_dirs=yes
openrc_services="anacrond default"
Add_dependency full glibc
Add_dependency full bash
Add_dependency full run-parts
pre_build()
{
sed -i 's/const int isleap;/int isleap;/' $wrksrc/gregor.c
}
post_install()
{
install -d ${DESTDIR}/etc/cron.daily ${DESTDIR}/etc/cron.weekly \
${DESTDIR}/etc/cron.monthly ${DESTDIR}/etc/init.d
install -m755 ${FILESDIR}/00anacron.daily \
${DESTDIR}/etc/cron.daily/00anacron
install -m755 ${FILESDIR}/00anacron.weekly \
${DESTDIR}/etc/cron.weekly/00anacron
install -m755 ${FILESDIR}/00anacron.monthly \
${DESTDIR}/etc/cron.monthly/00anacron
install -m644 ${FILESDIR}/anacrontab ${DESTDIR}/etc
install -m755 ${FILESDIR}/anacrond.rc ${DESTDIR}/etc/init.d/anacrond
}