summaryrefslogtreecommitdiff
path: root/gst-plugins-base.spec.in
blob: f1ece9320a0220dd04be45a084422227259f005f (plain)
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
34
35
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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
# 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
Requires: 	gstreamer09 >= %{gst_minver}
BuildRequires: 	gstreamer09-devel >= %{gst_minver}
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
%{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.*
@USE_GCONF_TRUE@%{_libdir}/libgstgconf-%{majorminor}.so.*
%{_libdir}/libgstaudio-0.9.so.*
%{_libdir}/libgstaudiofilter-0.9.so.*
%{_libdir}/libgstriff-0.9.so.*
%{_libdir}/libgsttagedit-0.9.so.*
%{_libdir}/libgstvideo-0.9.so.*

# 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
%{_libdir}/gstreamer-%{majorminor}/libgstaudiorate.so
%{_libdir}/gstreamer-%{majorminor}/libgstsubparse.so
@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
@USE_XVIDEO_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstximagesink.so
@USE_XVIDEO_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstxvimagesink.so

                                                                                
%package -n gstreamer-plugins-base-devel
Summary: 	GStreamer Plugin Library Headers.
Group: 		Development/Libraries
Requires: 	gstreamer-plugins-base = %{version}

%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
# plugin interface headers
%{_includedir}/gstreamer-%{majorminor}/gst/mixer/mixer.h
%{_includedir}/gstreamer-%{majorminor}/gst/mixer/mixertrack.h
%{_includedir}/gstreamer-%{majorminor}/gst/mixer/mixer-enumtypes.h
%{_includedir}/gstreamer-%{majorminor}/gst/navigation/navigation.h
%{_includedir}/gstreamer-%{majorminor}/gst/colorbalance/colorbalance.h
%{_includedir}/gstreamer-%{majorminor}/gst/colorbalance/colorbalancechannel.h
%{_includedir}/gstreamer-%{majorminor}/gst/colorbalance/colorbalance-enumtypes.h
%{_includedir}/gstreamer-%{majorminor}/gst/propertyprobe/propertyprobe.h
%{_includedir}/gstreamer-%{majorminor}/gst/tuner/tuner.h
%{_includedir}/gstreamer-%{majorminor}/gst/tuner/tunerchannel.h
%{_includedir}/gstreamer-%{majorminor}/gst/tuner/tunernorm.h
%{_includedir}/gstreamer-%{majorminor}/gst/tuner/tuner-enumtypes.h
%{_includedir}/gstreamer-%{majorminor}/gst/xoverlay/xoverlay.h
%{_includedir}/gstreamer-%{majorminor}/gst/mixer/mixeroptions.h
%{_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
%{_libdir}/libgstaudio-0.9.so
%{_libdir}/libgstaudiofilter-0.9.so
%{_libdir}/libgstriff-0.9.so
%{_libdir}/libgsttagedit-0.9.so
%{_libdir}/libgstvideo-0.9.so


# library headers
@USE_GCONF_TRUE@%{_includedir}/gstreamer-%{majorminor}/gst/gconf/gconf.h
%{_includedir}/gstreamer-%{majorminor}/gst/tag/tag.h
# pkg-config files
@USE_GCONF_TRUE@%{_libdir}/pkgconfig/gstreamer-gconf-%{majorminor}.pc
%{_libdir}/pkgconfig/gstreamer-interfaces-%{majorminor}.pc
%{_libdir}/pkgconfig/gstreamer-libs-%{majorminor}.pc
%{_libdir}/pkgconfig/gstreamer-plugins-%{majorminor}.pc
# .so files
@USE_GCONF_TRUE@%{_libdir}/libgstgconf-%{majorminor}.so
%{_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
# @USE_GST_V4L2_TRUE@Requires:      gstreamer-plugins09 = %{version}
# @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
* Fri May 6 2005 Christian Schaller <christian at fluendo dot com>
- Added libgstaudiorate and libgstsubparse to spec file

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