]> git.pld-linux.org Git - packages/rsyslog.git/blobdiff - rsyslog.spec
- rebuild with net-snmp 5.8
[packages/rsyslog.git] / rsyslog.spec
index 0f61c9f7546a24fc9bd37e6fbd0edb19cda83331..0f7f069ec4000fa31b6f42e06682b25fc6dff51e 100644 (file)
@@ -1,10 +1,13 @@
+# TODO
+# - without gssapi still generates dep on heimdal-libs
 #
 # Conditional build:
+%bcond_without dbi             # database support via libdbi
 %bcond_without gssapi          # GSSAPI Kerberos 5 support
-%bcond_without mysql           # MySQL database support 
+%bcond_without mysql           # MySQL database support
 %bcond_without pgsql           # PostgreSQL database support
 %bcond_without snmp            # 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
@@ -13,22 +16,30 @@ 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:       5.6.3
-Release:       1
+Version:       8.26.0
+Release:       3
 License:       GPL v3+
 Group:         Daemons
 Source0:       http://www.rsyslog.com/files/download/rsyslog/%{name}-%{version}.tar.gz
-# Source0-md5: 4fd22c5a4d9442b16f6717c65446b718
+# Source0-md5: abe20d1621d1e73326c08b964a556ed7
 Source1:       %{name}.init
 Source2:       %{name}.conf
 Source3:       %{name}.sysconfig
 Source4:       %{name}.logrotate
+Patch0:                rsyslog-systemd.patch
 URL:           http://www.rsyslog.com/
 %{?with_gssapi:BuildRequires:  heimdal-devel}
+BuildRequires: libdbi-devel
 %{?with_mysql:BuildRequires:   mysql-devel}
 %{?with_snmp:BuildRequires:    net-snmp-devel}
 BuildRequires: pkgconfig
 %{?with_pgsql:BuildRequires:   postgresql-devel}
+BuildRequires: libestr-devel >= 0.1.9
+BuildRequires: libfastjson-devel >= 0.99.3
+BuildRequires: liblogging-stdlog-devel >= 1.0.3
+BuildRequires: libnet-devel
+BuildRequires: gnutls-devel
+BuildRequires: rpmbuild(macros) >= 1.626
 Requires(post):        fileutils
 Requires(post,preun):  /sbin/chkconfig
 Requires(post,preun):  rc-scripts >= 0.2.0
@@ -40,18 +51,25 @@ Requires(pre):      /usr/lib/rpm/user_group.sh
 Requires(pre): /usr/sbin/groupadd
 Requires(pre): /usr/sbin/useradd
 Requires(pre): /usr/sbin/usermod
+Requires(post,preun,postun):   systemd-units >= 38
 Requires(triggerpostun):       sed >= 4.0
 # for vservers we don't need klogd and syslog works without klogd
 # (just it doesn't log kernel buffer into syslog)
 # Requires:    klogd
 Requires:      logrotate >= 3.2-3
 Requires:      psmisc >= 20.1
+Requires:      systemd-units >= 38
 Provides:      group(syslog)
+Provides:      service(klogd)
+Provides:      service(syslog)
 Provides:      syslogdaemon
 Provides:      user(syslog)
 Obsoletes:     msyslog
+Obsoletes:     rsyslog-systemd
 Obsoletes:     sysklogd
 Obsoletes:     syslog-ng
+Conflicts:     cronie < 1.5.0-3
+Conflicts:     fcron < 3.1.2-5
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
@@ -73,33 +91,6 @@ odpowiednim do produkcyjnych, szyfrowanych łańcuchów przekazywania
 logów, a jednocześnie jest przy tym łatwy do skonfigurowania dla
 początkującego użytkownika.
 
-%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
-Group:         Daemons
-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): /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
-Provides:      group(syslog)
-Provides:      user(syslog)
-Obsoletes:     sysklogd
-
-%description klogd
-This is the Linux kernel logging program. It is run as a daemon
-(background process) to log messages from kernel.
-
-%description klogd -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
 Summary(pl.UTF-8):     Obsługa MySQL-a do rsysloga
@@ -144,16 +135,80 @@ Pakiet rsyslog-gssapi zawiera wtyczki rsysloga obsługujące
 uwierzytelnianie GSSAPI i bezpieczne połączenia. GSSAPI jest
 powszechnie używane do uwierzytelniania Kerberos.
 
+%package dbi
+Summary:       libdbi database support for rsyslog
+Group:         Daemons
+Requires:      %{name} = %{version}-%{release}
+
+%description dbi
+This module supports a large number of database systems via
+libdbi. Libdbi abstracts the database layer and provides drivers for
+many systems. Drivers are available via the libdbi-drivers project.
+
+%package udpspoof
+Summary:       Provides the omudpspoof module
+Group:         Daemons
+Requires:      %{name} = %{version}-%{release}
+
+%description udpspoof
+This module is similar to the regular UDP forwarder, but permits to
+spoof the sender address. Also, it enables to circle through a number
+of source ports.
+
+%package snmp
+Summary:       SNMP protocol support for rsyslog
+Group:         Daemons
+Requires:      %{name} = %{version}-%{release}
+
+%description snmp
+The rsyslog-snmp package contains the rsyslog plugin that provides the
+ability to send syslog messages as SNMPv1 and SNMPv2c traps.
+
+%package gnutls
+Summary:       TLS protocol support for rsyslog
+Group:         Daemons
+Requires:      %{name} = %{version}-%{release}
+
+%description gnutls
+The rsyslog-gnutls package contains the rsyslog plugins that provide the
+ability to receive syslog messages via upcoming syslog-transport-tls
+IETF standard protocol.
+
 %prep
 %setup -q
+%patch0 -p1
 
 %build
 %configure \
+       --disable-silent-rules \
+       --enable-gnutls \
+       --enable-imdiag \
        --enable-imfile \
+       --enable-impstats \
+       --enable-imptcp \
+       --enable-imtemplate \
+       --enable-mail \
+       --enable-mmsnmptrapd \
+       --enable-omdbalerting \
+       --enable-omprog \
+       --enable-omruleset \
+       --enable-omstdout \
+       --enable-omtemplate \
+       --enable-omudpspoof \
+       --enable-omuxsock \
+       --enable-pmaixforwardedfrom \
+       --enable-pmcisconames \
+       --enable-pmlastmsg \
+       --enable-pmrfc3164sd \
+       --enable-pmsnare \
+       --enable-smcustbindcdr \
+       --enable-unlimited-select \
        %{?with_gssapi:--enable-gssapi-krb5} \
        %{?with_mysql:--enable-mysql} \
        %{?with_pgsql:--enable-pgsql} \
-       %{?with_snmp:--enable-snmp}
+       %{?with_snmp:--enable-snmp} \
+       %{?with_dbi:--enable-libdbi} \
+       --with-systemdsystemunitdir=/lib/systemd/system
 
 %{__make}
 
@@ -166,13 +221,12 @@ install -d $RPM_BUILD_ROOT/etc/{sysconfig,rc.d/init.d,logrotate.d,rsyslog.d} \
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT
 
-install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/rsyslog
-install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/rsyslog.conf
-install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/rsyslog
-install %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/rsyslog
+install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/rsyslog
+cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/rsyslog.conf
+cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/rsyslog
+cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/rsyslog
 
-for n in debug kernel maillog messages secure syslog user spooler lpr daemon
-do
+for n in cron daemon debug kernel lpr maillog messages secure spooler syslog user; do
        > $RPM_BUILD_ROOT/var/log/$n
 done
 
@@ -201,40 +255,26 @@ done
 
 /sbin/chkconfig --add %{name}
 %service rsyslog restart "%{name} daemon"
-%service -q %{name}-klogd restart
+
+%systemd_post rsyslog.service
+ln -sf /lib/systemd/system/rsyslog.service /etc/systemd/system/syslog.service || :
 
 %preun
 if [ "$1" = "0" ]; then
        %service %{name} stop
        /sbin/chkconfig --del %{name}
 fi
+%systemd_preun rsyslog.service
 
 %postun
 if [ "$1" = "0" ]; then
        %userremove syslog
        %groupremove syslog
 fi
+%systemd_reload
 
-%pre klogd
-%groupadd -P klogd -g 18 syslog
-%useradd -P klogd -u 18 -g syslog -c "Syslog User" syslog
-%addusertogroup syslog logs
-
-%post klogd
-/sbin/chkconfig --add %{name}-klogd
-%service %{name}-klogd restart "kernel logger daemon"
-
-%preun klogd
-if [ "$1" = "0" ]; then
-       %service %{name}-klogd stop
-       /sbin/chkconfig --del %{name}-klogd
-fi
-
-%postun klogd
-if [ "$1" = "0" ]; then
-       %userremove syslog
-       %groupremove syslog
-fi
+%triggerpostun -- %{name} < 5.8.6-4
+%systemd_trigger rsyslog.service
 
 %triggerpostun -- inetutils-syslogd
 /sbin/chkconfig --del syslog
@@ -254,16 +294,20 @@ fi
 %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(640,root,logs) %ghost /var/log/*
+/lib/systemd/system/rsyslog.service
 %attr(755,root,root) %{_sbindir}/rsyslogd
 %dir %{_libdir}/rsyslog
+%attr(755,root,root) %{_libdir}/rsyslog/imdiag.so
 %attr(755,root,root) %{_libdir}/rsyslog/imfile.so
 %attr(755,root,root) %{_libdir}/rsyslog/imklog.so
 %attr(755,root,root) %{_libdir}/rsyslog/immark.so
+%attr(755,root,root) %{_libdir}/rsyslog/impstats.so
+%attr(755,root,root) %{_libdir}/rsyslog/imptcp.so
 %attr(755,root,root) %{_libdir}/rsyslog/imtcp.so
 %attr(755,root,root) %{_libdir}/rsyslog/imudp.so
 %attr(755,root,root) %{_libdir}/rsyslog/imuxsock.so
-%attr(755,root,root) %{_libdir}/rsyslog/lmgssutil.so
+%attr(755,root,root) %{_libdir}/rsyslog/lmcry_gcry.so
 %attr(755,root,root) %{_libdir}/rsyslog/lmnet.so
 %attr(755,root,root) %{_libdir}/rsyslog/lmnetstrms.so
 %attr(755,root,root) %{_libdir}/rsyslog/lmnsd_ptcp.so
@@ -272,18 +316,21 @@ fi
 %attr(755,root,root) %{_libdir}/rsyslog/lmtcpclt.so
 %attr(755,root,root) %{_libdir}/rsyslog/lmtcpsrv.so
 %attr(755,root,root) %{_libdir}/rsyslog/lmzlibw.so
+%attr(755,root,root) %{_libdir}/rsyslog/mmexternal.so
+%attr(755,root,root) %{_libdir}/rsyslog/mmsnmptrapd.so
+%attr(755,root,root) %{_libdir}/rsyslog/ommail.so
+%attr(755,root,root) %{_libdir}/rsyslog/omprog.so
 %attr(755,root,root) %{_libdir}/rsyslog/omruleset.so
-%attr(755,root,root) %{_libdir}/rsyslog/omsnmp.so
+%attr(755,root,root) %{_libdir}/rsyslog/omstdout.so
 %attr(755,root,root) %{_libdir}/rsyslog/omtesting.so
+%attr(755,root,root) %{_libdir}/rsyslog/omuxsock.so
+%attr(755,root,root) %{_libdir}/rsyslog/pmaixforwardedfrom.so
+%attr(755,root,root) %{_libdir}/rsyslog/pmcisconames.so
+%attr(755,root,root) %{_libdir}/rsyslog/pmlastmsg.so
+%attr(755,root,root) %{_libdir}/rsyslog/pmsnare.so
 %{_mandir}/man5/*
 %{_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)
@@ -302,5 +349,26 @@ fi
 %files gssapi
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/rsyslog/imgssapi.so
+%attr(755,root,root) %{_libdir}/rsyslog/lmgssutil.so
 %attr(755,root,root) %{_libdir}/rsyslog/omgssapi.so
 %endif
+
+%if %{with dbi}
+%files dbi
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/rsyslog/omlibdbi.so
+%endif
+
+%files udpspoof
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/rsyslog/omudpspoof.so
+
+%if %{with snmp}
+%files snmp
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/rsyslog/omsnmp.so
+%endif
+
+%files gnutls
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/rsyslog/lmnsd_gtls.so
This page took 0.040837 seconds and 4 git commands to generate.