1 # TODO: --iio (BR: gtkIOStream >= 1.4.0, eigen3 >= 3.1.2)
4 %bcond_without apidocs # Doxygen docs
5 %bcond_without ffado # firewire (FFADO) 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/downloads/
16 #Source0: https://github.com/jackaudio/jack2/releases/download/v%{version}/jack2-%{version}.tar.gz
17 Source0: https://github.com/jackaudio/jack2/archive/v%{version}/jack2-%{version}.tar.gz
18 # Source0-md5: ca263ffba14abce859c0ee7680faf510
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.752
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 < 0.101.1-2
41 Obsoletes: jack-audio-connection-kit-driver-iec61883 < 0.99.0
42 Obsoletes: jack-audio-connection-kit-static < 1.9.7
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
108 JACK Audio Connection Kit API documentation.
110 %description apidocs -l pl.UTF-8
111 Dokumentacja API JACK Audio Connection Kit.
113 %package driver-firewire
114 Summary: FireWire (FFADO) sound driver for JACK
115 Summary(pl.UTF-8): Sterownik dźwięku FireWire (FFADO) dla JACK-a
118 Requires: %{name} = %{version}-%{release}
119 Requires: libffado >= 1.999.17
120 Obsoletes: jack-driver-freebob < 1.9.13
122 %description driver-firewire
123 FireWire (FFADO) sound driver for JACK.
125 %description driver-firewire -l pl.UTF-8
126 Sterownik dźwięku FireWire (FFADO) dla JACK-a.
128 %package example-clients
129 Summary: Example clients that use JACK
130 Summary(pl.UTF-8): Przykładowe programy klienckie używające JACK-a
132 Group: Applications/Sound
133 Requires: %{name} = %{version}-%{release}
135 %description example-clients
136 Small example clients that use the JACK Audio Connection Kit.
138 %description example-clients -l pl.UTF-8
139 Małe, przykładowe programy klienckie, które używają zestawu do
142 %package example-jackrec
143 Summary: Example JACK client: jackrec
144 Summary(pl.UTF-8): Przykładowy klient zestawu JACK: jackrec
146 Group: Applications/Sound
147 Requires: %{name} = %{version}-%{release}
149 %description example-jackrec
150 Example JACK client: jackrec. It's separated because it uses
153 %description example-jackrec -l pl.UTF-8
154 Przykładowy klient zestawu JACK: jackrec. Jest wydzielony, ponieważ
155 wymaga biblioteki libsndfile.
158 %setup -q -n jack2-%{version}
161 export CFLAGS="%{rpmcflags} -I/usr/include/ncurses"
162 export CXXFLAGS="%{rpmcxxflags} -I/usr/include/ncurses"
163 export CPPFLAGS="%{rpmcxxflags} -I/usr/include/ncurses"
164 export LINKFLAGS="%{rpmldflags}"
166 ./waf configure -j1 \
169 --prefix=%{_prefix} \
170 --libdir=%{_libdir} \
171 --htmldir=%{_gtkdocdir}/%{name}/reference \
173 %{?with_classic:--classic} \
175 %{?with_apidocs:--doxygen} \
176 %{?with_ffado:--firewire}
178 ./waf build %{?_smp_mflags} -v
181 rm -rf $RPM_BUILD_ROOT
184 --destdir=$RPM_BUILD_ROOT
186 %{!?with_apidocs:rm -rf $RPM_BUILD_ROOT%{_gtkdocdir}}
188 # For compatibility with jack1
189 %{__mv} $RPM_BUILD_ROOT%{_bindir}/jack_rec $RPM_BUILD_ROOT%{_bindir}/jackrec
191 # not built or packaged
192 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/jack_impulse_grabber.1 \
193 %{!?with_classic:$RPM_BUILD_ROOT%{_mandir}/man1/jackd.1}
195 # fix perms (needed for autorequires/provides)
196 chmod a+x $RPM_BUILD_ROOT%{_libdir}/lib*.so*
197 chmod a+x $RPM_BUILD_ROOT%{_libdir}/jack/*.so
200 rm -rf $RPM_BUILD_ROOT
202 %post libs -p /sbin/ldconfig
203 %postun libs -p /sbin/ldconfig
206 if ! grep -q -s '^[^ ]* /dev/shm tmpfs ' /proc/mounts ; then
207 echo "/dev/shm is not mounted, but JACK requires it"
211 %defattr(644,root,root,755)
212 %doc AUTHORS.rst ChangeLog.rst README*
213 %attr(755,root,root) %{_bindir}/jack_alias
214 %attr(755,root,root) %{_bindir}/jack_control
215 %attr(755,root,root) %{_bindir}/jack_cpu
216 %attr(755,root,root) %{_bindir}/jack_evmon
217 %attr(755,root,root) %{_bindir}/jack_iodelay
218 %attr(755,root,root) %{_bindir}/jack_load
219 %attr(755,root,root) %{_bindir}/jack_midi_dump
220 %attr(755,root,root) %{_bindir}/jack_net_master
221 %attr(755,root,root) %{_bindir}/jack_net_slave
222 %attr(755,root,root) %{_bindir}/jack_server_control
223 %attr(755,root,root) %{_bindir}/jack_session_notify
224 %attr(755,root,root) %{_bindir}/jack_simdtests
225 %attr(755,root,root) %{_bindir}/jack_test
226 %attr(755,root,root) %{_bindir}/jack_unload
227 %{?with_classic:%attr(755,root,root) %{_bindir}/jackd}
228 %attr(755,root,root) %{_bindir}/jackdbus
230 %attr(755,root,root) %{_libdir}/jack/audioadapter.so
231 %attr(755,root,root) %{_libdir}/jack/jack_alsa.so
232 %attr(755,root,root) %{_libdir}/jack/jack_alsarawmidi.so
233 %attr(755,root,root) %{_libdir}/jack/jack_dummy.so
234 %attr(755,root,root) %{_libdir}/jack/jack_loopback.so
235 %attr(755,root,root) %{_libdir}/jack/jack_netone.so
236 %attr(755,root,root) %{_libdir}/jack/jack_net.so
237 %attr(755,root,root) %{_libdir}/jack/jack_proxy.so
238 %attr(755,root,root) %{_libdir}/jack/netadapter.so
239 %attr(755,root,root) %{_libdir}/jack/netmanager.so
240 %attr(755,root,root) %{_libdir}/jack/profiler.so
241 %{_datadir}/dbus-1/services/org.jackaudio.service
242 %{?with_classic:%{_mandir}/man1/jackd.1*}
243 %{_mandir}/man1/jack_iodelay.1*
244 %{_mandir}/man1/jack_load.1*
245 %{_mandir}/man1/jack_unload.1*
248 %defattr(644,root,root,755)
249 %attr(755,root,root) %{_libdir}/libjack.so.*.*.*
250 %attr(755,root,root) %ghost %{_libdir}/libjack.so.0
251 %attr(755,root,root) %{_libdir}/libjacknet.so.*.*.*
252 %attr(755,root,root) %ghost %{_libdir}/libjacknet.so.0
253 %attr(755,root,root) %{_libdir}/libjackserver.so.*.*.*
254 %attr(755,root,root) %ghost %{_libdir}/libjackserver.so.0
257 %defattr(644,root,root,755)
258 %attr(755,root,root) %{_libdir}/libjack.so
259 %attr(755,root,root) %{_libdir}/libjacknet.so
260 %attr(755,root,root) %{_libdir}/libjackserver.so
262 %{_pkgconfigdir}/jack.pc
266 %defattr(644,root,root,755)
267 %{_gtkdocdir}/%{name}
271 %files driver-firewire
272 %defattr(644,root,root,755)
273 %attr(755,root,root) %{_libdir}/jack/jack_firewire.so
276 %files example-clients
277 %defattr(644,root,root,755)
278 %attr(755,root,root) %{_bindir}/alsa_in
279 %attr(755,root,root) %{_bindir}/alsa_out
280 %attr(755,root,root) %{_bindir}/jack_bufsize
281 %attr(755,root,root) %{_bindir}/jack_connect
282 %attr(755,root,root) %{_bindir}/jack_cpu_load
283 %attr(755,root,root) %{_bindir}/jack_disconnect
284 %attr(755,root,root) %{_bindir}/jack_freewheel
285 %attr(755,root,root) %{_bindir}/jack_latent_client
286 %attr(755,root,root) %{_bindir}/jack_lsp
287 %attr(755,root,root) %{_bindir}/jack_metro
288 %attr(755,root,root) %{_bindir}/jack_midi_latency_test
289 %attr(755,root,root) %{_bindir}/jack_midiseq
290 %attr(755,root,root) %{_bindir}/jack_midisine
291 %attr(755,root,root) %{_bindir}/jack_monitor_client
292 %attr(755,root,root) %{_bindir}/jack_multiple_metro
293 %attr(755,root,root) %{_bindir}/jack_netsource
294 %attr(755,root,root) %{_bindir}/jack_property
295 %attr(755,root,root) %{_bindir}/jack_samplerate
296 %attr(755,root,root) %{_bindir}/jack_showtime
297 %attr(755,root,root) %{_bindir}/jack_simple_client
298 %attr(755,root,root) %{_bindir}/jack_simple_session_client
299 %attr(755,root,root) %{_bindir}/jack_thru
300 %attr(755,root,root) %{_bindir}/jack_transport
301 %attr(755,root,root) %{_bindir}/jack_wait
302 %attr(755,root,root) %{_bindir}/jack_zombie
303 %attr(755,root,root) %{_libdir}/jack/inprocess.so
304 %{_mandir}/man1/alsa_in.1*
305 %{_mandir}/man1/alsa_out.1*
306 %{_mandir}/man1/jack_bufsize.1*
307 %{_mandir}/man1/jack_connect.1*
308 %{_mandir}/man1/jack_disconnect.1*
309 %{_mandir}/man1/jack_freewheel.1*
310 %{_mandir}/man1/jack_lsp.1*
311 %{_mandir}/man1/jack_metro.1*
312 %{_mandir}/man1/jack_monitor_client.1*
313 %{_mandir}/man1/jack_netsource.1*
314 %{_mandir}/man1/jack_property.1*
315 %{_mandir}/man1/jack_samplerate.1*
316 %{_mandir}/man1/jack_showtime.1*
317 %{_mandir}/man1/jack_simple_client.1*
318 %{_mandir}/man1/jack_transport.1*
319 %{_mandir}/man1/jack_wait.1*
321 %files example-jackrec
322 %defattr(644,root,root,755)
323 %attr(755,root,root) %{_bindir}/jackrec
324 %{_mandir}/man1/jackrec.1*