]> git.pld-linux.org Git - packages/rsyslog.git/blobdiff - rsyslog.spec
- added dir
[packages/rsyslog.git] / rsyslog.spec
index 3a932808da6aa7ab4732d663442c1f7f1bc0eedf..4bcbb99660cd2a61be567f32850a231d012a5e6a 100644 (file)
@@ -1,3 +1,10 @@
+#
+# Conditional build:
+%bcond_without gssapi          # Enable GSSAPI Kerberos 5 support
+%bcond_without  mysql          # Enable MySql database support 
+%bcond_without  pgsql          # Enable PostgreSQL database support
+%bcond_without snmp            # Enable SNMP support
+
 Summary:       Linux system and kernel logger
 Summary(de.UTF-8):     Linux-System- und Kerner-Logger
 Summary(es.UTF-8):     Registrador de log del sistema linux
@@ -6,50 +13,28 @@ Summary(pl.UTF-8):   Programy logujące zdarzenia w systemie i jądrze Linuksa
 Summary(pt_BR.UTF-8):  Registrador de log do sistema linux
 Summary(tr.UTF-8):     Linux sistem ve çekirdek kayıt süreci
 Name:          rsyslog
-Version:       3.11.0
+Version:       3.16.2
 Release:       0.1
-License:       GPL v2+
+License:       GPL v3
 Group:         Daemons
 Source0:       http://download.rsyslog.com/rsyslog/%{name}-%{version}.tar.gz
-# Source0-md5: e053094e8103165f98ddafe828f6ae4b
-#Source1:      syslog.conf
-#Source2:      syslog.init
-#Source3:      syslog.logrotate
-#Source4:      syslog.sysconfig
-#Source5:      klogd.init
-#Source6:      klogd.sysconfig
-#Source7:      syslogd-listfiles.sh
-#Source8:      syslogd-listfiles.8
+# Source0-md5: 568d0ad73a149974b9bcfcb9e64bfc0b
+Source1:       %{name}.init
+Source2:       %{name}.conf
+Source3:       %{name}.sysconfig
 URL:           http://www.rsyslog.com/
-BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-
-#%define               _exec_prefix    /
-#%define       _bindir         /usr/sbin
-#%define       _sbindir        /sbin
-
-%description
-Rsyslog is an enhanced multi-threaded syslogd supporting, among others,
-MySQL, syslog/tcp, RFC 3195, permitted sender lists, filtering on any
-message part, and fine grain output format control. It is quite compatible
-to stock sysklogd and can be used as a drop-in replacement. Its advanced
-features make it suitable for enterprise-class, encryption protected
-syslog relay chains while at the same time being very easy to setup for
-the novice user.
-
-%package -n syslog
-Summary:       Linux system logger
-Summary(de.UTF-8):     Linux-System-Logger
-Summary(pl.UTF-8):     Program logujący zdarzenia w systemie Linux
-License:       BSD
-Group:         Daemons
+%{?with_gssapi:BuildRequires: krb5-devel}
+%{?with_mysql:BuildRequires: mysql-devel}
+%{?with_snmp:BuildRequires: net-snmp-devel}
+%{?with_pgsql:BuildRequires: postgresql-devel}
 Requires(post):        fileutils
 Requires(post,preun):  /sbin/chkconfig
 Requires(post,preun):  rc-scripts >= 0.2.0
 Requires(postun):      /usr/sbin/groupdel
 Requires(postun):      /usr/sbin/userdel
-Requires(pre): /usr/lib/rpm/user_group.sh
 Requires(pre): /bin/id
 Requires(pre): /usr/bin/getgid
+Requires(pre): /usr/lib/rpm/user_group.sh
 Requires(pre): /usr/sbin/groupadd
 Requires(pre): /usr/sbin/useradd
 Requires(pre): /usr/sbin/usermod
@@ -65,22 +50,18 @@ Provides:   user(syslog)
 Obsoletes:     msyslog
 Obsoletes:     sysklogd
 Obsoletes:     syslog-ng
+BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-%description -n syslog
-This is the Linux system logging program. It is run as a daemon
-(background process) to log messages to different places. These are
-usually things like sendmail logs, security logs, and errors from
-other daemons.
-
-%description -n syslog -l pl.UTF-8
-Pakiet ten zawiera program, który jest uruchamiany jako demon i służy
-do logowania zdarzeń w systemie Linux. Same logi mogą być składowane w
-różnych miejscach (zdalnie i lokalnie). Przeważnie do logów trafiają
-informacje o odbieranej i wysyłanej poczcie np. z sendmaila, zdarzenia
-dotyczące bezpieczeństwa systemu, a także informacje o błędach z
-innych demonów.
-
-%package -n klogd
+%description
+Rsyslog is an enhanced multi-threaded syslogd supporting, among
+others, MySQL, syslog/tcp, RFC 3195, permitted sender lists, filtering
+on any message part, and fine grain output format control. It is quite
+compatible to stock sysklogd and can be used as a drop-in replacement.
+Its advanced features make it suitable for enterprise-class,
+encryption protected syslog relay chains while at the same time being
+very easy to setup for the novice user.
+
+%package klogd
 Summary:       Linux kernel logger
 Summary(de.UTF-8):     Linux-Kerner-Logger
 Summary(pl.UTF-8):     Program logujący zdarzenia w jądrze Linuksa
@@ -89,9 +70,9 @@ Requires(post,preun): /sbin/chkconfig
 Requires(post,preun):  rc-scripts >= 0.2.0
 Requires(postun):      /usr/sbin/groupdel
 Requires(postun):      /usr/sbin/userdel
-Requires(pre): /usr/lib/rpm/user_group.sh
 Requires(pre): /bin/id
 Requires(pre): /usr/bin/getgid
+Requires(pre): /usr/lib/rpm/user_group.sh
 Requires(pre): /usr/sbin/groupadd
 Requires(pre): /usr/sbin/useradd
 Requires(pre): /usr/sbin/usermod
@@ -99,31 +80,53 @@ Provides:   group(syslog)
 Provides:      user(syslog)
 Obsoletes:     sysklogd
 
-%description -n klogd
+%description klogd
 This is the Linux kernel logging program. It is run as a daemon
 (background process) to log messages from kernel.
 
-%description -n klogd -l pl.UTF-8
+%description -l pl.UTF-8
 Pakiet ten zawiera program, który jest uruchamiany jako demon i służy
 do logowania komunikatów jądra Linuksa.
 
+%package mysql
+Summary:       MySQL support for rsyslog
+Group:         Daemons
+Requires:      %{name} = %{version}-%{release}
+
+%description mysql
+The rsyslog-mysql package contains a dynamic shared object that will
+add MySQL database support to rsyslog.
+
+%package pgsql
+Summary:       PostgresSQL support for rsyslog
+Group:         Daemons
+Requires:      %{name} = %{version}-%{release}
+
+%description pgsql
+The rsyslog-pgsql package contains a dynamic shared object that will
+add PostgreSQL database support to rsyslog.
+
+%package gssapi
+Summary:       GSSAPI authentication and encryption support for rsyslog
+Group:         Daemons
+Requires:      %{name} = %{version}-%{release}
+
+%description gssapi
+The rsyslog-gssapi package contains the rsyslog plugins which support
+GSSAPI authentication and secure connections. GSSAPI is commonly used
+for Kerberos authentication.
+
 %prep
 %setup -q
-%patch0 -p1
-%patch1 -p1
-%patch2 -p1
-%patch3 -p1
-%patch4 -p1
-%patch5 -p1
-%patch6 -p1
-%patch7 -p1
-%patch8 -p1
 
 %build
-%{__make} \
-       CC="%{__cc}" \
-       OPTIMIZE="%{rpmcflags}" \
-       LDFLAGS="%{rpmldflags}"
+%configure \
+%{?with_gssapi:--enable-gssapi-krb5} \
+%{?with_mysql:--enable-mysql} \
+%{?with_pgsql:--enable-pgsql} \
+%{?with_snmp:--enable-snmp}
+
+%{__make}
 
 %install
 rm -rf $RPM_BUILD_ROOT
@@ -132,36 +135,24 @@ install -d $RPM_BUILD_ROOT/etc/{sysconfig,rc.d/init.d,logrotate.d} \
        $RPM_BUILD_ROOT/{dev,var/log}
 
 %{__make} install \
-       BINDIR=$RPM_BUILD_ROOT%{_sbindir} \
-       MANDIR=$RPM_BUILD_ROOT%{_mandir}
-
-install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/syslog.conf
-
-install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/syslog
-install %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/syslog
-install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/syslog
-install %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/klogd
-install %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/klogd
+       DESTDIR=$RPM_BUILD_ROOT
 
-install %{SOURCE7} $RPM_BUILD_ROOT%{_bindir}/syslogd-listfiles
-install %{SOURCE8} $RPM_BUILD_ROOT%{_mandir}/man8
+install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/rsyslog
+install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/rsyslog.conf
+install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/rsyslog
+install redhat/rsyslog.log $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/rsyslog
 
 for n in debug kernel maillog messages secure syslog user spooler lpr daemon
 do
        > $RPM_BUILD_ROOT/var/log/$n
 done
 
-echo .so sysklogd.8 > $RPM_BUILD_ROOT%{_mandir}/man8/syslogd.8
-
-# our strip can't strip otherwise
-chmod u+w $RPM_BUILD_ROOT%{_sbindir}/{klogd,syslogd}
-
-%pre -n syslog
+%pre
 %groupadd -P syslog -g 18 syslog
 %useradd -P syslog -u 18 -g syslog -c "Syslog User" syslog
 %addusertogroup syslog logs
 
-%post -n syslog
+%post
 for n in /var/log/{cron,daemon,debug,kernel,lpr,maillog,messages,secure,spooler,syslog,user}; do
        if [ -f $n ]; then
                chown syslog:syslog $n
@@ -174,38 +165,38 @@ for n in /var/log/{cron,daemon,debug,kernel,lpr,maillog,messages,secure,spooler,
        fi
 done
 
-/sbin/chkconfig --add syslog
-%service syslog restart "syslog daemon"
-%service -q klogd restart
+/sbin/chkconfig --add %{name}
+%service syslog restart "%{name} daemon"
+%service -q %{name}-klogd restart
 
-%preun -n syslog
+%preun
 if [ "$1" = "0" ]; then
-       %service syslog stop
-       /sbin/chkconfig --del syslog
+       %service %{name} stop
+       /sbin/chkconfig --del %{name}
 fi
 
-%postun -n syslog
+%postun
 if [ "$1" = "0" ]; then
        %userremove syslog
        %groupremove syslog
 fi
 
-%pre -n klogd
+%pre klogd
 %groupadd -P klogd -g 18 syslog
 %useradd -P klogd -u 18 -g syslog -c "Syslog User" syslog
 %addusertogroup syslog logs
 
-%post -n klogd
-/sbin/chkconfig --add klogd
-%service klogd restart "kernel logger daemon"
+%post klogd
+/sbin/chkconfig --add %{name}-klogd
+%service %{name}-klogd restart "kernel logger daemon"
 
-%preun -n klogd
+%preun klogd
 if [ "$1" = "0" ]; then
-       %service klogd stop
-       /sbin/chkconfig --del klogd
+       %service %{name}-klogd stop
+       /sbin/chkconfig --del %{name}-klogd
 fi
 
-%postun -n klogd
+%postun klogd
 if [ "$1" = "0" ]; then
        %userremove syslog
        %groupremove syslog
@@ -221,34 +212,57 @@ if [ -f /etc/syslog.conf.rpmsave ]; then
        echo "Original file from package is available as /etc/syslog.conf.rpmnew"
 fi
 
-%triggerpostun -n syslog -- syslog < 1.4.1-17.7
-# remove any -a option from ADDITIONAL_SOCK
-cp -f /etc/sysconfig/syslog{,.rpmsave}
-sed -i -e '/^ADDITIONAL_SOCK=/s/-a //g' /etc/sysconfig/syslog
-
-# reset config file permission, so people running with syslog uid can
-# survive syslog reload
-chgrp syslog /etc/syslog.conf
-
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-%files -n syslog
+%files
 %defattr(644,root,root,755)
-%doc ANNOUNCE NEWS README* CHANGES
-%attr(640,root,syslog) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.conf
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/syslog
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/syslog
-%attr(754,root,root) /etc/rc.d/init.d/syslog
+%doc AUTHORS ChangeLog NEWS README
+%attr(640,root,syslog) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rsyslog.conf
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rsyslog
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/rsyslog
+%attr(754,root,root) /etc/rc.d/init.d/rsyslog
 %attr(640,root,root) %ghost /var/log/*
-%attr(755,root,root) %{_sbindir}/syslogd
-%attr(755,root,root) %{_bindir}/syslogd-listfiles
+%attr(755,root,root) %{_sbindir}/rsyslogd
+%dir %{_libdir}/rsyslog
+%{_libdir}/rsyslog/omsnmp.so
+%{_libdir}/rsyslog/imklog.so
+%{_libdir}/rsyslog/immark.so
+%{_libdir}/rsyslog/imtcp.so
+%{_libdir}/rsyslog/imudp.so
+%{_libdir}/rsyslog/imuxsock.so
+%{_libdir}/rsyslog/lmgssutil.so
+%{_libdir}/rsyslog/lmnet.so
+%{_libdir}/rsyslog/lmregexp.so
+%{_libdir}/rsyslog/lmtcpclt.so
+%{_libdir}/rsyslog/lmtcpsrv.so
+%{_libdir}/rsyslog/omtesting.so
 %{_mandir}/man5/*
-%{_mandir}/man8/sys*
+%{_mandir}/man8/*
+
+%files klogd
+%defattr(644,root,root,755)
+#%attr(754,root,root) /etc/rc.d/init.d/klogd
+#%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/klogd
+#%attr(755,root,root) %{_sbindir}/klogd
+
+%if %{with mysql}
+%files mysql
+%defattr(644,root,root,755)
+%doc plugins/ommysql/createDB.sql
+%{_libdir}/rsyslog/ommysql.so
+%endif
+
+%if %{with pgsql}
+%files pgsql
+%defattr(644,root,root,755)
+%doc plugins/ompgsql/createDB.sql
+%{_libdir}/rsyslog/ompgsql.so
+%endif
 
-%files -n klogd
+%if %{with gssapi}
+%files gssapi
 %defattr(644,root,root,755)
-%attr(754,root,root) /etc/rc.d/init.d/klogd
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/klogd
-%attr(755,root,root) %{_sbindir}/klogd
-%{_mandir}/man8/klog*
+%{_libdir}/rsyslog/imgssapi.so
+%{_libdir}/rsyslog/omgssapi.so
+%endif
This page took 0.185104 seconds and 4 git commands to generate.