3 %bcond_without lua # Lua (5.1) bindings
4 %bcond_without perl # Perl bindings
5 %bcond_without python # Python bindings (required by prewikka)
6 %bcond_without ruby # Ruby bindings
8 %include /usr/lib/rpm/macros.perl
9 Summary: The Prelude library
10 Summary(pl.UTF-8): Biblioteka Prelude
14 License: GPL v2 or commercial
16 # https://www.prelude-ids.org/projects/prelude/files
17 Source0: https://www.prelude-ids.org/attachments/download/241/%{name}-%{version}.tar.gz
18 # Source0-md5: dce1ea9f82cf436830567894e7ee622f
19 Patch0: %{name}-libtool.patch
20 Patch1: %{name}-ruby.patch
21 Patch2: %{name}-gnutls.patch
22 Patch3: %{name}-gets.patch
23 Patch4: %{name}-python.patch
24 URL: http://www.prelude-ids.com/
25 BuildRequires: autoconf >= 2.59
26 BuildRequires: automake
29 BuildRequires: gnutls-devel >= 1.0.17
30 BuildRequires: gtk-doc >= 1.0
31 BuildRequires: libgcrypt-devel >= 1.1.94
32 BuildRequires: libltdl-devel >= 2:2.0
33 BuildRequires: libstdc++-devel
34 BuildRequires: libtool >= 2:2.0
35 %{?with_lua:BuildRequires: lua51-devel >= 5.1}
36 %{?with_perl:BuildRequires: perl-devel}
37 %{?with_python:BuildRequires: python-devel >= 1:2.5}
38 BuildRequires: rpm-perlprov
39 BuildRequires: rpm-pythonprov
40 BuildRequires: rpmbuild(macros) >= 1.219
41 %{?with_ruby:BuildRequires: ruby-devel >= 1.9}
42 BuildRequires: sed >= 4.0
43 %{?with_perl:BuildRequires: swig-perl}
44 %{?with_python:BuildRequires: swig-python}
45 %{?with_ruby:BuildRequires: swig-ruby}
46 Requires: %{name}-libs = %{version}-%{release}
47 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
50 The Prelude library is a collection of generic functions providing
51 communication between the Prelude Hybrid IDS suite components. It
52 provides a convenient interface for sending alerts to Prelude Manager
53 with transparent SSL, failover and replication support, asynchronous
54 events and timer interfaces, an abstracted configuration API (hooking
55 at the commandline, the configuration line, or wide configuration,
56 available from the Manager), and a generic plugin API. It allows you
57 to easily turn your favorite security program into a Prelude sensor.
59 %description -l pl.UTF-8
60 Biblioteka Prelude to zbiór ogólnych funkcji zapewniających
61 komunikację pomiędzy komponentami zestawu Prelude Hybrid IDS.
62 Dostarcza wygodny interfejs do wysyłania alarmów do zarządcy Prelude z
63 przezroczystą obsługę SSL, failover i replikacji, interfejsy do
64 zdarzeń asynchronicznych i zegarów, abstrakcyjne API konfiguracyjne
65 (obsługujące linię poleceń, linię konfiguracji i konfigurację dostępną
66 z zarządcy) oraz ogólne API wtyczek. Pozwala łatwo zamienić ulubiony
67 program związany z bezpieczeństwem na czujnik Prelude.
70 Summary: The Prelude library
71 Summary(pl.UTF-8): Biblioteka Prelude
73 Requires: gnutls >= 1.0.17
74 Requires: libgcrypt >= 1.1.94
79 %description libs -l pl.UTF-8
83 Summary: Header files and development documentation for libprelude
84 Summary(pl.UTF-8): Pliki nagłówkowe i dokumentacja programistyczna dla libprelude
85 Group: Development/Libraries
86 Requires: %{name}-libs = %{version}-%{release}
87 Requires: gnutls-devel >= 1.0.17
88 Requires: libgcrypt-devel >= 1.1.94
89 Requires: libltdl-devel
92 Header files and development documentation for libprelude.
94 %description devel -l pl.UTF-8
95 Pliki nagłówkowe i dokumentacja programistyczna dla libprelude.
98 Summary: Static libprelude library
99 Summary(pl.UTF-8): Statyczna biblioteka libprelude
100 Group: Development/Libraries
101 Requires: %{name}-devel = %{version}-%{release}
104 Static libprelude library.
106 %description static -l pl.UTF-8
107 Statyczna biblioteka libprelude.
110 Summary: libpreludecpp - C++ binding for libprelude
111 Summary(pl.UTF-8): libpreludecpp - wiązanie C++ do libprelude
113 Requires: %{name}-libs = %{version}-%{release}
116 libpreludecpp - C++ binding for libprelude.
118 %description c++ -l pl.UTF-8
119 libpreludecpp - wiązanie C++ do libprelude.
122 Summary: Header file for libpreludecpp library
123 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki libpreludecpp
124 Group: Development/Libraries
125 Requires: %{name}-c++ = %{version}-%{release}
126 Requires: %{name}-devel = %{version}-%{release}
127 Requires: libstdc++-devel
129 %description c++-devel
130 Header file for libpreludecpp library - C++ binding for libprelude.
132 %description c++-devel -l pl.UTF-8
133 Pliki nagłówkowe biblioteki libpreludecpp - wiązań C++ do libprelude.
136 Summary: Static libpreludecpp library
137 Summary(pl.UTF-8): Statyczna biblioteka libpreludecpp
138 Group: Development/Libraries
139 Requires: %{name}-c++-devel = %{version}-%{release}
141 %description c++-static
142 Static libpreludecpp library.
144 %description c++-static -l pl.UTF-8
145 Statyczna biblioteka libpreludecpp.
147 %package -n lua-prelude
148 Summary: PreludeEasy - libprelude Lua bindings
149 Summary(pl.UTF-8): PreludeEasy - dowiązania języka Lua do libprelude
150 Group: Development/Languages
151 Requires: %{name}-c++ = %{version}-%{release}
153 %description -n lua-prelude
154 PreludeEasy - libprelude Lua bindings.
156 %description -n lua-prelude -l pl.UTF-8
157 PreludeEasy - dowiązania języka Lua do libprelude.
159 %package -n perl-libprelude
160 Summary: Prelude Perl module - low-level Perl binding for libprelude
161 Summary(pl.UTF-8): Moduł Perla Prelude - niskopoziomowe wiązanie Perla do libprelude
162 Group: Development/Languages/Perl
163 Requires: %{name}-libs = %{version}-%{release}
165 %description -n perl-libprelude
166 Prelude Perl module - low-level Perl binding for libprelude.
168 %description -n perl-libprelude -l pl.UTF-8
169 Moduł Perla Prelude - niskopoziomowe wiązanie Perla do libprelude.
171 %package -n perl-PreludeEasy
172 Summary: PreludeEasy - high-level Perl binding for libprelude
173 Summary(pl.UTF-8): PreludeEasy - wysokopoziomowe wiązanie Perla do libprelude
174 Group: Development/Languages/Perl
175 Requires: %{name}-c++ = %{version}-%{release}
177 %description -n perl-PreludeEasy
178 PreludeEasy - high-level Perl binding for libprelude.
180 %description -n perl-PreludeEasy -l pl.UTF-8
181 PreludeEasy - wysokopoziomowe wiązanie Perla do libprelude.
183 %package -n python-libprelude
184 Summary: Low-level Python binding for libprelude
185 Summary(pl.UTF-8): Niskopoziomowe wiązanie Pythona do libprelude
186 Group: Development/Languages/Python
187 Requires: %{name}-libs = %{version}-%{release}
189 %description -n python-libprelude
190 Low-level Python binding for libprelude.
192 %description -n python-libprelude -l pl.UTF-8
193 Niskopoziomowe wiązanie Pythona do libprelude.
195 %package -n python-PreludeEasy
196 Summary: PreludeEasy - high-level Python binding for libprelude
197 Summary(pl.UTF-8): PreludeEasy - wysokopoziomowe wiązanie Pythona do libprelude
198 Group: Development/Languages/Python
199 Requires: %{name}-c++ = %{version}-%{release}
201 %description -n python-PreludeEasy
202 PreludeEasy - high-level Python binding for libprelude.
204 %description -n python-PreludeEasy -l pl.UTF-8
205 PreludeEasy - wysokopoziomowe wiązanie Pythona do libprelude.
207 %package -n ruby-prelude
208 Summary: PreludeEasy - libprelude Ruby bindings
209 Summary(pl.UTF-8): PreludeEasy - dowiązania języka Ruby do libprelude
210 Group: Development/Languages
211 Requires: %{name}-c++ = %{version}-%{release}
213 %description -n ruby-prelude
214 PreludeEasy - libprelude Ruby bindings.
216 %description -n ruby-prelude -l pl.UTF-8
217 PreludeEasy - dowiązania języka Ruby do libprelude.
224 # regenerate with fresh swig for gcc 4.6+
225 %{__rm} bindings/python/{_PreludeEasy.cxx,PreludeEasy.py}
229 %{__rm} bindings/ruby/PreludeEasy.cxx
233 # regenerate with fresh swig for perl 5.20
234 %{__rm} bindings/low-level/perl/Prelude.c
241 sed -i -e 's/lua >= 5.1/lua51 >= 5.1/' configure.in
245 %{__aclocal} -I m4 -I libmissing/m4
250 am_cv_ruby_rbexecdir=%{ruby_vendorarchdir} \
253 --with%{!?with_lua:out}-lua \
254 --with%{!?with_perl:out}-perl \
255 --with%{!?with_python:out}-python \
256 --with-html-dir=%{_gtkdocdir}/libprelude \
257 --with-perl-installdirs=vendor
263 %{__perl} Makefile.PL \
268 rm -rf $RPM_BUILD_ROOT
271 DESTDIR=$RPM_BUILD_ROOT
273 %{__make} -C bindings/perl install \
274 DESTDIR=$RPM_BUILD_ROOT
277 %{__rm} $RPM_BUILD_ROOT%{_libdir}/PreludeEasy.{la,a}
280 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
281 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
285 %{__rm} $RPM_BUILD_ROOT%{ruby_vendorarchdir}/PreludeEasy.{la,a}
289 rm -rf $RPM_BUILD_ROOT
291 %post libs -p /sbin/ldconfig
292 %postun libs -p /sbin/ldconfig
294 %post c++ -p /sbin/ldconfig
295 %postun c++ -p /sbin/ldconfig
298 %defattr(644,root,root,755)
299 %doc AUTHORS ChangeLog LICENSE.README NEWS README
300 %attr(755,root,root) %{_bindir}/prelude-adduser
301 %attr(755,root,root) %{_bindir}/prelude-admin
302 %dir %{_sysconfdir}/prelude
303 %dir %{_sysconfdir}/prelude/default
304 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/prelude/default/client.conf
305 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/prelude/default/global.conf
306 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/prelude/default/idmef-client.conf
307 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/prelude/default/tls.conf
308 %dir %{_sysconfdir}/prelude/profile
309 %{_mandir}/man1/prelude-admin.1*
312 %defattr(644,root,root,755)
313 %attr(755,root,root) %{_libdir}/libprelude.so.*.*.*
314 %attr(755,root,root) %ghost %{_libdir}/libprelude.so.2
317 %defattr(644,root,root,755)
318 %attr(755,root,root) %{_bindir}/libprelude-config
319 %attr(755,root,root) %{_libdir}/libprelude.so
320 %{_libdir}/libprelude.la
321 %dir %{_includedir}/libprelude
322 %{_includedir}/libprelude/*.h
323 %{_aclocaldir}/libprelude.m4
324 %{_gtkdocdir}/libprelude
325 %{_pkgconfigdir}/libprelude.pc
328 %defattr(644,root,root,755)
329 %{_libdir}/libprelude.a
332 %defattr(644,root,root,755)
333 %attr(755,root,root) %{_libdir}/libpreludecpp.so.*.*.*
334 %attr(755,root,root) %ghost %{_libdir}/libpreludecpp.so.0
337 %defattr(644,root,root,755)
338 %attr(755,root,root) %{_libdir}/libpreludecpp.so
339 %{_libdir}/libpreludecpp.la
340 %{_includedir}/libprelude/idmef*.hxx
341 %{_includedir}/libprelude/prelude*.hxx
344 %defattr(644,root,root,755)
345 %{_libdir}/libpreludecpp.a
348 %files -n lua-prelude
349 %defattr(644,root,root,755)
350 %attr(755,root,root) %{_libdir}/PreludeEasy.so
354 %files -n perl-libprelude
355 %defattr(644,root,root,755)
356 %{perl_vendorarch}/Prelude.pm
357 %dir %{perl_vendorarch}/auto/Prelude
358 %attr(755,root,root) %{perl_vendorarch}/auto/Prelude/Prelude.so
360 %files -n perl-PreludeEasy
361 %defattr(644,root,root,755)
362 %{perl_vendorarch}/PreludeEasy.pm
363 %dir %{perl_vendorarch}/auto/PreludeEasy
364 %attr(755,root,root) %{perl_vendorarch}/auto/PreludeEasy/PreludeEasy.so
368 %files -n python-libprelude
369 %defattr(644,root,root,755)
370 %attr(755,root,root) %{py_sitedir}/_prelude.so
371 %{py_sitedir}/prelude.py[co]
372 %{py_sitedir}/prelude-%{version}-py*.egg-info
374 %files -n python-PreludeEasy
375 %defattr(644,root,root,755)
376 %attr(755,root,root) %{py_sitedir}/_PreludeEasy.so
377 %{py_sitedir}/PreludeEasy.py[co]
378 %{py_sitedir}/PreludeEasy-%{version}-py*.egg-info
382 %files -n ruby-prelude
383 %defattr(644,root,root,755)
384 %attr(755,root,root) %{ruby_vendorarchdir}/PreludeEasy.so