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