X-Git-Url: https://git.tld-linux.org/?p=packages%2Fsyslog-ng.git;a=blobdiff_plain;f=syslog-ng.spec;h=6598bb237ac6d893957e4209f830188fe93ff5bf;hp=b9742372bd6c5612f786d3f724b781ab81bf792e;hb=39261fbb5903f57b19fae2257ee756ac6c123753;hpb=0b47fab1b64b82651fa62b7008b4a36f95272a88 diff --git a/syslog-ng.spec b/syslog-ng.spec index b974237..6598bb2 100644 --- a/syslog-ng.spec +++ b/syslog-ng.spec @@ -2,48 +2,66 @@ # - switch to LTS version??? where??? # - relies on libs in /usr which is wrong # (well, for modules bringing additional functionality it's acceptable IMO --q) - +# - package python module # # Conditional build: %bcond_with dynamic # link dynamically with glib, eventlog, pcre (modules are always linked dynamically) %bcond_without sql # support for logging to SQL DB %bcond_without tests # do not perform "make check" +%bcond_without http # support for HTTP destination %bcond_without json # support for JSON template formatting %bcond_without mongodb # support for mongodb destination %bcond_without redis # support for Redis destination %bcond_without smtp # support for logging into SMTP %bcond_without geoip # support for GeoIP +%bcond_without geoip2 # support for GeoIP2 %bcond_without riemann # support for Riemann monitoring system +%bcond_without amqp # AMQP support +%bcond_with python # python module +%bcond_with java # java modules and support %bcond_without system_libivykis # use system libivykis -%bcond_with system_rabbitmq # use system librabbitmq [not supported yet] +%bcond_without system_rabbitmq # use system librabbitmq + +%if %{without amqp} +%undefine with_system_rabbitmq +%endif + +# as in git submodule +%define libivykis_version 0.42.2 %define glib2_ver 1:2.24.0 -%define mver 3.6 +%define mver 3.14 +%define docmver 3.14 Summary: Syslog-ng - new generation of the system logger Summary(pl.UTF-8): Syslog-ng - systemowy demon logujący nowej generacji Summary(pt_BR.UTF-8): Daemon de log nova geração Name: syslog-ng -Version: 3.6.4 -Release: 4 +Version: 3.14.1 +Release: 1 License: GPL v2+ with OpenSSL exception Group: Daemons -Source0: https://my.balabit.com/downloads/syslog-ng/open-source-edition/%{version}/source/%{name}_%{version}.tar.gz -# Source0-md5: e9f401615e92e5eb27396c995c1446ba +Source0: https://github.com/balabit/syslog-ng/archive/%{name}-%{version}.tar.gz +# Source0-md5: 60c58c5e50860c5b81afb6e80abb0a04 Source1: %{name}.init Source2: %{name}.conf Source3: %{name}.logrotate -Source4: http://www.balabit.com/support/documentation/syslog-ng-ose-%{mver}-guides/en/syslog-ng-ose-v%{mver}-guide-admin/pdf/%{name}-ose-v%{mver}-guide-admin.pdf -# Source4-md5: bb12c18aef655096987911c4a9fe3ffa +Source4: https://syslog-ng.com/documents/html/syslog-ng-ose-%{docmver}-guides/en/syslog-ng-ose-guide-admin/pdf/syslog-ng-ose-guide-admin.pdf +# Source4-md5: 4c22ec5a700f29d4d8dacb2d7c14797d Source5: %{name}-simple.conf +Source6: https://github.com/buytenh/ivykis/archive/v%{libivykis_version}/ivykis-%{libivykis_version}.tar.gz +# Source6-md5: aeafef422d8dafb84e1fcd16f9f4822e Patch0: %{name}-datadir.patch Patch1: cap_syslog-vserver-workaround.patch Patch2: %{name}-nolibs.patch Patch4: man-paths.patch -URL: https://www.balabit.com/network-security/syslog-ng/opensource-logging-system +Patch5: %{name}-link.patch +Patch6: no_shared_ivykis.patch +URL: https://syslog-ng.org/ %{?with_geoip:BuildRequires: GeoIP-devel >= 1.5.1} BuildRequires: autoconf >= 2.59 BuildRequires: automake BuildRequires: bison >= 2.4 +%{?with_http:BuildRequires: curl-devel} BuildRequires: docbook-style-xsl BuildRequires: eventlog-devel >= 0.2.12 %{?with_tests:BuildRequires: findutils} @@ -51,32 +69,38 @@ BuildRequires: flex BuildRequires: glib2-devel >= %{glib2_ver} %{?with_redis:BuildRequires: hiredis-devel} %{?with_json:BuildRequires: json-c-devel >= 0.9} +%{?with_mongodb:BuildRequires: libbson-devel} BuildRequires: libcap-devel %{?with_sql:BuildRequires: libdbi-devel >= 0.8.3-2} %{?with_smtp:BuildRequires: libesmtp-devel} -%{?with_system_libivykis:BuildRequires: libivykis-devel >= 0.36.1} -%{?with_mongodb:BuildRequires: libmongo-client-devel >= 0.1.8} +%{?with_system_libivykis:BuildRequires: libivykis-devel >= %{libivykis_version}} +%{?with_mongodb:BuildRequires: mongo-c-driver-devel} +%{?with_geoip2:BuildRequires: libmaxminddb-devel} BuildRequires: libnet-devel >= 1:1.1.2.1-3 BuildRequires: libtool >= 2:2.0 BuildRequires: libwrap-devel BuildRequires: libxslt-progs +BuildRequires: lz4-devel >= r131-5 BuildRequires: openssl-devel >= 0.9.8 BuildRequires: pcre-devel >= 6.1 BuildRequires: pkgconfig -%{?with_riemann:BuildRequires: protobuf-c-devel} %{?with_system_rabbitmq:BuildRequires: rabbitmq-c-devel >= 0.0.1} %{?with_riemann:BuildRequires: riemann-c-client-devel >= 1.0.0} BuildRequires: rpm >= 4.4.9-56 BuildRequires: rpmbuild(macros) >= 1.623 BuildRequires: which %if %{with tests} +BuildRequires: GeoIP-db-Country +BuildRequires: pylint BuildRequires: python +BuildRequires: python-pep8 +BuildRequires: python-ply BuildRequires: tzdata %endif %if %{without dynamic} BuildRequires: eventlog-static >= 0.2.12 BuildRequires: glib2-static >= %{glib2_ver} -%{?with_system_libivykis:BuildRequires: libivykis-static >= 0.36.1} +%{?with_system_libivykis:BuildRequires: libivykis-static >= %{libivykis_version}} BuildRequires: pcre-static >= 6.1 BuildRequires: zlib-static %endif @@ -86,6 +110,7 @@ Requires: %{name}-libs = %{version}-%{release} Requires: psmisc >= 20.1 %{?with_system_rabbitmq:Requires: rabbitmq-c >= 0.0.1} Requires: rc-scripts >= 0.4.3.0 +Requires: systemd-units >= 38 # for afsocket Requires: libnet >= 1:1.1.2.1-7 # for afsocket and dbparser @@ -95,6 +120,7 @@ Provides: service(syslog) Provides: syslogdaemon Obsoletes: syslog-ng-module-afsocket Obsoletes: syslog-ng-module-dbparser +Obsoletes: syslog-ng-systemd Conflicts: klogd Conflicts: msyslog Conflicts: rsyslog @@ -185,6 +211,18 @@ SQL destination support module for syslog-ng (via libdbi). Moduł sysloga-ng do obsługi zapisu logów w bazach SQL (poprzez libdbi). +%package module-http +Summary: HTTP destination support module for syslog-ng +Summary(pl.UTF-8): Moduł sysloga-ng do obsługi zapisu logów poprzez HTTP +Group: Libraries +Requires: %{name} = %{version}-%{release} + +%description module-http +HTTP destination support module for syslog-ng (via libcurl). + +%description module-http -l pl.UTF-8 +Moduł sysloga-ng do obsługi zapisu logów poprzez HTTP (via libcurl). + %package module-json-plugin Summary: JSON formatting template function for syslog-ng Summary(pl.UTF-8): Moduł sysloga-ng do obsługi szablonów z formatowaniem JSON @@ -230,6 +268,7 @@ Summary: syslog-ng template function module to get GeoIP info from an IPv4 addre Summary(pl.UTF-8): Moduł funkcji szablonu sysloga-ng do pobierania informacji GeoIP z adresów IPv4 Group: Libraries Requires: %{name} = %{version}-%{release} +Requires: GeoIP-db-Country Requires: GeoIP-libs >= 1.5.1 %description module-tfgeoip @@ -247,7 +286,7 @@ Group: Libraries %if %{with dynamic} Requires: eventlog >= 0.2.12 Requires: glib2 >= %{glib2_ver} -%{?with_system_libivykis:Requires: libivykis >= 0.36.1} +%{?with_system_libivykis:Requires: libivykis >= 0.42} Requires: pcre >= 6.1 %endif Conflicts: syslog-ng < 3.3.1-3 @@ -266,7 +305,7 @@ Requires: %{name}-libs = %{version}-%{release} %if %{with dynamic} Requires: eventlog-devel >= 0.2.12 Requires: glib2-devel >= %{glib2_ver} -%{?with_system_libivykis:Requires: libivykis-devel >= 0.36.1} +%{?with_system_libivykis:Requires: libivykis-devel >= 0.42} Requires: pcre-devel >= 6.1 %endif @@ -277,23 +316,24 @@ Header files for syslog-ng modules development. Pliki nagłówkowe do tworzenia modułów dla sysloga-ng. %prep -%setup -q +%setup -q -n %{name}-%{name}-%{version} -a 6 + +rmdir lib/ivykis +mv ivykis-%{libivykis_version} lib/ivykis + %patch0 -p1 %patch1 -p1 %patch2 -p1 %patch4 -p1 +%patch5 -p1 +%patch6 -p1 cp -p %{SOURCE4} doc cp -p %{SOURCE5} contrib/syslog-ng.conf.simple %{__sed} -i -e 's|/usr/bin/awk|/bin/awk|' scl/syslogconf/convert-syslogconf.awk -# timestamp paring on x32 confuses glib2 testsuite -%ifarch x32 -%{__sed} -i -e '/tests\/unit\/test_msgparse/d' tests/unit/Makefile.am -%endif - %build -for i in . lib/ivykis; do +for i in . ; do cd $i %{__libtoolize} %{__aclocal} `[ -d m4 ] && echo '-I m4'` @@ -304,13 +344,15 @@ cd - done %configure \ --sysconfdir=%{_sysconfdir}/syslog-ng \ - --datadir=%{_datadir}/syslog-ng \ --disable-silent-rules \ --with-default-modules=affile,afprog,afsocket,afuser,basicfuncs,csvparser,dbparser,syslogformat \ --with-docbook=%{xsl_stylesheets_dir}/manpages/docbook.xsl \ + --enable-java%{!?with_java:=no} \ + --enable-java-modules%{!?with_java:=no} \ + --enable-python%{!?with_python:=no} \ %if %{with mongodb} --enable-mongodb \ - --with-libmongo-client=system \ + --with-mongoc=system \ %else --disable-mongodb \ %endif @@ -323,9 +365,10 @@ done --with-module-dir=%{moduledir} \ --with-pidfile-dir=/var/run \ --with-timezone-dir=%{_datadir}/zoneinfo \ - --disable-systemd \ - --enable-amqp \ - --enable-geoip%{!?with_geoip:=no} \ + %{__enable_disable amqp} \ + %{__enable_disable geoip} \ + %{__enable_disable geoip2} \ + --enable-http%{!?with_http:=no} \ --enable-ipv6 \ --enable-json%{!?with_json:=no} \ --enable-linux-caps \ @@ -337,6 +380,7 @@ done --enable-smtp%{!?with_smtp:=no} \ --enable-spoof-source \ --enable-ssl \ + --enable-systemd=no \ --enable-tcp-wrapper \ %if %{with sql} --enable-sql \ @@ -371,6 +415,12 @@ install -d $RPM_BUILD_ROOT/etc/{sysconfig,logrotate.d,rc.d/init.d} \ install -d $RPM_BUILD_ROOT%{slibdir} %{__mv} $RPM_BUILD_ROOT%{_libdir}/libsyslog-ng-%{mver}.so.* $RPM_BUILD_ROOT%{slibdir} ln -snf %{slibdir}/$(basename $RPM_BUILD_ROOT%{slibdir}/libsyslog-ng-%{mver}.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libsyslog-ng.so + +%{__mv} $RPM_BUILD_ROOT%{_libdir}/libevtlog-%{mver}.so.* $RPM_BUILD_ROOT%{slibdir} +ln -snf %{slibdir}/$(basename $RPM_BUILD_ROOT%{slibdir}/libevtlog-%{mver}.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libevtlog.so + +%{__mv} $RPM_BUILD_ROOT%{_libdir}/libsecret-storage.so.* $RPM_BUILD_ROOT%{slibdir} +ln -snf %{slibdir}/$(basename $RPM_BUILD_ROOT%{slibdir}/libsecret-storage.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libsecret-storage.so %endif %{__sed} -e 's|@@SBINDIR@@|%{_sbindir}|g' %{SOURCE1} > $RPM_BUILD_ROOT/etc/rc.d/init.d/syslog-ng @@ -381,7 +431,10 @@ for n in cron daemon debug iptables kernel lpr maillog messages secure spooler s > $RPM_BUILD_ROOT/var/log/$n done touch $RPM_BUILD_ROOT/etc/sysconfig/%{name} +ln -s "%{name}" $RPM_BUILD_ROOT/etc/sysconfig/%{name}@default +%{__rm} $RPM_BUILD_ROOT%{_sbindir}/syslog-ng-debun +%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/syslog-ng-debun.1 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la %{__rm} $RPM_BUILD_ROOT%{moduledir}/*.la @@ -433,10 +486,11 @@ exit 0 %files %defattr(644,root,root,755) -%doc AUTHORS NEWS.md debian/syslog-ng.conf* contrib/relogger.pl +%doc AUTHORS NEWS.md contrib/relogger.pl %doc contrib/syslog-ng.conf.{doc,simple,RedHat} -%doc contrib/{apparmor,selinux,syslog2ng} doc/syslog-ng-ose-v%{mver}-guide-admin.pdf +%doc contrib/{apparmor,selinux,syslog2ng} doc/syslog-ng-ose-guide-admin.pdf %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name} +%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}@default %attr(750,root,root) %dir %{_sysconfdir}/syslog-ng %attr(750,root,root) %dir %{_sysconfdir}/syslog-ng/patterndb.d %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/syslog-ng/scl.conf @@ -444,54 +498,80 @@ exit 0 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/syslog-ng %attr(754,root,root) /etc/rc.d/init.d/syslog-ng %dir %{moduledir} +%attr(755,root,root) %{moduledir}/libadd-contextual-data.so +%if %{with amqp} %attr(755,root,root) %{moduledir}/libafamqp.so +%endif %attr(755,root,root) %{moduledir}/libaffile.so %attr(755,root,root) %{moduledir}/libafprog.so %attr(755,root,root) %{moduledir}/libafsocket.so -%attr(755,root,root) %{moduledir}/libafsocket-notls.so -%attr(755,root,root) %{moduledir}/libafsocket-tls.so %attr(755,root,root) %{moduledir}/libafstomp.so %attr(755,root,root) %{moduledir}/libafuser.so +%attr(755,root,root) %{moduledir}/libappmodel.so %attr(755,root,root) %{moduledir}/libbasicfuncs.so +%attr(755,root,root) %{moduledir}/libcef.so %attr(755,root,root) %{moduledir}/libconfgen.so %attr(755,root,root) %{moduledir}/libcryptofuncs.so %attr(755,root,root) %{moduledir}/libcsvparser.so +%attr(755,root,root) %{moduledir}/libdate.so %attr(755,root,root) %{moduledir}/libdbparser.so +%attr(755,root,root) %{moduledir}/libdisk-buffer.so +%if %{with geoip2} +%attr(755,root,root) %{moduledir}/libgeoip2-plugin.so +%endif %attr(755,root,root) %{moduledir}/libgraphite.so +%attr(755,root,root) %{moduledir}/libkvformat.so %attr(755,root,root) %{moduledir}/liblinux-kmsg-format.so +%attr(755,root,root) %{moduledir}/libmap-value-pairs.so %attr(755,root,root) %{moduledir}/libpacctformat.so %attr(755,root,root) %{moduledir}/libpseudofile.so -%attr(755,root,root) %{moduledir}/libsyslog-ng-crypto.so +%attr(755,root,root) %{moduledir}/libsnmptrapd-parser.so +%attr(755,root,root) %{moduledir}/libstardate.so +%attr(755,root,root) %{moduledir}/libtags-parser.so +%attr(755,root,root) %{moduledir}/libtfgetent.so +%attr(755,root,root) %{moduledir}/libxml.so %attr(755,root,root) %{moduledir}/libsyslogformat.so %attr(755,root,root) %{moduledir}/libsystem-source.so %attr(755,root,root) %{_sbindir}/syslog-ng %attr(755,root,root) %{_sbindir}/syslog-ng-ctl +%attr(755,root,root) %{_bindir}/dqtool %attr(755,root,root) %{_bindir}/loggen %attr(755,root,root) %{_bindir}/pdbtool %attr(755,root,root) %{_bindir}/update-patterndb %dir %{_datadir}/syslog-ng/include %dir %{_datadir}/syslog-ng/include/scl -%dir %{_datadir}/syslog-ng/include/scl/graphite -%{_datadir}/syslog-ng/include/scl/graphite/README -%{_datadir}/syslog-ng/include/scl/graphite/plugin.conf -%dir %{_datadir}/syslog-ng/include/scl/nodejs -%{_datadir}/syslog-ng/include/scl/nodejs/plugin.conf -%dir %{_datadir}/syslog-ng/include/scl/pacct -%{_datadir}/syslog-ng/include/scl/pacct/plugin.conf -%dir %{_datadir}/syslog-ng/include/scl/rewrite -%{_datadir}/syslog-ng/include/scl/rewrite/cc-mask.conf +%{_datadir}/syslog-ng/include/scl/apache +%{_datadir}/syslog-ng/include/scl/default-network-drivers +%{_datadir}/syslog-ng/include/scl/elasticsearch +%{_datadir}/syslog-ng/include/scl/graphite +%{_datadir}/syslog-ng/include/scl/hdfs +%{_datadir}/syslog-ng/include/scl/kafka +%{_datadir}/syslog-ng/include/scl/iptables +%dir %{_datadir}/syslog-ng/include/scl/loadbalancer +%attr(755,root,root) %{_datadir}/syslog-ng/include/scl/loadbalancer/gen-loadbalancer.sh +%{_datadir}/syslog-ng/include/scl/loadbalancer/plugin.conf +%{_datadir}/syslog-ng/include/scl/loggly +%{_datadir}/syslog-ng/include/scl/logmatic +%{_datadir}/syslog-ng/include/scl/mbox +%{_datadir}/syslog-ng/include/scl/nodejs +%{_datadir}/syslog-ng/include/scl/osquery +%{_datadir}/syslog-ng/include/scl/pacct +%{_datadir}/syslog-ng/include/scl/rewrite +%{_datadir}/syslog-ng/include/scl/snmptrap +%{_datadir}/syslog-ng/include/scl/solaris +%{_datadir}/syslog-ng/include/scl/sudo +%{_datadir}/syslog-ng/include/scl/windowseventlog %dir %{_datadir}/syslog-ng/include/scl/syslogconf %{_datadir}/syslog-ng/include/scl/syslogconf/README %attr(755,root,root) %{_datadir}/syslog-ng/include/scl/syslogconf/convert-syslogconf.awk %{_datadir}/syslog-ng/include/scl/syslogconf/plugin.conf -%dir %{_datadir}/syslog-ng/include/scl/system -%{_datadir}/syslog-ng/include/scl/system/plugin.conf -%dir %{_datadir}/syslog-ng/xsd -%{_datadir}/syslog-ng/xsd/patterndb-*.xsd +%{_datadir}/syslog-ng/include/scl/system +%{_datadir}/syslog-ng/xsd %dir %{_var}/lib/%{name} %dir %{_var}/lib/%{name}/xsd +%{_mandir}/man1/dqtool.1* %{_mandir}/man1/loggen.1* %{_mandir}/man1/pdbtool.1* %{_mandir}/man1/syslog-ng-ctl.1* @@ -530,10 +610,20 @@ exit 0 %attr(755,root,root) %{moduledir}/libafsql.so %endif +%if %{with http} +%files module-http +%defattr(644,root,root,755) +%attr(755,root,root) %{moduledir}/libhttp.so +%endif + %if %{with json} %files module-json-plugin %defattr(644,root,root,755) %attr(755,root,root) %{moduledir}/libjson-plugin.so +%{_datadir}/syslog-ng/include/scl/cim +%{_datadir}/syslog-ng/include/scl/cisco +%{_datadir}/syslog-ng/include/scl/ewmm +%{_datadir}/syslog-ng/include/scl/graylog2 %endif %if %{with redis} @@ -551,34 +641,50 @@ exit 0 %if %{with geoip} %files module-tfgeoip %defattr(644,root,root,755) -%attr(755,root,root) %{moduledir}/libtfgeoip.so +%attr(755,root,root) %{moduledir}/libgeoip-plugin.so %endif %files libs %defattr(644,root,root,755) +%attr(755,root,root) %{slibdir}/libevtlog-%{mver}.so.*.*.* +%attr(755,root,root) %{slibdir}/libevtlog-%{mver}.so.0 +%attr(755,root,root) %{slibdir}/libsecret-storage.so.*.*.* +%attr(755,root,root) %{slibdir}/libsecret-storage.so.0 %attr(755,root,root) %{slibdir}/libsyslog-ng-%{mver}.so.*.*.* %attr(755,root,root) %ghost %{slibdir}/libsyslog-ng-%{mver}.so.0 %dir %{_datadir}/syslog-ng %files devel %defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/libevtlog.so +%attr(755,root,root) %{_libdir}/libsecret-storage.so %attr(755,root,root) %{_libdir}/libsyslog-ng.so +%{_libdir}/libsyslog-ng-native-connector.a %dir %{_includedir}/syslog-ng %{_includedir}/syslog-ng/*.h %{_includedir}/syslog-ng/compat %{_includedir}/syslog-ng/control +%{_includedir}/syslog-ng/debugger %{_includedir}/syslog-ng/filter %if %{without system_libivykis} %{_includedir}/syslog-ng/ivykis %endif +%{_includedir}/syslog-ng/logmsg %{_includedir}/syslog-ng/logproto +%dir %{_includedir}/syslog-ng/modules +%{_includedir}/syslog-ng/modules/add-contextual-data %{_includedir}/syslog-ng/parser %{_includedir}/syslog-ng/rewrite +%{_includedir}/syslog-ng/scanner %{_includedir}/syslog-ng/stats +%{_includedir}/syslog-ng/str-repr %{_includedir}/syslog-ng/template %{_includedir}/syslog-ng/transport +%{_includedir}/syslog-ng/value-pairs %{_datadir}/syslog-ng/tools %{_pkgconfigdir}/syslog-ng.pc +%{_pkgconfigdir}/syslog-ng-add-contextual-data.pc +%{_pkgconfigdir}/syslog-ng-native-connector.pc # test-devel ? %if "%{_libdir}/syslog-ng" != "{moduledir}"