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