]> git.pld-linux.org Git - packages/jack-audio-connection-kit.git/blob - jack-audio-connection-kit.spec
- use waf -j1 to avoid hangs on x86_64
[packages/jack-audio-connection-kit.git] / jack-audio-connection-kit.spec
1 #
2 # Conditional build:
3 %bcond_without  apidocs         # don't generate documentation with doxygen
4 %bcond_without  ffado           # don't build firewire (FFADO) driver
5 %bcond_without  freebob         # don't build freebob driver
6 %bcond_with     classic         # build also classic jackd server (see http://trac.jackaudio.org/wiki/JackDbusPackaging)
7 #
8 Summary:        The JACK Audio Connection Kit
9 Summary(pl.UTF-8):      JACK - zestaw do połączeń audio
10 Name:           jack-audio-connection-kit
11 Version:        1.9.8
12 Release:        2
13 License:        LGPL v2.1+ (libjack), GPL v2+ (the rest)
14 Group:          Daemons
15 #Source0Download: http://jackaudio.org/download
16 Source0:        https://dl.dropbox.com/u/28869550/jack-%{version}.tgz
17 # Source0-md5:  1dd2ff054cab79dfc11d134756f27165
18 Patch0:         jack-doxygen-output-dirs.patch
19 URL:            http://jackaudio.org/
20 BuildRequires:  alsa-lib-devel >= 1.0.18
21 BuildRequires:  autoconf >= 2.50
22 BuildRequires:  automake
23 BuildRequires:  celt-devel >= 0.5.0
24 BuildRequires:  dbus-devel >= 1.0.0
25 %{?with_apidocs:BuildRequires:  doxygen}
26 BuildRequires:  expat-devel
27 %{?with_ffado:BuildRequires:    libffado-devel >= 1.999.17}
28 %{?with_freebob:BuildRequires:  libfreebob-devel >= 1.0.0}
29 BuildRequires:  libsamplerate-devel
30 BuildRequires:  libsndfile-devel >= 1.0.0
31 BuildRequires:  libstdc++-devel
32 BuildRequires:  libtool
33 BuildRequires:  pkgconfig
34 BuildRequires:  readline-devel
35 BuildRequires:  rpmbuild(macros) >= 1.98
36 %{?with_apidocs:BuildRequires:  texlive-pdftex}
37 Requires:       %{name}-libs = %{version}-%{release}
38 Requires:       alsa-lib >= 1.0.18
39 Obsoletes:      jack-audio-connection-kit-driver-alsa
40 Obsoletes:      jack-audio-connection-kit-driver-iec61883
41 Obsoletes:      jack-audio-connection-kit-static
42 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
43
44 %description
45 JACK is a low-latency audio server, written primarily for the Linux
46 operating system. It can connect a number of different applications to
47 an audio device, as well as allowing them to share audio between
48 themselves. Its clients can run in their own processes (ie. as a
49 normal application), or can they can run within a JACK server (ie. a
50 "plugin").
51
52 JACK is different from other audio server efforts in that it has been
53 designed from the ground up to be suitable for professional audio
54 work. This means that it focuses on two key areas: synchronous
55 execution of all clients, and low latency operation.
56
57 %description -l pl.UTF-8
58 JACK to serwer dźwięku o małych opóźnieniach, napisany głównie dla
59 systemu operacyjnego Linux. Może przyjąć połączenia od wielu różnych
60 aplikacji do urządzenia dźwiękowego, a także pozwolić im na dzielenie
61 dźwięku pomiędzy siebie. Programy klienckie działają jako własne
62 procesy (tzn. normalne aplikacje) lub mogą działać wewnątrz serwera
63 JACK (jako wtyczki).
64
65 JACK różni się od innych serwerów dźwięku tym, że został
66 zaprojektowany od początku z myślą o profesjonalnej obróbce dźwięku.
67 Oznacza to, że skupia się na dwóch rzeczach: synchronicznym
68 wykonywaniu wszystkich klientów i małych opóźnieniach działania.
69
70 %package libs
71 Summary:        JACK library
72 Summary(pl.UTF-8):      Biblioteka JACK-a
73 License:        LGPL v2.1+
74 Group:          Libraries
75 Requires:       dbus-libs >= 1.0.0
76 Conflicts:      jack-audio-connection-kit < 0.100.7
77
78 %description libs
79 Shared JACK library.
80
81 %description libs -l pl.UTF-8
82 Biblioteka współdzielona JACK-a.
83
84 %package devel
85 Summary:        Header files for JACK
86 Summary(pl.UTF-8):      JACK - pliki nagłówkowe
87 License:        LGPL v2.1+
88 Group:          Development/Libraries
89 Requires:       %{name}-libs = %{version}-%{release}
90
91 %description devel
92 Header files for the JACK Audio Connection Kit.
93
94 %description devel -l pl.UTF-8
95 Pliki nagłówkowe dla zestawu do połączeń audio JACK.
96
97 %package apidocs
98 Summary:        JACK Audio Connection Kit API documentation
99 Summary(pl.UTF-8):      Dokumentacja API JACK Audio Connection Kit
100 Group:          Documentation
101 Requires:       gtk-doc-common
102
103 %description apidocs
104 JACK Audio Connection Kit API documentation.
105
106 %description apidocs -l pl.UTF-8
107 Dokumentacja API JACK Audio Connection Kit.
108
109 %package driver-firewire
110 Summary:        FireWire (FFADO) sound driver for JACK
111 Summary(pl.UTF-8):      Sterownik dźwięku FireWire (FFADO) dla JACK-a
112 License:        GPL v2+
113 Group:          Libraries
114 Requires:       %{name} = %{version}-%{release}
115 Requires:       libffado >= 1.999.17
116
117 %description driver-firewire
118 FireWire (FFADO) sound driver for JACK.
119
120 %description driver-firewire -l pl.UTF-8
121 Sterownik dźwięku FireWire (FFADO) dla JACK-a.
122
123 %package driver-freebob
124 Summary:        FreeBoB sound driver for JACK
125 Summary(pl.UTF-8):      Sterownik dźwięku FreeBoB dla JACK-a
126 License:        GPL v2+
127 Group:          Libraries
128 Requires:       %{name} = %{version}-%{release}
129 Requires:       libfreebob >= 1.0.0
130
131 %description driver-freebob
132 FreeBoB (BeBoB platform) sound driver for JACK.
133
134 %description driver-freebob -l pl.UTF-8
135 Sterownik dźwięku FreeBoB (do platformy BeBoB) dla JACK-a.
136
137 %package example-clients
138 Summary:        Example clients that use JACK
139 Summary(pl.UTF-8):      Przykładowe programy klienckie używające JACK-a
140 License:        GPL v2+
141 Group:          Applications/Sound
142 Requires:       %{name} = %{version}-%{release}
143
144 %description example-clients
145 Small example clients that use the JACK Audio Connection Kit.
146
147 %description example-clients -l pl.UTF-8
148 Małe, przykładowe programy klienckie, które używają zestawu do
149 połączeń audio JACK.
150
151 %package example-jackrec
152 Summary:        Example JACK client: jackrec
153 Summary(pl.UTF-8):      Przykładowy klient zestawu JACK: jackrec
154 License:        GPL v2+
155 Group:          Applications/Sound
156 Requires:       %{name} = %{version}-%{release}
157
158 %description example-jackrec
159 Example JACK client: jackrec. It's separated because it uses
160 libsndfile library.
161
162 %description example-jackrec -l pl.UTF-8
163 Przykładowy klient zestawu JACK: jackrec. Jest wydzielony, ponieważ
164 wymaga biblioteki libsndfile.
165
166 %prep
167 %setup -q -n jack-%{version}
168 cd jack-%{version}
169 %patch0 -p1
170
171 %build
172 cd jack-%{version}
173 export CFLAGS="%{rpmcflags} -I/usr/include/ncurses"
174 export CXXFLAGS="%{rpmcxxflags} -I/usr/include/ncurses"
175 export CPPFLAGS="%{rpmcxxflags} -I/usr/include/ncurses"
176 export LINKFLAGS="%{rpmldflags}"
177
178 ./waf configure -j1 \
179         -v \
180         %{?debug:--debug} \
181         --prefix=%{_prefix} \
182         --libdir=/%{_lib} \
183         --libdir32=/lib \
184         --dbus \
185         %{?with_classic:--classic} \
186         %{?with_apidocs:--doxygen} \
187         %{?with_ffado:--firewire} \
188         %{?with_freebob:--freebob} \
189         --alsa
190
191 ./waf build %{?_smp_mflags} -v
192
193 %install
194 rm -rf $RPM_BUILD_ROOT
195 cd jack-%{version}
196
197 HTML_DIR=%{_gtkdocdir}/%{name}/reference \
198 ./waf install \
199         --destdir=$RPM_BUILD_ROOT
200
201 %{!?with_apidocs:rm -rf $RPM_BUILD_ROOT%{_gtkdocdir}}
202
203 # For compatibility with jack1
204 mv $RPM_BUILD_ROOT%{_bindir}/jack_rec $RPM_BUILD_ROOT%{_bindir}/jackrec
205
206 # not built or packaged
207 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/jack_impulse_grabber.1 \
208         %{!?with_classic:$RPM_BUILD_ROOT%{_mandir}/man1/jackd.1}
209
210 # fix perms (needed for autorequires/provides)
211 chmod a+x $RPM_BUILD_ROOT%{_libdir}/lib*.so*
212 chmod a+x $RPM_BUILD_ROOT%{_libdir}/jack/*.so
213
214 %clean
215 rm -rf $RPM_BUILD_ROOT
216
217 %post   libs -p /sbin/ldconfig
218 %postun libs -p /sbin/ldconfig
219
220 %verifyscript libs
221 if ! grep -q -s '^[^ ]* /dev/shm tmpfs ' /proc/mounts ; then
222         echo "/dev/shm is not mounted, but JACK requires it"
223 fi
224
225 %files
226 %defattr(644,root,root,755)
227 %doc jack-%{version}/{ChangeLog,README*,TODO}
228 %attr(755,root,root) %{_bindir}/jack_alias
229 %attr(755,root,root) %{_bindir}/jack_control
230 %attr(755,root,root) %{_bindir}/jack_cpu
231 %attr(755,root,root) %{_bindir}/jack_evmon
232 %attr(755,root,root) %{_bindir}/jack_iodelay
233 %attr(755,root,root) %{_bindir}/jack_load
234 %attr(755,root,root) %{_bindir}/jack_midi_dump
235 %attr(755,root,root) %{_bindir}/jack_net_master
236 %attr(755,root,root) %{_bindir}/jack_net_slave
237 %attr(755,root,root) %{_bindir}/jack_server_control
238 %attr(755,root,root) %{_bindir}/jack_session_notify
239 %attr(755,root,root) %{_bindir}/jack_test
240 %attr(755,root,root) %{_bindir}/jack_unload
241 %{?with_classic:%attr(755,root,root) %{_bindir}/jackd}
242 %attr(755,root,root) %{_bindir}/jackdbus
243 %dir %{_libdir}/jack
244 %attr(755,root,root) %{_libdir}/jack/audioadapter.so
245 %attr(755,root,root) %{_libdir}/jack/jack_alsa.so
246 %attr(755,root,root) %{_libdir}/jack/jack_alsarawmidi.so
247 %attr(755,root,root) %{_libdir}/jack/jack_dummy.so
248 %attr(755,root,root) %{_libdir}/jack/jack_loopback.so
249 %attr(755,root,root) %{_libdir}/jack/jack_netone.so
250 %attr(755,root,root) %{_libdir}/jack/jack_net.so
251 %attr(755,root,root) %{_libdir}/jack/netadapter.so
252 %attr(755,root,root) %{_libdir}/jack/netmanager.so
253 %attr(755,root,root) %{_libdir}/jack/profiler.so
254 %{_datadir}/dbus-1/services/org.jackaudio.service
255 %{?with_classic:%{_mandir}/man1/jackd.1*}
256 %{_mandir}/man1/jack_iodelay.1*
257 %{_mandir}/man1/jack_load.1*
258 %{_mandir}/man1/jack_unload.1*
259
260 %files libs
261 %defattr(644,root,root,755)
262 %attr(755,root,root) %{_libdir}/libjack.so.*.*.*
263 %attr(755,root,root) %ghost %{_libdir}/libjack.so.0
264 %attr(755,root,root) %{_libdir}/libjacknet.so.*.*.*
265 %attr(755,root,root) %ghost %{_libdir}/libjacknet.so.0
266 %attr(755,root,root) %{_libdir}/libjackserver.so.*.*.*
267 %attr(755,root,root) %ghost %{_libdir}/libjackserver.so.0
268
269 %files devel
270 %defattr(644,root,root,755)
271 %attr(755,root,root) %{_libdir}/libjack.so
272 %attr(755,root,root) %{_libdir}/libjacknet.so
273 %attr(755,root,root) %{_libdir}/libjackserver.so
274 %{_includedir}/jack
275 %{_pkgconfigdir}/jack.pc
276
277 %if %{with apidocs}
278 %files apidocs
279 %defattr(644,root,root,755)
280 %{_gtkdocdir}/%{name}
281 %endif
282
283 %if %{with ffado}
284 %files driver-firewire
285 %defattr(644,root,root,755)
286 %attr(755,root,root) %{_libdir}/jack/jack_firewire.so
287 %endif
288
289 %if %{with freebob}
290 %files driver-freebob
291 %defattr(644,root,root,755)
292 %attr(755,root,root) %{_libdir}/jack/jack_freebob.so
293 %endif
294
295 %files example-clients
296 %defattr(644,root,root,755)
297 %attr(755,root,root) %{_bindir}/alsa_in
298 %attr(755,root,root) %{_bindir}/alsa_out
299 %attr(755,root,root) %{_bindir}/jack_bufsize
300 %attr(755,root,root) %{_bindir}/jack_connect
301 %attr(755,root,root) %{_bindir}/jack_cpu_load
302 %attr(755,root,root) %{_bindir}/jack_disconnect
303 %attr(755,root,root) %{_bindir}/jack_freewheel
304 %attr(755,root,root) %{_bindir}/jack_latent_client
305 %attr(755,root,root) %{_bindir}/jack_lsp
306 %attr(755,root,root) %{_bindir}/jack_metro
307 %attr(755,root,root) %{_bindir}/jack_midi_latency_test
308 %attr(755,root,root) %{_bindir}/jack_midiseq
309 %attr(755,root,root) %{_bindir}/jack_midisine
310 %attr(755,root,root) %{_bindir}/jack_monitor_client
311 %attr(755,root,root) %{_bindir}/jack_multiple_metro
312 %attr(755,root,root) %{_bindir}/jack_netsource
313 %attr(755,root,root) %{_bindir}/jack_samplerate
314 %attr(755,root,root) %{_bindir}/jack_showtime
315 %attr(755,root,root) %{_bindir}/jack_simple_client
316 %attr(755,root,root) %{_bindir}/jack_simple_session_client
317 %attr(755,root,root) %{_bindir}/jack_thru
318 %attr(755,root,root) %{_bindir}/jack_transport
319 %attr(755,root,root) %{_bindir}/jack_wait
320 %attr(755,root,root) %{_bindir}/jack_zombie
321 %attr(755,root,root) %{_libdir}/jack/inprocess.so
322 %{_mandir}/man1/alsa_in.1*
323 %{_mandir}/man1/alsa_out.1*
324 %{_mandir}/man1/jack_bufsize.1*
325 %{_mandir}/man1/jack_connect.1*
326 %{_mandir}/man1/jack_disconnect.1*
327 %{_mandir}/man1/jack_freewheel.1*
328 %{_mandir}/man1/jack_lsp.1*
329 %{_mandir}/man1/jack_metro.1*
330 %{_mandir}/man1/jack_monitor_client.1*
331 %{_mandir}/man1/jack_netsource.1*
332 %{_mandir}/man1/jack_samplerate.1*
333 %{_mandir}/man1/jack_showtime.1*
334 %{_mandir}/man1/jack_simple_client.1*
335 %{_mandir}/man1/jack_transport.1*
336 %{_mandir}/man1/jack_wait.1*
337
338 %files example-jackrec
339 %defattr(644,root,root,755)
340 %attr(755,root,root) %{_bindir}/jackrec
341 %{_mandir}/man1/jackrec.1*
This page took 0.123012 seconds and 3 git commands to generate.