remove default -march optimization flag, add --with-cpu-target=FOO configure time...
[jack.git] / jack.spec.in
blobb3961c904e70442c623aea4425cde283e92be93f
1 # $Id$
2 # set to 0 to build rpms without capabilities support
3 %define enable_capabilities 0
4 # strip binaries
5 %define strip_jackd 1
6 # set to 1 to enable alternate jack temporary
7 # directory mounted as tmpfs
8 %define enable_tmpdir 1
9 %if %{enable_tmpdir}
10 %define jack_tmpdir /dev/shm
11 %endif
12 # use oss
13 %define oss 1
14 # use portaudio
15 %define portaudio 0
16 # use freebob
17 %define freebob 1
18 # use preemption check
19 %define preemption_check 0
20 # use dynamic SIMD (ix86)
21 %define dynsimd 1
23 Summary: The Jack Audio Connection Kit
24 Name: @PACKAGE@
25 Version: @VERSION@
26 Release: 6
27 License: GPL
28 Group: System Environment/Daemons
29 Source0: %{name}-%{version}.tar.gz
30 URL: http://jackaudio.org
31 BuildRoot: %{_tmppath}/%{name}-%{version}-root-%(id -u -n)
33 BuildRequires: automake >= 1.6
34 BuildRequires: libsndfile-devel >= 1.0.11
35 BuildRequires: libsamplerate-devel >= 0.1.2
36 BuildRequires: pkgconfig
37 BuildRequires: doxygen
39 %if %{portaudio}
40 BuildRequires: portaudio >= 18.1
41 %endif
42 %if %{freebob}
43 BuildRequires: libfreebob >= 1.0.0
44 %endif
47 %description
48 JACK is a low-latency audio server, written primarily for the Linux
49 operating system. It can connect a number of different applications to
50 an audio device, as well as allowing them to share audio between
51 themselves. Its clients can run in their own processes (ie. as a
52 normal application), or can they can run within a JACK server (ie. a
53 "plugin").
55 JACK is different from other audio server efforts in that it has been
56 designed from the ground up to be suitable for professional audio
57 work. This means that it focuses on two key areas: synchronous
58 execution of all clients, and low latency operation.
60 %package devel
61 Summary: Header files for Jack
62 Group: Development/Libraries
63 Requires: %{name} = %{version}
65 %description devel
66 Header files for the Jack Audio Connection Kit.
68 %package example-clients
69 Summary: Example clients that use Jack
70 Group: Applications/Multimedia
71 Requires: %{name} = %{version}
73 %description example-clients
74 Small example clients that use the Jack Audio Connection Kit.
76 %prep
78 %setup -q
80 %build
81 %configure \
82 %if %{enable_capabilities}
83 --enable-capabilities \
84 %if %{strip_jackd}
85 --enable-stripped-jackd \
86 %endif
87 %endif
88 %if %{enable_tmpdir}
89 --with-default-tmpdir=%{jack_tmpdir} \
90 %endif
91 %if ! %{oss}
92 --disable-oss \
93 %endif
94 %if ! %{portaudio}
95 --disable-portaudio \
96 %endif
97 %if ! %{freebob}
98 --disable-freebob \
99 %endif
100 %if %{preemption_check}
101 --enable-preemption-check \
102 %endif
103 %if %{dynsimd}
104 --enable-dynsimd \
105 %endif
106 --enable-optimize
107 make
110 %install
111 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
112 make install DESTDIR=$RPM_BUILD_ROOT
114 %if %{enable_capabilities}
115 # make jackstart suid root
116 chmod 04755 $RPM_BUILD_ROOT%{_bindir}/jackstart
117 %endif
119 # remove extra install of the documentation
120 rm -rf $RPM_BUILD_ROOT%{_datadir}/%{name}/*
122 %post
123 /sbin/ldconfig
125 %postun
126 /sbin/ldconfig
128 %clean
129 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
131 %files
132 %defattr(-,root,root)
133 %doc AUTHORS TODO COPYING*
134 %if %{enable_capabilities}
135 %attr(4755, root, root) %{_bindir}/jackstart
136 %endif
137 %{_bindir}/jackd
138 %{_bindir}/jack_load
139 %{_bindir}/jack_unload
140 %{_bindir}/jack_monitor_client
141 %{_bindir}/jack_connect
142 %{_bindir}/jack_disconnect
143 %{_bindir}/jack_lsp
144 %{_bindir}/jack_freewheel
145 %{_bindir}/jack_evmon
146 %{_bindir}/jack_alias
147 %{_bindir}/jackrec
148 %{_bindir}/jack_transport
149 %{_bindir}/jack_netsource
150 %{_bindir}/alsa_in
151 %{_bindir}/alsa_out
152 %{_libdir}/libjack.so
153 %{_libdir}/libjack.so.0
154 %{_libdir}/libjack.so.0.0.*
155 %{_libdir}/libjackserver.so
156 %{_libdir}/libjackserver.so.0
157 %{_libdir}/libjackserver.so.0.0.*
158 %{_libdir}/jack/inprocess.so
159 %{_libdir}/jack/intime.so
160 %{_libdir}/jack/jack_*.so
161 %{_mandir}/man1/*
163 %files devel
164 %defattr(-,root,root)
165 %doc doc/reference
166 %{_libdir}/*.la
167 %{_libdir}/jack/*.la
168 %{_includedir}/jack/jack.h
169 %{_includedir}/jack/ringbuffer.h
170 %{_includedir}/jack/timestamps.h
171 %{_includedir}/jack/transport.h
172 %{_includedir}/jack/types.h
173 %{_includedir}/jack/thread.h
174 %{_includedir}/jack/intclient.h
175 %{_includedir}/jack/statistics.h
176 %{_includedir}/jack/midiport.h
177 %{_libdir}/pkgconfig/jack.pc
179 %files example-clients
180 %defattr(-,root,root)
181 %{_bindir}/jack_simple_client
182 %{_bindir}/jack_impulse_grabber
183 %{_bindir}/jack_metro
184 %{_bindir}/jack_showtime
185 %{_bindir}/jack_midisine
186 %{_bindir}/jack_midiseq
189 %changelog
191 * Mon Apr 28 2008 Rui Nuno Capela <rncbc@rncbc.org> - 0.111.4-6
192 - moved all bin tools from example-clients to nominal package
194 * Sat Jan 5 2008 Rui Nuno Capela <rncbc@rncbc.org> - 0.108.1-5
195 - added jack_alias and jack_evmon to example-clients package
197 * Sun Jun 18 2006 Rui Nuno Capela <rncbc@rncbc.org> - 0.102.15-4
198 - enable freebob backend drivers whenever available
200 * Sun May 7 2006 Rui Nuno Capela <rncbc@rncbc.org> - 0.102.1-3
201 - new JACK MIDI files on devel and example-clients
202 - set default tmpdir to /dev/shm
204 * Thu Oct 30 2005 Rui Nuno Capela <rncbc@rncbc.org> - 0.100.7-2
205 - omitted enable-capabilities, stripped-binaries and preemption
206 check from default.
208 * Thu Jan 3 2005 Rui Nuno Capela <rncbc@rncbc.org> - 0.99.44-1
209 - add jack/statistics.h to devel package
211 * Thu Dec 28 2004 Rui Nuno Capela <rncbc@rncbc.org> - 0.99.41-1
212 - merge integration of usx2y (rawusb) driver into alsa backend
213 - enable preemption check feature of 2.6 RT kernels
214 - add jack/intclient.h to devel package
215 - add jack/thread.h to devel package
216 - moved doc/reference to devel package
217 - set default tmpdir to /var/lib/jack/tmp
218 - include oss backend driver if available
220 * Sat May 22 2004 Pete Bessman <ninjadroid@gazuga.net> - 0.98.1-1
221 - changes to accomodate jack_oss and RPM's fascist build policy
223 * Mon Nov 13 2003 Lawrie Abbott <lawrieabbott@iinet.net.au>
224 - update based on Planet CCRMA 0.80.0 release
226 * Thu May 23 2002 Fernando Lopez-Lezcano <nando@ccrma.stanford.edu>
227 - added configuration variable to build with/without capabilities
229 * Tue May 21 2002 Fernando Lopez-Lezcano <nando@ccrma.stanford.edu>
230 - split the examples into a different package so that the base
231 package does not depend on, for example, fltk.
232 - disable stripping of binaries
234 * Mon May 13 2002 Fernando Lopez-Lezcano <nando@ccrma.stanford.edu>
235 - do not compress documentation, added doxygen docs directory
236 - changed defattr directives
237 - added libdir/jack*, libdir/*.a and libdir/*.so.* to files
238 - moved all so's to libs, jack will not start without jack_alsa.so
239 - merged base and libs packages
241 * Sat May 4 2002 Christian Fredrik Kalager Schaller <uraeus@linuxrising.org>
242 - initial release of jack sound server package for GStreamer