commit 9434e3d08b56d65dc7cd7a669fdde93ab0643a2b Author: Jay Larson Date: Sat Jun 9 16:10:30 2018 -0500 First check in diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..9557fcd --- /dev/null +++ b/Makefile @@ -0,0 +1,143 @@ +# This file is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License version 2 as +# published by the Free Software Foundation here: +# (http://www.gnu.org/licenses/gpl-2.0.html) +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# Some, but not all of variables are required. The following list +# describes the required variables: +# +# * URL: The main website of the upstream project +# * REPO: The location of the package on the source pacakge +# server. This might be one of core, main, dev, or +# perhaps others. +# * BRIEF: Short description, should be 50 chars or less +# * SNAPVER: This is the package version. When a package is +# changed, but no changes are made to the source code +# this value should be increased. This would include +# things like usher being modified, changes to default +# configuration files, file permissions, etc. +# * ARCHIVE: The default commands that set this variable should +# work in most cases, but in some cases it may need +# to be modified. This variable should contain the +# path to the source of the package (./SRC/filename) +# * TYPE: This is probably not really needed due to the +# ability of gnu tar to figure it out on its own. +# Should probably be removed at some point. +# * SRCDIR: This is the name of the source directory after the +# package source is extracted. The default command +# should in most cases set this automatically. +# * PATCHDIR: This directory should be ./SRC/patches and is +# required, whether or not patches are used. +# * VERSION: This should be set automatically based on the +# version string in the source directory and SNAPVER. +# The default command here should work in many cases, +# but certain packages may need to use a different +# method. +# +# Variables that aren't required: +# +# * ARCH: This should be populated for packages which contain +# compiled binaries. If it is not populated the ARCH +# will be set to 'noarch'. +# * DEPENDS: If any other packages are required for this package +# to function then they need to be listed here, +# preferably in alphabetical order. +# * BUILDDEPS: Any package beyond packages from the core repo +# need to be listed here. The idea is that we +# can automate building and testing packages +# from clean core systems. The core repo is +# intended to include only the base minimum +# packages which provide a functional system. +# * SRCPKG: By default this is populated automatically with +# the name of the package (current directory). If +# the source package is used to generate multiple +# packages then this variable should contain the +# name of the git repo that tracks the source. +# * DESC: This is to be used to provide a longer description +# of the package. + +ARCH = x86_64 +DEPENDS = glibc,popt +BUILDDEPS = popt-dev +SRCPKG = +URL = https://github.com/logrotate/logrotate +REPO = main +BRIEF = Manages rotation of log files +DESC = The logrotate utility is designed to simplify the administration of \ +log files on a system which generates a lot of log files. +SNAPVER = 0 + +ARCHIVE := $(PWD)/SRC/$(shell ls SRC|egrep '(bz2|gz|tar|xz)$$'|tail -1) +TYPE := $(shell file -ib $(ARCHIVE)|cut -d';' -f1|tr -d '\n') +SRCDIR := $(shell tar -tf $(ARCHIVE)|head -1|sed 's/\/.*//') +PATCHDIR := $(PWD)/SRC/patches +VERSION := $(shell echo $(SRCDIR)|egrep -o '\-[0-9].*'|sed 's/^-//')-$(SNAPVER) + +include /usr/share/snap/Makefile.snaplinux + +$(SRCDIR)/configure: $(ARCHIVE) + @if [ '$(TYPE)' == 'application/x-bzip2' ]; then \ + tar -jxf $(ARCHIVE); \ + elif [ '$(TYPE)' == 'application/x-gzip' ]; then \ + tar -zxf $(ARCHIVE); \ + elif [ '$(TYPE)' == 'application/x-tar' ]; then \ + tar -xf $(ARCHIVE); \ + elif [ '$(TYPE)' == 'application/x-xz' ]; then \ + tar -xf $(ARCHIVE); \ + else \ + echo 'Unable to determine archive type'; \ + exit 1; \ + fi + @touch $(SRCDIR)/configure + +$(SRCDIR)/config.log: $(SRCDIR)/configure + @cd $(SRCDIR) && \ + for patch in `find $(PATCHDIR) -name \*.patch|sort`; do \ + patch --verbose -Np1 -i $$patch; \ + done + @cd $(SRCDIR); \ + ./configure \ + --prefix=/usr \ + --build=x86_64-snap-linux-gnu \ + --host=x86_64-snap-linux-gnu \ + --target=x86_64-snap-linux-gnu + +# binfile should be replaced with a file generated by the +# make process. It won't really break anything if not +# set to a valid file, but the source make process will +# be re-executed even if it isn't necessary + +$(SRCDIR)/logrotate: $(SRCDIR)/config.log + @cd $(SRCDIR) && make + +$(ROOT): $(SRCDIR)/logrotate + @if [ -d $(ROOT) ]; then \ + touch $(ROOT); \ + else \ + mkdir -v $(ROOT); \ + fi + + @cd $(SRCDIR) && make install DESTDIR=$(ROOT) && \ + install -v -d -m 0755 $(ROOT)/etc/cron.daily && \ + install -v -d -m 0755 $(ROOT)/etc/logrotate.d && \ + install -v -m 0644 $(SNAPDIR)/logrotate.conf \ + $(ROOT)/etc/logrotate.conf && \ + install -v -m 0755 $(SNAPDIR)/logrotate.cron.daily \ + $(ROOT)/etc/cron.daily/logrotate + +test: $(ROOT) + @cd $(SRCDIR); \ + make check + +clean: + @rm -rvf $(ROOT) \ + $(SNAPINFO) \ + $(MANIFEST) \ + $(FILES) \ + $(SRCDIR) + diff --git a/SNAP/README b/SNAP/README new file mode 100644 index 0000000..cb756b1 --- /dev/null +++ b/SNAP/README @@ -0,0 +1,5 @@ +This is the directory where the manifest, snapinfo, +and files.tar.gz files will be created. It is also +where the usher file should be placed if it is +required by the package. Any other files that need +to be included could also be placed here. diff --git a/SNAP/logrotate.conf b/SNAP/logrotate.conf new file mode 100644 index 0000000..4bd60ab --- /dev/null +++ b/SNAP/logrotate.conf @@ -0,0 +1,32 @@ +# see "man logrotate" for details +# rotate log files weekly +weekly + +# keep 4 weeks worth of backlogs +rotate 4 + +# create new (empty) log files after rotating old ones +create + +# uncomment this if you want your log files compressed +#compress + +# packages drop log rotation information into this directory +include /etc/logrotate.d + +# no packages own wtmp, or btmp -- we'll rotate them here +/var/log/wtmp { + missingok + monthly + create 0664 root utmp + rotate 1 +} + +/var/log/btmp { + missingok + monthly + create 0660 root utmp + rotate 1 +} + +# system-specific logs may be configured here diff --git a/SNAP/logrotate.cron.daily b/SNAP/logrotate.cron.daily new file mode 100644 index 0000000..f4f56a9 --- /dev/null +++ b/SNAP/logrotate.cron.daily @@ -0,0 +1,4 @@ +#!/bin/sh + +test -x /usr/sbin/logrotate || exit 0 +/usr/sbin/logrotate /etc/logrotate.conf diff --git a/SRC/logrotate-3.14.0.tar.xz b/SRC/logrotate-3.14.0.tar.xz new file mode 100644 index 0000000..36a7fac Binary files /dev/null and b/SRC/logrotate-3.14.0.tar.xz differ diff --git a/SRC/logrotate-3.14.0.tar.xz.asc b/SRC/logrotate-3.14.0.tar.xz.asc new file mode 100644 index 0000000..2f63d46 --- /dev/null +++ b/SRC/logrotate-3.14.0.tar.xz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +iQIzBAABCAAdFiEEmSqW4HUFbnnNghT5hz2zdXKjezYFAlqiwy0ACgkQhz2zdXKj +ezamtQ//U2JtlCZg0Pbtsdab+UgT2Gaiw6/CAZxuIVA+H4T/EicXo5QGLvpxeEWI +GyZISzi7VpCJ70RGnylNV0l/NpaM/2vWhnoFPGJ5nuOg4HEs6b08TBU8ypTZljm/ +y/McnAZcv1h2rgnJALPmmEA2K41TEJtP826Xqa3nXTML9E/kRBTQLnhtnmqI4VOl +CHJ8hiRoYC5eIC+WhgVd29aPBIOGqrxE/RvXtWVNXunL72SaTWo81nUqw8EY9+51 +wGj7qMqazwaJbD3z1jEHvXELPf483FvnjgbXuW71HMNu1Kj2GhaBBmQg56Vi7tt9 +8DL/UofqoJ1mChx6aXpRWRybStRFAQQzh85B3ds6/bXhkoXPB/+jzf8zOrnl0bD3 +mQHhE7I/tUu7L+wGI6a5e2Rb4W6551YTFFWRdM8Rst7hVO5XrQHioKdqjvLE9c7z +QKSYuEscu90M2EgqfmXAdzWkXVPPrixsVbPhGxmqoqzmZEY8iv8JHrTxqPCvq4p8 +1aN8vjAUfuX8gCcDlw95+G5KvhLDJUFSY9cYCJtGKFb//K5HcJMwUHjoV/fizmAE +EE29HkB9oyZpvRz6J+ohcEMhc7HSitGhhQRydEEShKo1ib0bsVbIN9hLvcoCCTEs +0Vm4lGHAc1XCfRPyN7bhyGz32RNxUp1A/rZyacdUSNX1Kp7duIw= +=9nIV +-----END PGP SIGNATURE----- diff --git a/SRC/patches/README b/SRC/patches/README new file mode 100644 index 0000000..976577a --- /dev/null +++ b/SRC/patches/README @@ -0,0 +1,3 @@ +Place any patch files here and preface each with a +number indicating the order of execution. Patch +files are expected to use a .patch extension.