]> git.pld-linux.org Git - packages/asterisk.git/blob - asterisk.spec
- up to 1.6.1.0; BR need recheck
[packages/asterisk.git] / asterisk.spec
1 # TODO:
2 # - cgi-bin package - separate, because of suid-root
3 # - separate plugins into packages
4 # - use shared versions of lpc10, gsm,...
5 # - CFLAGS passing
6 # - fix bluetooth patch
7 # - package commandline tools (aelparse etc.)
8 #
9 # Conditional build:
10 %bcond_with     rxfax           # without rx (also tx :-D) fax
11 %bcond_with     bluetooth       # without bluetooth support (NFT)
12 %bcond_with     zhone           # zhone hack
13 %bcond_with     zhone_hack      # huge hack workarounding broken zhone channel banks which start randomly
14                                 # issuing pulse-dialled calls to weird numbers
15 %bcond_with     bristuff        # BRIstuff (Junghanns.NET BRI adapters) support
16 %bcond_with     verbose         # verbose build
17 #
18 %define _spandsp_version 0.0.2pre26
19 #
20 Summary:        Asterisk PBX
21 Summary(pl.UTF-8):      Centralka (PBX) Asterisk
22 Name:           asterisk
23 Version:        1.6.1.0
24 Release:        0.1%{?with_bristuff:.bristuff}
25 License:        GPL v2
26 Group:          Applications/System
27 Source0:        http://downloads.digium.com/pub/asterisk/releases/%{name}-%{version}.tar.gz
28 # Source0-md5:  7e4dccc79c504ae497ff42062279905d
29 Source1:        %{name}.init
30 Source2:        %{name}.sysconfig
31 Source3:        http://downloads.digium.com/pub/telephony/sounds/releases/asterisk-core-sounds-en-gsm-1.4.13.tar.gz
32 # Source3-md5:  65add705003e9aebdb4cd03bd1a26f97
33 Source4:        http://downloads.digium.com/pub/telephony/sounds/asterisk-moh-freeplay-wav.tar.gz
34 # Source4-md5:  1b29c55fe83ef119e69971f6fb51f30a
35 Source5:        %{name}.logrotate
36 Patch0:         %{name}-m4.patch
37 Patch1:         %{name}-configure.patch
38 Patch2:         %{name}-no_k6_on_sparc.patch
39 Patch3:         %{name}-lib.patch
40 Source10:       http://soft-switch.org/downloads/spandsp/spandsp-%{_spandsp_version}/asterisk-1.2.x/app_txfax.c
41 # Source10-md5: ddf39744c43b01e1272a4a767a198129
42 Source11:       http://soft-switch.org/downloads/spandsp/spandsp-%{_spandsp_version}/asterisk-1.2.x/app_rxfax.c
43 # Source11-md5: 474376fb6c01ff9a47fdbc5d569bfba2
44 # http://soft-switch.org/downloads/spandsp/spandsp-%{_spandsp_version}/asterisk-1.2.x/apps_Makefile.patch
45 Patch10:        %{name}-txfax-Makefile.patch
46 Patch11:        %{name}-fix-ptlib.patch
47 Patch12:        %{name}-chan_bluetooth.patch
48 Patch13:        %{name}-zhone.patch
49 # http://svn.debian.org/wsvn/pkg-voip/asterisk/trunk/debian/patches/bristuff
50 Patch14:        %{name}-bristuff.patch
51 Patch15:        %{name}-bristuff-build.patch
52 Patch16:        %{name}-bristuff-libpri.patch
53 URL:            http://www.asterisk.org/
54 BuildRequires:  OSPToolkit
55 BuildRequires:  alsa-lib-devel
56 BuildRequires:  autoconf
57 BuildRequires:  automake
58 BuildRequires:  bison
59 %{?with_bluetooth:BuildRequires: bluez-devel}
60 BuildRequires:  freetds >= 0.63
61 BuildRequires:  gawk
62 BuildRequires:  gcc >= 5:3.4
63 BuildRequires:  iksemel-devel
64 BuildRequires:  imap-static
65 BuildRequires:  jack-audio-connection-kit-devel
66 BuildRequires:  libogg-devel
67 BuildRequires:  mysql-devel
68 BuildRequires:  ncurses-devel
69 BuildRequires:  net-snmp-devel
70 BuildRequires:  newt-devel
71 BuildRequires:  openldap-devel
72 BuildRequires:  openssl-devel >= 0.9.7d
73 BuildRequires:  popt-devel
74 BuildRequires:  portaudio-devel
75 BuildRequires:  rpmbuild(macros) >= 1.268
76 BuildRequires:  sed >= 4.0
77 %{?with_rxfax:BuildRequires:    spandsp-devel-%{_spandsp_version}}
78 BuildRequires:  speex-devel
79 BuildRequires:  unixODBC-devel
80 BuildRequires:  zaptel-devel >= 1.2.10
81 BuildRequires:  zlib-devel
82 BuildRequires:  openh323-devel
83 BuildRequires:  pwlib-devel
84 BuildRequires:  sqlite3-devel
85 %if %{with bristuff}
86 BuildRequires:  libgsmat-devel
87 BuildRequires:  libpri-bristuff-devel >= 1.2.4
88 %else
89 BuildRequires:  libpri-devel >= 1.2.4
90 %endif
91 Requires(post,preun):   /sbin/chkconfig
92 Requires:       rc-scripts
93 %requires_eq    openh323
94 %requires_eq    pwlib
95 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
96
97 %description
98 Asterisk is an Open Source PBX and telephony development platform that
99 can both replace a conventional PBX and act as a platform for
100 developing custom telephony applications for delivering dynamic
101 content over a telephone similarly to how one can deliver dynamic
102 content through a web browser using CGI and a web server.
103
104 Asterisk talks to a variety of telephony hardware including BRI, PRI,
105 POTS, and IP telephony clients using the Inter-Asterisk eXchange
106 protocol (e.g. gnophone or miniphone). For more information and a
107 current list of supported hardware, see http://www.asterisk.org/.
108
109 %description -l pl.UTF-8
110 Asterisk to wolnodostępna centralka (PBX) i platforma programistyczna
111 dla telefonii, mogąca zastąpić konwencjonalne PBX-y oraz służyć jako
112 platforma do rozwijania własnych aplikacji telefonicznych do
113 przekazywania dynamicznej treści przez telefon, podobnie jak można
114 przekazywać dynamiczną treść przez przeglądarkę WWW przy użyciu CGI i
115 serwera WWW.
116
117 Asterisk współpracuje z wielorakim sprzętem telefonicznym, w tym BRI,
118 PRI, POTS oraz klienty telefonii IP używające protokołu Inter-Asterisk
119 eXchange (np. gnophone lub miniphone). Więcej informacji i listę
120 obsługiwanego sprzętu można znaleźć pod http://www.asterisk.org/.
121
122 %package devel
123 Summary:        Header files for Asterisk platform
124 Summary(pl.UTF-8):      Pliki nagłówkowe platformy Asterisk
125 Group:          Development
126
127 %description devel
128 Header files for Asterisk development platform.
129
130 %description devel -l pl.UTF-8
131 Pliki nagłówkowe platformy programistycznej Asterisk.
132
133 %package examples
134 Summary:        Example files for the Asterisk PBX
135 Summary(pl.UTF-8):      Pliki przykładowe dla centralki Asterisk
136 Group:          Applications/System
137 Requires:       %{name} = %{version}-%{release}
138
139 %description examples
140 Example files for the Asterisk PBX.
141
142 %description examples -l pl.UTF-8
143 Pliki przykładowe dla centralki Asterisk.
144
145 %prep
146 %setup -q -n %{name}-%{version}
147
148 %{?with_zhone:sed -i -e 's|.*#define.*ZHONE_HACK.*|#define ZHONE_HACK 1|g' channels/chan_zap.c}
149
150 #%patch0 -p0
151 #%patch1 -p1
152 #%patch2 -p1
153 #%patch3 -p1
154 #%patch5 -p1
155 #%patch6 -p1
156 #%patch7 -p1
157 #%patch9 -p1
158
159 %if %{with rxfax}
160 cd apps
161 %patch10 -p0
162 cp %{SOURCE10} .
163 cp %{SOURCE11} .
164 %endif
165
166 #%patch11 -p1
167
168 %{?with_bluetooth:%patch12 -p1}
169 %{?with_zhonehack:%patch13 -p1}
170 %if %{with bristuff}
171 %patch14 -p1
172 %patch15 -p1
173 %patch16 -p1
174 %endif
175
176 sed -i -e "s#/usr/lib/#/usr/%{_lib}/#g#" Makefile
177
178 mkdir -p imap/c-client
179 ln -s %{_libdir}/libc-client.a imap/c-client/c-client.a
180 ln -s %{_includedir}/imap/* imap/c-client/
181 echo '-lssl -lpam' > imap/c-client/LDFLAGS
182
183 %build
184 rm -f pbx/.depend
185
186 %{__aclocal} -I autoconf
187 %{__autoheader}
188 %{__autoconf}
189
190 CPPFLAGS="-I/usr/include/openh323"; export CPPFLAGS
191 %configure \
192         %{?with_bristuff:--with-gsmat=%{_prefix}} \
193         --with-imap="`pwd`"/imap
194
195 # safe checks
196 %{?with_bristuff:grep '^#define HAVE_GSMAT 1' include/asterisk/autoconfig.h || exit 1}
197
198 cp -f .cleancount .lastclean
199
200 %{__make} -j1 -C menuselect \
201         %{?with_verbose:NOISY_BUILD=yes} \
202         CC="%{__cc}" \
203         OPTIMIZE="%{rpmcflags}"
204
205 %{__make} -j1 \
206         %{?with_verbose:NOISY_BUILD=yes} \
207         CC="%{__cc}" \
208         OPTIMIZE="%{rpmcflags}" \
209         CHANNEL_LIBS+=chan_bluetooth.so || :
210
211 # rerun needed; asterisk want's that
212 %{__make} -j1 \
213         %{?with_verbose:NOISY_BUILD=yes} \
214         CC="%{__cc}" \
215         OPTIMIZE="%{rpmcflags}" \
216         CHANNEL_LIBS+=chan_bluetooth.so
217
218 # it requires doxygen - I don't know if we should do this...
219 #%{__make} progdocs
220
221 # safe checks
222 %{?with_bristuff:objdump -p channels/chan_zap.so | grep -qE 'NEEDED +libgsmat\.so' || exit 1}
223
224 %install
225 rm -rf $RPM_BUILD_ROOT
226 install -d $RPM_BUILD_ROOT{/var/{log/asterisk/cdr-csv,spool/asterisk/monitor},/etc/{rc.d/init.d,sysconfig,logrotate.d}}
227
228 install %{SOURCE3} sounds
229 install %{SOURCE4} sounds
230 install %{SOURCE5} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
231
232 %{__make} -j1 install \
233         DESTDIR=$RPM_BUILD_ROOT
234 %{__make} -j1 samples \
235         DESTDIR=$RPM_BUILD_ROOT
236
237 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
238 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
239
240 %clean
241 rm -rf $RPM_BUILD_ROOT
242
243 %post
244 /sbin/chkconfig --add asterisk
245 # this was insane; breaking all current calls
246 #%%service asterisk restart "Asterisk daemon"
247
248 %preun
249 if [ "$1" = "0" ]; then
250         %service asterisk stop
251         /sbin/chkconfig --del asterisk
252 fi
253
254 %files
255 %defattr(644,root,root,755)
256 %doc BUGS ChangeLog CHANGES CREDITS README* UPGRADE.txt configs doc/*.txt
257 %attr(755,root,root) %{_sbindir}/*
258 %dir %{_sysconfdir}/asterisk
259 %attr(754,root,root) /etc/rc.d/init.d/%{name}
260 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
261 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
262 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/*.conf
263 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/*.adsi
264 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/*.lua
265 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/extensions.ael
266 %dir %{_libdir}/asterisk
267 %dir %{_libdir}/asterisk/modules
268 %attr(755,root,root) %{_libdir}/asterisk/modules/*.so
269 %dir /var/lib/asterisk
270 %dir /var/lib/asterisk/agi-bin
271 %dir /var/lib/asterisk/images
272 %dir /var/lib/asterisk/keys
273 %dir /var/lib/asterisk/moh
274 /var/lib/asterisk/moh/fpm-calm-river.wav
275 /var/lib/asterisk/moh/fpm-sunshine.wav
276 /var/lib/asterisk/moh/fpm-world-mix.wav
277 %dir /var/lib/asterisk/sounds
278 %dir /var/lib/asterisk/sounds/en
279 %dir /var/lib/asterisk/sounds/en/digits
280 %dir /var/lib/asterisk/sounds/en/dictate
281 %dir /var/lib/asterisk/sounds/en/followme
282 %dir /var/lib/asterisk/sounds/en/letters
283 %dir /var/lib/asterisk/sounds/en/phonetic
284 %dir /var/lib/asterisk/sounds/en/silence
285 /var/lib/asterisk/images/*.jpg
286 /var/lib/asterisk/keys/*.pub
287 /var/lib/asterisk/phoneprov
288 /var/lib/asterisk/sounds/en/*.gsm
289 /var/lib/asterisk/sounds/en/digits/*.gsm
290 /var/lib/asterisk/sounds/en/dictate/*.gsm
291 /var/lib/asterisk/sounds/en/followme/*.gsm
292 /var/lib/asterisk/sounds/en/letters/*.gsm
293 /var/lib/asterisk/sounds/en/phonetic/*.gsm
294 /var/lib/asterisk/sounds/en/silence/*.gsm
295 /var/lib/asterisk/static-http
296 %dir /var/spool/asterisk
297 %dir /var/spool/asterisk/monitor
298 #%%dir /var/spool/asterisk/vm
299 %dir /var/spool/asterisk/voicemail
300 %dir /var/spool/asterisk/voicemail/default
301 %dir /var/spool/asterisk/voicemail/default/1234
302 %dir /var/spool/asterisk/voicemail/default/1234/en
303 %dir /var/log/asterisk
304 %dir /var/log/asterisk/cdr-csv
305 %{_mandir}/man8/asterisk.8*
306 %{_mandir}/man8/astgenkey.8*
307 %{_mandir}/man8/autosupport.8*
308 %{_mandir}/man8/safe_asterisk.8*
309 %dir /var/lib/asterisk/firmware
310 %dir /var/lib/asterisk/firmware/iax
311 /var/lib/asterisk/firmware/iax/iaxy.bin
312
313 %files examples
314 %defattr(644,root,root,755)
315 %attr(755,root,root) /var/lib/asterisk/agi-bin/agi-test.agi
316 %attr(755,root,root) /var/lib/asterisk/agi-bin/eagi-sphinx-test
317 %attr(755,root,root) /var/lib/asterisk/agi-bin/eagi-test
318 %attr(755,root,root) /var/lib/asterisk/agi-bin/jukebox.agi
319 /var/spool/asterisk/voicemail/default/1234/en/busy.gsm
320 /var/spool/asterisk/voicemail/default/1234/en/unavail.gsm
321
322 #%dir /var/lib/asterisk/agi-bin/*
323
324 %files devel
325 %defattr(644,root,root,755)
326 %dir %{_includedir}/asterisk
327 %{_includedir}/asterisk/*.h
328 %{_includedir}/asterisk.h
This page took 0.046844 seconds and 3 git commands to generate.