]> git.pld-linux.org Git - packages/opensips.git/blob - opensips.spec
- BR: libxslt-progs, pcre-devel, perl-tools-devel, rpm-pythonprov, which
[packages/opensips.git] / opensips.spec
1 #
2 # Conditional build:
3 %bcond_without  mysql           # mysql support
4 %bcond_without  pgsql           # PostgreSQL support
5 %bcond_without  odbc            # ODBC support
6 %bcond_without  radius          # radius support
7 %bcond_without  carrierroute    # carrierroute support
8 %bcond_without  ldap            # LDAP support
9 %bcond_with     osp             # ETSI OSP VoIP Peering support
10 %bcond_without  geoip           # GeoIP
11
12 Summary:        SIP proxy, redirect and registrar server
13 Summary(pl.UTF-8):      Serwer SIP rejestrujący, przekierowujący i robiący proxy
14 Name:           opensips
15 Version:        1.5.3
16 Release:        3
17 License:        GPL v2
18 Group:          Networking/Daemons
19 Source0:        http://opensips.org/pub/opensips/%{version}/src/%{name}-%{version}-tls_src.tar.gz
20 # Source0-md5:  8a03167420c31da15405bed7630ed3e2
21 Source1:        %{name}.init
22 Source2:        %{name}.sysconfig
23 URL:            http://www.opensips.org/
24 %{?with_geoip:BuildRequires:    GeoIP-devel}
25 %{?with_osp:BuildRequires:      OSPToolkit}
26 BuildRequires:  bison
27 BuildRequires:  curl-devel
28 BuildRequires:  expat-devel
29 BuildRequires:  flex
30 %{?with_carrierroute:BuildRequires:     libconfuse-devel}
31 %{?with_pgsql:BuildRequires:    libpqxx-devel}
32 BuildRequires:  libxml2-devel
33 BuildRequires:  libxslt-progs
34 #BuildRequires: lynx
35 %{?with_mysql:BuildRequires:    mysql-devel}
36 BuildRequires:  net-snmp-devel
37 %{?with_ldap:BuildRequires:     openldap-devel}
38 BuildRequires:  openssl-devel
39 BuildRequires:  pcre-devel
40 BuildRequires:  perl-devel
41 BuildRequires:  perl-tools-devel
42 %{?with_radius:BuildRequires:   radiusclient-ng-devel}
43 BuildRequires:  rpm-pythonprov
44 BuildRequires:  rpmbuild(macros) >= 1.268
45 #BuildRequires: subversion
46 %{?with_odbc:BuildRequires:     unixODBC-devel}
47 BuildRequires:  which
48 #BuildRequires: xmlrpc-c-devel >= 1.10.0
49 BuildRequires:  zlib-devel
50 Requires(post,preun):   /sbin/chkconfig
51 Requires:       rc-scripts
52 Suggests:       python-modules
53 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
54
55 # mi_xmlrpc requires xmlrpc-c-devel in version 1.9 only
56 %define exclude_modules mi_xmlrpc db_oracle
57
58 %description
59 OpenSIPS (Open SIP Server) is a mature Open Source implementation of a
60 SIP server. OpenSIPS is more than a SIP proxy/router as it includes
61 application-level functionalities. OpenSIPS, as a SIP server, is the
62 core component of any SIP-based VoIP solution. With a very flexible
63 and customizable routing engine, OpenSIPS 'unifies voice, video, IM
64 and presence services in a highly efficient way, thanks to its
65 scalable (modular) design.
66
67 %package mysql
68 Summary:        openSIPS MySQL module
69 Summary(pl.UTF-8):      Moduł MySQL do openSIPS
70 Group:          Networking/Daemons
71 Requires:       %{name} = %{version}-%{release}
72
73 %description mysql
74 MySQL module for openSIPS.
75
76 %description mysql -l pl.UTF-8
77 Moduł MySQL do openSIPS.
78
79 %package postgres
80 Summary:        openSIPS PostgreSQL module
81 Summary(pl.UTF-8):      Moduł PostgreSQL do openSIPS
82 Group:          Networking/Daemons
83 Requires:       %{name} = %{version}-%{release}
84
85 %description postgres
86 PostgreSQL module for openSIPS.
87
88 %description postgres -l pl.UTF-8
89 Moduł PostgreSQL do openSIPS.
90
91 %package radius
92 Summary:        openSIPS Radius module
93 Summary(pl.UTF-8):      Moduł Radius do openSIPS
94 Group:          Networking/Daemons
95 Requires:       %{name} = %{version}-%{release}
96
97 %description radius
98 Radius module for openSIPS.
99
100 %description radius -l pl.UTF-8
101 Moduł Radius do openSIPS.
102
103 %package odbc
104 Summary:        openSIPS ODBC module
105 Summary(pl.UTF-8):      Moduł ODBC do openSIPS
106 Group:          Networking/Daemons
107 Requires:       %{name} = %{version}-%{release}
108
109 %description odbc
110 ODBC module for openSIPS.
111
112 %description odbc -l pl.UTF-8
113 Moduł ODBC do openSIPS.
114
115 %package perl
116 Summary:        openSIPS perl and perlvdb modules
117 Summary(pl.UTF-8):      Moduły perl i perlvdb do openSIPS
118 Group:          Networking/Daemons
119 Requires:       %{name} = %{version}-%{release}
120
121 %description perl
122 Perl modules (perl & perlvdb) for openSIPS.
123
124 %description perl -l pl.UTF-8
125 Moduły perl i perlvdb do openSIPS.
126
127 %package xmpp
128 Summary:        openSIPS XMPP/Jabber modules
129 Summary(pl.UTF-8):      Moduły XMPP/Jabber do openSIPS
130 Group:          Networking/Daemons
131 Requires:       %{name} = %{version}-%{release}
132 Obsoletes:      opensips-jabber
133
134 %description xmpp
135 XMPP/Jabber modules for openSIPS.
136
137 %description xmpp -l pl.UTF-8
138 Moduły XMPP/Jabber do openSIPS.
139
140 %package ldap
141 Summary:        openSIPS LDAP and H350 modules
142 Summary(pl.UTF-8):      Moduły LDAP i H350 do openSIPS
143 Group:          Networking/Daemons
144 Requires:       %{name} = %{version}-%{release}
145
146 %description ldap
147 LDAP and H350 modules for openSIPS.
148
149 %description ldap -l pl.UTF-8
150 Moduły LDAP i H350 do openSIPS.
151
152 %package carrierroute
153 Summary:        openSIPS Carrierroute module
154 Summary(pl.UTF-8):      Moduł Carrierroute do openSIPS
155 Group:          Networking/Daemons
156 Requires:       %{name} = %{version}-%{release}
157
158 %description carrierroute
159 Carrierroute module for openSIPS.
160
161 %description carrierroute -l pl.UTF-8
162 Moduł Carrierroute do openSIPS.
163
164 %package osp
165 Summary:        openSIPS OSP module
166 Summary(pl.UTF-8):      Moduł OSP do openSIPS
167 Group:          Networking/Daemons
168 Requires:       %{name} = %{version}-%{release}
169
170 %description osp
171 OSP module for openSIPS.
172
173 %description osp -l pl.UTF-8
174 Moduł OSP do openSIPS.
175
176 %package mmgeoip
177 Summary:        openSIPS MaxMind GeoIP module
178 Summary(pl.UTF-8):      Moduł MaxMind GeoIP do openSIPS
179 Group:          Networking/Daemons
180 Requires:       %{name} = %{version}-%{release}
181
182 %description mmgeoip
183 MaxMind GeoIP module for openSIPS.
184
185 %description mmgeoip -l pl.UTF-8
186 Moduł MaxMind GeoIP do openSIPS.
187
188 %package snmpstats
189 Summary:        openSIPS SNMP statistics module
190 Summary(pl.UTF-8):      Moduł do statystyk SNMP do openSIPS
191 Group:          Networking/Daemons
192 Requires:       %{name} = %{version}-%{release}
193
194 %description snmpstats
195 openSIPS SNMP statistics module.
196
197 %description snmpstats -l pl.UTF-8
198 Moduł do statystyk SNMP do openSIPS.
199
200 %package -n mibs-%{name}
201 Summary:        MIBs for openSIPS
202 Summary(pl.UTF-8):      MIB-y dla openSIPS
203 Group:          Applications/System
204 Requires:       mibs-dirs
205 Requires:       mibs-net-snmp
206 Obsoletes:      opensips-mibs
207
208 %description -n mibs-%{name}
209 MIBs for openSIPS.
210
211 %description -n mibs-%{name} -l pl.UTF-8
212 MIB-y dla openSIPS.
213
214 %prep
215 %setup -q -n %{name}-%{version}-tls
216
217 find -type d -name CVS | xargs rm -rf
218
219 %build
220 exclude_modules="%{exclude_modules}"
221 %if %{without ldap}
222 exclude_modules="$exclude_modules h350 ldap"
223 %endif
224 %if %{without carrierroute}
225 exclude_modules="$exclude_modules carrierroute"
226 %endif
227 %if %{without osp}
228 exclude_modules="$exclude_modules osp"
229 %endif
230 %if %{without mysql}
231 exclude_modules="$exclude_modules db_mysql"
232 %endif
233 %if %{without pgsql}
234 exclude_modules="$exclude_modules db_postgres"
235 %endif
236 %if %{without odbc}
237 exclude_modules="$exclude_modules db_unixodbc"
238 %endif
239 %if %{without geoip}
240 exclude_modules="$exclude_modules mmgeoip"
241 %endif
242 %if %{without radius}
243 exclude_modules="$exclude_modules auth_radius avp_radius group_radius uri_radius peering"
244 %endif
245 echo "$exclude_modules" > exclude_modules
246 %{__make} all \
247         exclude_modules="$exclude_modules" \
248         prefix="%{_prefix}" \
249         cfg-prefix=$RPM_BUILD_ROOT \
250         cfg-target=/etc/opensips/ \
251         CC="%{__cc}" \
252         PREFIX="%{_prefix}" \
253         CFLAGS="%{rpmcflags} -Wcast-align -fPIC" \
254         TLS=1
255
256 %install
257 rm -rf $RPM_BUILD_ROOT
258 install -d $RPM_BUILD_ROOT%{_sysconfdir}/{ser,sysconfig,rc.d/init.d}
259
260 exclude_modules="$(cat exclude_modules)"
261 %{__make} install \
262         exclude_modules="$exclude_modules" \
263         prefix="%{_prefix}" \
264         basedir=$RPM_BUILD_ROOT \
265         cfg-prefix=$RPM_BUILD_ROOT \
266         cfg-target=/etc/opensips/ \
267         INSTALLMIBDIR=$RPM_BUILD_ROOT%{_datadir}/mibs
268
269 for i in modules/*; do \
270         i=$(basename $i)
271         [ -f modules/$i/README ] && cp -f modules/$i/README README.$i; \
272 done
273
274 install -d $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
275 install $RPM_BUILD_ROOT%{_docdir}/%{name}/* \
276         $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
277 rm -rf  $RPM_BUILD_ROOT%{_docdir}/%{name}
278
279 #cd doc/serdev
280 #docbook2html serdev.sgml
281 #rm -f serdev.sgml
282 #cd ../seruser
283 #docbook2html seruser.sgml
284 #rm -f seruser.sgml
285 #cd ../..
286
287 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/opensips
288 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/opensips
289
290 %clean
291 rm -rf $RPM_BUILD_ROOT
292
293 %post
294 /sbin/chkconfig --add opensips
295 %service opensips restart "SIP Daemon"
296
297 %preun
298 if [ "$1" = "0" ]; then
299         %service opensips stop
300         /sbin/chkconfig --del opensips
301 fi
302
303 %files
304 %defattr(644,root,root,755)
305 %doc README* AUTHORS CREDITS ChangeLog INSTALL NEWS scripts examples
306 %attr(755,root,root) %{_sbindir}/*
307 %dir %{_sysconfdir}/opensips
308 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/opensips/opensips.cfg
309 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/opensips/opensipsctlrc
310 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/opensips/osipsconsolerc
311 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/opensips
312 %attr(754,root,root) /etc/rc.d/init.d/opensips
313 %dir %{_libdir}/opensips
314 %dir %{_libdir}/opensips/opensipsctl
315 %{_libdir}/opensips/opensipsctl/*.*
316 %dir %{_libdir}/opensips/opensipsctl/dbtextdb
317 %attr(755,root,root) %{_libdir}/opensips/opensipsctl/dbtextdb/dbtextdb.py
318 %dir %{_libdir}/opensips/modules
319 # explict list here, no globs please (to avoid mistakes)
320 %attr(755,root,root) %{_libdir}/opensips/modules/acc.so
321 %attr(755,root,root) %{_libdir}/opensips/modules/alias_db.so
322 %attr(755,root,root) %{_libdir}/opensips/modules/auth.so
323 %attr(755,root,root) %{_libdir}/opensips/modules/auth_db.so
324 %attr(755,root,root) %{_libdir}/opensips/modules/auth_diameter.so
325 %attr(755,root,root) %{_libdir}/opensips/modules/avpops.so
326 %attr(755,root,root) %{_libdir}/opensips/modules/benchmark.so
327 %attr(755,root,root) %{_libdir}/opensips/modules/call_control.so
328 %attr(755,root,root) %{_libdir}/opensips/modules/cfgutils.so
329 %attr(755,root,root) %{_libdir}/opensips/modules/closeddial.so
330 %attr(755,root,root) %{_libdir}/opensips/modules/cpl-c.so
331 %attr(755,root,root) %{_libdir}/opensips/modules/db_berkeley.so
332 %attr(755,root,root) %{_libdir}/opensips/modules/db_flatstore.so
333 %attr(755,root,root) %{_libdir}/opensips/modules/db_text.so
334 %attr(755,root,root) %{_libdir}/opensips/modules/dialog.so
335 %attr(755,root,root) %{_libdir}/opensips/modules/dialplan.so
336 %attr(755,root,root) %{_libdir}/opensips/modules/dispatcher.so
337 %attr(755,root,root) %{_libdir}/opensips/modules/diversion.so
338 %attr(755,root,root) %{_libdir}/opensips/modules/domain.so
339 %attr(755,root,root) %{_libdir}/opensips/modules/domainpolicy.so
340 %attr(755,root,root) %{_libdir}/opensips/modules/drouting.so
341 %attr(755,root,root) %{_libdir}/opensips/modules/enum.so
342 %attr(755,root,root) %{_libdir}/opensips/modules/exec.so
343 %attr(755,root,root) %{_libdir}/opensips/modules/gflags.so
344 %attr(755,root,root) %{_libdir}/opensips/modules/group.so
345 %attr(755,root,root) %{_libdir}/opensips/modules/identity.so
346 %attr(755,root,root) %{_libdir}/opensips/modules/imc.so
347 %attr(755,root,root) %{_libdir}/opensips/modules/lcr.so
348 %attr(755,root,root) %{_libdir}/opensips/modules/load_balancer.so
349 %attr(755,root,root) %{_libdir}/opensips/modules/localcache.so
350 %attr(755,root,root) %{_libdir}/opensips/modules/mangler.so
351 %attr(755,root,root) %{_libdir}/opensips/modules/maxfwd.so
352 %attr(755,root,root) %{_libdir}/opensips/modules/mediaproxy.so
353 %attr(755,root,root) %{_libdir}/opensips/modules/mi_datagram.so
354 %attr(755,root,root) %{_libdir}/opensips/modules/mi_fifo.so
355 %attr(755,root,root) %{_libdir}/opensips/modules/msilo.so
356 %attr(755,root,root) %{_libdir}/opensips/modules/nat_traversal.so
357 %attr(755,root,root) %{_libdir}/opensips/modules/nathelper.so
358 %attr(755,root,root) %{_libdir}/opensips/modules/options.so
359 %attr(755,root,root) %{_libdir}/opensips/modules/path.so
360 %attr(755,root,root) %{_libdir}/opensips/modules/pdt.so
361 %attr(755,root,root) %{_libdir}/opensips/modules/permissions.so
362 %attr(755,root,root) %{_libdir}/opensips/modules/pike.so
363 %attr(755,root,root) %{_libdir}/opensips/modules/presence.so
364 %attr(755,root,root) %{_libdir}/opensips/modules/presence_dialoginfo.so
365 %attr(755,root,root) %{_libdir}/opensips/modules/presence_mwi.so
366 %attr(755,root,root) %{_libdir}/opensips/modules/presence_xcapdiff.so
367 %attr(755,root,root) %{_libdir}/opensips/modules/presence_xml.so
368 %attr(755,root,root) %{_libdir}/opensips/modules/pua.so
369 %attr(755,root,root) %{_libdir}/opensips/modules/pua_bla.so
370 %attr(755,root,root) %{_libdir}/opensips/modules/pua_dialoginfo.so
371 %attr(755,root,root) %{_libdir}/opensips/modules/pua_mi.so
372 %attr(755,root,root) %{_libdir}/opensips/modules/pua_usrloc.so
373 %attr(755,root,root) %{_libdir}/opensips/modules/qos.so
374 %attr(755,root,root) %{_libdir}/opensips/modules/ratelimit.so
375 %attr(755,root,root) %{_libdir}/opensips/modules/regex.so
376 %attr(755,root,root) %{_libdir}/opensips/modules/registrar.so
377 %attr(755,root,root) %{_libdir}/opensips/modules/rls.so
378 %attr(755,root,root) %{_libdir}/opensips/modules/rr.so
379 %attr(755,root,root) %{_libdir}/opensips/modules/seas.so
380 %attr(755,root,root) %{_libdir}/opensips/modules/signaling.so
381 %attr(755,root,root) %{_libdir}/opensips/modules/siptrace.so
382 %attr(755,root,root) %{_libdir}/opensips/modules/sl.so
383 %attr(755,root,root) %{_libdir}/opensips/modules/sms.so
384 %attr(755,root,root) %{_libdir}/opensips/modules/speeddial.so
385 %attr(755,root,root) %{_libdir}/opensips/modules/sst.so
386 %attr(755,root,root) %{_libdir}/opensips/modules/statistics.so
387 %attr(755,root,root) %{_libdir}/opensips/modules/textops.so
388 %attr(755,root,root) %{_libdir}/opensips/modules/tlsops.so
389 %attr(755,root,root) %{_libdir}/opensips/modules/tm.so
390 %attr(755,root,root) %{_libdir}/opensips/modules/uac.so
391 %attr(755,root,root) %{_libdir}/opensips/modules/uac_redirect.so
392 %attr(755,root,root) %{_libdir}/opensips/modules/uri.so
393 %attr(755,root,root) %{_libdir}/opensips/modules/uri_db.so
394 %attr(755,root,root) %{_libdir}/opensips/modules/userblacklist.so
395 %attr(755,root,root) %{_libdir}/opensips/modules/usrloc.so
396 %attr(755,root,root) %{_libdir}/opensips/modules/xcap_client.so
397 %attr(755,root,root) %{_libdir}/opensips/modules/xlog.so
398 %dir %{_datadir}/%{name}
399 %{_datadir}/%{name}/db_berkeley
400 %{_datadir}/%{name}/dbtext
401 %{_mandir}/man*/*
402
403 %files xmpp
404 %defattr(644,root,root,755)
405 %attr(755,root,root) %{_libdir}/opensips/modules/jabber.so
406 %attr(755,root,root) %{_libdir}/opensips/modules/xmpp.so
407 %attr(755,root,root) %{_libdir}/opensips/modules/pua_xmpp.so
408
409 %if %{with mysql}
410 %files mysql
411 %defattr(644,root,root,755)
412 %attr(755,root,root) %{_libdir}/opensips/modules/db_mysql.so
413 %{_datadir}/%{name}/mysql
414 %endif
415
416 %if %{with pgsql}
417 %files postgres
418 %defattr(644,root,root,755)
419 %attr(755,root,root) %{_libdir}/opensips/modules/db_postgres.so
420 %{_datadir}/%{name}/postgres
421 %endif
422
423 %if %{with radius}
424 %files radius
425 %defattr(644,root,root,755)
426 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/opensips/dictionary.opensips
427 %attr(755,root,root) %{_libdir}/opensips/modules/auth_radius.so
428 %attr(755,root,root) %{_libdir}/opensips/modules/avp_radius.so
429 %attr(755,root,root) %{_libdir}/opensips/modules/group_radius.so
430 %attr(755,root,root) %{_libdir}/opensips/modules/uri_radius.so
431 %attr(755,root,root) %{_libdir}/opensips/modules/peering.so
432 %endif
433
434 %if %{with odbc}
435 %files odbc
436 %defattr(644,root,root,755)
437 %attr(755,root,root) %{_libdir}/opensips/modules/db_unixodbc.so
438 %endif
439
440 %if %{with geoip}
441 %files mmgeoip
442 %defattr(644,root,root,755)
443 %attr(755,root,root) %{_libdir}/opensips/modules/mmgeoip.so
444 %endif
445
446 %if %{with ldap}
447 %files ldap
448 %defattr(644,root,root,755)
449 %attr(755,root,root) %{_libdir}/opensips/modules/h350.so
450 %attr(755,root,root) %{_libdir}/opensips/modules/ldap.so
451 %endif
452
453 %if %{with carrierroute}
454 %files carrierroute
455 %defattr(644,root,root,755)
456 %attr(755,root,root) %{_libdir}/opensips/modules/carrierroute.so
457 %endif
458
459 %if %{with osp}
460 %files osp
461 %defattr(644,root,root,755)
462 %attr(755,root,root) %{_libdir}/opensips/modules/osp.so
463 %endif
464
465 %files snmpstats
466 %defattr(644,root,root,755)
467 %attr(755,root,root) %{_libdir}/opensips/modules/snmpstats.so
468
469 %files perl
470 %defattr(644,root,root,755)
471 %attr(755,root,root) %{_libdir}/opensips/modules/perl.so
472 %attr(755,root,root) %{_libdir}/opensips/modules/perlvdb.so
473
474 %files -n mibs-%{name}
475 %defattr(644,root,root,755)
476 %{_datadir}/mibs/*
This page took 0.185482 seconds and 4 git commands to generate.