+# TODO
+# - update paths in manuals (create .in files and send upstream)
+# - make /etc/pam.d independant of sysconfdir (configure-able option and send upstream)
+# - https://fedorahosted.org/cronie/changeset/272c4a5c417bfa6e04148fc35a4fe4c6956b17e1
+# should we follow it too? our pam contains cron.{allow,deny} listfile rules,
+# cronie itself checks these files so safe to drop?
#
# Conditional build:
+%bcond_without inotify # without inotify support
+%if "%{pld_release}" == "ac"
+%bcond_with selinux # without SELinux support
+%bcond_with audit # without audit support
+%else
%bcond_without selinux # without SELinux support
-#
+%bcond_without audit # without audit support
+%endif
+
Summary: Cron daemon for executing programs at set times
Name: cronie
-Version: 1.4.1
-Release: 2
-License: MIT and BSD and GPLv2
+Version: 1.4.3
+Release: 1
+License: MIT and BSD and GPL v2
Group: Daemons
-Source0: %{name}-%{version}.tar.gz
-# Source0-md5: 9c089d2035b9fa8263bc71da3eb31cdd
+Source0: https://fedorahosted.org/releases/c/r/cronie/%{name}-%{version}.tar.gz
+# Source0-md5: 2393b3e5828fc09d9acf04dfd7796ab9
Source1: %{name}.init
Source2: cron.logrotate
Source3: cron.sysconfig
Source4: %{name}.crontab
Source5: %{name}.pam
+Patch0: inotify-nosys.patch
+Patch1: %{name}-nosyscrontab.patch
+Patch2: sendmail-path.patch
URL: https://fedorahosted.org/cronie/
-BuildRequires: audit-libs-devel
+%{?with_audit:BuildRequires: audit-libs-devel}
+BuildRequires: autoconf
+BuildRequires: automake
%{?with_selinux:BuildRequires: libselinux-devel}
BuildRequires: pam-devel
+BuildRequires: rpm >= 4.4.9-56
BuildRequires: rpmbuild(macros) >= 1.268
Requires(post): fileutils
Requires(post,preun): /sbin/chkconfig
-Requires(post,preun): rc-scripts
Requires(postun): /usr/sbin/groupdel
Requires(pre): /usr/bin/getgid
Requires(pre): /usr/sbin/groupadd
Requires: /bin/run-parts
Requires: /sbin/chkconfig
Requires: psmisc >= 20.1
-Requires: rc-scripts
+Requires: rc-scripts >= 0.4.0.19
+%{?with_inotify:Requires: uname(release) >= 2.6.13}
Provides: crondaemon
Provides: crontabs = 1.7
Provides: group(crontab)
+%if "%{pld_release}" == "th"
Provides: vixie-cron = 4:4.4
+%endif
Obsoletes: crondaemon
Obsoletes: crontabs
+%if "%{pld_release}" == "th"
Obsoletes: vixie-cron <= 4:4.3
+%endif
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
%prep
%setup -q
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
%build
+%{__aclocal}
+%{__autoconf}
+%{__autoheader}
+%{__automake}
%configure \
- SYSCRONTAB=/etc/cron.d/crontab \
+ SYSCRONTAB=/etc/crontab \
SYS_CROND_DIR=/etc/cron.d \
--sysconfdir=/etc/cron \
--with-pam \
- --with%{?!with_selinux:out}-selinux \
- --with-audit \
- --with-inotify \
+ --with%{!?with_selinux:out}-selinux \
+ --with%{!?with_audit:out}-audit \
+ --with%{!?with_inotify:out}-inotify \
--enable-anacron
%{__make}
$RPM_BUILD_ROOT%{_sysconfdir}/{cron,cron.{d,hourly,daily,weekly,monthly},pam.d}
%{__make} install \
+ pamdir=/etc/pam.d \
DESTDIR=$RPM_BUILD_ROOT
-install contrib/0anacron $RPM_BUILD_ROOT/etc/cron.hourly/0anacron
-
-install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/crond
-install %{SOURCE2} $RPM_BUILD_ROOT/etc/logrotate.d/cron
-install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/cron
-install %{SOURCE4} $RPM_BUILD_ROOT/etc/cron.d/crontab
-install %{SOURCE5} $RPM_BUILD_ROOT/etc/pam.d/crond
-
-for a in fi fr id ja ko pl; do
- if test -f $a/man1/crontab.1; then
- install -d $RPM_BUILD_ROOT%{_mandir}/$a/man1
- install $a/man1/crontab.1 $RPM_BUILD_ROOT%{_mandir}/$a/man1
- fi
- if test -f $a/man5/crontab.5; then
- install -d $RPM_BUILD_ROOT%{_mandir}/$a/man5
- install $a/man5/crontab.5 $RPM_BUILD_ROOT%{_mandir}/$a/man5
- fi
- if test -f $a/man8/cron.8; then
- install -d $RPM_BUILD_ROOT%{_mandir}/$a/man8
- install $a/man8/cron.8 $RPM_BUILD_ROOT%{_mandir}/$a/man8
- fi
-done
+install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/crond
+cp -a contrib/0anacron $RPM_BUILD_ROOT/etc/cron.hourly/0anacron
+cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/logrotate.d/cron
+cp -a %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/cron
+cp -a %{SOURCE4} $RPM_BUILD_ROOT/etc/cron.d/crontab
+cp -a %{SOURCE5} $RPM_BUILD_ROOT/etc/pam.d/crond
touch $RPM_BUILD_ROOT/var/log/cron
%groupadd -g 117 -r -f crontab
%post
+if [ ! -f /var/log/cron ]; then
+ umask 027
+ touch /var/log/cron
+ chgrp crontab /var/log/cron
+ chmod 660 /var/log/cron
+fi
/sbin/chkconfig --add crond
-umask 027
-touch /var/log/cron
-chgrp crontab /var/log/cron
-chmod 660 /var/log/cron
%service crond restart "Cron Daemon"
%preun