diff options
author | root <root@rshg054.dnsready.net> | 2011-08-23 23:14:30 +0000 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2011-08-23 23:14:30 +0000 |
commit | 9254c2bc6500471b22eead69781ddef84f87e2bf (patch) | |
tree | c4afa4b28422f98d69f9b2594705e164e8c3049c /testing/logrotate | |
parent | 64e290184042563a240e2d6d15c02e06703d00ee (diff) |
Tue Aug 23 23:14:30 UTC 2011
Diffstat (limited to 'testing/logrotate')
-rw-r--r-- | testing/logrotate/PKGBUILD | 48 | ||||
-rw-r--r-- | testing/logrotate/logrotate-3.8.0-noasprintf.patch | 55 | ||||
-rw-r--r-- | testing/logrotate/logrotate.conf | 31 | ||||
-rwxr-xr-x | testing/logrotate/logrotate.cron.daily | 3 |
4 files changed, 137 insertions, 0 deletions
diff --git a/testing/logrotate/PKGBUILD b/testing/logrotate/PKGBUILD new file mode 100644 index 000000000..eac5714c2 --- /dev/null +++ b/testing/logrotate/PKGBUILD @@ -0,0 +1,48 @@ +# $Id: PKGBUILD 136073 2011-08-22 13:06:08Z allan $ +# Maintainer: Aaron Griffin <aaron@archlinux.org> +# Contributor: Judd Vinet <jvinet@zeroflux.org> + +pkgname=logrotate +pkgver=3.8.0 +pkgrel=2 +pkgdesc="Rotates system logs automatically" +arch=('i686' 'x86_64') +url="https://fedorahosted.org/logrotate/" +license=('GPL') +groups=('base') +depends=('popt' 'cron' 'gzip') +backup=('etc/logrotate.conf') +source=(https://fedorahosted.org/releases/l/o/logrotate/logrotate-${pkgver}.tar.gz + logrotate-3.8.0-noasprintf.patch + logrotate.conf + logrotate.cron.daily) +md5sums=('590f77c13077a4c384dbec7ca9c5f242' + '624801859beb9abe7958b6392c854d72' + '462a5f364717461537eb2ae6394ad23e' + '8e23d5d4cc29b1e055b24df87e355cdc') + +build() { + cd "$srcdir/${pkgname}-${pkgver}" + + patch -Np1 -i "$srcdir"/logrotate-3.8.0-noasprintf.patch + + sed -i 's|#define DEFAULT_MAIL_COMMAND .*|#define DEFAULT_MAIL_COMMAND "/usr/bin/mail"|'\ + config.h + sed -i "s|CFLAGS = -Wall|CFLAGS = -Wall $CFLAGS|" Makefile + sed -i 's|$(BASEDIR)/man|$(BASEDIR)/share/man|' Makefile + + make +} + +check() { + cd "$srcdir/${pkgname}-${pkgver}" + make test +} + +package() { + cd "$srcdir/${pkgname}-${pkgver}" + make PREFIX="$pkgdir" install + + install -Dm644 "$srcdir/logrotate.conf" "$pkgdir/etc/logrotate.conf" + install -Dm744 "$srcdir/logrotate.cron.daily" "$pkgdir/etc/cron.daily/logrotate" +} diff --git a/testing/logrotate/logrotate-3.8.0-noasprintf.patch b/testing/logrotate/logrotate-3.8.0-noasprintf.patch new file mode 100644 index 000000000..b9464e230 --- /dev/null +++ b/testing/logrotate/logrotate-3.8.0-noasprintf.patch @@ -0,0 +1,55 @@ +diff '--exclude-from=/home/dang/.scripts/diffrc' -up -ruN logrotate-3.8.0.orig/config.c logrotate-3.8.0/config.c +--- logrotate-3.8.0.orig/config.c 2011-06-21 04:12:02.000000000 -0400 ++++ logrotate-3.8.0/config.c 2011-07-12 13:47:36.274319050 -0400 +@@ -41,39 +41,6 @@ + #endif + #endif + +-#if !defined(asprintf) +-#include <stdarg.h> +- +-int asprintf(char **string_ptr, const char *format, ...) +-{ +- va_list arg; +- char *str; +- int size; +- int rv; +- +- va_start(arg, format); +- size = vsnprintf(NULL, 0, format, arg); +- size++; +- va_start(arg, format); +- str = malloc(size); +- if (str == NULL) { +- va_end(arg); +- /* +- * Strictly speaking, GNU asprintf doesn't do this, +- * but the caller isn't checking the return value. +- */ +- fprintf(stderr, "failed to allocate memory\\n"); +- exit(1); +- } +- rv = vsnprintf(str, size, format, arg); +- va_end(arg); +- +- *string_ptr = str; +- return (rv); +-} +- +-#endif +- + enum { + STATE_DEFAULT = 2, + STATE_SKIP_LINE = 4, +diff '--exclude-from=/home/dang/.scripts/diffrc' -up -ruN logrotate-3.8.0.orig/logrotate.h logrotate-3.8.0/logrotate.h +--- logrotate-3.8.0.orig/logrotate.h 2011-06-21 04:12:02.000000000 -0400 ++++ logrotate-3.8.0/logrotate.h 2011-07-12 13:47:38.949285608 -0400 +@@ -66,8 +66,5 @@ extern int numLogs; + extern int debug; + + int readAllConfigPaths(const char **paths); +-#if !defined(asprintf) +-int asprintf(char **string_ptr, const char *format, ...); +-#endif + + #endif diff --git a/testing/logrotate/logrotate.conf b/testing/logrotate/logrotate.conf new file mode 100644 index 000000000..88b4935cd --- /dev/null +++ b/testing/logrotate/logrotate.conf @@ -0,0 +1,31 @@ +# see "man logrotate" for details +# rotate log files weekly +weekly + +# keep 4 weeks worth of backlogs +rotate 4 + +# restrict maximum size of log files +#size 20M + +# create new (empty) log files after rotating old ones +create + +# uncomment this if you want your log files compressed +#compress + +# Logs are moved into directory for rotation +# olddir /var/log/archive + +# Ignore pacman saved files +tabooext + .pacorig .pacnew .pacsave + +# Arch packages drop log rotation information into this directory +include /etc/logrotate.d + +/var/log/wtmp { + monthly + create 0664 root root + rotate 1 +} + diff --git a/testing/logrotate/logrotate.cron.daily b/testing/logrotate/logrotate.cron.daily new file mode 100755 index 000000000..e8ab921ea --- /dev/null +++ b/testing/logrotate/logrotate.cron.daily @@ -0,0 +1,3 @@ +#!/bin/sh + +/usr/sbin/logrotate /etc/logrotate.conf |