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
12 Summary: SIP proxy, redirect and registrar server
13 Summary(pl.UTF-8): Serwer SIP rejestrujący, przekierowujący i robiący proxy
18 Group: Networking/Daemons
19 Source0: http://opensips.org/pub/opensips/%{version}/src/%{name}-%{version}-tls_src.tar.gz
20 # Source0-md5: 8a03167420c31da15405bed7630ed3e2
22 Source2: %{name}.sysconfig
23 Patch0: %{name}-openssl.patch
24 URL: http://www.opensips.org/
25 %{?with_geoip:BuildRequires: GeoIP-devel}
26 %{?with_osp:BuildRequires: OSPToolkit}
28 BuildRequires: curl-devel
29 BuildRequires: expat-devel
31 %{?with_carrierroute:BuildRequires: libconfuse-devel}
32 %{?with_pgsql:BuildRequires: libpqxx-devel}
33 BuildRequires: libxml2-devel
34 BuildRequires: libxslt-progs
36 %{?with_mysql:BuildRequires: mysql-devel}
37 BuildRequires: net-snmp-devel
38 %{?with_ldap:BuildRequires: openldap-devel}
39 BuildRequires: openssl-devel
40 BuildRequires: pcre-devel
41 BuildRequires: perl-devel
42 BuildRequires: perl-tools-devel
43 %{?with_radius:BuildRequires: radiusclient-ng-devel}
44 BuildRequires: rpm-pythonprov
45 BuildRequires: rpmbuild(macros) >= 1.268
46 #BuildRequires: subversion
47 %{?with_odbc:BuildRequires: unixODBC-devel}
49 #BuildRequires: xmlrpc-c-devel >= 1.10.0
50 BuildRequires: zlib-devel
51 Requires(post,preun): /sbin/chkconfig
53 Suggests: python-modules
54 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
56 # mi_xmlrpc requires xmlrpc-c-devel in version 1.9 only
57 %define exclude_modules mi_xmlrpc db_oracle
60 OpenSIPS (Open SIP Server) is a mature Open Source implementation of a
61 SIP server. OpenSIPS is more than a SIP proxy/router as it includes
62 application-level functionalities. OpenSIPS, as a SIP server, is the
63 core component of any SIP-based VoIP solution. With a very flexible
64 and customizable routing engine, OpenSIPS 'unifies voice, video, IM
65 and presence services in a highly efficient way, thanks to its
66 scalable (modular) design.
69 Summary: openSIPS MySQL module
70 Summary(pl.UTF-8): Moduł MySQL do openSIPS
71 Group: Networking/Daemons
72 Requires: %{name} = %{version}-%{release}
75 MySQL module for openSIPS.
77 %description mysql -l pl.UTF-8
78 Moduł MySQL do openSIPS.
81 Summary: openSIPS PostgreSQL module
82 Summary(pl.UTF-8): Moduł PostgreSQL do openSIPS
83 Group: Networking/Daemons
84 Requires: %{name} = %{version}-%{release}
87 PostgreSQL module for openSIPS.
89 %description postgres -l pl.UTF-8
90 Moduł PostgreSQL do openSIPS.
93 Summary: openSIPS Radius module
94 Summary(pl.UTF-8): Moduł Radius do openSIPS
95 Group: Networking/Daemons
96 Requires: %{name} = %{version}-%{release}
99 Radius module for openSIPS.
101 %description radius -l pl.UTF-8
102 Moduł Radius do openSIPS.
105 Summary: openSIPS ODBC module
106 Summary(pl.UTF-8): Moduł ODBC do openSIPS
107 Group: Networking/Daemons
108 Requires: %{name} = %{version}-%{release}
111 ODBC module for openSIPS.
113 %description odbc -l pl.UTF-8
114 Moduł ODBC do openSIPS.
117 Summary: openSIPS perl and perlvdb modules
118 Summary(pl.UTF-8): Moduły perl i perlvdb do openSIPS
119 Group: Networking/Daemons
120 Requires: %{name} = %{version}-%{release}
123 Perl modules (perl & perlvdb) for openSIPS.
125 %description perl -l pl.UTF-8
126 Moduły perl i perlvdb do openSIPS.
129 Summary: openSIPS XMPP/Jabber modules
130 Summary(pl.UTF-8): Moduły XMPP/Jabber do openSIPS
131 Group: Networking/Daemons
132 Requires: %{name} = %{version}-%{release}
133 Obsoletes: opensips-jabber
136 XMPP/Jabber modules for openSIPS.
138 %description xmpp -l pl.UTF-8
139 Moduły XMPP/Jabber do openSIPS.
142 Summary: openSIPS LDAP and H350 modules
143 Summary(pl.UTF-8): Moduły LDAP i H350 do openSIPS
144 Group: Networking/Daemons
145 Requires: %{name} = %{version}-%{release}
148 LDAP and H350 modules for openSIPS.
150 %description ldap -l pl.UTF-8
151 Moduły LDAP i H350 do openSIPS.
153 %package carrierroute
154 Summary: openSIPS Carrierroute module
155 Summary(pl.UTF-8): Moduł Carrierroute do openSIPS
156 Group: Networking/Daemons
157 Requires: %{name} = %{version}-%{release}
159 %description carrierroute
160 Carrierroute module for openSIPS.
162 %description carrierroute -l pl.UTF-8
163 Moduł Carrierroute do openSIPS.
166 Summary: openSIPS OSP module
167 Summary(pl.UTF-8): Moduł OSP do openSIPS
168 Group: Networking/Daemons
169 Requires: %{name} = %{version}-%{release}
172 OSP module for openSIPS.
174 %description osp -l pl.UTF-8
175 Moduł OSP do openSIPS.
178 Summary: openSIPS MaxMind GeoIP module
179 Summary(pl.UTF-8): Moduł MaxMind GeoIP do openSIPS
180 Group: Networking/Daemons
181 Requires: %{name} = %{version}-%{release}
184 MaxMind GeoIP module for openSIPS.
186 %description mmgeoip -l pl.UTF-8
187 Moduł MaxMind GeoIP do openSIPS.
190 Summary: openSIPS SNMP statistics module
191 Summary(pl.UTF-8): Moduł do statystyk SNMP do openSIPS
192 Group: Networking/Daemons
193 Requires: %{name} = %{version}-%{release}
195 %description snmpstats
196 openSIPS SNMP statistics module.
198 %description snmpstats -l pl.UTF-8
199 Moduł do statystyk SNMP do openSIPS.
201 %package -n mibs-%{name}
202 Summary: MIBs for openSIPS
203 Summary(pl.UTF-8): MIB-y dla openSIPS
204 Group: Applications/System
206 Requires: mibs-net-snmp
207 Obsoletes: opensips-mibs
209 %description -n mibs-%{name}
212 %description -n mibs-%{name} -l pl.UTF-8
216 %setup -q -n %{name}-%{version}-tls
219 find -type d -name CVS | xargs rm -rf
222 exclude_modules="%{exclude_modules}"
224 exclude_modules="$exclude_modules h350 ldap"
226 %if %{without carrierroute}
227 exclude_modules="$exclude_modules carrierroute"
230 exclude_modules="$exclude_modules osp"
233 exclude_modules="$exclude_modules db_mysql"
236 exclude_modules="$exclude_modules db_postgres"
239 exclude_modules="$exclude_modules db_unixodbc"
242 exclude_modules="$exclude_modules mmgeoip"
244 %if %{without radius}
245 exclude_modules="$exclude_modules auth_radius avp_radius group_radius uri_radius peering"
247 echo "$exclude_modules" > exclude_modules
249 exclude_modules="$exclude_modules" \
250 prefix="%{_prefix}" \
251 cfg-prefix=$RPM_BUILD_ROOT \
252 cfg-target=/etc/opensips/ \
254 PREFIX="%{_prefix}" \
255 CFLAGS="%{rpmcflags} -Wcast-align -fPIC" \
259 rm -rf $RPM_BUILD_ROOT
260 install -d $RPM_BUILD_ROOT%{_sysconfdir}/{ser,sysconfig,rc.d/init.d}
262 exclude_modules="$(cat exclude_modules)"
264 exclude_modules="$exclude_modules" \
265 prefix="%{_prefix}" \
266 basedir=$RPM_BUILD_ROOT \
267 cfg-prefix=$RPM_BUILD_ROOT \
268 cfg-target=/etc/opensips/ \
269 INSTALLMIBDIR=$RPM_BUILD_ROOT%{_datadir}/mibs
271 for i in modules/*; do \
273 [ -f modules/$i/README ] && cp -f modules/$i/README README.$i; \
276 install -d $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
277 install $RPM_BUILD_ROOT%{_docdir}/%{name}/* \
278 $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
279 rm -rf $RPM_BUILD_ROOT%{_docdir}/%{name}
282 #docbook2html serdev.sgml
285 #docbook2html seruser.sgml
289 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/opensips
290 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/opensips
293 rm -rf $RPM_BUILD_ROOT
296 /sbin/chkconfig --add opensips
297 %service opensips restart "SIP Daemon"
300 if [ "$1" = "0" ]; then
301 %service opensips stop
302 /sbin/chkconfig --del opensips
306 %defattr(644,root,root,755)
307 %doc README* AUTHORS CREDITS ChangeLog INSTALL NEWS scripts examples
308 %attr(755,root,root) %{_sbindir}/*
309 %dir %{_sysconfdir}/opensips
310 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/opensips/opensips.cfg
311 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/opensips/opensipsctlrc
312 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/opensips/osipsconsolerc
313 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/opensips
314 %attr(754,root,root) /etc/rc.d/init.d/opensips
315 %dir %{_libdir}/opensips
316 %dir %{_libdir}/opensips/opensipsctl
317 %{_libdir}/opensips/opensipsctl/*.*
318 %dir %{_libdir}/opensips/opensipsctl/dbtextdb
319 %attr(755,root,root) %{_libdir}/opensips/opensipsctl/dbtextdb/dbtextdb.py
320 %dir %{_libdir}/opensips/modules
321 # explict list here, no globs please (to avoid mistakes)
322 %attr(755,root,root) %{_libdir}/opensips/modules/acc.so
323 %attr(755,root,root) %{_libdir}/opensips/modules/alias_db.so
324 %attr(755,root,root) %{_libdir}/opensips/modules/auth.so
325 %attr(755,root,root) %{_libdir}/opensips/modules/auth_db.so
326 %attr(755,root,root) %{_libdir}/opensips/modules/auth_diameter.so
327 %attr(755,root,root) %{_libdir}/opensips/modules/avpops.so
328 %attr(755,root,root) %{_libdir}/opensips/modules/benchmark.so
329 %attr(755,root,root) %{_libdir}/opensips/modules/call_control.so
330 %attr(755,root,root) %{_libdir}/opensips/modules/cfgutils.so
331 %attr(755,root,root) %{_libdir}/opensips/modules/closeddial.so
332 %attr(755,root,root) %{_libdir}/opensips/modules/cpl-c.so
333 %attr(755,root,root) %{_libdir}/opensips/modules/db_berkeley.so
334 %attr(755,root,root) %{_libdir}/opensips/modules/db_flatstore.so
335 %attr(755,root,root) %{_libdir}/opensips/modules/db_text.so
336 %attr(755,root,root) %{_libdir}/opensips/modules/dialog.so
337 %attr(755,root,root) %{_libdir}/opensips/modules/dialplan.so
338 %attr(755,root,root) %{_libdir}/opensips/modules/dispatcher.so
339 %attr(755,root,root) %{_libdir}/opensips/modules/diversion.so
340 %attr(755,root,root) %{_libdir}/opensips/modules/domain.so
341 %attr(755,root,root) %{_libdir}/opensips/modules/domainpolicy.so
342 %attr(755,root,root) %{_libdir}/opensips/modules/drouting.so
343 %attr(755,root,root) %{_libdir}/opensips/modules/enum.so
344 %attr(755,root,root) %{_libdir}/opensips/modules/exec.so
345 %attr(755,root,root) %{_libdir}/opensips/modules/gflags.so
346 %attr(755,root,root) %{_libdir}/opensips/modules/group.so
347 %attr(755,root,root) %{_libdir}/opensips/modules/identity.so
348 %attr(755,root,root) %{_libdir}/opensips/modules/imc.so
349 %attr(755,root,root) %{_libdir}/opensips/modules/lcr.so
350 %attr(755,root,root) %{_libdir}/opensips/modules/load_balancer.so
351 %attr(755,root,root) %{_libdir}/opensips/modules/localcache.so
352 %attr(755,root,root) %{_libdir}/opensips/modules/mangler.so
353 %attr(755,root,root) %{_libdir}/opensips/modules/maxfwd.so
354 %attr(755,root,root) %{_libdir}/opensips/modules/mediaproxy.so
355 %attr(755,root,root) %{_libdir}/opensips/modules/mi_datagram.so
356 %attr(755,root,root) %{_libdir}/opensips/modules/mi_fifo.so
357 %attr(755,root,root) %{_libdir}/opensips/modules/msilo.so
358 %attr(755,root,root) %{_libdir}/opensips/modules/nat_traversal.so
359 %attr(755,root,root) %{_libdir}/opensips/modules/nathelper.so
360 %attr(755,root,root) %{_libdir}/opensips/modules/options.so
361 %attr(755,root,root) %{_libdir}/opensips/modules/path.so
362 %attr(755,root,root) %{_libdir}/opensips/modules/pdt.so
363 %attr(755,root,root) %{_libdir}/opensips/modules/permissions.so
364 %attr(755,root,root) %{_libdir}/opensips/modules/pike.so
365 %attr(755,root,root) %{_libdir}/opensips/modules/presence.so
366 %attr(755,root,root) %{_libdir}/opensips/modules/presence_dialoginfo.so
367 %attr(755,root,root) %{_libdir}/opensips/modules/presence_mwi.so
368 %attr(755,root,root) %{_libdir}/opensips/modules/presence_xcapdiff.so
369 %attr(755,root,root) %{_libdir}/opensips/modules/presence_xml.so
370 %attr(755,root,root) %{_libdir}/opensips/modules/pua.so
371 %attr(755,root,root) %{_libdir}/opensips/modules/pua_bla.so
372 %attr(755,root,root) %{_libdir}/opensips/modules/pua_dialoginfo.so
373 %attr(755,root,root) %{_libdir}/opensips/modules/pua_mi.so
374 %attr(755,root,root) %{_libdir}/opensips/modules/pua_usrloc.so
375 %attr(755,root,root) %{_libdir}/opensips/modules/qos.so
376 %attr(755,root,root) %{_libdir}/opensips/modules/ratelimit.so
377 %attr(755,root,root) %{_libdir}/opensips/modules/regex.so
378 %attr(755,root,root) %{_libdir}/opensips/modules/registrar.so
379 %attr(755,root,root) %{_libdir}/opensips/modules/rls.so
380 %attr(755,root,root) %{_libdir}/opensips/modules/rr.so
381 %attr(755,root,root) %{_libdir}/opensips/modules/seas.so
382 %attr(755,root,root) %{_libdir}/opensips/modules/signaling.so
383 %attr(755,root,root) %{_libdir}/opensips/modules/siptrace.so
384 %attr(755,root,root) %{_libdir}/opensips/modules/sl.so
385 %attr(755,root,root) %{_libdir}/opensips/modules/sms.so
386 %attr(755,root,root) %{_libdir}/opensips/modules/speeddial.so
387 %attr(755,root,root) %{_libdir}/opensips/modules/sst.so
388 %attr(755,root,root) %{_libdir}/opensips/modules/statistics.so
389 %attr(755,root,root) %{_libdir}/opensips/modules/textops.so
390 %attr(755,root,root) %{_libdir}/opensips/modules/tlsops.so
391 %attr(755,root,root) %{_libdir}/opensips/modules/tm.so
392 %attr(755,root,root) %{_libdir}/opensips/modules/uac.so
393 %attr(755,root,root) %{_libdir}/opensips/modules/uac_redirect.so
394 %attr(755,root,root) %{_libdir}/opensips/modules/uri.so
395 %attr(755,root,root) %{_libdir}/opensips/modules/uri_db.so
396 %attr(755,root,root) %{_libdir}/opensips/modules/userblacklist.so
397 %attr(755,root,root) %{_libdir}/opensips/modules/usrloc.so
398 %attr(755,root,root) %{_libdir}/opensips/modules/xcap_client.so
399 %attr(755,root,root) %{_libdir}/opensips/modules/xlog.so
400 %dir %{_datadir}/%{name}
401 %{_datadir}/%{name}/db_berkeley
402 %{_datadir}/%{name}/dbtext
406 %defattr(644,root,root,755)
407 %attr(755,root,root) %{_libdir}/opensips/modules/jabber.so
408 %attr(755,root,root) %{_libdir}/opensips/modules/xmpp.so
409 %attr(755,root,root) %{_libdir}/opensips/modules/pua_xmpp.so
413 %defattr(644,root,root,755)
414 %attr(755,root,root) %{_libdir}/opensips/modules/db_mysql.so
415 %{_datadir}/%{name}/mysql
420 %defattr(644,root,root,755)
421 %attr(755,root,root) %{_libdir}/opensips/modules/db_postgres.so
422 %{_datadir}/%{name}/postgres
427 %defattr(644,root,root,755)
428 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/opensips/dictionary.opensips
429 %attr(755,root,root) %{_libdir}/opensips/modules/auth_radius.so
430 %attr(755,root,root) %{_libdir}/opensips/modules/avp_radius.so
431 %attr(755,root,root) %{_libdir}/opensips/modules/group_radius.so
432 %attr(755,root,root) %{_libdir}/opensips/modules/uri_radius.so
433 %attr(755,root,root) %{_libdir}/opensips/modules/peering.so
438 %defattr(644,root,root,755)
439 %attr(755,root,root) %{_libdir}/opensips/modules/db_unixodbc.so
444 %defattr(644,root,root,755)
445 %attr(755,root,root) %{_libdir}/opensips/modules/mmgeoip.so
450 %defattr(644,root,root,755)
451 %attr(755,root,root) %{_libdir}/opensips/modules/h350.so
452 %attr(755,root,root) %{_libdir}/opensips/modules/ldap.so
455 %if %{with carrierroute}
457 %defattr(644,root,root,755)
458 %attr(755,root,root) %{_libdir}/opensips/modules/carrierroute.so
463 %defattr(644,root,root,755)
464 %attr(755,root,root) %{_libdir}/opensips/modules/osp.so
468 %defattr(644,root,root,755)
469 %attr(755,root,root) %{_libdir}/opensips/modules/snmpstats.so
472 %defattr(644,root,root,755)
473 %attr(755,root,root) %{_libdir}/opensips/modules/perl.so
474 %attr(755,root,root) %{_libdir}/opensips/modules/perlvdb.so
476 %files -n mibs-%{name}
477 %defattr(644,root,root,755)