gst-plugins-base.spec.in 9.78 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# This SPEC file is created in a way that tries to solve various demands. 
# First of all it tries to create packages that will easily replace both the 
# Fedora Core default packages and also replace the extra rpms provided 
# by Fedora.us or freshrpms.net.
# At the same time they will only include plugins for which you have the needed
# packages installed at the time you run autogen.sh. This means that if you
# are not careful you might end up with less plugins than what the standard 
# packages provide, which in turn means things might stop working for you. 
# So make sure you have an idea of what you do before creating RPMS using this 
# SPEC file.

%define         register        %{_bindir}/gst-register-%{majorminor} > /dev/null 2>&1 || :
%define         gst_minver      0.7.6
%define         gstp_minver     0.7.6

Name: 		gstreamer-plugins-base
Version: 	@VERSION@
Release: 	@GST_PLUGINS_VERSION_RELEASE@
Summary: 	GStreamer Streaming-media framework plug-ins.

%define 	majorminor	@GST_MAJORMINOR@

Group: 		Applications/Multimedia
License: 	LGPL
URL:		http://gstreamer.net/
Vendor:         GStreamer Backpackers Team <package@gstreamer.net>
Source:         http://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-%{version}.tar.gz
BuildRoot: 	%{_tmppath}/%{name}-%{version}-root

%define         _glib2          @GLIB2_REQ@

Requires:       glib2 >= %_glib2
BuildRequires:  glib2-devel >= %_glib2
34
35
Requires: 	gstreamer09 >= %{gst_minver}
BuildRequires: 	gstreamer09-devel >= %{gst_minver}
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
BuildRequires:  gcc-c++
BuildRequires:  XFree86-devel

@USE_GCONF_TRUE@Requires: 	GConf2
@USE_GCONF_TRUE@BuildRequires: 	GConf2-devel
@USE_GNOME_VFS_TRUE@Requires:      gnome-vfs2 > 1.9.4.00
@USE_GNOME_VFS_TRUE@BuildRequires: gnome-vfs2-devel > 1.9.4.00
@USE_VORBIS_TRUE@Requires:      libogg >= 1.0
@USE_VORBIS_TRUE@Requires:      libvorbis >= 1.0
@USE_VORBIS_TRUE@BuildRequires: libogg-devel >= 1.0
@USE_VORBIS_TRUE@BuildRequires: libvorbis-devel >= 1.0
@USE_XVIDEO_TRUE@Requires: 	XFree86-libs
@USE_XVIDEO_TRUE@BuildRequires: XFree86-devel

%description
GStreamer is a streaming-media framework, based on graphs of filters which
operate on media data. Applications using this library can do anything
from real-time sound processing to playing videos, and just about anything
else media-related.  Its plugin-based architecture means that new data
types or processing capabilities can be added simply by installing new
plug-ins.

%prep
%setup -n gst-plugins-base-%{version}
%build
%configure \
  --with-gdk-pixbuf-loader-dir=$RPM_BUILD_ROOT%{_libdir}/gtk-2.0/2.2.0/loaders \
  --enable-debug \
  --enable-DEBUG 

make %{?_smp_mflags}
                                                                                
%install
rm -rf $RPM_BUILD_ROOT

export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1
%makeinstall
unset GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL
                                                                                
# Clean out files that should not be part of the rpm.
rm -f $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/*.la
rm -f $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/*.a
rm -f $RPM_BUILD_ROOT%{_libdir}/*.a
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
rm -f $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstgdkpixbuf.so

%clean
rm -rf $RPM_BUILD_ROOT

%post
Christian Schaller's avatar
Christian Schaller committed
86
87
@USE_GCONF_TRUE@export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source` 
@USE_GCONF_TRUE@gconftool-2 --makefile-install-rule %{_sysconfdir}/gconf/schemas/gstreamer-%{majorminor}.schemas > /dev/null
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
%{register}
%postun
%{register}

%files
%defattr(-, root, root)
%doc AUTHORS COPYING README REQUIREMENTS

# helper programs
%{_bindir}/gst-launch-ext-%{majorminor}
%{_bindir}/gst-visualise-%{majorminor}
%{_mandir}/man1/gst-launch-ext-%{majorminor}.*
%{_mandir}/man1/gst-visualise-%{majorminor}*
%{_datadir}/locale
# schema files
@USE_GCONF_TRUE@%{_sysconfdir}/gconf/schemas/gstreamer-%{majorminor}.schemas

# libraries
%{_libdir}/libgstinterfaces-%{majorminor}.so.*
Christian Schaller's avatar
Christian Schaller committed
107
108
109
110
111
112
113
%{_libdir}/libgstaudio-%{majorminor}.so.*
%{_libdir}/libgstaudiofilter-%{majorminor}.so.*
%{_libdir}/libgstriff-%{majorminor}.so.*
%{_libdir}/libgsttagedit-%{majorminor}.so.*
%{_libdir}/libgstvideo-%{majorminor}.so.*
%{_libdir}/libgstnet-%{majorminor}.so.*
%{_libdir}/libgstrtp-%{majorminor}.so.*
114
115
116
117
118
119
120
121
122
123

# non-core plugins without external dependencies
%{_libdir}/gstreamer-%{majorminor}/libgstadder.so
%{_libdir}/gstreamer-%{majorminor}/libgstaudioconvert.so
%{_libdir}/gstreamer-%{majorminor}/libgstffmpegcolorspace.so
%{_libdir}/gstreamer-%{majorminor}/libgstsinesrc.so
%{_libdir}/gstreamer-%{majorminor}/libgstdecodebin.so
%{_libdir}/gstreamer-%{majorminor}/libgstplaybin.so
%{_libdir}/gstreamer-%{majorminor}/libgsttypefindfunctions.so
%{_libdir}/gstreamer-%{majorminor}/libgstvideotestsrc.so
124
125
%{_libdir}/gstreamer-%{majorminor}/libgstaudiorate.so
%{_libdir}/gstreamer-%{majorminor}/libgstsubparse.so
126
127
%{_libdir}/gstreamer-%{majorminor}/libgstvolume.so
%{_libdir}/gstreamer-%{majorminor}/libgstvideorate.so
128
%{_libdir}/gstreamer-%{majorminor}/libgstvideoscale.so
Christian Schaller's avatar
Christian Schaller committed
129
%{_libdir}/gstreamer-%{majorminor}/libgsttcp.so
Christian Schaller's avatar
Christian Schaller committed
130
%{_libdir}/gstreamer-%{majorminor}/libgstvideo4linux.so
131
%{_libdir}/gstreamer-%{majorminor}/libgstaudioresample.so
132

133
134
135
136
@USE_THEORA_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgsttheora.so
@USE_GNOME_VFS_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstgnomevfs.so
@USE_VORBIS_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstvorbis.so
@USE_VORBIS_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstogg.so
137
@USE_XVIDEO_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstximage.so
138
139
140
141
142
143
@USE_XVIDEO_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstxvimagesink.so

                                                                                
%package -n gstreamer-plugins-base-devel
Summary: 	GStreamer Plugin Library Headers.
Group: 		Development/Libraries
144
Requires: 	gstreamer-plugins-base = %{version}
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160

%description -n gstreamer-plugins-base-devel
GStreamer support libraries header files.

%files -n gstreamer-plugins-base-devel
%defattr(-, root, root)
# plugin helper library headers
%{_includedir}/gstreamer-%{majorminor}/gst/audio/audio.h
%{_includedir}/gstreamer-%{majorminor}/gst/audio/gstaudiofilter.h
%{_includedir}/gstreamer-%{majorminor}/gst/audio/multichannel.h
%{_includedir}/gstreamer-%{majorminor}/gst/floatcast/floatcast.h
%{_includedir}/gstreamer-%{majorminor}/gst/riff/riff-ids.h
%{_includedir}/gstreamer-%{majorminor}/gst/riff/riff-media.h
%{_includedir}/gstreamer-%{majorminor}/gst/riff/riff-read.h
%{_includedir}/gstreamer-%{majorminor}/gst/video/video.h
%{_includedir}/gstreamer-%{majorminor}/gst/video/videosink.h
161
162
163
164
165
166
167
168
169
170
171
172
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/colorbalance.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/colorbalancechannel.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/interfaces-enumtypes.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/mixer.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/mixeroptions.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/mixertrack.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/navigation.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/propertyprobe.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/tuner.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/tunerchannel.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/tunernorm.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/xoverlay.h
Christian Schaller's avatar
Christian Schaller committed
173
174
%{_includedir}/gstreamer-%{majorminor}/gst/audio/gstaudiosrc.h
%{_includedir}/gstreamer-%{majorminor}/gst/audio/gstbaseaudiosrc.h
Christian Schaller's avatar
Christian Schaller committed
175
176
177
%{_includedir}/gstreamer-%{majorminor}/gst/audio/multichannel-enumtypes.h
%{_includedir}/gstreamer-%{majorminor}/gst/rtp/gstbasertpdepayload.h
%{_includedir}/gstreamer-%{majorminor}/gst/rtp/gstrtpbuffer.h
178

179
180
181
182
183
# plugin interface headers
%{_includedir}/gstreamer-%{majorminor}/gst/audio/gstaudioclock.h
%{_includedir}/gstreamer-%{majorminor}/gst/audio/gstaudiosink.h
%{_includedir}/gstreamer-%{majorminor}/gst/audio/gstbaseaudiosink.h
%{_includedir}/gstreamer-%{majorminor}/gst/audio/gstringbuffer.h
184
185
186
187
188
189
190
%{_includedir}/gstreamer-%{majorminor}/gst/net/gstnetbuffer.h
%{_libdir}/libgstaudio-%{majorminor}.so
%{_libdir}/libgstaudiofilter-%{majorminor}.so
%{_libdir}/libgstriff-%{majorminor}.so
%{_libdir}/libgsttagedit-%{majorminor}.so
%{_libdir}/libgstvideo-%{majorminor}.so
%{_libdir}/libgstnet-%{majorminor}.so
Christian Schaller's avatar
Christian Schaller committed
191
%{_libdir}/libgstrtp-%{majorminor}.so
192
193
194
195
196


# library headers
%{_includedir}/gstreamer-%{majorminor}/gst/tag/tag.h
# pkg-config files
Christian Schaller's avatar
Christian Schaller committed
197
%{_libdir}/pkgconfig/gstreamer-plugins-base-%{majorminor}.pc
198
199
200
201
202
203
204
205
206
207
208
209
210
211
# .so files
%{_libdir}/libgstinterfaces-%{majorminor}.so
@USE_ALSA_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstalsa.so


# Here are packages not in the base plugins package but not dependant
# on an external lib

# Here are all the packages depending on external libs #

### VIDEO 4 LINUX 2 ###
# @USE_GST_V4L2_TRUE@%package -n gstreamer-plugins-v4l2
# @USE_GST_V4L2_TRUE@Summary:       GStreamer Video for Linux 2 plug-in.
# @USE_GST_V4L2_TRUE@Group:         Applications/Multimedia
212
# @USE_GST_V4L2_TRUE@Requires:      gstreamer-plugins09 = %{version}
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
# @USE_GST_V4L2_TRUE@BuildRequires: glibc-devel
# @USE_GST_V4L2_TRUE@Obsoletes:	  gstreamer-v4l2
# @USE_GST_V4L2_TRUE@
# @USE_GST_V4L2_TRUE@%description -n gstreamer-plugins-v4l2
# @USE_GST_V4L2_TRUE@Plug-in for accessing Video for Linux devices.
# @USE_GST_V4L2_TRUE@
# @USE_GST_V4L2_TRUE@%files -n gstreamer-plugins-v4l2
# @USE_GST_V4L2_TRUE@%defattr(-, root, root)
# @USE_GST_V4L2_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstvideo4linux2.so
# @USE_GST_V4L2_TRUE@
# @USE_GST_V4L2_TRUE@%post -n gstreamer-plugins-v4l2
# @USE_GST_V4L2_TRUE@%{register}
# @USE_GST_V4L2_TRUE@
# @USE_GST_V4L2_TRUE@%postun -n gstreamer-plugins-v4l2
# @USE_GST_V4L2_TRUE@%{register}

%changelog
230
231
232
* Fri May 6 2005 Christian Schaller <christian at fluendo dot com>
- Added libgstaudiorate and libgstsubparse to spec file

233
234
* Thu May 5 2005 Christian Schaller <christian at fluendo dot com>
- first attempt at spec file for gst-plugins-base