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