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)
8 Summary: The JACK Audio Connection Kit
9 Summary(pl.UTF-8): JACK - zestaw do połączeń audio
10 Name: jack-audio-connection-kit
13 License: LGPL v2.1+ (libjack), GPL v2+ (the rest)
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)
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
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.
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
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.
72 Summary(pl.UTF-8): Biblioteka JACK-a
75 Requires: dbus-libs >= 1.0.0
76 Conflicts: jack-audio-connection-kit < 0.100.7
81 %description libs -l pl.UTF-8
82 Biblioteka współdzielona JACK-a.
85 Summary: Header files for JACK
86 Summary(pl.UTF-8): JACK - pliki nagłówkowe
88 Group: Development/Libraries
89 Requires: %{name}-libs = %{version}-%{release}
92 Header files for the JACK Audio Connection Kit.
94 %description devel -l pl.UTF-8
95 Pliki nagłówkowe dla zestawu do połączeń audio JACK.
98 Summary: JACK Audio Connection Kit API documentation
99 Summary(pl.UTF-8): Dokumentacja API JACK Audio Connection Kit
101 Requires: gtk-doc-common
104 JACK Audio Connection Kit API documentation.
106 %description apidocs -l pl.UTF-8
107 Dokumentacja API JACK Audio Connection Kit.
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
114 Requires: %{name} = %{version}-%{release}
115 Requires: libffado >= 1.999.17
117 %description driver-firewire
118 FireWire (FFADO) sound driver for JACK.
120 %description driver-firewire -l pl.UTF-8
121 Sterownik dźwięku FireWire (FFADO) dla JACK-a.
123 %package driver-freebob
124 Summary: FreeBoB sound driver for JACK
125 Summary(pl.UTF-8): Sterownik dźwięku FreeBoB dla JACK-a
128 Requires: %{name} = %{version}-%{release}
129 Requires: libfreebob >= 1.0.0
131 %description driver-freebob
132 FreeBoB (BeBoB platform) sound driver for JACK.
134 %description driver-freebob -l pl.UTF-8
135 Sterownik dźwięku FreeBoB (do platformy BeBoB) dla JACK-a.
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
141 Group: Applications/Sound
142 Requires: %{name} = %{version}-%{release}
144 %description example-clients
145 Small example clients that use the JACK Audio Connection Kit.
147 %description example-clients -l pl.UTF-8
148 Małe, przykładowe programy klienckie, które używają zestawu do
151 %package example-jackrec
152 Summary: Example JACK client: jackrec
153 Summary(pl.UTF-8): Przykładowy klient zestawu JACK: jackrec
155 Group: Applications/Sound
156 Requires: %{name} = %{version}-%{release}
158 %description example-jackrec
159 Example JACK client: jackrec. It's separated because it uses
162 %description example-jackrec -l pl.UTF-8
163 Przykładowy klient zestawu JACK: jackrec. Jest wydzielony, ponieważ
164 wymaga biblioteki libsndfile.
167 %setup -q -n 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}"
178 ./waf configure -j1 \
181 --prefix=%{_prefix} \
185 %{?with_classic:--classic} \
186 %{?with_apidocs:--doxygen} \
187 %{?with_ffado:--firewire} \
188 %{?with_freebob:--freebob} \
191 ./waf build %{?_smp_mflags} -v
194 rm -rf $RPM_BUILD_ROOT
197 HTML_DIR=%{_gtkdocdir}/%{name}/reference \
199 --destdir=$RPM_BUILD_ROOT
201 %{!?with_apidocs:rm -rf $RPM_BUILD_ROOT%{_gtkdocdir}}
203 # For compatibility with jack1
204 mv $RPM_BUILD_ROOT%{_bindir}/jack_rec $RPM_BUILD_ROOT%{_bindir}/jackrec
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}
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
215 rm -rf $RPM_BUILD_ROOT
217 %post libs -p /sbin/ldconfig
218 %postun libs -p /sbin/ldconfig
221 if ! grep -q -s '^[^ ]* /dev/shm tmpfs ' /proc/mounts ; then
222 echo "/dev/shm is not mounted, but JACK requires it"
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
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*
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
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
275 %{_pkgconfigdir}/jack.pc
279 %defattr(644,root,root,755)
280 %{_gtkdocdir}/%{name}
284 %files driver-firewire
285 %defattr(644,root,root,755)
286 %attr(755,root,root) %{_libdir}/jack/jack_firewire.so
290 %files driver-freebob
291 %defattr(644,root,root,755)
292 %attr(755,root,root) %{_libdir}/jack/jack_freebob.so
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*
338 %files example-jackrec
339 %defattr(644,root,root,755)
340 %attr(755,root,root) %{_bindir}/jackrec
341 %{_mandir}/man1/jackrec.1*