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