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