]>
Commit | Line | Data |
---|---|---|
cec64641 | 1 | # TODO: |
bb684e69 | 2 | # - switch to LTS version??? where??? |
cc1675a4 JB |
3 | # - relies on libs in /usr which is wrong |
4 | # (well, for modules bringing additional functionality it's acceptable IMO --q) | |
e803f395 | 5 | # - package python module |
cec64641 | 6 | # |
8eca2e89 | 7 | # Conditional build: |
011ba713 | 8 | %bcond_with dynamic # link dynamically with glib, eventlog, pcre (modules are always linked dynamically) |
306cd2c9 | 9 | %if "%{pld_release}" == "ac" |
011ba713 | 10 | %bcond_with sql # support for logging to SQL DB |
306cd2c9 | 11 | %else |
011ba713 | 12 | %bcond_without sql # support for logging to SQL DB |
306cd2c9 | 13 | %endif |
011ba713 | 14 | %bcond_without tests # do not perform "make check" |
d3133019 | 15 | %bcond_without http # support for HTTP destination |
011ba713 JB |
16 | %bcond_without json # support for JSON template formatting |
17 | %bcond_without mongodb # support for mongodb destination | |
18 | %bcond_without redis # support for Redis destination | |
19 | %bcond_without smtp # support for logging into SMTP | |
312323d8 | 20 | %bcond_without geoip # support for GeoIP |
d6605996 | 21 | %bcond_without geoip2 # support for GeoIP2 |
35b01c3c | 22 | %bcond_without riemann # support for Riemann monitoring system |
2890986e | 23 | %bcond_without systemd # systemd (daemon and journal) support |
c612fe0c | 24 | %bcond_without amqp # AMQP support |
eebad2d5 JR |
25 | %bcond_with python # python module |
26 | %bcond_with java # java modules and support | |
fd7236ec AM |
27 | %bcond_without system_libivykis # use system libivykis |
28 | %bcond_without system_rabbitmq # use system librabbitmq | |
5461d50b | 29 | |
c612fe0c JK |
30 | %if %{without amqp} |
31 | %undefine with_system_rabbitmq | |
32 | %endif | |
33 | ||
fb2ee301 JK |
34 | # as in git submodule |
35 | %define libivykis_version 0.42.2 | |
36 | ||
306cd2c9 | 37 | %if "%{pld_release}" == "ac" |
4c650c71 | 38 | %define glib2_ver 1:2.16.0 |
306cd2c9 | 39 | %else |
4c650c71 | 40 | %define glib2_ver 1:2.24.0 |
306cd2c9 | 41 | %endif |
78780d53 AM |
42 | %define mver 3.14 |
43 | %define docmver 3.12 | |
80a87a81 | 44 | Summary: Syslog-ng - new generation of the system logger |
cc1675a4 | 45 | Summary(pl.UTF-8): Syslog-ng - systemowy demon logujący nowej generacji |
f7affeae | 46 | Summary(pt_BR.UTF-8): Daemon de log nova geração |
db55bc6c | 47 | Name: syslog-ng |
78780d53 | 48 | Version: 3.14.1 |
db6b36ab | 49 | Release: 3 |
4c650c71 | 50 | License: GPL v2+ with OpenSSL exception |
db55bc6c | 51 | Group: Daemons |
fd7236ec | 52 | Source0: https://github.com/balabit/syslog-ng/archive/%{name}-%{version}.tar.gz |
78780d53 | 53 | # Source0-md5: 60c58c5e50860c5b81afb6e80abb0a04 |
70c1937a | 54 | Source1: %{name}.init |
55 | Source2: %{name}.conf | |
e0f9b227 | 56 | Source3: %{name}.logrotate |
78780d53 | 57 | Source4: http://www.balabit.com/support/documentation/syslog-ng-ose-%{docmver}-guides/en/syslog-ng-ose-v%{docmver}-guide-admin/pdf/%{name}-ose-v%{docmver}-guide-admin.pdf |
fd7236ec | 58 | # Source4-md5: fce7075b03ba9501911b9812a553e680 |
0872fe7c | 59 | Source5: %{name}-simple.conf |
fb2ee301 JK |
60 | Source6: https://github.com/buytenh/ivykis/archive/v%{libivykis_version}/ivykis-%{libivykis_version}.tar.gz |
61 | # Source6-md5: aeafef422d8dafb84e1fcd16f9f4822e | |
4be05185 | 62 | Source7: syslog-ng.service |
35907845 | 63 | Patch0: %{name}-datadir.patch |
5fe1f11f | 64 | Patch1: cap_syslog-vserver-workaround.patch |
38883b2f | 65 | Patch2: %{name}-nolibs.patch |
17524264 | 66 | Patch3: %{name}-systemd.patch |
cd31ca9b | 67 | Patch4: man-paths.patch |
118f372b | 68 | Patch5: %{name}-link.patch |
bd08a4de | 69 | Patch6: no_shared_ivykis.patch |
fd7236ec | 70 | URL: https://syslog-ng.org/ |
312323d8 | 71 | %{?with_geoip:BuildRequires: GeoIP-devel >= 1.5.1} |
be957de7 | 72 | BuildRequires: autoconf >= 2.59 |
53500332 | 73 | BuildRequires: automake |
4a7ca8b7 | 74 | BuildRequires: bison >= 2.4 |
d3133019 | 75 | %{?with_http:BuildRequires: curl-devel} |
cd31ca9b | 76 | BuildRequires: docbook-style-xsl |
cc1675a4 | 77 | BuildRequires: eventlog-devel >= 0.2.12 |
b7fea326 | 78 | %{?with_tests:BuildRequires: findutils} |
ac9ca8e0 | 79 | BuildRequires: flex |
4c650c71 | 80 | BuildRequires: glib2-devel >= %{glib2_ver} |
bada063a | 81 | %{?with_redis:BuildRequires: hiredis-devel} |
011ba713 | 82 | %{?with_json:BuildRequires: json-c-devel >= 0.9} |
cc1675a4 JB |
83 | BuildRequires: libcap-devel |
84 | %{?with_sql:BuildRequires: libdbi-devel >= 0.8.3-2} | |
af6a2653 | 85 | %{?with_smtp:BuildRequires: libesmtp-devel} |
fb2ee301 | 86 | %{?with_system_libivykis:BuildRequires: libivykis-devel >= %{libivykis_version}} |
fd7236ec | 87 | %{?with_mongodb:BuildRequires: mongo-c-driver-devel} |
d6605996 | 88 | %{?with_geoip2:BuildRequires: libmaxminddb-devel} |
cc1675a4 | 89 | BuildRequires: libnet-devel >= 1:1.1.2.1-3 |
4a7ca8b7 | 90 | BuildRequires: libtool >= 2:2.0 |
cc1675a4 | 91 | BuildRequires: libwrap-devel |
9f2bd341 | 92 | BuildRequires: libxslt-progs |
d3133019 | 93 | BuildRequires: lz4-devel >= r131-5 |
cc1675a4 JB |
94 | BuildRequires: openssl-devel >= 0.9.8 |
95 | BuildRequires: pcre-devel >= 6.1 | |
bf8c4b27 | 96 | BuildRequires: pkgconfig |
8fd1a6f4 | 97 | %{?with_system_rabbitmq:BuildRequires: rabbitmq-c-devel >= 0.0.1} |
35b01c3c | 98 | %{?with_riemann:BuildRequires: riemann-c-client-devel >= 1.0.0} |
306cd2c9 | 99 | BuildRequires: rpm >= 4.4.9-56 |
6d708cb5 | 100 | BuildRequires: rpmbuild(macros) >= 1.623 |
be957de7 | 101 | %{?with_systemd:BuildRequires: systemd-devel >= 1:195} |
24642adc | 102 | BuildRequires: which |
bc708ef6 | 103 | %if %{with tests} |
eebad2d5 | 104 | BuildRequires: GeoIP-db-Country |
e803f395 | 105 | BuildRequires: pylint |
24642adc | 106 | BuildRequires: python |
e803f395 | 107 | BuildRequires: python-pep8 |
acaccb00 | 108 | BuildRequires: python-ply |
bc708ef6 AF |
109 | BuildRequires: tzdata |
110 | %endif | |
cc1675a4 | 111 | %if %{without dynamic} |
d132f512 | 112 | BuildRequires: eventlog-static >= 0.2.12 |
4c650c71 | 113 | BuildRequires: glib2-static >= %{glib2_ver} |
fb2ee301 | 114 | %{?with_system_libivykis:BuildRequires: libivykis-static >= %{libivykis_version}} |
585ae33b | 115 | BuildRequires: pcre-static >= 6.1 |
808ca97e | 116 | BuildRequires: zlib-static |
8eca2e89 | 117 | %endif |
768882cc | 118 | Requires(post): fileutils |
cc4597b5 | 119 | Requires(post,preun): /sbin/chkconfig |
b3030031 | 120 | Requires(post,preun,postun): systemd-units >= 38 |
cc1675a4 | 121 | Requires: %{name}-libs = %{version}-%{release} |
0471c4e3 | 122 | Requires: psmisc >= 20.1 |
8fd1a6f4 | 123 | %{?with_system_rabbitmq:Requires: rabbitmq-c >= 0.0.1} |
622aa91c | 124 | Requires: rc-scripts >= 0.4.3.0 |
b3030031 | 125 | Requires: systemd-units >= 38 |
ceea8d15 JB |
126 | # for afsocket |
127 | Requires: libnet >= 1:1.1.2.1-7 | |
128 | # for afsocket and dbparser | |
129 | Requires: openssl >= 0.9.8 | |
34031399 JR |
130 | Provides: service(klogd) |
131 | Provides: service(syslog) | |
18a2d4ea | 132 | Provides: syslogdaemon |
ceea8d15 JB |
133 | Obsoletes: syslog-ng-module-afsocket |
134 | Obsoletes: syslog-ng-module-dbparser | |
c0bb099a | 135 | Obsoletes: syslog-ng-systemd |
5db3c127 | 136 | Conflicts: klogd |
1a409b7d | 137 | Conflicts: msyslog |
240bc451 | 138 | Conflicts: rsyslog |
0baee825 | 139 | Conflicts: syslog |
1002ecce BS |
140 | Conflicts: cronie < 1.5.0-3 |
141 | Conflicts: fcron < 3.1.2-5 | |
8a78073d | 142 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
db55bc6c | 143 | |
cd31ca9b ER |
144 | %define xsl_stylesheets_dir /usr/share/sgml/docbook/xsl-stylesheets |
145 | ||
be957de7 | 146 | %if %{without dynamic} |
35907845 AM |
147 | # syslog-ng has really crazy linking rules (see their bugzilla). |
148 | # Some rules, according to syslog-ng devs, are like this: | |
149 | # - libsyslog-ng.so has undefined symbols for third party libraries | |
150 | # and these symbols should go via main syslog-ng binary | |
151 | # - same applies for modules | |
cc1675a4 JB |
152 | # In dynamic case tests are forcily linked with dynamic modules, which doesn't work with as-needed. |
153 | %define filterout_ld -Wl,--as-needed -Wl,--no-copy-dt-needed-entries | |
bb38cad4 JR |
154 | %define no_install_post_check_so 1 |
155 | %define _sbindir /sbin | |
be957de7 JB |
156 | %define slibdir /%{_lib} |
157 | %else | |
158 | %define slibdir %{_libdir} | |
bb38cad4 | 159 | %endif |
be957de7 JB |
160 | # or just %{_libdir}? modules seem to be always linked dynamically |
161 | %define moduledir %{slibdir}/syslog-ng | |
bb38cad4 | 162 | |
db55bc6c | 163 | %description |
a42dcc7c | 164 | syslog-ng is a syslogd replacement for Unix and Unix-like systems. It |
70c1937a | 165 | has been tested on Solaris, BSDi and Linux, and were found to run |
166 | reliably. syslog-ng gives you a much enhanced configuration scheme, | |
167 | which lets you filter messages based on not only priority/facility | |
168 | pairs, but also on message content. You can use regexps to direct log | |
169 | stream to different destinations. A destination can be anything from a | |
170 | simple file to a network connection. syslog-ng supports TCP | |
171 | logforwarding, together with hashing to prevent unauthorized | |
172 | modification on the line. | |
db55bc6c | 173 | |
6ab9000c JR |
174 | %description -l pl.UTF-8 |
175 | Syslog-ng jest zamiennikiem dla standardowo używanych programów typu | |
a42dcc7c | 176 | syslog. Działa w systemie SunOS, BSD, Linux. Daje znacznie większe |
6ab9000c | 177 | możliwości logowania i kontrolowania zbieranych informacji. |
db55bc6c | 178 | |
6ab9000c JR |
179 | %description -l pt_BR.UTF-8 |
180 | Syslog-ng é um substituto para o syslog tradicional, mas com diversas | |
02e7b20a | 181 | melhorias, como, por exemplo, a habilidade de filtrar mensagens de log |
6ab9000c | 182 | por seu conteúdo (usando expressões regulares) e não apenas pelo par |
02e7b20a | 183 | facility/prioridade como o syslog original. |
184 | ||
4c650c71 JB |
185 | %package module-afmongodb |
186 | Summary: MongoDB destination support module for syslog-ng | |
187 | Summary(pl.UTF-8): Moduł sysloga-ng do obsługi zapisu logów w bazie MongoDB | |
188 | Group: Libraries | |
189 | Requires: %{name} = %{version}-%{release} | |
be957de7 | 190 | Requires: libmongo-client >= 0.1.8 |
4c650c71 JB |
191 | |
192 | %description module-afmongodb | |
193 | MongoDB destination support module for syslog-ng. | |
194 | ||
195 | %description module-afmongodb -l pl.UTF-8 | |
196 | Moduł sysloga-ng do obsługi zapisu logów w bazie MongoDB. | |
197 | ||
24e8f380 MK |
198 | %package module-afsmtp |
199 | Summary: SMTP output support module for syslog-ng | |
200 | Summary(pl.UTF-8): Moduł sysloga-ng do obsługi wysyłania logów do serwerów SMTP | |
201 | Group: Libraries | |
202 | Requires: %{name} = %{version}-%{release} | |
24e8f380 MK |
203 | Requires: openssl >= 0.9.8 |
204 | ||
205 | %description module-afsmtp | |
af6a2653 | 206 | SMTP output support module for syslog-ng. |
24e8f380 MK |
207 | |
208 | %description module-afsmtp -l pl.UTF-8 | |
af6a2653 | 209 | Moduł sysloga-ng do obsługi wysyłania logów do serwerów SMTP. |
24e8f380 | 210 | |
4c650c71 JB |
211 | %package module-afsql |
212 | Summary: SQL destination support module for syslog-ng | |
213 | Summary(pl.UTF-8): Moduł sysloga-ng do obsługi zapisu logów w bazach SQL | |
214 | Group: Libraries | |
215 | Requires: %{name} = %{version}-%{release} | |
216 | Requires: libdbi >= 0.8.3-2 | |
217 | Requires: openssl >= 0.9.8 | |
218 | ||
219 | %description module-afsql | |
220 | SQL destination support module for syslog-ng (via libdbi). | |
221 | ||
222 | %description module-afsql -l pl.UTF-8 | |
223 | Moduł sysloga-ng do obsługi zapisu logów w bazach SQL (poprzez | |
224 | libdbi). | |
225 | ||
d3133019 JR |
226 | %package module-http |
227 | Summary: HTTP destination support module for syslog-ng | |
228 | Summary(pl.UTF-8): Moduł sysloga-ng do obsługi zapisu logów poprzez HTTP | |
229 | Group: Libraries | |
230 | Requires: %{name} = %{version}-%{release} | |
231 | ||
232 | %description module-http | |
233 | HTTP destination support module for syslog-ng (via libcurl). | |
234 | ||
235 | %description module-http -l pl.UTF-8 | |
236 | Moduł sysloga-ng do obsługi zapisu logów poprzez HTTP (via libcurl). | |
237 | ||
24e8f380 | 238 | %package module-json-plugin |
4c650c71 JB |
239 | Summary: JSON formatting template function for syslog-ng |
240 | Summary(pl.UTF-8): Moduł sysloga-ng do obsługi szablonów z formatowaniem JSON | |
241 | Group: Libraries | |
242 | Requires: %{name} = %{version}-%{release} | |
887b46ca MK |
243 | Requires: json-c >= 0.9 |
244 | Obsoletes: syslog-ng-module-tfjson | |
4c650c71 | 245 | |
24e8f380 | 246 | %description module-json-plugin |
4c650c71 JB |
247 | JSON formatting template function for syslog-ng. |
248 | ||
24e8f380 | 249 | %description module-json-plugin -l pl.UTF-8 |
4c650c71 JB |
250 | Moduł sysloga-ng do obsługi szablonów z formatowaniem JSON. |
251 | ||
011ba713 JB |
252 | %package module-redis |
253 | Summary: Redis destination support module for syslog-ng | |
254 | Summary(pl.UTF-8): Moduł sysloga-ng do obsługi zapisu logów w bazie Redis | |
255 | Group: Libraries | |
256 | Requires: %{name} = %{version}-%{release} | |
257 | ||
258 | %description module-redis | |
259 | Redis destination support module for syslog-ng (via libhiredis). | |
260 | ||
261 | %description module-redis -l pl.UTF-8 | |
262 | Moduł sysloga-ng do obsługi zapisu logów w bazie Redis (poprzez | |
263 | libhiredis). | |
264 | ||
2890986e JB |
265 | %package module-riemann |
266 | Summary: Riemann destination support module for syslog-ng | |
267 | Summary(pl.UTF-8): Moduł sysloga-ng do obsługi zapisu logów do systemu Riemann | |
268 | Group: Libraries | |
269 | Requires: %{name} = %{version}-%{release} | |
270 | Requires: riemann-c-client >= 1.0.0 | |
271 | ||
272 | %description module-riemann | |
273 | Riemann destination support module for syslog-ng. | |
274 | ||
275 | %description module-riemann -l pl.UTF-8 | |
276 | Moduł sysloga-ng do obsługi zapisu logów do systemu Riemann. | |
277 | ||
06e66789 JB |
278 | %package module-tfgeoip |
279 | Summary: syslog-ng template function module to get GeoIP info from an IPv4 addresses | |
280 | Summary(pl.UTF-8): Moduł funkcji szablonu sysloga-ng do pobierania informacji GeoIP z adresów IPv4 | |
281 | Group: Libraries | |
282 | Requires: %{name} = %{version}-%{release} | |
eebad2d5 | 283 | Requires: GeoIP-db-Country |
06e66789 JB |
284 | Requires: GeoIP-libs >= 1.5.1 |
285 | ||
286 | %description module-tfgeoip | |
287 | syslog-ng template function module to get GeoIP info from an IPv4 | |
288 | addresses. | |
289 | ||
290 | %description module-tfgeoip -l pl.UTF-8 | |
291 | Moduł funkcji szablonu sysloga-ng do pobierania informacji GeoIP z | |
292 | adresów IPv4. | |
293 | ||
cc1675a4 JB |
294 | %package libs |
295 | Summary: Shared library for syslog-ng | |
296 | Summary(pl.UTF-8): Biblioteka współdzielona sysloga-ng | |
297 | Group: Libraries | |
298 | %if %{with dynamic} | |
299 | Requires: eventlog >= 0.2.12 | |
4c650c71 | 300 | Requires: glib2 >= %{glib2_ver} |
fd7236ec | 301 | %{?with_system_libivykis:Requires: libivykis >= 0.42} |
cc1675a4 JB |
302 | Requires: pcre >= 6.1 |
303 | %endif | |
304 | Conflicts: syslog-ng < 3.3.1-3 | |
305 | ||
306 | %description libs | |
307 | Shared library for syslog-ng. | |
308 | ||
309 | %description libs -l pl.UTF-8 | |
310 | Biblioteka współdzielona sysloga-ng. | |
311 | ||
312 | %package devel | |
313 | Summary: Header files for syslog-ng modules development | |
314 | Summary(pl.UTF-8): Pliki nagłówkowe do tworzenia modułów dla sysloga-ng | |
315 | Group: Development/Libraries | |
316 | Requires: %{name}-libs = %{version}-%{release} | |
317 | %if %{with dynamic} | |
318 | Requires: eventlog-devel >= 0.2.12 | |
4c650c71 | 319 | Requires: glib2-devel >= %{glib2_ver} |
fd7236ec | 320 | %{?with_system_libivykis:Requires: libivykis-devel >= 0.42} |
cc1675a4 JB |
321 | Requires: pcre-devel >= 6.1 |
322 | %endif | |
323 | ||
324 | %description devel | |
325 | Header files for syslog-ng modules development. | |
326 | ||
327 | %description devel -l pl.UTF-8 | |
328 | Pliki nagłówkowe do tworzenia modułów dla sysloga-ng. | |
329 | ||
db55bc6c | 330 | %prep |
fb2ee301 | 331 | %setup -q -n %{name}-%{name}-%{version} -a 6 |
6599601c JK |
332 | |
333 | rmdir lib/ivykis | |
334 | mv ivykis-%{libivykis_version} lib/ivykis | |
335 | ||
489ceddf | 336 | %patch0 -p1 |
3b8a2194 | 337 | %patch1 -p1 |
38883b2f | 338 | %patch2 -p1 |
17524264 | 339 | %patch3 -p1 |
cd31ca9b | 340 | %patch4 -p1 |
118f372b | 341 | %patch5 -p1 |
bd08a4de | 342 | %patch6 -p1 |
db1b62f6 ER |
343 | cp -p %{SOURCE4} doc |
344 | cp -p %{SOURCE5} contrib/syslog-ng.conf.simple | |
b6fee34c | 345 | |
cec64641 JR |
346 | %{__sed} -i -e 's|/usr/bin/awk|/bin/awk|' scl/syslogconf/convert-syslogconf.awk |
347 | ||
db55bc6c | 348 | %build |
fd7236ec | 349 | for i in . ; do |
5fe1f11f AM |
350 | cd $i |
351 | %{__libtoolize} | |
4b94cfad | 352 | %{__aclocal} `[ -d m4 ] && echo '-I m4'` |
5fe1f11f | 353 | %{__autoconf} |
585ae33b | 354 | %{__autoheader} |
5fe1f11f AM |
355 | %{__automake} |
356 | cd - | |
357 | done | |
c67bc54f | 358 | %configure \ |
8eca2e89 | 359 | --sysconfdir=%{_sysconfdir}/syslog-ng \ |
db1b62f6 | 360 | --disable-silent-rules \ |
7e54a951 | 361 | --with-default-modules=affile,afprog,afsocket,afuser,basicfuncs,csvparser,dbparser,syslogformat \ |
35b01c3c | 362 | --with-docbook=%{xsl_stylesheets_dir}/manpages/docbook.xsl \ |
eebad2d5 JR |
363 | --enable-java%{!?with_java:=no} \ |
364 | --enable-java-modules%{!?with_java:=no} \ | |
365 | --enable-python%{!?with_python:=no} \ | |
18bd7ab6 JK |
366 | %if %{with mongodb} |
367 | --enable-mongodb \ | |
78780d53 | 368 | --with-mongoc=system \ |
18bd7ab6 JK |
369 | %else |
370 | --disable-mongodb \ | |
371 | %endif | |
c6011c69 | 372 | %if %{with system_libivykis} |
4c3de3cf | 373 | --with-ivykis=system \ |
c6011c69 MK |
374 | %else |
375 | --with-ivykis=internal \ | |
376 | %endif | |
8fd1a6f4 | 377 | %{?with_system_rabbitmq:--with-librabbitmq-client=system} \ |
be957de7 | 378 | --with-module-dir=%{moduledir} \ |
808ca97e | 379 | --with-pidfile-dir=/var/run \ |
6d708cb5 | 380 | --with-systemdsystemunitdir=%{systemdunitdir} \ |
be957de7 | 381 | --with-timezone-dir=%{_datadir}/zoneinfo \ |
c612fe0c | 382 | %{__enable_disable amqp} \ |
d6605996 JK |
383 | %{__enable_disable geoip} \ |
384 | %{__enable_disable geoip2} \ | |
d3133019 | 385 | --enable-http%{!?with_http:=no} \ |
808ca97e | 386 | --enable-ipv6 \ |
06e66789 | 387 | --enable-json%{!?with_json:=no} \ |
808ca97e | 388 | --enable-linux-caps \ |
35b01c3c | 389 | --enable-manpages \ |
1fe2e76c | 390 | --enable-pacct \ |
4a7ca8b7 | 391 | --enable-pcre \ |
011ba713 | 392 | --enable-redis%{!?with_redis:=no} \ |
35b01c3c | 393 | --enable-riemann%{!?with_riemann:=no} \ |
06e66789 | 394 | --enable-smtp%{!?with_smtp:=no} \ |
4a7ca8b7 JB |
395 | --enable-spoof-source \ |
396 | --enable-ssl \ | |
be957de7 | 397 | --enable-systemd%{!?with_systemd:=no} \ |
4a7ca8b7 | 398 | --enable-tcp-wrapper \ |
808ca97e JR |
399 | %if %{with sql} |
400 | --enable-sql \ | |
401 | %endif | |
8eca2e89 JB |
402 | %if %{with dynamic} |
403 | --enable-dynamic-linking | |
bb38cad4 JR |
404 | %else |
405 | --enable-mixed-linking | |
8eca2e89 | 406 | %endif |
4298f6c0 | 407 | |
35b01c3c JB |
408 | %{__make} |
409 | ||
db55bc6c | 410 | |
cc1675a4 | 411 | %if %{with tests} |
b7fea326 AM |
412 | LD_LIBRARY_PATH=$(find $PWD -name '*.so*' -printf "%h:") |
413 | PYTHONPATH=$(pwd)/tests/functional | |
414 | export LD_LIBRARY_PATH PYTHONPATH | |
cc1675a4 JB |
415 | %{__make} check |
416 | %endif | |
f3688193 | 417 | |
db55bc6c | 418 | %install |
db55bc6c | 419 | rm -rf $RPM_BUILD_ROOT |
6277303e | 420 | install -d $RPM_BUILD_ROOT/etc/{sysconfig,logrotate.d,rc.d/init.d} \ |
303be384 | 421 | $RPM_BUILD_ROOT%{_sysconfdir}/syslog-ng/patterndb.d \ |
cd6284ba | 422 | $RPM_BUILD_ROOT/var/{log,lib/%{name}/xsd} |
db55bc6c | 423 | |
1fe2e76c | 424 | %{__make} -j1 install \ |
80a5deba | 425 | pkgconfigdir=%{_pkgconfigdir} \ |
4d7c194a | 426 | DESTDIR=$RPM_BUILD_ROOT |
db55bc6c | 427 | |
be957de7 JB |
428 | %if "%{slibdir}" != "%{_libdir}" |
429 | install -d $RPM_BUILD_ROOT%{slibdir} | |
118f372b JB |
430 | %{__mv} $RPM_BUILD_ROOT%{_libdir}/libsyslog-ng-%{mver}.so.* $RPM_BUILD_ROOT%{slibdir} |
431 | ln -snf %{slibdir}/$(basename $RPM_BUILD_ROOT%{slibdir}/libsyslog-ng-%{mver}.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libsyslog-ng.so | |
78780d53 AM |
432 | |
433 | %{__mv} $RPM_BUILD_ROOT%{_libdir}/libevtlog-%{mver}.so.* $RPM_BUILD_ROOT%{slibdir} | |
434 | ln -snf %{slibdir}/$(basename $RPM_BUILD_ROOT%{slibdir}/libevtlog-%{mver}.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libevtlog.so | |
435 | ||
436 | %{__mv} $RPM_BUILD_ROOT%{_libdir}/libsecret-storage.so.* $RPM_BUILD_ROOT%{slibdir} | |
437 | ln -snf %{slibdir}/$(basename $RPM_BUILD_ROOT%{slibdir}/libsecret-storage.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libsecret-storage.so | |
be957de7 JB |
438 | %endif |
439 | ||
544d8db5 | 440 | %{__sed} -e 's|@@SBINDIR@@|%{_sbindir}|g' %{SOURCE1} > $RPM_BUILD_ROOT/etc/rc.d/init.d/syslog-ng |
db1b62f6 ER |
441 | cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/syslog-ng/syslog-ng.conf |
442 | cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/syslog-ng | |
4be05185 | 443 | cp -p %{SOURCE7} $RPM_BUILD_ROOT%{systemdunitdir} |
db55bc6c | 444 | |
6d64ef6a | 445 | for n in cron daemon debug iptables kernel lpr maillog messages secure spooler syslog user xferlog; do |
3fb60e3b JR |
446 | > $RPM_BUILD_ROOT/var/log/$n |
447 | done | |
2a14aff2 | 448 | touch $RPM_BUILD_ROOT/etc/sysconfig/%{name} |
bbf3801f | 449 | ln -s "%{name}" $RPM_BUILD_ROOT/etc/sysconfig/%{name}@default |
db55bc6c | 450 | |
78780d53 AM |
451 | %{__rm} $RPM_BUILD_ROOT%{_sbindir}/syslog-ng-debun |
452 | %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/syslog-ng-debun.1 | |
04316877 | 453 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la |
118f372b | 454 | %{__rm} $RPM_BUILD_ROOT%{moduledir}/*.la |
f2972fae | 455 | |
80a87a81 JB |
456 | %clean |
457 | rm -rf $RPM_BUILD_ROOT | |
458 | ||
db55bc6c | 459 | %post |
1519c9ad ER |
460 | if [ "$1" = "1" ]; then |
461 | # disable /proc/kmsg from config on first install on vserver | |
462 | { | |
463 | while read f ctx; do | |
464 | [ "$f" = "VxID:" -o "$f" = "s_context:" ] && break | |
465 | done </proc/self/status | |
466 | } 2>/dev/null | |
467 | if [ -z "$ctx" -o "$ctx" = "0" ]; then | |
468 | VSERVER=no | |
469 | else | |
470 | VSERVER=yes | |
471 | fi | |
472 | if [ "$VSERVER" = "yes" ]; then | |
473 | %{__sed} -i -e '/\/proc\/kmsg/ s/^[^#]/#&/' %{_sysconfdir}/%{name}/%{name}.conf | |
474 | fi | |
475 | fi | |
476 | ||
0b833f9b | 477 | /sbin/chkconfig --add syslog-ng |
da4f5bde | 478 | %service syslog-ng restart "syslog-ng daemon" |
db55bc6c | 479 | |
4be05185 | 480 | %systemd_post syslog-ng@.service syslog-ng.service |
34031399 | 481 | |
db55bc6c | 482 | %preun |
0b833f9b | 483 | if [ "$1" = "0" ]; then |
da4f5bde | 484 | %service syslog-ng stop |
0b833f9b | 485 | /sbin/chkconfig --del syslog-ng |
486 | fi | |
4be05185 | 487 | %systemd_preun syslog-ng@.service syslog-ng.service |
34031399 JR |
488 | |
489 | %postun | |
490 | %systemd_reload | |
491 | ||
492 | %triggerpostun -- syslog-ng < 3.3.4-3 | |
4be05185 | 493 | %systemd_trigger syslog-ng@.service syslog-ng.service |
db55bc6c | 494 | |
31446e62 | 495 | %triggerun -- syslog-ng < 3.0 |
60bdc15a | 496 | sed -i -e 's#sync(\(.*\))#flush_lines(\1)#g' /etc/syslog-ng/syslog-ng.conf |
31446e62 AM |
497 | sed -i -e 's#pipe ("/proc/kmsg"#file ("/proc/kmsg"#g' /etc/syslog-ng/syslog-ng.conf |
498 | sed -i -e 's#log_prefix#program_override#g' /etc/syslog-ng/syslog-ng.conf | |
499 | sed -i -e 's#^destination #destination d_#g' /etc/syslog-ng/syslog-ng.conf | |
500 | sed -i -e 's#destination(#destination(d_#g' /etc/syslog-ng/syslog-ng.conf | |
01113c19 | 501 | sed -i -e 's,\bstats\b,stats_freq,' /etc/syslog-ng/syslog-ng.conf |
31446e62 AM |
502 | sed -i -e 's#match("IN\=\[A-Za-z0-9\]\* OUT=\[A-Za-z0-9\]\*");#match("IN=[A-Za-z0-9]* OUT=[A-Za-z0-9]*" value("MESSAGE"));#g' /etc/syslog-ng/syslog-ng.conf |
503 | sed -i -e "1 s#\(.*\)\$#@version: 3.0\n\1#g" /etc/syslog-ng/syslog-ng.conf | |
504 | rm -f %{_var}/lib/%{name}/syslog-ng.persist | |
e3a52627 | 505 | %service -q syslog-ng restart |
31446e62 AM |
506 | exit 0 |
507 | ||
cc1675a4 JB |
508 | %post libs -p /sbin/ldconfig |
509 | %postun libs -p /sbin/ldconfig | |
510 | ||
db55bc6c | 511 | %files |
a25388f3 | 512 | %defattr(644,root,root,755) |
fd7236ec | 513 | %doc AUTHORS NEWS.md contrib/relogger.pl |
04316877 | 514 | %doc contrib/syslog-ng.conf.{doc,simple,RedHat} |
78780d53 | 515 | %doc contrib/{apparmor,selinux,syslog2ng} doc/syslog-ng-ose-v%{docmver}-guide-admin.pdf |
2a14aff2 | 516 | %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name} |
bbf3801f | 517 | %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}@default |
a25388f3 | 518 | %attr(750,root,root) %dir %{_sysconfdir}/syslog-ng |
303be384 | 519 | %attr(750,root,root) %dir %{_sysconfdir}/syslog-ng/patterndb.d |
bb38cad4 | 520 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/syslog-ng/scl.conf |
cc4597b5 ER |
521 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/syslog-ng/syslog-ng.conf |
522 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/syslog-ng | |
a25388f3 | 523 | %attr(754,root,root) /etc/rc.d/init.d/syslog-ng |
fd7236ec | 524 | %{systemdunitdir}/syslog-ng@.service |
4be05185 | 525 | %{systemdunitdir}/syslog-ng.service |
be957de7 | 526 | %dir %{moduledir} |
d3133019 | 527 | %attr(755,root,root) %{moduledir}/libadd-contextual-data.so |
c612fe0c | 528 | %if %{with amqp} |
be957de7 | 529 | %attr(755,root,root) %{moduledir}/libafamqp.so |
c612fe0c | 530 | %endif |
be957de7 JB |
531 | %attr(755,root,root) %{moduledir}/libaffile.so |
532 | %attr(755,root,root) %{moduledir}/libafprog.so | |
533 | %attr(755,root,root) %{moduledir}/libafsocket.so | |
be957de7 JB |
534 | %attr(755,root,root) %{moduledir}/libafstomp.so |
535 | %attr(755,root,root) %{moduledir}/libafuser.so | |
78780d53 | 536 | %attr(755,root,root) %{moduledir}/libappmodel.so |
be957de7 | 537 | %attr(755,root,root) %{moduledir}/libbasicfuncs.so |
d3133019 | 538 | %attr(755,root,root) %{moduledir}/libcef.so |
be957de7 JB |
539 | %attr(755,root,root) %{moduledir}/libconfgen.so |
540 | %attr(755,root,root) %{moduledir}/libcryptofuncs.so | |
541 | %attr(755,root,root) %{moduledir}/libcsvparser.so | |
d3133019 | 542 | %attr(755,root,root) %{moduledir}/libdate.so |
be957de7 | 543 | %attr(755,root,root) %{moduledir}/libdbparser.so |
d3133019 | 544 | %attr(755,root,root) %{moduledir}/libdisk-buffer.so |
d6605996 | 545 | %if %{with geoip2} |
78780d53 | 546 | %attr(755,root,root) %{moduledir}/libgeoip2-plugin.so |
d6605996 | 547 | %endif |
2890986e | 548 | %attr(755,root,root) %{moduledir}/libgraphite.so |
e803f395 | 549 | %attr(755,root,root) %{moduledir}/libkvformat.so |
be957de7 | 550 | %attr(755,root,root) %{moduledir}/liblinux-kmsg-format.so |
78780d53 | 551 | %attr(755,root,root) %{moduledir}/libmap-value-pairs.so |
be957de7 | 552 | %attr(755,root,root) %{moduledir}/libpacctformat.so |
2890986e | 553 | %attr(755,root,root) %{moduledir}/libpseudofile.so |
78780d53 AM |
554 | %attr(755,root,root) %{moduledir}/libsnmptrapd-parser.so |
555 | %attr(755,root,root) %{moduledir}/libstardate.so | |
556 | %attr(755,root,root) %{moduledir}/libtags-parser.so | |
557 | %attr(755,root,root) %{moduledir}/libtfgetent.so | |
558 | %attr(755,root,root) %{moduledir}/libxml.so | |
2890986e JB |
559 | %if %{with systemd} |
560 | %attr(755,root,root) %{moduledir}/libsdjournal.so | |
561 | %endif | |
be957de7 JB |
562 | %attr(755,root,root) %{moduledir}/libsyslogformat.so |
563 | %attr(755,root,root) %{moduledir}/libsystem-source.so | |
302dff3f | 564 | %attr(755,root,root) %{_sbindir}/syslog-ng |
bb38cad4 | 565 | %attr(755,root,root) %{_sbindir}/syslog-ng-ctl |
d3133019 | 566 | %attr(755,root,root) %{_bindir}/dqtool |
31da20fc | 567 | %attr(755,root,root) %{_bindir}/loggen |
ceea8d15 | 568 | %attr(755,root,root) %{_bindir}/pdbtool |
303be384 | 569 | %attr(755,root,root) %{_bindir}/update-patterndb |
a0237816 | 570 | |
a0237816 JR |
571 | %dir %{_datadir}/syslog-ng/include |
572 | %dir %{_datadir}/syslog-ng/include/scl | |
78780d53 AM |
573 | %{_datadir}/syslog-ng/include/scl/apache |
574 | %{_datadir}/syslog-ng/include/scl/default-network-drivers | |
e803f395 | 575 | %{_datadir}/syslog-ng/include/scl/elasticsearch |
78780d53 | 576 | %{_datadir}/syslog-ng/include/scl/graphite |
e803f395 | 577 | %{_datadir}/syslog-ng/include/scl/hdfs |
e803f395 | 578 | %{_datadir}/syslog-ng/include/scl/kafka |
78780d53 AM |
579 | #%{_datadir}/syslog-ng/include/scl/iptables |
580 | %dir %{_datadir}/syslog-ng/include/scl/loadbalancer | |
581 | %attr(755,root,root) %{_datadir}/syslog-ng/include/scl/loadbalancer/gen-loadbalancer.sh | |
582 | %{_datadir}/syslog-ng/include/scl/loadbalancer/plugin.conf | |
583 | %{_datadir}/syslog-ng/include/scl/loggly | |
584 | %{_datadir}/syslog-ng/include/scl/logmatic | |
e803f395 | 585 | %{_datadir}/syslog-ng/include/scl/mbox |
78780d53 AM |
586 | %{_datadir}/syslog-ng/include/scl/nodejs |
587 | %{_datadir}/syslog-ng/include/scl/osquery | |
588 | %{_datadir}/syslog-ng/include/scl/pacct | |
589 | %{_datadir}/syslog-ng/include/scl/rewrite | |
590 | %{_datadir}/syslog-ng/include/scl/snmptrap | |
e803f395 | 591 | %{_datadir}/syslog-ng/include/scl/solaris |
78780d53 AM |
592 | #%{_datadir}/syslog-ng/include/scl/sudo |
593 | %{_datadir}/syslog-ng/include/scl/windowseventlog | |
a0237816 JR |
594 | %dir %{_datadir}/syslog-ng/include/scl/syslogconf |
595 | %{_datadir}/syslog-ng/include/scl/syslogconf/README | |
596 | %attr(755,root,root) %{_datadir}/syslog-ng/include/scl/syslogconf/convert-syslogconf.awk | |
597 | %{_datadir}/syslog-ng/include/scl/syslogconf/plugin.conf | |
78780d53 AM |
598 | %{_datadir}/syslog-ng/include/scl/system |
599 | %{_datadir}/syslog-ng/xsd | |
a0237816 | 600 | |
4d910d4c | 601 | %dir %{_var}/lib/%{name} |
cd6284ba | 602 | %dir %{_var}/lib/%{name}/xsd |
78780d53 | 603 | %{_mandir}/man1/dqtool.1* |
31da20fc | 604 | %{_mandir}/man1/loggen.1* |
ceea8d15 | 605 | %{_mandir}/man1/pdbtool.1* |
bb38cad4 | 606 | %{_mandir}/man1/syslog-ng-ctl.1* |
81f47e04 JB |
607 | %{_mandir}/man5/syslog-ng.conf.5* |
608 | %{_mandir}/man8/syslog-ng.8* | |
822b8fbf | 609 | |
6d64ef6a BS |
610 | %attr(640,root,logs) %ghost /var/log/cron |
611 | %attr(640,root,logs) %ghost /var/log/daemon | |
612 | %attr(640,root,logs) %ghost /var/log/debug | |
613 | %attr(640,root,logs) %ghost /var/log/iptables | |
614 | %attr(640,root,logs) %ghost /var/log/kernel | |
615 | %attr(640,root,logs) %ghost /var/log/lpr | |
616 | %attr(640,root,logs) %ghost /var/log/maillog | |
617 | %attr(640,root,logs) %ghost /var/log/messages | |
618 | %attr(640,root,logs) %ghost /var/log/secure | |
619 | %attr(640,root,logs) %ghost /var/log/spooler | |
620 | %attr(640,root,logs) %ghost /var/log/syslog | |
621 | %attr(640,root,logs) %ghost /var/log/user | |
622 | %attr(640,root,logs) %ghost /var/log/xferlog | |
c3d7f31f | 623 | |
18bd7ab6 | 624 | %if %{with mongodb} |
4c650c71 JB |
625 | %files module-afmongodb |
626 | %defattr(644,root,root,755) | |
be957de7 | 627 | %attr(755,root,root) %{moduledir}/libafmongodb.so |
18bd7ab6 | 628 | %endif |
4c650c71 | 629 | |
24e8f380 MK |
630 | %if %{with smtp} |
631 | %files module-afsmtp | |
632 | %defattr(644,root,root,755) | |
be957de7 | 633 | %attr(755,root,root) %{moduledir}/libafsmtp.so |
24e8f380 MK |
634 | %endif |
635 | ||
5f709b4d | 636 | %if %{with sql} |
4c650c71 JB |
637 | %files module-afsql |
638 | %defattr(644,root,root,755) | |
be957de7 | 639 | %attr(755,root,root) %{moduledir}/libafsql.so |
5f709b4d | 640 | %endif |
4c650c71 | 641 | |
d3133019 JR |
642 | %if %{with http} |
643 | %files module-http | |
644 | %defattr(644,root,root,755) | |
fd7236ec | 645 | %attr(755,root,root) %{moduledir}/libhttp.so |
d3133019 JR |
646 | %endif |
647 | ||
18bd7ab6 | 648 | %if %{with json} |
24e8f380 | 649 | %files module-json-plugin |
4c650c71 | 650 | %defattr(644,root,root,755) |
be957de7 | 651 | %attr(755,root,root) %{moduledir}/libjson-plugin.so |
b17a2ded | 652 | %{_datadir}/syslog-ng/include/scl/cim |
78780d53 AM |
653 | %{_datadir}/syslog-ng/include/scl/cisco |
654 | %{_datadir}/syslog-ng/include/scl/ewmm | |
655 | %{_datadir}/syslog-ng/include/scl/graylog2 | |
18bd7ab6 | 656 | %endif |
4c650c71 | 657 | |
011ba713 JB |
658 | %if %{with redis} |
659 | %files module-redis | |
660 | %defattr(644,root,root,755) | |
be957de7 | 661 | %attr(755,root,root) %{moduledir}/libredis.so |
011ba713 JB |
662 | %endif |
663 | ||
2890986e JB |
664 | %if %{with riemann} |
665 | %files module-riemann | |
666 | %defattr(644,root,root,755) | |
667 | %attr(755,root,root) %{moduledir}/libriemann.so | |
668 | %endif | |
669 | ||
312323d8 | 670 | %if %{with geoip} |
06e66789 JB |
671 | %files module-tfgeoip |
672 | %defattr(644,root,root,755) | |
e803f395 | 673 | %attr(755,root,root) %{moduledir}/libgeoip-plugin.so |
312323d8 | 674 | %endif |
06e66789 | 675 | |
cc1675a4 JB |
676 | %files libs |
677 | %defattr(644,root,root,755) | |
78780d53 AM |
678 | %attr(755,root,root) %{slibdir}/libevtlog-%{mver}.so.*.*.* |
679 | %attr(755,root,root) %{slibdir}/libevtlog-%{mver}.so.0 | |
680 | %attr(755,root,root) %{slibdir}/libsecret-storage.so.*.*.* | |
681 | %attr(755,root,root) %{slibdir}/libsecret-storage.so.0 | |
be957de7 JB |
682 | %attr(755,root,root) %{slibdir}/libsyslog-ng-%{mver}.so.*.*.* |
683 | %attr(755,root,root) %ghost %{slibdir}/libsyslog-ng-%{mver}.so.0 | |
cc1675a4 JB |
684 | %dir %{_datadir}/syslog-ng |
685 | ||
686 | %files devel | |
687 | %defattr(644,root,root,755) | |
78780d53 AM |
688 | %attr(755,root,root) %{_libdir}/libevtlog.so |
689 | %attr(755,root,root) %{_libdir}/libsecret-storage.so | |
cc1675a4 | 690 | %attr(755,root,root) %{_libdir}/libsyslog-ng.so |
d3133019 | 691 | %{_libdir}/libsyslog-ng-native-connector.a |
be957de7 JB |
692 | %dir %{_includedir}/syslog-ng |
693 | %{_includedir}/syslog-ng/*.h | |
694 | %{_includedir}/syslog-ng/compat | |
695 | %{_includedir}/syslog-ng/control | |
d3133019 | 696 | %{_includedir}/syslog-ng/debugger |
be957de7 | 697 | %{_includedir}/syslog-ng/filter |
118f372b | 698 | %if %{without system_libivykis} |
35b01c3c JB |
699 | %{_includedir}/syslog-ng/ivykis |
700 | %endif | |
d3133019 | 701 | %{_includedir}/syslog-ng/logmsg |
be957de7 | 702 | %{_includedir}/syslog-ng/logproto |
78780d53 AM |
703 | %dir %{_includedir}/syslog-ng/modules |
704 | %{_includedir}/syslog-ng/modules/add-contextual-data | |
be957de7 JB |
705 | %{_includedir}/syslog-ng/parser |
706 | %{_includedir}/syslog-ng/rewrite | |
d3133019 | 707 | %{_includedir}/syslog-ng/scanner |
be957de7 | 708 | %{_includedir}/syslog-ng/stats |
78780d53 | 709 | %{_includedir}/syslog-ng/str-repr |
be957de7 JB |
710 | %{_includedir}/syslog-ng/template |
711 | %{_includedir}/syslog-ng/transport | |
d3133019 | 712 | %{_includedir}/syslog-ng/value-pairs |
cc1675a4 JB |
713 | %{_datadir}/syslog-ng/tools |
714 | %{_pkgconfigdir}/syslog-ng.pc | |
78780d53 | 715 | %{_pkgconfigdir}/syslog-ng-add-contextual-data.pc |
d3133019 | 716 | %{_pkgconfigdir}/syslog-ng-native-connector.pc |
be957de7 JB |
717 | |
718 | # test-devel ? | |
719 | %if "%{_libdir}/syslog-ng" != "{moduledir}" | |
720 | %dir %{_libdir}/syslog-ng | |
721 | %endif | |
722 | %dir %{_libdir}/syslog-ng/libtest | |
723 | %{_libdir}/syslog-ng/libtest/libsyslog-ng-test.a | |
724 | %{_includedir}/syslog-ng/libtest | |
725 | %{_pkgconfigdir}/syslog-ng-test.pc |