3 %bcond_without apidocs # Doxygen docs
4 %bcond_without ffado # firewire (FFADO) driver
5 %bcond_with classic # build also classic jackd server (see http://trac.jackaudio.org/wiki/JackDbusPackaging)
7 Summary: The JACK Audio Connection Kit
8 Summary(pl.UTF-8): JACK - zestaw do połączeń audio
9 Name: jack-audio-connection-kit
12 License: LGPL v2.1+ (libjack), GPL v2+ (the rest)
14 #Source0Download: http://jackaudio.org/downloads/
15 #Source0: https://github.com/jackaudio/jack2/releases/download/v%{version}/jack2-%{version}.tar.gz
16 Source0: https://github.com/jackaudio/jack2/archive/v%{version}/jack2-%{version}.tar.gz
17 # Source0-md5: b63b5cf65fc43ccf9585d274fe91069f
18 Patch0: jack-doxygen-fix.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.11.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 BuildRequires: libsamplerate-devel
29 BuildRequires: libsndfile-devel >= 1.0.0
30 BuildRequires: libstdc++-devel
31 BuildRequires: libtool
32 BuildRequires: pkgconfig
33 BuildRequires: readline-devel
34 BuildRequires: rpmbuild(macros) >= 1.98
35 # with opus_custom interface
36 BuildRequires: opus-devel >= 1.0.3-2
37 %{?with_apidocs:BuildRequires: texlive-pdftex}
38 Requires: %{name}-libs = %{version}-%{release}
39 Requires: alsa-lib >= 1.0.18
40 Obsoletes: jack-audio-connection-kit-driver-alsa
41 Obsoletes: jack-audio-connection-kit-driver-iec61883
42 Obsoletes: jack-audio-connection-kit-static
43 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
46 JACK is a low-latency audio server, written primarily for the Linux
47 operating system. It can connect a number of different applications to
48 an audio device, as well as allowing them to share audio between
49 themselves. Its clients can run in their own processes (ie. as a
50 normal application), or can they can run within a JACK server (ie. a
53 JACK is different from other audio server efforts in that it has been
54 designed from the ground up to be suitable for professional audio
55 work. This means that it focuses on two key areas: synchronous
56 execution of all clients, and low latency operation.
58 %description -l pl.UTF-8
59 JACK to serwer dźwięku o małych opóźnieniach, napisany głównie dla
60 systemu operacyjnego Linux. Może przyjąć połączenia od wielu różnych
61 aplikacji do urządzenia dźwiękowego, a także pozwolić im na dzielenie
62 dźwięku pomiędzy siebie. Programy klienckie działają jako własne
63 procesy (tzn. normalne aplikacje) lub mogą działać wewnątrz serwera
66 JACK różni się od innych serwerów dźwięku tym, że został
67 zaprojektowany od początku z myślą o profesjonalnej obróbce dźwięku.
68 Oznacza to, że skupia się na dwóch rzeczach: synchronicznym
69 wykonywaniu wszystkich klientów i małych opóźnieniach działania.
73 Summary(pl.UTF-8): Biblioteka JACK-a
76 Requires: celt >= 0.11.0
77 Requires: dbus-libs >= 1.0.0
78 Requires: opus >= 1.0.3-2
79 Conflicts: jack-audio-connection-kit < 0.100.7
84 %description libs -l pl.UTF-8
85 Biblioteka współdzielona JACK-a.
88 Summary: Header files for JACK
89 Summary(pl.UTF-8): JACK - pliki nagłówkowe
91 Group: Development/Libraries
92 Requires: %{name}-libs = %{version}-%{release}
95 Header files for the JACK Audio Connection Kit.
97 %description devel -l pl.UTF-8
98 Pliki nagłówkowe dla zestawu do połączeń audio JACK.
101 Summary: JACK Audio Connection Kit API documentation
102 Summary(pl.UTF-8): Dokumentacja API JACK Audio Connection Kit
104 Requires: gtk-doc-common
105 %if "%{_rpmversion}" >= "5"
110 JACK Audio Connection Kit API documentation.
112 %description apidocs -l pl.UTF-8
113 Dokumentacja API JACK Audio Connection Kit.
115 %package driver-firewire
116 Summary: FireWire (FFADO) sound driver for JACK
117 Summary(pl.UTF-8): Sterownik dźwięku FireWire (FFADO) dla JACK-a
120 Requires: %{name} = %{version}-%{release}
121 Requires: libffado >= 1.999.17
122 Obsoletes: jack-driver-freebob < 1.9.13
124 %description driver-firewire
125 FireWire (FFADO) sound driver for JACK.
127 %description driver-firewire -l pl.UTF-8
128 Sterownik dźwięku FireWire (FFADO) dla JACK-a.
130 %package example-clients
131 Summary: Example clients that use JACK
132 Summary(pl.UTF-8): Przykładowe programy klienckie używające JACK-a
134 Group: Applications/Sound
135 Requires: %{name} = %{version}-%{release}
137 %description example-clients
138 Small example clients that use the JACK Audio Connection Kit.
140 %description example-clients -l pl.UTF-8
141 Małe, przykładowe programy klienckie, które używają zestawu do
144 %package example-jackrec
145 Summary: Example JACK client: jackrec
146 Summary(pl.UTF-8): Przykładowy klient zestawu JACK: jackrec
148 Group: Applications/Sound
149 Requires: %{name} = %{version}-%{release}
151 %description example-jackrec
152 Example JACK client: jackrec. It's separated because it uses
155 %description example-jackrec -l pl.UTF-8
156 Przykładowy klient zestawu JACK: jackrec. Jest wydzielony, ponieważ
157 wymaga biblioteki libsndfile.
160 %setup -q -n jack2-%{version}
164 export CFLAGS="%{rpmcflags} -I/usr/include/ncurses"
165 export CXXFLAGS="%{rpmcxxflags} -I/usr/include/ncurses"
166 export CPPFLAGS="%{rpmcxxflags} -I/usr/include/ncurses"
167 export LINKFLAGS="%{rpmldflags}"
169 ./waf configure -j1 \
172 --prefix=%{_prefix} \
173 --libdir=%{_libdir} \
174 --htmldir=%{_gtkdocdir}/%{name}/reference \
176 %{?with_classic:--classic} \
178 %{?with_apidocs:--doxygen} \
179 %{?with_ffado:--firewire}
181 ./waf build %{?_smp_mflags} -v
184 rm -rf $RPM_BUILD_ROOT
187 --destdir=$RPM_BUILD_ROOT
189 %{!?with_apidocs:rm -rf $RPM_BUILD_ROOT%{_gtkdocdir}}
191 # For compatibility with jack1
192 %{__mv} $RPM_BUILD_ROOT%{_bindir}/jack_rec $RPM_BUILD_ROOT%{_bindir}/jackrec
194 # not built or packaged
195 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/jack_impulse_grabber.1 \
196 %{!?with_classic:$RPM_BUILD_ROOT%{_mandir}/man1/jackd.1}
198 # fix perms (needed for autorequires/provides)
199 chmod a+x $RPM_BUILD_ROOT%{_libdir}/lib*.so*
200 chmod a+x $RPM_BUILD_ROOT%{_libdir}/jack/*.so
203 rm -rf $RPM_BUILD_ROOT
205 %post libs -p /sbin/ldconfig
206 %postun libs -p /sbin/ldconfig
209 if ! grep -q -s '^[^ ]* /dev/shm tmpfs ' /proc/mounts ; then
210 echo "/dev/shm is not mounted, but JACK requires it"
214 %defattr(644,root,root,755)
215 %doc AUTHORS.rst ChangeLog.rst README*
216 %attr(755,root,root) %{_bindir}/jack_alias
217 %attr(755,root,root) %{_bindir}/jack_control
218 %attr(755,root,root) %{_bindir}/jack_cpu
219 %attr(755,root,root) %{_bindir}/jack_evmon
220 %attr(755,root,root) %{_bindir}/jack_iodelay
221 %attr(755,root,root) %{_bindir}/jack_load
222 %attr(755,root,root) %{_bindir}/jack_midi_dump
223 %attr(755,root,root) %{_bindir}/jack_net_master
224 %attr(755,root,root) %{_bindir}/jack_net_slave
225 %attr(755,root,root) %{_bindir}/jack_server_control
226 %attr(755,root,root) %{_bindir}/jack_session_notify
227 %attr(755,root,root) %{_bindir}/jack_simdtests
228 %attr(755,root,root) %{_bindir}/jack_test
229 %attr(755,root,root) %{_bindir}/jack_unload
230 %{?with_classic:%attr(755,root,root) %{_bindir}/jackd}
231 %attr(755,root,root) %{_bindir}/jackdbus
233 %attr(755,root,root) %{_libdir}/jack/audioadapter.so
234 %attr(755,root,root) %{_libdir}/jack/jack_alsa.so
235 %attr(755,root,root) %{_libdir}/jack/jack_alsarawmidi.so
236 %attr(755,root,root) %{_libdir}/jack/jack_dummy.so
237 %attr(755,root,root) %{_libdir}/jack/jack_loopback.so
238 %attr(755,root,root) %{_libdir}/jack/jack_netone.so
239 %attr(755,root,root) %{_libdir}/jack/jack_net.so
240 %attr(755,root,root) %{_libdir}/jack/jack_proxy.so
241 %attr(755,root,root) %{_libdir}/jack/netadapter.so
242 %attr(755,root,root) %{_libdir}/jack/netmanager.so
243 %attr(755,root,root) %{_libdir}/jack/profiler.so
244 %{_datadir}/dbus-1/services/org.jackaudio.service
245 %{?with_classic:%{_mandir}/man1/jackd.1*}
246 %{_mandir}/man1/jack_iodelay.1*
247 %{_mandir}/man1/jack_load.1*
248 %{_mandir}/man1/jack_unload.1*
251 %defattr(644,root,root,755)
252 %attr(755,root,root) %{_libdir}/libjack.so.*.*.*
253 %attr(755,root,root) %ghost %{_libdir}/libjack.so.0
254 %attr(755,root,root) %{_libdir}/libjacknet.so.*.*.*
255 %attr(755,root,root) %ghost %{_libdir}/libjacknet.so.0
256 %attr(755,root,root) %{_libdir}/libjackserver.so.*.*.*
257 %attr(755,root,root) %ghost %{_libdir}/libjackserver.so.0
260 %defattr(644,root,root,755)
261 %attr(755,root,root) %{_libdir}/libjack.so
262 %attr(755,root,root) %{_libdir}/libjacknet.so
263 %attr(755,root,root) %{_libdir}/libjackserver.so
265 %{_pkgconfigdir}/jack.pc
269 %defattr(644,root,root,755)
270 %{_gtkdocdir}/%{name}
274 %files driver-firewire
275 %defattr(644,root,root,755)
276 %attr(755,root,root) %{_libdir}/jack/jack_firewire.so
279 %files example-clients
280 %defattr(644,root,root,755)
281 %attr(755,root,root) %{_bindir}/alsa_in
282 %attr(755,root,root) %{_bindir}/alsa_out
283 %attr(755,root,root) %{_bindir}/jack_bufsize
284 %attr(755,root,root) %{_bindir}/jack_connect
285 %attr(755,root,root) %{_bindir}/jack_cpu_load
286 %attr(755,root,root) %{_bindir}/jack_disconnect
287 %attr(755,root,root) %{_bindir}/jack_freewheel
288 %attr(755,root,root) %{_bindir}/jack_latent_client
289 %attr(755,root,root) %{_bindir}/jack_lsp
290 %attr(755,root,root) %{_bindir}/jack_metro
291 %attr(755,root,root) %{_bindir}/jack_midi_latency_test
292 %attr(755,root,root) %{_bindir}/jack_midiseq
293 %attr(755,root,root) %{_bindir}/jack_midisine
294 %attr(755,root,root) %{_bindir}/jack_monitor_client
295 %attr(755,root,root) %{_bindir}/jack_multiple_metro
296 %attr(755,root,root) %{_bindir}/jack_netsource
297 %attr(755,root,root) %{_bindir}/jack_property
298 %attr(755,root,root) %{_bindir}/jack_samplerate
299 %attr(755,root,root) %{_bindir}/jack_showtime
300 %attr(755,root,root) %{_bindir}/jack_simple_client
301 %attr(755,root,root) %{_bindir}/jack_simple_session_client
302 %attr(755,root,root) %{_bindir}/jack_thru
303 %attr(755,root,root) %{_bindir}/jack_transport
304 %attr(755,root,root) %{_bindir}/jack_wait
305 %attr(755,root,root) %{_bindir}/jack_zombie
306 %attr(755,root,root) %{_libdir}/jack/inprocess.so
307 %{_mandir}/man1/alsa_in.1*
308 %{_mandir}/man1/alsa_out.1*
309 %{_mandir}/man1/jack_bufsize.1*
310 %{_mandir}/man1/jack_connect.1*
311 %{_mandir}/man1/jack_disconnect.1*
312 %{_mandir}/man1/jack_freewheel.1*
313 %{_mandir}/man1/jack_lsp.1*
314 %{_mandir}/man1/jack_metro.1*
315 %{_mandir}/man1/jack_monitor_client.1*
316 %{_mandir}/man1/jack_netsource.1*
317 %{_mandir}/man1/jack_property.1*
318 %{_mandir}/man1/jack_samplerate.1*
319 %{_mandir}/man1/jack_showtime.1*
320 %{_mandir}/man1/jack_simple_client.1*
321 %{_mandir}/man1/jack_transport.1*
322 %{_mandir}/man1/jack_wait.1*
324 %files example-jackrec
325 %defattr(644,root,root,755)
326 %attr(755,root,root) %{_bindir}/jackrec
327 %{_mandir}/man1/jackrec.1*