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
237 sed -i -e 's/lua >= 5.1/lua51 >= 5.1/' configure.in
241 %{__aclocal} -I m4 -I libmissing/m4
248 --with%{!?with_lua:out}-lua \
249 --with%{!?with_perl:out}-perl \
250 --with%{!?with_python:out}-python \
251 --with-html-dir=%{_gtkdocdir}/libprelude \
252 --with-perl-installdirs=vendor
257 rm -rf $RPM_BUILD_ROOT
260 DESTDIR=$RPM_BUILD_ROOT
263 %{__rm} $RPM_BUILD_ROOT%{_libdir}/PreludeEasy.{la,a}
266 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
267 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
271 %{__rm} $RPM_BUILD_ROOT%{ruby_sitearchdir}/PreludeEasy.{la,a}
275 rm -rf $RPM_BUILD_ROOT
277 %post libs -p /sbin/ldconfig
278 %postun libs -p /sbin/ldconfig
280 %post c++ -p /sbin/ldconfig
281 %postun c++ -p /sbin/ldconfig
284 %defattr(644,root,root,755)
285 %doc AUTHORS ChangeLog LICENSE.README NEWS README
286 %attr(755,root,root) %{_bindir}/prelude-adduser
287 %attr(755,root,root) %{_bindir}/prelude-admin
288 %dir %{_sysconfdir}/prelude
289 %dir %{_sysconfdir}/prelude/default
290 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/prelude/default/client.conf
291 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/prelude/default/global.conf
292 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/prelude/default/idmef-client.conf
293 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/prelude/default/tls.conf
294 %dir %{_sysconfdir}/prelude/profile
295 %{_mandir}/man1/prelude-admin.1*
298 %defattr(644,root,root,755)
299 %attr(755,root,root) %{_libdir}/libprelude.so.*.*.*
300 %attr(755,root,root) %ghost %{_libdir}/libprelude.so.2
303 %defattr(644,root,root,755)
304 %attr(755,root,root) %{_bindir}/libprelude-config
305 %attr(755,root,root) %{_libdir}/libprelude.so
306 %{_libdir}/libprelude.la
307 %dir %{_includedir}/libprelude
308 %{_includedir}/libprelude/*.h
309 %{_aclocaldir}/libprelude.m4
310 %{_gtkdocdir}/libprelude
311 %{_pkgconfigdir}/libprelude.pc
314 %defattr(644,root,root,755)
315 %{_libdir}/libprelude.a
318 %defattr(644,root,root,755)
319 %attr(755,root,root) %{_libdir}/libpreludecpp.so.*.*.*
320 %attr(755,root,root) %ghost %{_libdir}/libpreludecpp.so.0
323 %defattr(644,root,root,755)
324 %attr(755,root,root) %{_libdir}/libpreludecpp.so
325 %{_libdir}/libpreludecpp.la
326 %{_includedir}/libprelude/idmef*.hxx
327 %{_includedir}/libprelude/prelude*.hxx
330 %defattr(644,root,root,755)
331 %{_libdir}/libpreludecpp.a
334 %files -n lua-prelude
335 %defattr(644,root,root,755)
336 %attr(755,root,root) %{_libdir}/PreludeEasy.so
340 %files -n perl-libprelude
341 %defattr(644,root,root,755)
342 %{perl_vendorarch}/Prelude.pm
343 %dir %{perl_vendorarch}/auto/Prelude
344 %{perl_vendorarch}/auto/Prelude/Prelude.bs
345 %attr(755,root,root) %{perl_vendorarch}/auto/Prelude/Prelude.so
347 %files -n perl-PreludeEasy
348 %defattr(644,root,root,755)
349 %{perl_vendorarch}/PreludeEasy.pm
350 %dir %{perl_vendorarch}/auto/PreludeEasy
351 %{perl_vendorarch}/auto/PreludeEasy/PreludeEasy.bs
352 %attr(755,root,root) %{perl_vendorarch}/auto/PreludeEasy/PreludeEasy.so
356 %files -n python-libprelude
357 %defattr(644,root,root,755)
358 %attr(755,root,root) %{py_sitedir}/_prelude.so
359 %{py_sitedir}/prelude.py[co]
360 %{py_sitedir}/prelude-%{version}-py*.egg-info
362 %files -n python-PreludeEasy
363 %defattr(644,root,root,755)
364 %attr(755,root,root) %{py_sitedir}/_PreludeEasy.so
365 %{py_sitedir}/PreludeEasy.py[co]
366 %{py_sitedir}/PreludeEasy-%{version}-py*.egg-info
370 %files -n ruby-prelude
371 %defattr(644,root,root,755)
372 %attr(755,root,root) %{ruby_sitearchdir}/PreludeEasy.so