update spec file
[platform/upstream/gstreamer.git] / gstreamer.spec.in
1 %define         majorminor      @GST_MAJORMINOR@
2
3 Name:           gstreamer09
4 Version:        @VERSION@
5 Release:        @GST_VERSION_RELEASE@
6 Summary:        GStreamer streaming media framework runtime.
7
8 Group:          Libraries/Multimedia
9 License:        LGPL
10 URL:            http://gstreamer.net/
11 Vendor:         GStreamer Backpackers Team <package@gstreamer.net>
12 Source:         http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-%{version}.tar.gz
13 BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
14
15 %define         majorminor      @GST_MAJORMINOR@
16 %define         _glib2          @GLIB2_REQ@
17 %define         _libxml2        @LIBXML2_REQ@
18
19 Requires:       glib2 >= %_glib2
20 Requires:       libxml2 >= %_libxml2
21 Requires:       popt > 1.6
22
23 # Provides:     gstreamer =%{version}-%{release}
24
25 BuildRequires:  glib2-devel >= %_glib2
26 BuildRequires:  libxml2-devel >= %_libxml2
27 BuildRequires:  bison
28 BuildRequires:  flex
29 BuildRequires:  m4
30 BuildRequires:  gtk-doc >= 1.1
31 BuildRequires:  gcc
32 BuildRequires:  gettext
33 BuildRequires:  zlib-devel
34 BuildRequires:  popt > 1.6
35 Prereq:         /sbin/ldconfig
36
37 ### documentation requirements
38 BuildRequires:  python2
39 BuildRequires:  openjade
40 BuildRequires:  jadetex
41 BuildRequires:  libxslt
42 BuildRequires:  docbook-style-dsssl
43 BuildRequires:  docbook-style-xsl
44 BuildRequires:  docbook-utils
45 BuildRequires:  transfig
46 BuildRequires:  xfig
47 BuildRequires:  netpbm-progs
48 BuildRequires:  ghostscript
49
50 %description
51 GStreamer is a streaming-media framework, based on graphs of filters which
52 operate on media data. Applications using this library can do anything
53 from real-time sound processing to playing videos, and just about anything
54 else media-related.  Its plugin-based architecture means that new data
55 types or processing capabilities can be added simply by installing new 
56 plugins.
57
58 %package devel
59 Summary:        Libraries/include files for GStreamer streaming media framework.
60 Group:          Development/Libraries
61
62 Requires:       %{name} = %{version}-%{release}
63 Requires:       glib2-devel >= %_glib2
64 Requires:       libxml2-devel >= %_libxml2
65 Provides:       gstreamer-devel09 = %{version}-%{release}
66
67 %description devel
68 GStreamer is a streaming-media framework, based on graphs of filters which
69 operate on media data. Applications using this library can do anything
70 from real-time sound processing to playing videos, and just about anything
71 else media-related.  Its plugin-based architecture means that new data
72 types or processing capabilities can be added simply by installing new   
73 plugins.
74
75 This package contains the libraries and includes files necessary to develop
76 applications and plugins for GStreamer.
77
78 %package -n gstreamer09-tools
79 Summary:        tools for GStreamer streaming media framework.
80 Group:          Libraries/Multimedia
81
82 %description -n gstreamer09-tools
83 GStreamer is a streaming-media framework, based on graphs of filters which
84 operate on media data. Applications using this library can do anything
85 from real-time sound processing to playing videos, and just about anything
86 else media-related.  Its plugin-based architecture means that new data
87 types or processing capabilities can be added simply by installing new   
88 plugins.
89
90 This package contains wrapper scripts for the command-line tools that work
91 with different major/minor versions of GStreamer.
92                                                                                 
93 %prep
94 %setup -n gstreamer-%{version}
95
96 %build
97 %configure \
98   --enable-debug \
99   --with-cachedir=%{_localstatedir}/cache/gstreamer-%{majorminor} \
100   --disable-tests --disable-examples --disable-docs-build
101                                                                                 
102 make %{?_smp_mflags}
103
104 %install  
105 rm -rf $RPM_BUILD_ROOT
106
107 # build documentation to a different location so it doesn't end up in
108 # a gstreamer-devel-(version) dir and doesn't get deleted by %doc scripts
109 %makeinstall docdir=$RPM_BUILD_ROOT%{_datadir}/gstreamer-%{majorminor}/doc
110                                                                                 
111 %find_lang gstreamer-%{majorminor}
112 # Clean out files that should not be part of the rpm.
113 rm -f $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/*.la
114 rm -f $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/*.a
115 rm -f $RPM_BUILD_ROOT%{_libdir}/*.a
116 rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
117 # Create empty cache directory
118 mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/cache/gstreamer-%{majorminor}
119                                                                                 
120 %clean
121 rm -rf $RPM_BUILD_ROOT
122
123 %post
124 /sbin/ldconfig
125 %{_bindir}/gst-register-%{majorminor} > /dev/null 2> /dev/null
126
127 %postun
128 /sbin/ldconfig
129
130 %files -f gstreamer-%{majorminor}.lang
131 %defattr(-, root, root, -)
132 %doc AUTHORS COPYING NEWS README TODO RELEASE
133 %doc ABOUT-NLS REQUIREMENTS DOCBUILDING
134 %{_libdir}/libgstreamer-%{majorminor}.so.*
135 %{_libdir}/libgstbase-%{majorminor}.so.*
136 %{_libdir}/libgstcontrol-%{majorminor}.so.*
137
138 %dir %{_libdir}/gstreamer-%{majorminor}
139 %{_libdir}/gstreamer-%{majorminor}/libgstelements.so
140 %{_libdir}/gstreamer-%{majorminor}/libgstgetbits.so
141 %{_libdir}/gstreamer-%{majorminor}/libgstindexers.so
142 %{_libdir}/gstreamer-%{majorminor}/libgstthreadscheduler.so
143 %{_libdir}/libgstdataprotocol-%{majorminor}.so
144
145 %{_bindir}/gst-complete-%{majorminor}
146 %{_bindir}/gst-compprep-%{majorminor}
147 %{_bindir}/gst-feedback-%{majorminor}
148 %{_bindir}/gst-inspect-%{majorminor}
149 %{_bindir}/gst-launch-%{majorminor}
150 %{_bindir}/gst-md5sum-%{majorminor}
151 %{_bindir}/gst-register-%{majorminor}
152 %{_bindir}/gst-typefind-%{majorminor}
153 %{_bindir}/gst-xmlinspect-%{majorminor}
154 %{_bindir}/gst-xmllaunch-%{majorminor}
155 %{_mandir}/man1/gst-complete-%{majorminor}.*
156 %{_mandir}/man1/gst-compprep-%{majorminor}.*
157 %{_mandir}/man1/gst-feedback-%{majorminor}.*
158 %{_mandir}/man1/gst-inspect-%{majorminor}.*
159 %{_mandir}/man1/gst-launch-%{majorminor}.*
160 %{_mandir}/man1/gst-md5sum-%{majorminor}.*
161 %{_mandir}/man1/gst-register-%{majorminor}.*
162 %{_mandir}/man1/gst-typefind-%{majorminor}.*
163 %{_mandir}/man1/gst-xmlinspect-%{majorminor}.*
164 %{_mandir}/man1/gst-xmllaunch-%{majorminor}.*
165
166 %dir %{_localstatedir}/cache/gstreamer-%{majorminor}
167
168 %files -n gstreamer09-tools
169 %defattr(-, root, root, -)
170 %{_bindir}/gst-complete
171 %{_bindir}/gst-compprep
172 %{_bindir}/gst-feedback
173 %{_bindir}/gst-inspect
174 %{_bindir}/gst-launch
175 %{_bindir}/gst-md5sum
176 %{_bindir}/gst-register
177 %{_bindir}/gst-typefind
178 %{_bindir}/gst-xmlinspect
179 %{_bindir}/gst-xmllaunch
180
181 %files devel
182 %defattr(-, root, root, -)
183 %dir %{_includedir}/gstreamer-%{majorminor}
184 %dir %{_includedir}/gstreamer-%{majorminor}/gst
185 %{_includedir}/gstreamer-%{majorminor}/gst/*.h
186
187 %{_includedir}/gstreamer-%{majorminor}/gst/base
188 %{_includedir}/gstreamer-%{majorminor}/gst/control
189 %{_includedir}/gstreamer-%{majorminor}/gst/dataprotocol
190 %{_includedir}/gstreamer-%{majorminor}/gst/getbits
191
192 %{_libdir}/libgstdataprotocol-%{majorminor}.so.*
193 %{_libdir}/libgstreamer-%{majorminor}.so
194 %{_libdir}/libgstbase-%{majorminor}.so
195 %{_libdir}/libgstcontrol-%{majorminor}.so
196
197 %{_datadir}/aclocal/gst-element-check-%{majorminor}.m4
198 %{_libdir}/pkgconfig/gstreamer-%{majorminor}.pc
199 %{_libdir}/pkgconfig/gstreamer-base-%{majorminor}.pc
200 %{_libdir}/pkgconfig/gstreamer-control-%{majorminor}.pc
201 %{_libdir}/pkgconfig/gstreamer-dataprotocol-%{majorminor}.pc
202
203 # %doc %{_datadir}/gtk-doc/html/gstreamer-%{majorminor}
204 # %doc %{_datadir}/gtk-doc/html/gstreamer-libs-%{majorminor}
205                                                                                 
206 %changelog
207 * Thu Jun 09 2005 Thomas Vander Stichele <thomas at apestaart dot org>
208 - clean up spec for 0.9 builds
209
210 * Thu Feb 12 2004 Thomas Vander Stichele <thomas at apestaart dot org>
211 - sync with 0.7.4 fedora spec
212
213 * Thu Feb 05 2004 Thomas Vander Stichele <thomas at apestaart dot org>
214 - bump gtk-doc required version to 1.0 for the new options used
215
216 * Wed Feb 04 2004 Thomas Vander Stichele <thomas at apestaart dot org>
217 - add -common package containing frontend wrapper binaries
218
219 * Mon Dec 01 2003 Thomas Vander Stichele <thomas at apestaart dot org>
220 - changed documentation buildrequires
221
222 * Sun Nov 09 2003 Christian Schaller <Uraeus@gnome.org>
223 - Fix spec to handle new bytestream library 
224
225 * Sun Aug 17 2003 Christian Schaller <uraeus@gnome.org>
226 - Remove docs build from RPM as the build is broken
227 - Fix stuff since more files are versioned now
228 - Remove wingo schedulers
229 - Remove putbits stuff
230
231 * Sun May 18 2003 Thomas Vander Stichele <thomas at apestaart dot org>
232 - devhelp files are now generated by gtk-doc, changed accordingly
233
234 * Sun Mar 16 2003 Christian F.K. Schaller <Uraeus@gnome.org>
235 - Add gthread scheduler
236
237 * Sat Dec 07 2002 Thomas Vander Stichele <thomas at apestaart dot org>
238 - define majorminor and use it everywhere
239 - full parallel installability
240
241 * Tue Nov 05 2002 Christian Schaller <Uraeus@linuxrising.org>
242 - Add optwingo scheduler
243 * Sat Oct 12 2002 Christian Schaller <Uraeus@linuxrising.org>
244 - Updated to work better with default RH8 rpm
245 - Added missing unspeced files
246 - Removed .a and .la files from buildroot
247
248 * Sat Sep 21 2002 Thomas Vander Stichele <thomas@apestaart.org>
249 - added gst-md5sum
250
251 * Tue Sep 17 2002 Thomas Vander Stichele <thomas@apestaart.org>
252 - adding flex to buildrequires
253
254 * Fri Sep 13 2002 Christian F.K. Schaller <Uraeus@linuxrising.org>
255 - Fixed the schedulers after the renaming
256 * Sun Sep 08 2002 Thomas Vander Stichele <thomas@apestaart.org>
257 - added transfig to the BuildRequires:
258
259 * Sat Jun 22 2002 Thomas Vander Stichele <thomas@apestaart.org>
260 - moved header location
261
262 * Mon Jun 17 2002 Thomas Vander Stichele <thomas@apestaart.org>
263 - added popt
264 - removed .la
265
266 * Fri Jun 07 2002 Thomas Vander Stichele <thomas@apestaart.org>
267 - added release of gstreamer to req of gstreamer-devel
268 - changed location of API docs to be in gtk-doc like other gtk-doc stuff
269 - reordered SPEC file
270
271 * Mon Apr 29 2002 Thomas Vander Stichele <thomas@apestaart.org>
272 - moved html docs to gtk-doc standard directory
273
274 * Tue Mar 5 2002 Thomas Vander Stichele <thomas@apestaart.org>
275 - move version defines of glib2 and libxml2 to configure.ac
276 - add BuildRequires for these two libs
277
278 * Sun Mar 3 2002 Thomas Vander Stichele <thomas@apestaart.org>
279 - put html docs in canonical place, avoiding %doc erasure
280 - added devhelp support, current install of it is hackish
281
282 * Sat Mar 2 2002 Christian Schaller <Uraeus@linuxrising.org>
283 - Added documentation to build
284
285 * Mon Feb 11 2002 Thomas Vander Stichele <thomas@apestaart.org>
286 - added libgstbasicscheduler
287 - renamed libgst to libgstreamer
288
289 * Fri Jan 04 2002 Christian Schaller <Uraeus@linuxrising.org>
290 - Added configdir parameter as it seems the configdir gets weird otherwise
291
292 * Thu Jan 03 2002 Thomas Vander Stichele <thomas@apestaart.org>
293 - split off gstreamer-editor from core
294 - removed gstreamer-gnome-apps
295
296 * Sat Dec 29 2001 Rodney Dawes <dobey@free.fr>
297 - Cleaned up the spec file for the gstreamer core/plug-ins split
298 - Improve spec file
299
300 * Sat Dec 15 2001 Christian Schaller <Uraeus@linuxrising.org>
301 - Split of more plugins from the core and put them into their own modules
302 - Includes colorspace, xfree and wav
303 - Improved package Require lines
304 - Added mp3encode (lame based) to the SPEC
305
306 * Wed Dec 12 2001 Christian Schaller <Uraeus@linuxrising.org>
307 - Thomas merged mpeg plugins into one
308 * Sat Dec 08 2001 Christian Schaller <Uraeus@linuxrising.org>
309 - More minor cleanups including some fixed descriptions from Andrew Mitchell
310
311 * Fri Dec 07 2001 Christian Schaller <Uraeus@linuxrising.org>
312 - Added logging to the make statement
313
314 * Wed Dec 05 2001 Christian Schaller <Uraeus@linuxrising.org>
315 - Updated in preparation for 0.3.0 release
316
317 * Fri Jun 29 2001 Christian Schaller <Uraeus@linuxrising.org>
318 - Updated for 0.2.1 release
319 - Split out the GUI packages into their own RPM
320 - added new plugins (FLAC, festival, quicktime etc.)
321
322 * Sat Jun 09 2001 Christian Schaller <Uraeus@linuxrising.org>
323 - Visualisation plugins bundled out togheter
324 - Moved files sections up close to their respective descriptions
325
326 * Sat Jun 02 2001 Christian Schaller <Uraeus@linuxrising.org>
327 - Split the package into separate RPMS, 
328   putting most plugins out by themselves.
329
330 * Fri Jun 01 2001 Christian Schaller <Uraeus@linuxrising.org>
331 - Updated with change suggestions from Dennis Bjorklund
332
333 * Tue Jan 09 2001 Erik Walthinsen <omega@cse.ogi.edu>
334 - updated to build -devel package as well
335
336 * Sun Jan 30 2000 Erik Walthinsen <omega@cse.ogi.edu>
337 - first draft of spec file
338