]> git.pld-linux.org Git - packages/libprelude.git/blob - libprelude.spec
Release 12 (by relup.sh)
[packages/libprelude.git] / libprelude.spec
1 #
2 # Conditional build:
3 %bcond_without  lua             # Lua (5.1) bindings
4 %bcond_without  perl            # Perl bindings
5 %bcond_without  python2         # Python 2.x bindings (required by prewikka)
6 %bcond_without  python3         # Python 3.x bindings
7 %bcond_without  ruby            # Ruby bindings
8 %bcond_without  static_libs     # static libraries
9 #
10 # 5.1 also possible, 5.2 is preferred
11 %define lua_ver 5.2
12 %define lua_pkg lua%(echo %{lua_ver} | tr -d .)
13 Summary:        The Prelude library
14 Summary(pl.UTF-8):      Biblioteka Prelude
15 Name:           libprelude
16 Version:        5.1.1
17 Release:        10
18 License:        GPL v2 or commercial
19 Group:          Libraries
20 #Source0Download: https://www.prelude-siem.org/projects/prelude/files
21 Source0:        https://www.prelude-siem.org/attachments/download/1181/%{name}-%{version}.tar.gz
22 # Source0-md5:  9302c68e1c84a847f77574ab048177e6
23 Patch0:         python-install.patch
24 Patch1:         %{name}-lua.patch
25 Patch2:         gtk-doc-1.32.patch
26 Patch3:         python-3.8-fix.patch
27 URL:            https://www.prelude-siem.org/
28 BuildRequires:  autoconf >= 2.59
29 BuildRequires:  automake >= 1:1.9
30 BuildRequires:  bison
31 BuildRequires:  flex
32 BuildRequires:  gnulib >= 0-0.20181013.2
33 BuildRequires:  gnutls-devel >= 1.0.17
34 BuildRequires:  gtk-doc >= 1.0
35 BuildRequires:  libgcrypt-devel >= 1.1.94
36 BuildRequires:  libltdl-devel >= 2:2.0
37 BuildRequires:  libstdc++-devel
38 BuildRequires:  libtool >= 2:2.0
39 %{?with_lua:BuildRequires:      %{lua_pkg} >= %{lua_ver}}
40 %{?with_lua:BuildRequires:      %{lua_pkg}-devel >= %{lua_ver}}
41 %{?with_perl:BuildRequires:     perl-devel}
42 %{?with_python2:BuildRequires:  python-devel >= 1:2.5}
43 %{?with_python3:BuildRequires:  python3-devel >= 1:3.2}
44 BuildRequires:  rpm-perlprov
45 BuildRequires:  rpm-pythonprov
46 BuildRequires:  rpmbuild(macros) >= 1.745
47 %{?with_ruby:BuildRequires:     ruby-devel >= 1.9}
48 BuildRequires:  sed >= 4.0
49 %{?with_perl:BuildRequires: swig-perl}
50 %{?with_python:BuildRequires: swig-python}
51 %{?with_ruby:BuildRequires: swig-ruby}
52 Requires:       %{name}-libs = %{version}-%{release}
53 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
54
55 %description
56 The Prelude library is a collection of generic functions providing
57 communication between the Prelude Hybrid IDS suite components. It
58 provides a convenient interface for sending alerts to Prelude Manager
59 with transparent SSL, failover and replication support, asynchronous
60 events and timer interfaces, an abstracted configuration API (hooking
61 at the commandline, the configuration line, or wide configuration,
62 available from the Manager), and a generic plugin API. It allows you
63 to easily turn your favorite security program into a Prelude sensor.
64
65 %description -l pl.UTF-8
66 Biblioteka Prelude to zbiór ogólnych funkcji zapewniających
67 komunikację pomiędzy komponentami zestawu Prelude Hybrid IDS.
68 Dostarcza wygodny interfejs do wysyłania alarmów do zarządcy Prelude z
69 przezroczystą obsługę SSL, failover i replikacji, interfejsy do
70 zdarzeń asynchronicznych i zegarów, abstrakcyjne API konfiguracyjne
71 (obsługujące linię poleceń, linię konfiguracji i konfigurację dostępną
72 z zarządcy) oraz ogólne API wtyczek. Pozwala łatwo zamienić ulubiony
73 program związany z bezpieczeństwem na czujnik Prelude.
74
75 %package libs
76 Summary:        The Prelude library
77 Summary(pl.UTF-8):      Biblioteka Prelude
78 Group:          Libraries
79 Requires:       gnutls >= 1.0.17
80 Requires:       libgcrypt >= 1.1.94
81
82 %description libs
83 The Prelude library.
84
85 %description libs -l pl.UTF-8
86 Biblioteka Prelude.
87
88 %package devel
89 Summary:        Header files and development documentation for libprelude
90 Summary(pl.UTF-8):      Pliki nagłówkowe i dokumentacja programistyczna dla libprelude
91 Group:          Development/Libraries
92 Requires:       %{name}-libs = %{version}-%{release}
93 Requires:       gnutls-devel >= 1.0.17
94 Requires:       libgcrypt-devel >= 1.1.94
95 Requires:       libltdl-devel
96
97 %description devel
98 Header files and development documentation for libprelude.
99
100 %description devel -l pl.UTF-8
101 Pliki nagłówkowe i dokumentacja programistyczna dla libprelude.
102
103 %package static
104 Summary:        Static libprelude library
105 Summary(pl.UTF-8):      Statyczna biblioteka libprelude
106 Group:          Development/Libraries
107 Requires:       %{name}-devel = %{version}-%{release}
108
109 %description static
110 Static libprelude library.
111
112 %description static -l pl.UTF-8
113 Statyczna biblioteka libprelude.
114
115 %package c++
116 Summary:        libpreludecpp - C++ binding for libprelude
117 Summary(pl.UTF-8):      libpreludecpp - wiązanie C++ do libprelude
118 Group:          Libraries
119 Requires:       %{name}-libs = %{version}-%{release}
120
121 %description c++
122 libpreludecpp - C++ binding for libprelude.
123
124 %description c++ -l pl.UTF-8
125 libpreludecpp - wiązanie C++ do libprelude.
126
127 %package c++-devel
128 Summary:        Header file for libpreludecpp library
129 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki libpreludecpp
130 Group:          Development/Libraries
131 Requires:       %{name}-c++ = %{version}-%{release}
132 Requires:       %{name}-devel = %{version}-%{release}
133 Requires:       libstdc++-devel
134
135 %description c++-devel
136 Header file for libpreludecpp library - C++ binding for libprelude.
137
138 %description c++-devel -l pl.UTF-8
139 Pliki nagłówkowe biblioteki libpreludecpp - wiązań C++ do libprelude.
140
141 %package c++-static
142 Summary:        Static libpreludecpp library
143 Summary(pl.UTF-8):      Statyczna biblioteka libpreludecpp
144 Group:          Development/Libraries
145 Requires:       %{name}-c++-devel = %{version}-%{release}
146
147 %description c++-static
148 Static libpreludecpp library.
149
150 %description c++-static -l pl.UTF-8
151 Statyczna biblioteka libpreludecpp.
152
153 %package swig
154 Summary:        SWIG development files for libprelude
155 Summary(pl.UTF-8):      Pliki programistyczne SWIG-a dla libprelude
156 Group:          Development/Libraries
157 Requires:       %{name}-c++-devel = %{version}-%{release}
158 Requires:       swig
159
160 %description swig
161 SWIG development files for libprelude.
162
163 %description swig -l pl.UTF-8
164 Pliki programistyczne SWIG-a dla libprelude.
165
166 %package -n lua-prelude
167 Summary:        PreludeEasy - libprelude Lua bindings
168 Summary(pl.UTF-8):      PreludeEasy - dowiązania języka Lua do libprelude
169 Group:          Development/Languages
170 Requires:       %{name}-c++ = %{version}-%{release}
171 Requires:       %{lua_pkg} >= %{lua_ver}
172
173 %description -n lua-prelude
174 PreludeEasy - libprelude Lua bindings.
175
176 %description -n lua-prelude -l pl.UTF-8
177 PreludeEasy - dowiązania języka Lua do libprelude.
178
179 %package -n perl-libprelude
180 Summary:        Prelude Perl module - Perl binding for libprelude
181 Summary(pl.UTF-8):      Moduł Perla Prelude - wiązanie Perla do libprelude
182 Group:          Development/Languages/Perl
183 Requires:       %{name}-c++ = %{version}-%{release}
184 Obsoletes:      perl-PreludeEasy
185
186 %description -n perl-libprelude
187 Prelude Perl module - Perl binding for libprelude.
188
189 %description -n perl-libprelude -l pl.UTF-8
190 Moduł Perla Prelude - wiązanie Perla do libprelude.
191
192 %package -n python-libprelude
193 Summary:        Python 2.x binding for libprelude
194 Summary(pl.UTF-8):      Wiązanie Pythona 2.x do libprelude
195 Group:          Development/Languages/Python
196 Requires:       %{name}-c++ = %{version}-%{release}
197 Obsoletes:      python-PreludeEasy
198
199 %description -n python-libprelude
200 Python 2.x binding for libprelude.
201
202 %description -n python-libprelude -l pl.UTF-8
203 Wiązanie Pythona 2.x do libprelude.
204
205 %package -n python3-libprelude
206 Summary:        Python 3.x binding for libprelude
207 Summary(pl.UTF-8):      Wiązanie Pythona 3.x do libprelude
208 Group:          Development/Languages/Python
209 Requires:       %{name}-c++ = %{version}-%{release}
210
211 %description -n python3-libprelude
212 Python 3.x binding for libprelude.
213
214 %description -n python3-libprelude -l pl.UTF-8
215 Wiązanie Pythona 3.x do libprelude.
216
217 %package -n ruby-prelude
218 Summary:        Ruby bindings for libprelude
219 Summary(pl.UTF-8):      Wiązania języka Ruby do libprelude
220 Group:          Development/Languages
221 Requires:       %{name}-c++ = %{version}-%{release}
222
223 %description -n ruby-prelude
224 Ruby bindings for libprelude.
225
226 %description -n ruby-prelude -l pl.UTF-8
227 Wiązania języka Ruby do libprelude.
228
229 %prep
230 %setup -q
231 %patch0 -p1
232 %patch1 -p1
233 %patch2 -p1
234 %patch3 -p1
235
236 %if %{with python3}
237 # regenerate with fresh swig for python 3.5+
238 %{__rm} bindings/python/{_prelude.cxx,prelude.py}
239 %endif
240
241 %build
242 gnulib-tool --copy-file lib/fseeko.c libmissing/fseeko.c
243 gnulib-tool --copy-file m4/fseeko.m4 libmissing/m4/fseeko.m4
244 %{__gtkdocize}
245 %{__libtoolize}
246 %{__aclocal} -I m4 -I libmissing/m4
247 %{__autoconf}
248 %{__autoheader}
249 %{__automake}
250 %configure \
251         am_cv_ruby_rbexecdir=%{ruby_vendorarchdir} \
252         --enable-gtk-doc \
253         %{?with_static_libs:--enable-static} \
254         --with-html-dir=%{_gtkdocdir}/libprelude \
255         --with-lua%{!?with_lua:=no} \
256         --with-perl%{!?with_perl:=no} \
257         --with-perl-installdirs=vendor \
258         --with-python2%{!?with_python2:=no} \
259         --with-python3%{!?with_python3:=no} \
260         --with-swig
261
262 %{__make}
263
264 %install
265 rm -rf $RPM_BUILD_ROOT
266
267 %{__make} install \
268         DESTDIR=$RPM_BUILD_ROOT \
269         pythondir=%{py_sitescriptdir} \
270         pyexecdir=%{py_sitedir} \
271         python3dir=%{py3_sitescriptdir} \
272         py3execdir=%{py3_sitedir}
273
274 %if %{with lua}
275 %{__rm} $RPM_BUILD_ROOT%{_libdir}/lua/%{lua_ver}/prelude.la \
276         %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/lua/%{lua_ver}/prelude.a}
277 %endif
278 %if %{with python2}
279 %py_postclean
280 %endif
281 %if %{with ruby}
282 %{__rm} $RPM_BUILD_ROOT%{ruby_vendorarchdir}/Prelude.la \
283         %{?with_static_libs:$RPM_BUILD_ROOT%{ruby_vendorarchdir}/Prelude.a}
284 %endif
285
286 %clean
287 rm -rf $RPM_BUILD_ROOT
288
289 %post   libs -p /sbin/ldconfig
290 %postun libs -p /sbin/ldconfig
291
292 %post   c++ -p /sbin/ldconfig
293 %postun c++ -p /sbin/ldconfig
294
295 %files
296 %defattr(644,root,root,755)
297 %doc AUTHORS ChangeLog LICENSE.README NEWS README
298 %attr(755,root,root) %{_bindir}/prelude-adduser
299 %attr(755,root,root) %{_bindir}/prelude-admin
300 %dir %{_sysconfdir}/prelude
301 %dir %{_sysconfdir}/prelude/default
302 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/prelude/default/client.conf
303 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/prelude/default/global.conf
304 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/prelude/default/idmef-client.conf
305 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/prelude/default/tls.conf
306 %dir %{_sysconfdir}/prelude/profile
307 %{_mandir}/man1/prelude-admin.1*
308
309 %files libs
310 %defattr(644,root,root,755)
311 %attr(755,root,root) %{_libdir}/libprelude.so.*.*.*
312 %attr(755,root,root) %ghost %{_libdir}/libprelude.so.28
313
314 %files devel
315 %defattr(644,root,root,755)
316 %attr(755,root,root) %{_bindir}/libprelude-config
317 %attr(755,root,root) %{_libdir}/libprelude.so
318 %{_libdir}/libprelude.la
319 %dir %{_includedir}/libprelude
320 %{_includedir}/libprelude/*.h
321 %{_aclocaldir}/libprelude.m4
322 %{_gtkdocdir}/libprelude
323 %{_pkgconfigdir}/libprelude.pc
324 %{_mandir}/man1/libprelude-config.1*
325
326 %if %{with static_libs}
327 %files static
328 %defattr(644,root,root,755)
329 %{_libdir}/libprelude.a
330 %endif
331
332 %files c++
333 %defattr(644,root,root,755)
334 %attr(755,root,root) %{_libdir}/libpreludecpp.so.*.*.*
335 %attr(755,root,root) %ghost %{_libdir}/libpreludecpp.so.12
336
337 %files c++-devel
338 %defattr(644,root,root,755)
339 %attr(755,root,root) %{_libdir}/libpreludecpp.so
340 %{_libdir}/libpreludecpp.la
341 %{_includedir}/libprelude/idmef*.hxx
342 %{_includedir}/libprelude/prelude*.hxx
343
344 %if %{with static_libs}
345 %files c++-static
346 %defattr(644,root,root,755)
347 %{_libdir}/libpreludecpp.a
348 %endif
349
350 %files swig
351 %defattr(644,root,root,755)
352 %dir %{_datadir}/libprelude
353 %{_datadir}/libprelude/swig
354
355 %if %{with lua}
356 %files -n lua-prelude
357 %defattr(644,root,root,755)
358 %attr(755,root,root) %{_libdir}/lua/%{lua_ver}/prelude.so
359 %endif
360
361 %if %{with perl}
362 %files -n perl-libprelude
363 %defattr(644,root,root,755)
364 %{perl_vendorarch}/Prelude.pm
365 %dir %{perl_vendorarch}/auto/Prelude
366 %attr(755,root,root) %{perl_vendorarch}/auto/Prelude/Prelude.so
367 %endif
368
369 %if %{with python2}
370 %files -n python-libprelude
371 %defattr(644,root,root,755)
372 %attr(755,root,root) %{py_sitedir}/_prelude.so
373 %{py_sitedir}/prelude.py[co]
374 %{py_sitedir}/prelude-%{version}-py*.egg-info
375 %endif
376
377 %if %{with python3}
378 %files -n python3-libprelude
379 %defattr(644,root,root,755)
380 %attr(755,root,root) %{py3_sitedir}/_prelude.cpython-*.so
381 %{py3_sitedir}/prelude.py
382 %{py3_sitedir}/__pycache__/prelude.cpython-*.py[co]
383 %{py3_sitedir}/prelude-%{version}-py*.egg-info
384 %endif
385
386 %if %{with ruby}
387 %files -n ruby-prelude
388 %defattr(644,root,root,755)
389 %attr(755,root,root) %{ruby_vendorarchdir}/Prelude.so
390 %endif
This page took 0.126307 seconds and 3 git commands to generate.