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 %bcond_without json # json support
12 %bcond_without memcached # memcached support
14 Summary: SIP proxy, redirect and registrar server
15 Summary(pl.UTF-8): Serwer SIP rejestrujący, przekierowujący i robiący proxy
20 Group: Networking/Daemons
21 Source0: http://opensips.org/pub/opensips/%{version}/src/%{name}-%{version}_src.tar.gz
22 # Source0-md5: 2ff1a5ba832491267fc5f3e1ae21b666
24 Source2: %{name}.sysconfig
25 Patch0: %{name}-libs.patch
26 URL: http://www.opensips.org/
27 %{?with_geoip:BuildRequires: GeoIP-devel}
28 %{?with_osp:BuildRequires: OSPToolkit}
30 BuildRequires: curl-devel
31 BuildRequires: expat-devel
33 %{?with_json:BuildRequires: json-c-devel}
34 %{?with_carrierroute:BuildRequires: libconfuse-devel}
35 %{?with_memcached:BuildRequires: libmemcached-devel}
36 %{?with_pgsql:BuildRequires: libpqxx-devel}
37 BuildRequires: libxml2-devel
38 BuildRequires: libxslt-progs
40 %{?with_mysql:BuildRequires: mysql-devel}
41 BuildRequires: net-snmp-devel
42 %{?with_ldap:BuildRequires: openldap-devel}
43 BuildRequires: openssl-devel
44 BuildRequires: pcre-devel
45 BuildRequires: perl-devel
46 BuildRequires: perl-tools-devel
47 %{?with_radius:BuildRequires: radiusclient-ng-devel}
48 BuildRequires: rpm-pythonprov
49 BuildRequires: rpmbuild(macros) >= 1.268
50 #BuildRequires: subversion
51 %{?with_odbc:BuildRequires: unixODBC-devel}
53 #BuildRequires: xmlrpc-c-devel >= 1.10.0
54 BuildRequires: zlib-devel
55 Requires(post,preun): /sbin/chkconfig
57 Suggests: python-modules
58 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
60 # mi_xmlrpc requires xmlrpc-c-devel in version 1.9 only
61 %define exclude_modules mi_xmlrpc db_oracle
64 OpenSIPS (Open SIP Server) is a mature Open Source implementation of a
65 SIP server. OpenSIPS is more than a SIP proxy/router as it includes
66 application-level functionalities. OpenSIPS, as a SIP server, is the
67 core component of any SIP-based VoIP solution. With a very flexible
68 and customizable routing engine, OpenSIPS 'unifies voice, video, IM
69 and presence services in a highly efficient way, thanks to its
70 scalable (modular) design.
73 Summary: openSIPS MySQL module
74 Summary(pl.UTF-8): Moduł MySQL do openSIPS
75 Group: Networking/Daemons
76 Requires: %{name} = %{version}-%{release}
79 MySQL module for openSIPS.
81 %description mysql -l pl.UTF-8
82 Moduł MySQL do openSIPS.
85 Summary: openSIPS PostgreSQL module
86 Summary(pl.UTF-8): Moduł PostgreSQL do openSIPS
87 Group: Networking/Daemons
88 Requires: %{name} = %{version}-%{release}
91 PostgreSQL module for openSIPS.
93 %description postgres -l pl.UTF-8
94 Moduł PostgreSQL do openSIPS.
97 Summary: openSIPS JSON module
98 Summary(pl.UTF-8): Moduł JSON do openSIPS
99 Group: Networking/Daemons
100 Requires: %{name} = %{version}-%{release}
103 JSON module for openSIPS.
105 %description json -l pl.UTF-8
106 Moduł JSON do openSIPS.
109 Summary: openSIPS memcached module
110 Summary(pl.UTF-8): Moduł memcached do openSIPS
111 Group: Networking/Daemons
112 Requires: %{name} = %{version}-%{release}
114 %description memcached
115 Memcached module for openSIPS.
117 %description memcached -l pl.UTF-8
118 Moduł memcached do openSIPS.
121 Summary: openSIPS Radius module
122 Summary(pl.UTF-8): Moduł Radius do openSIPS
123 Group: Networking/Daemons
124 Requires: %{name} = %{version}-%{release}
127 Radius module for openSIPS.
129 %description radius -l pl.UTF-8
130 Moduł Radius do openSIPS.
133 Summary: openSIPS ODBC module
134 Summary(pl.UTF-8): Moduł ODBC do openSIPS
135 Group: Networking/Daemons
136 Requires: %{name} = %{version}-%{release}
139 ODBC module for openSIPS.
141 %description odbc -l pl.UTF-8
142 Moduł ODBC do openSIPS.
145 Summary: openSIPS perl and perlvdb modules
146 Summary(pl.UTF-8): Moduły perl i perlvdb do openSIPS
147 Group: Networking/Daemons
148 Requires: %{name} = %{version}-%{release}
151 Perl modules (perl & perlvdb) for openSIPS.
153 %description perl -l pl.UTF-8
154 Moduły perl i perlvdb do openSIPS.
157 Summary: openSIPS XMPP/Jabber modules
158 Summary(pl.UTF-8): Moduły XMPP/Jabber do openSIPS
159 Group: Networking/Daemons
160 Requires: %{name} = %{version}-%{release}
161 Obsoletes: opensips-jabber
164 XMPP/Jabber modules for openSIPS.
166 %description xmpp -l pl.UTF-8
167 Moduły XMPP/Jabber do openSIPS.
170 Summary: openSIPS LDAP and H350 modules
171 Summary(pl.UTF-8): Moduły LDAP i H350 do openSIPS
172 Group: Networking/Daemons
173 Requires: %{name} = %{version}-%{release}
176 LDAP and H350 modules for openSIPS.
178 %description ldap -l pl.UTF-8
179 Moduły LDAP i H350 do openSIPS.
181 %package carrierroute
182 Summary: openSIPS Carrierroute module
183 Summary(pl.UTF-8): Moduł Carrierroute do openSIPS
184 Group: Networking/Daemons
185 Requires: %{name} = %{version}-%{release}
187 %description carrierroute
188 Carrierroute module for openSIPS.
190 %description carrierroute -l pl.UTF-8
191 Moduł Carrierroute do openSIPS.
194 Summary: openSIPS OSP module
195 Summary(pl.UTF-8): Moduł OSP do openSIPS
196 Group: Networking/Daemons
197 Requires: %{name} = %{version}-%{release}
200 OSP module for openSIPS.
202 %description osp -l pl.UTF-8
203 Moduł OSP do openSIPS.
206 Summary: openSIPS MaxMind GeoIP module
207 Summary(pl.UTF-8): Moduł MaxMind GeoIP do openSIPS
208 Group: Networking/Daemons
209 Requires: %{name} = %{version}-%{release}
212 MaxMind GeoIP module for openSIPS.
214 %description mmgeoip -l pl.UTF-8
215 Moduł MaxMind GeoIP do openSIPS.
218 Summary: openSIPS SNMP statistics module
219 Summary(pl.UTF-8): Moduł do statystyk SNMP do openSIPS
220 Group: Networking/Daemons
221 Requires: %{name} = %{version}-%{release}
223 %description snmpstats
224 openSIPS SNMP statistics module.
226 %description snmpstats -l pl.UTF-8
227 Moduł do statystyk SNMP do openSIPS.
229 %package -n mibs-%{name}
230 Summary: MIBs for openSIPS
231 Summary(pl.UTF-8): MIB-y dla openSIPS
232 Group: Applications/System
234 Requires: mibs-net-snmp
235 Obsoletes: opensips-mibs
237 %description -n mibs-%{name}
240 %description -n mibs-%{name} -l pl.UTF-8
244 %setup -q -n %{name}-%{version}-tls
247 find -type d -name CVS | xargs rm -rf
250 exclude_modules="%{exclude_modules}"
252 exclude_modules="$exclude_modules h350 ldap"
254 %if %{without carrierroute}
255 exclude_modules="$exclude_modules carrierroute"
258 exclude_modules="$exclude_modules osp"
261 exclude_modules="$exclude_modules db_mysql"
264 exclude_modules="$exclude_modules db_postgres"
267 exclude_modules="$exclude_modules db_unixodbc"
270 exclude_modules="$exclude_modules mmgeoip"
272 %if %{without radius}
273 exclude_modules="$exclude_modules aaa_radius"
276 exclude_modules="$exclude_modules json"
278 %if %{without memcached}
279 exclude_modules="$exclude_modules memcached"
281 echo "$exclude_modules" > exclude_modules
283 exclude_modules="$exclude_modules" \
284 prefix="%{_prefix}" \
285 cfg-prefix=$RPM_BUILD_ROOT \
286 cfg-target=/etc/opensips/ \
288 PREFIX="%{_prefix}" \
289 CFLAGS="%{rpmcflags} -Wcast-align -fPIC" \
293 rm -rf $RPM_BUILD_ROOT
294 install -d $RPM_BUILD_ROOT%{_sysconfdir}/{ser,sysconfig,rc.d/init.d}
296 exclude_modules="$(cat exclude_modules)"
298 exclude_modules="$exclude_modules" \
299 prefix="%{_prefix}" \
300 basedir=$RPM_BUILD_ROOT \
301 cfg-prefix=$RPM_BUILD_ROOT \
302 cfg-target=/etc/opensips/ \
303 INSTALLMIBDIR=$RPM_BUILD_ROOT%{_datadir}/mibs
305 for i in modules/*; do \
307 [ -f modules/$i/README ] && cp -f modules/$i/README README.$i; \
310 install -d $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
311 install $RPM_BUILD_ROOT%{_docdir}/%{name}/* \
312 $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
313 rm -rf $RPM_BUILD_ROOT%{_docdir}/%{name}
316 #docbook2html serdev.sgml
319 #docbook2html seruser.sgml
323 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/opensips
324 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/opensips
327 rm -rf $RPM_BUILD_ROOT
330 /sbin/chkconfig --add opensips
331 %service opensips restart "SIP Daemon"
334 if [ "$1" = "0" ]; then
335 %service opensips stop
336 /sbin/chkconfig --del opensips
340 %defattr(644,root,root,755)
341 %doc README* AUTHORS CREDITS ChangeLog INSTALL NEWS scripts examples
342 %attr(755,root,root) %{_sbindir}/*
343 %dir %{_sysconfdir}/opensips
344 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/opensips/opensips.cfg
345 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/opensips/opensipsctlrc
346 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/opensips/osipsconsolerc
347 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/opensips
348 %attr(754,root,root) /etc/rc.d/init.d/opensips
349 %dir %{_libdir}/opensips
350 %dir %{_libdir}/opensips/opensipsctl
351 %{_libdir}/opensips/opensipsctl/*.*
352 %dir %{_libdir}/opensips/opensipsctl/dbtextdb
353 %attr(755,root,root) %{_libdir}/opensips/opensipsctl/dbtextdb/dbtextdb.py
354 %dir %{_libdir}/opensips/modules
355 # explict list here, no globs please (to avoid mistakes)
356 %attr(755,root,root) %{_libdir}/opensips/modules/acc.so
357 %attr(755,root,root) %{_libdir}/opensips/modules/alias_db.so
358 %attr(755,root,root) %{_libdir}/opensips/modules/auth.so
359 %attr(755,root,root) %{_libdir}/opensips/modules/auth_aaa.so
360 %attr(755,root,root) %{_libdir}/opensips/modules/auth_db.so
361 %attr(755,root,root) %{_libdir}/opensips/modules/auth_diameter.so
362 %attr(755,root,root) %{_libdir}/opensips/modules/avpops.so
363 %attr(755,root,root) %{_libdir}/opensips/modules/b2b_entities.so
364 %attr(755,root,root) %{_libdir}/opensips/modules/b2b_logic.so
365 %attr(755,root,root) %{_libdir}/opensips/modules/benchmark.so
366 %attr(755,root,root) %{_libdir}/opensips/modules/call_control.so
367 %attr(755,root,root) %{_libdir}/opensips/modules/cfgutils.so
368 %attr(755,root,root) %{_libdir}/opensips/modules/closeddial.so
369 %attr(755,root,root) %{_libdir}/opensips/modules/cpl-c.so
370 %attr(755,root,root) %{_libdir}/opensips/modules/db_berkeley.so
371 %attr(755,root,root) %{_libdir}/opensips/modules/db_flatstore.so
372 %attr(755,root,root) %{_libdir}/opensips/modules/db_http.so
373 %attr(755,root,root) %{_libdir}/opensips/modules/db_text.so
374 %attr(755,root,root) %{_libdir}/opensips/modules/db_virtual.so
375 %attr(755,root,root) %{_libdir}/opensips/modules/dialog.so
376 %attr(755,root,root) %{_libdir}/opensips/modules/dialplan.so
377 %attr(755,root,root) %{_libdir}/opensips/modules/dispatcher.so
378 %attr(755,root,root) %{_libdir}/opensips/modules/diversion.so
379 %attr(755,root,root) %{_libdir}/opensips/modules/domain.so
380 %attr(755,root,root) %{_libdir}/opensips/modules/domainpolicy.so
381 %attr(755,root,root) %{_libdir}/opensips/modules/drouting.so
382 %attr(755,root,root) %{_libdir}/opensips/modules/enum.so
383 %attr(755,root,root) %{_libdir}/opensips/modules/event_datagram.so
384 %attr(755,root,root) %{_libdir}/opensips/modules/exec.so
385 %attr(755,root,root) %{_libdir}/opensips/modules/gflags.so
386 %attr(755,root,root) %{_libdir}/opensips/modules/group.so
387 %attr(755,root,root) %{_libdir}/opensips/modules/identity.so
388 %attr(755,root,root) %{_libdir}/opensips/modules/imc.so
389 %attr(755,root,root) %{_libdir}/opensips/modules/load_balancer.so
390 %attr(755,root,root) %{_libdir}/opensips/modules/localcache.so
391 %attr(755,root,root) %{_libdir}/opensips/modules/mangler.so
392 %attr(755,root,root) %{_libdir}/opensips/modules/maxfwd.so
393 %attr(755,root,root) %{_libdir}/opensips/modules/mediaproxy.so
394 %attr(755,root,root) %{_libdir}/opensips/modules/mi_datagram.so
395 %attr(755,root,root) %{_libdir}/opensips/modules/mi_fifo.so
396 %attr(755,root,root) %{_libdir}/opensips/modules/msilo.so
397 %attr(755,root,root) %{_libdir}/opensips/modules/nat_traversal.so
398 %attr(755,root,root) %{_libdir}/opensips/modules/nathelper.so
399 %attr(755,root,root) %{_libdir}/opensips/modules/options.so
400 %attr(755,root,root) %{_libdir}/opensips/modules/path.so
401 %attr(755,root,root) %{_libdir}/opensips/modules/pdt.so
402 %attr(755,root,root) %{_libdir}/opensips/modules/peering.so
403 %attr(755,root,root) %{_libdir}/opensips/modules/permissions.so
404 %attr(755,root,root) %{_libdir}/opensips/modules/pike.so
405 %attr(755,root,root) %{_libdir}/opensips/modules/presence.so
406 %attr(755,root,root) %{_libdir}/opensips/modules/presence_callinfo.so
407 %attr(755,root,root) %{_libdir}/opensips/modules/presence_dialoginfo.so
408 %attr(755,root,root) %{_libdir}/opensips/modules/presence_mwi.so
409 %attr(755,root,root) %{_libdir}/opensips/modules/presence_xcapdiff.so
410 %attr(755,root,root) %{_libdir}/opensips/modules/presence_xml.so
411 %attr(755,root,root) %{_libdir}/opensips/modules/pua.so
412 %attr(755,root,root) %{_libdir}/opensips/modules/pua_bla.so
413 %attr(755,root,root) %{_libdir}/opensips/modules/pua_dialoginfo.so
414 %attr(755,root,root) %{_libdir}/opensips/modules/pua_mi.so
415 %attr(755,root,root) %{_libdir}/opensips/modules/pua_usrloc.so
416 %attr(755,root,root) %{_libdir}/opensips/modules/python.so
417 %attr(755,root,root) %{_libdir}/opensips/modules/qos.so
418 %attr(755,root,root) %{_libdir}/opensips/modules/ratelimit.so
419 %attr(755,root,root) %{_libdir}/opensips/modules/regex.so
420 %attr(755,root,root) %{_libdir}/opensips/modules/registrar.so
421 %attr(755,root,root) %{_libdir}/opensips/modules/rls.so
422 %attr(755,root,root) %{_libdir}/opensips/modules/rr.so
423 %attr(755,root,root) %{_libdir}/opensips/modules/rtpproxy.so
424 %attr(755,root,root) %{_libdir}/opensips/modules/seas.so
425 %attr(755,root,root) %{_libdir}/opensips/modules/signaling.so
426 %attr(755,root,root) %{_libdir}/opensips/modules/siptrace.so
427 %attr(755,root,root) %{_libdir}/opensips/modules/sl.so
428 %attr(755,root,root) %{_libdir}/opensips/modules/sms.so
429 %attr(755,root,root) %{_libdir}/opensips/modules/speeddial.so
430 %attr(755,root,root) %{_libdir}/opensips/modules/sst.so
431 %attr(755,root,root) %{_libdir}/opensips/modules/statistics.so
432 %attr(755,root,root) %{_libdir}/opensips/modules/stun.so
433 %attr(755,root,root) %{_libdir}/opensips/modules/textops.so
434 %attr(755,root,root) %{_libdir}/opensips/modules/tlsops.so
435 %attr(755,root,root) %{_libdir}/opensips/modules/tm.so
436 %attr(755,root,root) %{_libdir}/opensips/modules/uac.so
437 %attr(755,root,root) %{_libdir}/opensips/modules/uac_auth.so
438 %attr(755,root,root) %{_libdir}/opensips/modules/uac_redirect.so
439 %attr(755,root,root) %{_libdir}/opensips/modules/uac_registrant.so
440 %attr(755,root,root) %{_libdir}/opensips/modules/uri.so
441 %attr(755,root,root) %{_libdir}/opensips/modules/userblacklist.so
442 %attr(755,root,root) %{_libdir}/opensips/modules/usrloc.so
443 %attr(755,root,root) %{_libdir}/opensips/modules/xcap_client.so
444 %dir %{_datadir}/%{name}
445 %{_datadir}/%{name}/db_berkeley
446 %{_datadir}/%{name}/dbtext
450 %defattr(644,root,root,755)
451 %attr(755,root,root) %{_libdir}/opensips/modules/jabber.so
452 %attr(755,root,root) %{_libdir}/opensips/modules/xmpp.so
453 %attr(755,root,root) %{_libdir}/opensips/modules/pua_xmpp.so
457 %defattr(644,root,root,755)
458 %attr(755,root,root) %{_libdir}/opensips/modules/db_mysql.so
459 %{_datadir}/%{name}/mysql
464 %defattr(644,root,root,755)
465 %attr(755,root,root) %{_libdir}/opensips/modules/db_postgres.so
466 %{_datadir}/%{name}/postgres
471 %defattr(644,root,root,755)
472 %attr(755,root,root) %{_libdir}/opensips/modules/json.so
475 %if %{with memcached}
477 %defattr(644,root,root,755)
478 %attr(755,root,root) %{_libdir}/opensips/modules/memcached.so
483 %defattr(644,root,root,755)
484 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/opensips/dictionary.opensips
485 %attr(755,root,root) %{_libdir}/opensips/modules/aaa_radius.so
490 %defattr(644,root,root,755)
491 %attr(755,root,root) %{_libdir}/opensips/modules/db_unixodbc.so
496 %defattr(644,root,root,755)
497 %attr(755,root,root) %{_libdir}/opensips/modules/mmgeoip.so
502 %defattr(644,root,root,755)
503 %attr(755,root,root) %{_libdir}/opensips/modules/h350.so
504 %attr(755,root,root) %{_libdir}/opensips/modules/ldap.so
507 %if %{with carrierroute}
509 %defattr(644,root,root,755)
510 %attr(755,root,root) %{_libdir}/opensips/modules/carrierroute.so
515 %defattr(644,root,root,755)
516 %attr(755,root,root) %{_libdir}/opensips/modules/osp.so
520 %defattr(644,root,root,755)
521 %attr(755,root,root) %{_libdir}/opensips/modules/snmpstats.so
524 %defattr(644,root,root,755)
525 %attr(755,root,root) %{_libdir}/opensips/modules/perl.so
526 %attr(755,root,root) %{_libdir}/opensips/modules/perlvdb.so
528 %files -n mibs-%{name}
529 %defattr(644,root,root,755)