]> git.pld-linux.org Git - packages/syslog-ng.git/blame - syslog-ng.spec
- base libs instead of hardcoding
[packages/syslog-ng.git] / syslog-ng.spec
CommitLineData
5aa38709 1#
cec64641
JR
2# TODO:
3# - move SQL module to a separate package
4#
8eca2e89 5# Conditional build:
808ca97e 6%bcond_with dynamic # link dynamically with glib, eventlog, pcre, openssl
306cd2c9 7%if "%{pld_release}" == "ac"
544d8db5 8%bcond_with sql # build with support for logging to SQL DB
306cd2c9 9%else
808ca97e 10%bcond_without sql # build without support for logging to SQL DB
306cd2c9 11%endif
f3688193 12%bcond_without tests
5461d50b 13
306cd2c9
ER
14%if "%{pld_release}" == "ac"
15%define glib2_ver 2.16.0
16%else
5461d50b 17%define glib2_ver 2.24.0
306cd2c9 18%endif
80a87a81 19Summary: Syslog-ng - new generation of the system logger
f7affeae
ER
20Summary(pl.UTF-8): Syslog-ng - zamiennik syskloga
21Summary(pt_BR.UTF-8): Daemon de log nova geração
db55bc6c 22Name: syslog-ng
1fe2e76c
AM
23Version: 3.2.2
24Release: 0.1
2cb1bc96 25License: GPL v2
db55bc6c 26Group: Daemons
f6baa24a 27Source0: http://www.balabit.com/downloads/files/syslog-ng/sources/%{version}/source/%{name}_%{version}.tar.gz
1fe2e76c 28# Source0-md5: ed8ebe559d52a63fb61e3e2db566643f
70c1937a 29Source1: %{name}.init
30Source2: %{name}.conf
e0f9b227 31Source3: %{name}.logrotate
cec64641
JR
32Source4: http://www.balabit.com/support/documentation/syslog-ng-ose-v3.2-guide-admin-en_0.pdf
33# Source4-md5: 4fa86dc863ed0206c004b3be7292bcbf
0872fe7c 34Source5: %{name}-simple.conf
c3d7f31f 35Source6: %{name}.upstart
489ceddf 36Patch0: %{name}-link.patch
4d910d4c 37Patch1: %{name}-datadir.patch
34c905de 38URL: http://www.balabit.com/products/syslog_ng/
96ef1ac7 39BuildRequires: autoconf >= 2.53
53500332 40BuildRequires: automake
c807fdfe 41BuildRequires: bison
ac9ca8e0 42BuildRequires: flex
bf8c4b27 43BuildRequires: pkgconfig
306cd2c9 44BuildRequires: rpm >= 4.4.9-56
1337adb4 45BuildRequires: rpmbuild(macros) >= 1.561
24642adc 46BuildRequires: which
bc708ef6 47%if %{with tests}
306cd2c9 48%{?with_sql:BuildRequires: libdbi-drivers-sqlite3}
24642adc 49BuildRequires: python
50BuildRequires: python-modules
bc708ef6
AF
51BuildRequires: tzdata
52%endif
8eca2e89 53%if %{with dynamic}
60232b55 54BuildRequires: eventlog-devel >= 0.2
5461d50b 55BuildRequires: glib2-devel >= 1:%{glib2_ver}
808ca97e 56BuildRequires: libcap-devel
24642adc 57%{?with_sql:BuildRequires: libdbi-devel >= 0.8.3-2}
422b3485
JB
58BuildRequires: libnet-devel >= 1:1.1.2.1-3
59BuildRequires: libwrap-devel
306cd2c9 60BuildRequires: openssl-devel
808ca97e 61BuildRequires: pcre-devel
8eca2e89 62%else
60232b55 63BuildRequires: eventlog-static >= 0.2
5461d50b 64BuildRequires: glib2-static >= 1:%{glib2_ver}
808ca97e
JR
65BuildRequires: glibc-static
66BuildRequires: libcap-static
24642adc 67%{?with_sql:BuildRequires: libdbi-static >= 0.8.3-2}
422b3485
JB
68BuildRequires: libnet-static >= 1:1.1.2.1-3
69BuildRequires: libwrap-static
306cd2c9 70BuildRequires: openssl-static
808ca97e
JR
71BuildRequires: pcre-static
72BuildRequires: zlib-static
cec64641 73Requires: libnet >= 1:1.1.2.1-7
8eca2e89 74%endif
768882cc 75Requires(post): fileutils
cc4597b5 76Requires(post,preun): /sbin/chkconfig
5461d50b 77Requires: glib2 >= 1:%{glib2_ver}
0471c4e3 78Requires: psmisc >= 20.1
622aa91c 79Requires: rc-scripts >= 0.4.3.0
18a2d4ea 80Provides: syslogdaemon
5db3c127 81Conflicts: klogd
1a409b7d 82Conflicts: msyslog
0baee825 83Conflicts: syslog
8a78073d 84BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
db55bc6c 85
bb38cad4
JR
86%if %{without dynamic}
87%define no_install_post_check_so 1
88%define _sbindir /sbin
89%define _libdir /%{_lib}
90%endif
91
db55bc6c 92%description
a42dcc7c 93syslog-ng is a syslogd replacement for Unix and Unix-like systems. It
70c1937a 94has been tested on Solaris, BSDi and Linux, and were found to run
95reliably. syslog-ng gives you a much enhanced configuration scheme,
96which lets you filter messages based on not only priority/facility
97pairs, but also on message content. You can use regexps to direct log
98stream to different destinations. A destination can be anything from a
99simple file to a network connection. syslog-ng supports TCP
100logforwarding, together with hashing to prevent unauthorized
101modification on the line.
db55bc6c 102
6ab9000c
JR
103%description -l pl.UTF-8
104Syslog-ng jest zamiennikiem dla standardowo używanych programów typu
a42dcc7c 105syslog. Działa w systemie SunOS, BSD, Linux. Daje znacznie większe
6ab9000c 106możliwości logowania i kontrolowania zbieranych informacji.
db55bc6c 107
6ab9000c
JR
108%description -l pt_BR.UTF-8
109Syslog-ng é um substituto para o syslog tradicional, mas com diversas
02e7b20a 110melhorias, como, por exemplo, a habilidade de filtrar mensagens de log
6ab9000c 111por seu conteúdo (usando expressões regulares) e não apenas pelo par
02e7b20a 112facility/prioridade como o syslog original.
113
c3d7f31f
JK
114%package upstart
115Summary: Upstart job description for syslog-ng
1337adb4 116Summary(pl.UTF-8): Opis zadania Upstart dla syslog-ng
c3d7f31f
JK
117Group: Daemons
118Requires: %{name} = %{version}-%{release}
119Requires: upstart >= 0.6
120
121%description upstart
122Upstart job description for syslog-ng.
123
124%description upstart -l pl.UTF-8
1337adb4 125Opis zadania Upstart dla syslog-ng.
c3d7f31f 126
db55bc6c 127%prep
40b3220e 128%setup -q
489ceddf 129%patch0 -p1
4d910d4c 130%patch1 -p1
0872fe7c 131cp -a %{SOURCE4} doc
f83d4749 132cp -a %{SOURCE5} contrib/syslog-ng.conf.simple
b6fee34c 133
cec64641
JR
134%{__sed} -i -e 's|/usr/bin/awk|/bin/awk|' scl/syslogconf/convert-syslogconf.awk
135
db55bc6c 136%build
1fe2e76c
AM
137%{__libtoolize}
138%{__aclocal} -I m4
4ce65bfa 139%{__autoconf}
140%{__automake}
c67bc54f 141%configure \
8eca2e89 142 --sysconfdir=%{_sysconfdir}/syslog-ng \
303be384 143 --datadir=%{_datadir}/syslog-ng \
bb38cad4 144 --with-module-dir=%{_libdir}/syslog-ng \
808ca97e
JR
145 --with-timezone-dir=%{_datadir}/zoneinfo \
146 --with-pidfile-dir=/var/run \
147 --enable-ssl \
148 --enable-ipv6 \
149 --enable-tcp-wrapper \
150 --enable-spoof-source \
151 --enable-linux-caps \
152 --enable-pcre \
1fe2e76c 153 --enable-pacct \
808ca97e
JR
154%if %{with sql}
155 --enable-sql \
156%endif
8eca2e89
JB
157%if %{with dynamic}
158 --enable-dynamic-linking
bb38cad4
JR
159%else
160 --enable-mixed-linking
8eca2e89 161%endif
4298f6c0 162
84ad47e7 163%{__make}
db55bc6c 164
f3688193
AM
165%{?with_tests:%{__make} check}
166
db55bc6c 167%install
db55bc6c 168rm -rf $RPM_BUILD_ROOT
303be384
JR
169install -d $RPM_BUILD_ROOT/etc/{init,sysconfig,logrotate.d,rc.d/init.d} \
170 $RPM_BUILD_ROOT%{_sysconfdir}/syslog-ng/patterndb.d \
cd6284ba 171 $RPM_BUILD_ROOT/var/{log,lib/%{name}/xsd}
db55bc6c 172
1fe2e76c 173%{__make} -j1 install \
4d7c194a 174 DESTDIR=$RPM_BUILD_ROOT
db55bc6c 175
544d8db5 176%{__sed} -e 's|@@SBINDIR@@|%{_sbindir}|g' %{SOURCE1} > $RPM_BUILD_ROOT/etc/rc.d/init.d/syslog-ng
306cd2c9
ER
177cp -a %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/syslog-ng/syslog-ng.conf
178cp -a %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/syslog-ng
db55bc6c 179
306cd2c9 180for n in daemon debug iptables kernel lpr maillog messages secure spooler syslog user xferlog; do
3fb60e3b
JR
181 > $RPM_BUILD_ROOT/var/log/$n
182done
2a14aff2 183touch $RPM_BUILD_ROOT/etc/sysconfig/%{name}
db55bc6c 184
bb38cad4
JR
185%{__rm} $RPM_BUILD_ROOT{%{_bindir},%{_mandir}/man1}/loggen*
186%{__rm} $RPM_BUILD_ROOT%{_libdir}/*.{so,la}
187%{__rm} $RPM_BUILD_ROOT%{_libdir}/syslog-ng/*.la
f2972fae 188
306cd2c9 189%if "%{pld_release}" == "th"
59aab0b4 190%{__sed} -e 's|@@SBINDIR@@|%{_sbindir}|g' %{SOURCE6} > $RPM_BUILD_ROOT/etc/init/%{name}.conf
306cd2c9 191%endif
c3d7f31f 192
80a87a81
JB
193%clean
194rm -rf $RPM_BUILD_ROOT
195
db55bc6c 196%post
bb38cad4 197/sbin/ldconfig
1519c9ad
ER
198if [ "$1" = "1" ]; then
199 # disable /proc/kmsg from config on first install on vserver
200 {
201 while read f ctx; do
202 [ "$f" = "VxID:" -o "$f" = "s_context:" ] && break
203 done </proc/self/status
204 } 2>/dev/null
205 if [ -z "$ctx" -o "$ctx" = "0" ]; then
206 VSERVER=no
207 else
208 VSERVER=yes
209 fi
210 if [ "$VSERVER" = "yes" ]; then
211 %{__sed} -i -e '/\/proc\/kmsg/ s/^[^#]/#&/' %{_sysconfdir}/%{name}/%{name}.conf
212 fi
213fi
214
0b833f9b 215/sbin/chkconfig --add syslog-ng
da4f5bde 216%service syslog-ng restart "syslog-ng daemon"
db55bc6c 217
218%preun
0b833f9b 219if [ "$1" = "0" ]; then
da4f5bde 220 %service syslog-ng stop
0b833f9b 221 /sbin/chkconfig --del syslog-ng
222fi
db55bc6c 223
bb38cad4
JR
224%postun -p /sbin/ldconfig
225
c3d7f31f
JK
226%post upstart
227%upstart_post %{name}
228
229%postun upstart
230%upstart_postun %{name}
231
31446e62 232%triggerun -- syslog-ng < 3.0
60bdc15a 233sed -i -e 's#sync(\(.*\))#flush_lines(\1)#g' /etc/syslog-ng/syslog-ng.conf
31446e62
AM
234sed -i -e 's#pipe ("/proc/kmsg"#file ("/proc/kmsg"#g' /etc/syslog-ng/syslog-ng.conf
235sed -i -e 's#log_prefix#program_override#g' /etc/syslog-ng/syslog-ng.conf
236sed -i -e 's#^destination #destination d_#g' /etc/syslog-ng/syslog-ng.conf
237sed -i -e 's#destination(#destination(d_#g' /etc/syslog-ng/syslog-ng.conf
01113c19 238sed -i -e 's,\bstats\b,stats_freq,' /etc/syslog-ng/syslog-ng.conf
31446e62
AM
239sed -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
240sed -i -e "1 s#\(.*\)\$#@version: 3.0\n\1#g" /etc/syslog-ng/syslog-ng.conf
241rm -f %{_var}/lib/%{name}/syslog-ng.persist
e3a52627 242%service -q syslog-ng restart
31446e62
AM
243exit 0
244
db55bc6c 245%files
a25388f3 246%defattr(644,root,root,755)
0091ccbb 247%doc AUTHORS ChangeLog NEWS debian/syslog-ng.conf* contrib/relogger.pl
f83d4749 248%doc doc/examples/syslog-ng.conf.sample contrib/syslog-ng.conf.{doc,simple,RedHat}
0ef001bb 249%doc contrib/{apparmor,selinux,syslog2ng} doc/syslog-ng-ose-v3.2-guide-admin-en_0.pdf
2a14aff2 250%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
a25388f3 251%attr(750,root,root) %dir %{_sysconfdir}/syslog-ng
303be384 252%attr(750,root,root) %dir %{_sysconfdir}/syslog-ng/patterndb.d
bb38cad4
JR
253%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/syslog-ng/modules.conf
254%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/syslog-ng/scl.conf
cc4597b5
ER
255%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/syslog-ng/syslog-ng.conf
256%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/syslog-ng
a25388f3 257%attr(754,root,root) /etc/rc.d/init.d/syslog-ng
bb38cad4
JR
258%attr(755,root,root) %{_libdir}/libsyslog-ng.so.*.*.*
259%attr(755,root,root) %ghost %{_libdir}/libsyslog-ng.so.0
260%attr(755,root,root) %{_libdir}/libsyslog-ng-patterndb.so.*.*.*
261%attr(755,root,root) %ghost %{_libdir}/libsyslog-ng-patterndb.so.0
262%dir %{_libdir}/syslog-ng
263%attr(755,root,root) %{_libdir}/syslog-ng/lib*.so
302dff3f 264%attr(755,root,root) %{_sbindir}/syslog-ng
bb38cad4 265%attr(755,root,root) %{_sbindir}/syslog-ng-ctl
303be384
JR
266%attr(755,root,root) %{_bindir}/pdbtool
267%attr(755,root,root) %{_bindir}/update-patterndb
a0237816
JR
268
269%dir %{_datadir}/syslog-ng
270%dir %{_datadir}/syslog-ng/include
271%dir %{_datadir}/syslog-ng/include/scl
272%dir %{_datadir}/syslog-ng/include/scl/pacct
273%{_datadir}/syslog-ng/include/scl/pacct/plugin.conf
274%dir %{_datadir}/syslog-ng/include/scl/syslogconf
275%{_datadir}/syslog-ng/include/scl/syslogconf/README
276%attr(755,root,root) %{_datadir}/syslog-ng/include/scl/syslogconf/convert-syslogconf.awk
277%{_datadir}/syslog-ng/include/scl/syslogconf/plugin.conf
278%dir %{_datadir}/syslog-ng/include/scl/system
279%attr(755,root,root) %{_datadir}/syslog-ng/include/scl/system/generate-system-source.sh
280%{_datadir}/syslog-ng/include/scl/system/plugin.conf
281%dir %{_datadir}/syslog-ng/xsd
282%{_datadir}/syslog-ng/xsd/patterndb-*.xsd
283
4d910d4c 284%dir %{_var}/lib/%{name}
cd6284ba 285%dir %{_var}/lib/%{name}/xsd
303be384 286%{_mandir}/man1/pdbtool.1*
bb38cad4 287%{_mandir}/man1/syslog-ng-ctl.1*
81f47e04
JB
288%{_mandir}/man5/syslog-ng.conf.5*
289%{_mandir}/man8/syslog-ng.8*
822b8fbf 290
3fb60e3b 291%attr(640,root,root) %ghost /var/log/*
c3d7f31f 292
306cd2c9 293%if "%{pld_release}" == "th"
c3d7f31f
JK
294%files upstart
295%defattr(644,root,root,755)
296%config(noreplace) %verify(not md5 mtime size) /etc/init/%{name}.conf
306cd2c9 297%endif
This page took 0.156838 seconds and 4 git commands to generate.