]>
Commit | Line | Data |
---|---|---|
f99cb3c4 SP |
1 | # TODO: |
2 | # build with --enable-static instead of --disable-static | |
4426d2a4 | 3 | # |
c0e7694e | 4 | # Conditional build: |
98a7a0b5 JB |
5 | %bcond_without perl # don't build perl bindings |
6 | %bcond_without python # don't build python bindings (needed by prewikka) | |
7 | %bcond_without postgresql # don't build postgresql plugin | |
8 | %bcond_without mysql # don't build mysql plugin | |
9 | %bcond_without sqlite3 # don't build sqlite3 plugin | |
c0e7694e | 10 | # |
5211581e AM |
11 | %include /usr/lib/rpm/macros.perl |
12 | Summary: The PreludeDB Library | |
c4642f9c | 13 | Summary(pl.UTF-8): Biblioteka PreludeDB |
5211581e | 14 | Name: libpreludedb |
f99cb3c4 | 15 | Version: 1.0.0 |
5e61ce47 | 16 | Release: 1 |
19dfa763 | 17 | License: GPL v2 or commercial |
5211581e | 18 | Group: Libraries |
791bb154 JB |
19 | #Source0Download: http://www.prelude-ids.com/developpement/telechargement/index.html |
20 | Source0: http://www.prelude-ids.com/download/releases/libpreludedb/%{name}-%{version}.tar.gz | |
f99cb3c4 | 21 | # Source0-md5: e2b38dfe2efb2008fcb5e2ce51f6638b |
6537a80c | 22 | Patch0: %{name}-mysql-innodb.patch |
791bb154 | 23 | URL: http://www.prelude-ids.com/ |
aca5d1e6 JB |
24 | BuildRequires: bison |
25 | BuildRequires: flex | |
19dfa763 | 26 | BuildRequires: gtk-doc >= 1.0 |
f99cb3c4 | 27 | BuildRequires: libprelude-devel >= %{version} |
4426d2a4 | 28 | %{?with_mysql:BuildRequires: mysql-devel} |
19dfa763 | 29 | %{?with_perl:BuildRequires: perl-devel} |
5211581e | 30 | BuildRequires: pkgconfig |
19dfa763 JB |
31 | %{?with_postgresql:BuildRequires: postgresql-devel} |
32 | %{?with_python:BuildRequires: python-devel >= 1:2.5} | |
5211581e | 33 | BuildRequires: rpm-perlprov |
19dfa763 JB |
34 | BuildRequires: rpm-pythonprov |
35 | BuildRequires: rpmbuild(macros) >= 1.219 | |
36 | %{?with_sqlite3:BuildRequires: sqlite3-devel} | |
28c30f4d | 37 | Requires(post): /sbin/ldconfig |
4426d2a4 | 38 | Requires: %{name}(DB_driver) = %{version}-%{release} |
f99cb3c4 | 39 | Requires: libprelude-libs >= %{version} |
5211581e AM |
40 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
41 | ||
42 | %description | |
43 | The PreludeDB Library provides an abstraction layer upon the type and | |
44 | the format of the database used to store IDMEF alerts. It allows | |
45 | developers to use the Prelude IDMEF database easily and efficiently | |
46 | without worrying about SQL, and to access the database independently | |
47 | of the type/format of the database. | |
48 | ||
2dddb0a4 JR |
49 | %description -l pl.UTF-8 |
50 | Biblioteka PreludeDB dostarcza warstwę abstrakcji ponad rodzajem i | |
f99cb3c4 SP |
51 | formatem bazy danych używanej do przechowywania alarmów IDMEF. Pozwala |
52 | programistom łatwo i wydajnie używać bazy danych IDMEF Prelude nie | |
53 | martwiąc się o SQL i dostawać się do bazy niezależnie od jej | |
aca5d1e6 JB |
54 | rodzaju/formatu. |
55 | ||
19dfa763 JB |
56 | %package devel |
57 | Summary: Header files and development documentation for libpreludedb | |
58 | Summary(pl.UTF-8): Pliki nagłówkowe i dokumentacja programistyczna do libpreludedb | |
59 | Group: Development/Libraries | |
60 | Requires: %{name} = %{version}-%{release} | |
61 | Requires: libprelude-devel >= 0.9.9 | |
4426d2a4 | 62 | |
19dfa763 JB |
63 | %description devel |
64 | Header files and development documentation for libpreludedb. | |
4426d2a4 | 65 | |
19dfa763 JB |
66 | %description devel -l pl.UTF-8 |
67 | Pliki nagłówkowe i dokumentacja programistyczna do libpreludedb. | |
68 | ||
f99cb3c4 SP |
69 | #%package static |
70 | #Summary: Static libpreludedb library | |
71 | #Summary(pl.UTF-8): Statyczna biblioteka libpreludedb | |
72 | #Group: Development/Libraries | |
73 | #Requires: %{name}-devel = %{version}-%{release} | |
19dfa763 | 74 | |
f99cb3c4 SP |
75 | #%description static |
76 | #Static libpreludedb library. | |
19dfa763 | 77 | |
f99cb3c4 SP |
78 | #%description static -l pl.UTF-8 |
79 | #Statyczna biblioteka libpreludedb. | |
4426d2a4 | 80 | |
f213ae47 | 81 | %package pgsql |
4426d2a4 | 82 | Summary: PostgreSQL backend for libpreludedb |
c4642f9c | 83 | Summary(pl.UTF-8): Interfejs do PostgreSQL dla libpreludedb |
4426d2a4 AM |
84 | Group: Libraries |
85 | Requires: %{name} = %{version}-%{release} | |
86 | Provides: %{name}(DB_driver) = %{version}-%{release} | |
87 | ||
f213ae47 | 88 | %description pgsql |
4426d2a4 AM |
89 | PostgreSQL backend for libpreludedb |
90 | ||
2dddb0a4 | 91 | %description pgsql -l pl.UTF-8 |
4426d2a4 AM |
92 | Interfejs do PostgreSQL do libpreludedb |
93 | ||
f213ae47 | 94 | %package mysql |
4426d2a4 | 95 | Summary: MySQL backend for libpreludedb |
c4642f9c | 96 | Summary(pl.UTF-8): Interfejs do MySQL dla libpreludedb |
4426d2a4 AM |
97 | Group: Libraries |
98 | Requires: %{name} = %{version}-%{release} | |
99 | Provides: %{name}(DB_driver) = %{version}-%{release} | |
100 | ||
f213ae47 | 101 | %description mysql |
4426d2a4 AM |
102 | MySQL backend for libpreludedb |
103 | ||
2dddb0a4 | 104 | %description mysql -l pl.UTF-8 |
4426d2a4 AM |
105 | Interfejs do MySQL do libpreludedb |
106 | ||
f213ae47 | 107 | %package sqlite3 |
4426d2a4 | 108 | Summary: SQLite3 backend for libpreludedb |
c4642f9c | 109 | Summary(pl.UTF-8): Interfejs do SQLite3 dla libpreludedb |
4426d2a4 AM |
110 | Group: Libraries |
111 | Requires: %{name} = %{version}-%{release} | |
112 | Provides: %{name}(DB_driver) = %{version}-%{release} | |
113 | ||
f213ae47 | 114 | %description sqlite3 |
4426d2a4 AM |
115 | SQLite3 backend for libpreludedb |
116 | ||
2dddb0a4 | 117 | %description sqlite3 -l pl.UTF-8 |
4426d2a4 AM |
118 | Interfejs do SQLite3 do libpreludedb |
119 | ||
5211581e | 120 | %package -n perl-libpreludedb |
aca5d1e6 | 121 | Summary: libpreludedb Perl bindings |
c4642f9c | 122 | Summary(pl.UTF-8): Dowiązania Perla do libpreludedb |
5211581e | 123 | Group: Development/Languages/Perl |
28c30f4d | 124 | Requires: %{name} = %{version}-%{release} |
5211581e AM |
125 | |
126 | %description -n perl-libpreludedb | |
aca5d1e6 JB |
127 | libpreludedb Perl bindings. |
128 | ||
2dddb0a4 JR |
129 | %description -n perl-libpreludedb -l pl.UTF-8 |
130 | Dowiązania Perla do libpreludedb. | |
5211581e AM |
131 | |
132 | %package -n python-libpreludedb | |
aca5d1e6 | 133 | Summary: libpreludedb Python bindings |
c4642f9c | 134 | Summary(pl.UTF-8): Dowiązania Pythona do libpreludedb |
5211581e | 135 | Group: Development/Languages/Python |
28c30f4d | 136 | Requires: %{name} = %{version}-%{release} |
5211581e AM |
137 | |
138 | %description -n python-libpreludedb | |
aca5d1e6 JB |
139 | libpreludedb Python bindings. |
140 | ||
2dddb0a4 JR |
141 | %description -n python-libpreludedb -l pl.UTF-8 |
142 | Dowiązania Pythona do libpreludedb. | |
5211581e AM |
143 | |
144 | %prep | |
40858119 | 145 | %setup -q |
6537a80c | 146 | %patch0 -p1 |
5211581e AM |
147 | |
148 | %build | |
149 | %configure \ | |
19dfa763 | 150 | --enable-gtk-doc \ |
f99cb3c4 | 151 | --disable-static \ |
5e61ce47 | 152 | --with%{!?with_perl:out}-perl \ |
153 | --with%{!?with_python:out}-python \ | |
f99cb3c4 | 154 | --with%{!?with_postgresql:out}-postgresql \ |
5e61ce47 | 155 | --with%{!?with_mysql:out}-mysql \ |
156 | --with%{!?with_sqlite3:out}-sqlite3 \ | |
4426d2a4 | 157 | --with-html-dir=%{_gtkdocdir}/libpreludedb \ |
19dfa763 | 158 | --with-perl-installdirs=vendor |
5211581e AM |
159 | |
160 | %{__make} | |
161 | ||
162 | %install | |
163 | rm -rf $RPM_BUILD_ROOT | |
164 | ||
165 | %{__make} install \ | |
166 | DESTDIR=$RPM_BUILD_ROOT | |
167 | ||
98a7a0b5 JB |
168 | # *.la are generating wrong dependencies (and are not needed anyway) |
169 | rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/*/*.{la,a} | |
f213ae47 | 170 | |
4426d2a4 | 171 | %if %{with python} |
5211581e AM |
172 | %py_ocomp $RPM_BUILD_ROOT%{py_sitedir} |
173 | %py_comp $RPM_BUILD_ROOT%{py_sitedir} | |
19dfa763 | 174 | %py_postclean |
4426d2a4 | 175 | %endif |
5211581e AM |
176 | |
177 | %clean | |
178 | rm -rf $RPM_BUILD_ROOT | |
179 | ||
4426d2a4 | 180 | %post |
28c30f4d | 181 | /sbin/ldconfig |
4426d2a4 AM |
182 | if [ "$1" = 1 ]; then |
183 | %banner -e %{name} <<EOF | |
184 | ||
185 | Create new database and database user for prelude | |
186 | (or update an existing one if needed) using templates from | |
187 | %{_datadir}/%{name}/classic | |
188 | for reference visit %{url} | |
189 | ||
190 | EOF | |
191 | fi | |
192 | ||
28c30f4d | 193 | %postun -p /sbin/ldconfig |
4426d2a4 | 194 | |
5211581e AM |
195 | %files |
196 | %defattr(644,root,root,755) | |
19dfa763 | 197 | %doc ChangeLog LICENSE.README NEWS README |
eaa145c6 | 198 | %attr(755,root,root) %{_bindir}/preludedb-admin |
19dfa763 JB |
199 | %attr(755,root,root) %{_libdir}/libpreludedb.so.*.*.* |
200 | %attr(755,root,root) %ghost %{_libdir}/libpreludedb.so.0 | |
5211581e AM |
201 | %dir %{_libdir}/%{name} |
202 | %dir %{_libdir}/%{name}/plugins | |
4426d2a4 | 203 | %dir %{_libdir}/%{name}/plugins/formats |
19dfa763 | 204 | %attr(755,root,root) %{_libdir}/%{name}/plugins/formats/classic.so |
5e61ce47 | 205 | %if %{with postgresql} || %{with mysql} || %{with sqlite3} |
4426d2a4 | 206 | %dir %{_libdir}/%{name}/plugins/sql |
5e61ce47 | 207 | %endif |
4426d2a4 AM |
208 | %dir %{_datadir}/%{name} |
209 | %dir %{_datadir}/%{name}/classic | |
19dfa763 | 210 | %{_mandir}/man1/preludedb-admin.1* |
4426d2a4 | 211 | |
98a7a0b5 JB |
212 | %files devel |
213 | %defattr(644,root,root,755) | |
214 | %attr(755,root,root) %{_bindir}/libpreludedb-config | |
19dfa763 JB |
215 | %attr(755,root,root) %{_libdir}/libpreludedb.so |
216 | %{_libdir}/libpreludedb.la | |
98a7a0b5 | 217 | %{_includedir}/libpreludedb |
19dfa763 | 218 | %{_aclocaldir}/libpreludedb.m4 |
98a7a0b5 JB |
219 | %{_gtkdocdir}/libpreludedb |
220 | ||
f99cb3c4 SP |
221 | #%files static |
222 | #%defattr(644,root,root,755) | |
223 | #%{_libdir}/libpreludedb.a | |
98a7a0b5 | 224 | |
4426d2a4 | 225 | %if %{with postgresql} |
f213ae47 | 226 | %files pgsql |
4426d2a4 | 227 | %defattr(644,root,root,755) |
19dfa763 JB |
228 | %attr(755,root,root) %{_libdir}/%{name}/plugins/sql/pgsql.so |
229 | %attr(755,root,root) %{_datadir}/%{name}/classic/mysql2pgsql.sh | |
230 | %{_datadir}/%{name}/classic/pgsql*.sql | |
4426d2a4 AM |
231 | %endif |
232 | ||
233 | %if %{with mysql} | |
f213ae47 | 234 | %files mysql |
4426d2a4 | 235 | %defattr(644,root,root,755) |
19dfa763 JB |
236 | %attr(755,root,root) %{_libdir}/%{name}/plugins/sql/mysql.so |
237 | %{_datadir}/%{name}/classic/mysql*.sql | |
4426d2a4 AM |
238 | %endif |
239 | ||
240 | %if %{with sqlite3} | |
f213ae47 | 241 | %files sqlite3 |
4426d2a4 | 242 | %defattr(644,root,root,755) |
19dfa763 JB |
243 | %attr(755,root,root) %{_libdir}/%{name}/plugins/sql/sqlite3.so |
244 | %attr(755,root,root) %{_datadir}/%{name}/classic/mysql2sqlite.sh | |
245 | %{_datadir}/%{name}/classic/sqlite*.sql | |
4426d2a4 | 246 | %endif |
5211581e | 247 | |
4426d2a4 | 248 | %if %{with perl} |
5211581e AM |
249 | %files -n perl-libpreludedb |
250 | %defattr(644,root,root,755) | |
5211581e | 251 | %{perl_vendorarch}/PreludeDB.pm |
19dfa763 JB |
252 | %dir %{perl_vendorarch}/auto/PreludeDB |
253 | %attr(755,root,root) %{perl_vendorarch}/auto/PreludeDB/PreludeDB.so | |
254 | %{perl_vendorarch}/auto/PreludeDB/PreludeDB.bs | |
4426d2a4 | 255 | %endif |
5211581e | 256 | |
4426d2a4 | 257 | %if %{with python} |
5211581e AM |
258 | %files -n python-libpreludedb |
259 | %defattr(644,root,root,755) | |
19dfa763 JB |
260 | %attr(755,root,root) %{py_sitedir}/_preludedb.so |
261 | %{py_sitedir}/preludedb.py[co] | |
262 | %{py_sitedir}/preludedb-*.egg-info | |
4426d2a4 | 263 | %endif |