packaging: add conditional build with wayland
[platform/upstream/gst-plugins-bad.git] / packaging / gst-plugins-bad.spec
1 %bcond_with wayland
2 Name:           gst-plugins-bad
3 Version:        1.2.0
4 Release:        0
5 %define gst_branch 1.0
6 Summary:        GStreamer Streaming-Media Framework Plug-Ins
7 License:        GPL-2.0+ and LGPL-2.1+
8 Group:          Multimedia/Audio
9 Url:            http://gstreamer.freedesktop.org/
10 Source:         http://gstreamer.freedesktop.org/src/gst-plugins-bad/%{name}-%{version}.tar.xz
11 Source100:      common.tar.bz2
12 Source1001:     gst-plugins-bad.manifest
13 BuildRequires:  gettext-tools
14 BuildRequires:  SDL-devel
15 BuildRequires:  autoconf
16 BuildRequires:  gcc-c++
17 BuildRequires:  glib2-devel >= 2.31.14
18 BuildRequires:  gstreamer-devel >= 1.0.0
19 BuildRequires:  gst-plugins-base-devel >= 1.0.0
20 BuildRequires:  pkgconfig(orc-0.4) >= 0.4.11
21 BuildRequires:  python
22 BuildRequires:  xsltproc
23 BuildRequires:  pkgconfig(cairo)
24 BuildRequires:  pkgconfig(gio-2.0) >= 2.25.0
25 BuildRequires:  pkgconfig(libcrypto)
26 BuildRequires:  pkgconfig(libcurl) >= 7.21.0
27 BuildRequires:  pkgconfig(libexif) >= 0.6.16
28 BuildRequires:  pkgconfig(libpng) >= 1.2
29 BuildRequires:  pkgconfig(openssl) >= 0.9.5
30 BuildRequires:  pkgconfig(sndfile) >= 1.0.16
31 %if %{with wayland}
32 BuildRequires:  pkgconfig(wayland-client) >= 1.0.0
33 %endif
34 BuildRequires:  pkgconfig(x11)
35 Requires(post): glib2-tools
36 Requires(postun): glib2-tools
37 Requires:       gstreamer >= 1.0.2
38 Enhances:       gstreamer
39
40 %description
41 GStreamer is a streaming media framework based on graphs of filters
42 that operate on media data. Applications using this library can do
43 anything media-related,from real-time sound processing to playing
44 videos. Its plug-in-based architecture means that new data types or
45 processing capabilities can be added simply by installing new plug-ins.
46
47
48 %package -n libgstbasecamerabinsrc
49 Summary:        GStreamer Streaming-Media Framework Plug-Ins
50
51 %description -n libgstbasecamerabinsrc
52 GStreamer is a streaming media framework based on graphs of filters
53 that operate on media data. Applications using this library can do
54 anything media-related,from real-time sound processing to playing
55 videos. Its plug-in-based architecture means that new data types or
56 processing capabilities can be added simply by installing new plug-ins.
57
58 %package -n libgstphotography
59 Summary:        GStreamer Streaming-Media Framework Plug-Ins
60
61 %description -n libgstphotography
62 GStreamer is a streaming media framework based on graphs of filters
63 that operate on media data. Applications using this library can do
64 anything media-related,from real-time sound processing to playing
65 videos. Its plug-in-based architecture means that new data types or
66 processing capabilities can be added simply by installing new plug-ins.
67
68 %package -n libgstvdp
69 Summary:        GStreamer Streaming-Media Framework Plug-Ins
70
71 %description -n libgstvdp
72 GStreamer is a streaming media framework based on graphs of filters
73 that operate on media data. Applications using this library can do
74 anything media-related,from real-time sound processing to playing
75 videos. Its plug-in-based architecture means that new data types or
76 processing capabilities can be added simply by installing new plug-ins.
77
78 %package -n libgstcodecparsers
79 Summary:        GStreamer Streaming-Media Framework Plug-Ins
80
81 %description -n libgstcodecparsers
82 GStreamer is a streaming media framework based on graphs of filters
83 that operate on media data. Applications using this library can do
84 anything media-related,from real-time sound processing to playing
85 videos. Its plug-in-based architecture means that new data types or
86 processing capabilities can be added simply by installing new plug-ins.
87
88 %package -n libgstegl
89 Summary:        GStreamer Streaming-Media Framework Plug-Ins
90
91 %description -n libgstegl
92 GStreamer is a streaming media framework based on graphs of filters
93 that operate on media data. Applications using this library can do
94 anything media-related,from real-time sound processing to playing
95 videos. Its plug-in-based architecture means that new data types or
96 processing capabilities can be added simply by installing new plug-ins.
97
98 %package -n libgstinsertbin
99 Summary:        GStreamer Streaming-Media Framework Plug-Ins
100
101 %description -n libgstinsertbin
102 GStreamer is a streaming media framework based on graphs of filters
103 that operate on media data. Applications using this library can do
104 anything media-related,from real-time sound processing to playing
105 videos. Its plug-in-based architecture means that new data types or
106 processing capabilities can be added simply by installing new plug-ins.
107
108 %package -n libgstmpegts
109 Summary:        GStreamer Streaming-Media Framework Plug-Ins
110
111 %description -n libgstmpegts
112 GStreamer is a streaming media framework based on graphs of filters
113 that operate on media data. Applications using this library can do
114 anything media-related,from real-time sound processing to playing
115 videos. Its plug-in-based architecture means that new data types or
116 processing capabilities can be added simply by installing new plug-ins.
117
118 %package -n libgsturidownloader
119 Summary:        GStreamer Streaming-Media Framework Plug-Ins
120
121 %description -n libgsturidownloader
122 GStreamer is a streaming media framework based on graphs of filters
123 that operate on media data. Applications using this library can do
124 anything media-related,from real-time sound processing to playing
125 videos. Its plug-in-based architecture means that new data types or
126 processing capabilities can be added simply by installing new plug-ins.
127
128 %package devel
129 Summary:        GStreamer Streaming-Media Framework Plug-Ins
130 Requires:       gstreamer-devel
131 Requires:       libgstbasecamerabinsrc = %{version}
132 Requires:       libgstcodecparsers = %{version}
133 Requires:       libgstphotography = %{version}
134 Requires:       libgstegl = %{version}
135 Requires:       libgstinsertbin = %{version}
136 Requires:       libgstmpegts = %{version}
137 Requires:       libgsturidownloader = %{version}
138
139 %description devel
140 GStreamer is a streaming media framework based on graphs of filters
141 that operate on media data. Applications using this library can do
142 anything media-related,from real-time sound processing to playing
143 videos. Its plug-in-based architecture means that new data types or
144 processing capabilities can be added simply by installing new plug-ins.
145
146
147 %prep
148 %setup -q -n %{name}-%{version}
149 %setup -q -T -D -a 100
150 cp %{SOURCE1001} .
151
152 %build
153 export V=1
154 NOCONFIGURE=1 ./autogen.sh
155 %configure\
156     --disable-static\
157     --disable-examples\
158     --enable-experimental\
159     --disable-gtk-doc
160 %__make %{?_smp_mflags} V=1
161
162 %install
163 %make_install
164 %find_lang %{name}-%{gst_branch}
165 mv %{name}-%{gst_branch}.lang %{name}.lang
166
167 %lang_package
168
169 %clean
170 rm -rf $RPM_BUILD_ROOT
171
172 %post
173 %glib2_gsettings_schema_post
174
175 %postun
176 %glib2_gsettings_schema_postun
177
178 %post -n libgstbasecamerabinsrc -p /sbin/ldconfig
179
180 %post -n libgstphotography -p /sbin/ldconfig
181
182 %post -n libgstcodecparsers -p /sbin/ldconfig
183
184 %post -n libgstvdp -p /sbin/ldconfig
185
186 %post -n libgstegl -p /sbin/ldconfig
187
188 %post -n libgstinsertbin -p /sbin/ldconfig
189
190 %post -n libgstmpegts -p /sbin/ldconfig
191
192 %post -n libgsturidownloader -p /sbin/ldconfig
193
194 %postun -n libgstbasecamerabinsrc -p /sbin/ldconfig
195
196 %postun -n libgstphotography -p /sbin/ldconfig
197
198 %postun -n libgstcodecparsers -p /sbin/ldconfig
199
200 %postun -n libgstvdp -p /sbin/ldconfig
201
202 %postun -n libgstegl -p /sbin/ldconfig
203
204 %postun -n libgstinsertbin -p /sbin/ldconfig
205
206 %postun -n libgstmpegts -p /sbin/ldconfig
207
208 %postun -n libgsturidownloader -p /sbin/ldconfig
209
210 %files
211 %manifest %{name}.manifest
212 %defattr(-, root, root)
213 %license COPYING COPYING.LIB
214 %{_libdir}/gstreamer-%{gst_branch}/libgstadpcmdec.so
215 %{_libdir}/gstreamer-%{gst_branch}/libgstadpcmenc.so
216 %{_libdir}/gstreamer-%{gst_branch}/libgstasfmux.so
217 %{_libdir}/gstreamer-%{gst_branch}/libgstaudiovisualizers.so
218 %{_libdir}/gstreamer-%{gst_branch}/libgstautoconvert.so
219 %{_libdir}/gstreamer-%{gst_branch}/libgstbayer.so
220 %{_libdir}/gstreamer-%{gst_branch}/libgstcamerabin2.so
221 %{_libdir}/gstreamer-%{gst_branch}/libgstcoloreffects.so
222 %{_libdir}/gstreamer-%{gst_branch}/libgstcurl.so
223 %{_libdir}/gstreamer-%{gst_branch}/libgstdataurisrc.so
224 %{_libdir}/gstreamer-%{gst_branch}/libgstdebugutilsbad.so
225 %{_libdir}/gstreamer-%{gst_branch}/libgstdvb.so
226 %{_libdir}/gstreamer-%{gst_branch}/libgstdvbsuboverlay.so
227 %{_libdir}/gstreamer-%{gst_branch}/libgstfestival.so
228 %{_libdir}/gstreamer-%{gst_branch}/libgstgaudieffects.so
229 %{_libdir}/gstreamer-%{gst_branch}/libgstgdp.so
230 %{_libdir}/gstreamer-%{gst_branch}/libgstgeometrictransform.so
231 %{_libdir}/gstreamer-%{gst_branch}/libgstid3tag.so
232 %{_libdir}/gstreamer-%{gst_branch}/libgstinter.so
233 %{_libdir}/gstreamer-%{gst_branch}/libgstinterlace.so
234 %{_libdir}/gstreamer-%{gst_branch}/libgstjpegformat.so
235 %{_libdir}/gstreamer-%{gst_branch}/libgstliveadder.so
236
237 %{_libdir}/gstreamer-%{gst_branch}/libgstmpegpsdemux.so
238 %{_libdir}/gstreamer-%{gst_branch}/libgstmpegtsdemux.so
239 %{_libdir}/gstreamer-%{gst_branch}/libgstmpegtsmux.so
240 %{_libdir}/gstreamer-%{gst_branch}/libgstpcapparse.so
241 %{_libdir}/gstreamer-%{gst_branch}/libgstpnm.so
242 %{_libdir}/gstreamer-%{gst_branch}/libgstrawparse.so
243 %{_libdir}/gstreamer-%{gst_branch}/libgstremovesilence.so
244 %{_libdir}/gstreamer-%{gst_branch}/libgstsdpelem.so
245 %{_libdir}/gstreamer-%{gst_branch}/libgstsegmentclip.so
246 %{_libdir}/gstreamer-%{gst_branch}/libgstshm.so
247 %{_libdir}/gstreamer-%{gst_branch}/libgstsmooth.so
248 %{_libdir}/gstreamer-%{gst_branch}/libgstspeed.so
249 %{_libdir}/gstreamer-%{gst_branch}/libgstvideoparsersbad.so
250 %{_libdir}/gstreamer-%{gst_branch}/libgsty4mdec.so
251 %{_libdir}/gstreamer-%{gst_branch}/libgstdvdspu.so
252 %{_libdir}/gstreamer-%{gst_branch}/libgstfieldanalysis.so
253 %{_libdir}/gstreamer-%{gst_branch}/libgstfrei0r.so
254 %{_libdir}/gstreamer-%{gst_branch}/libgstsiren.so
255 %{_libdir}/gstreamer-%{gst_branch}/libgstsubenc.so
256 %{_libdir}/gstreamer-%{gst_branch}/libgstmpegpsmux.so
257 %{_libdir}/gstreamer-%{gst_branch}/libgstdecklink.so
258 %{_libdir}/gstreamer-%{gst_branch}/libgsteglglessink.so
259 %{_libdir}/gstreamer-%{gst_branch}/libgstaccurip.so
260 %{_libdir}/gstreamer-%{gst_branch}/libgstaiff.so
261 %{_libdir}/gstreamer-%{gst_branch}/libgstaudiofxbad.so
262 %{_libdir}/gstreamer-%{gst_branch}/libgstfbdevsink.so
263 %{_libdir}/gstreamer-%{gst_branch}/libgstfreeverb.so
264 %{_libdir}/gstreamer-%{gst_branch}/libgstivtc.so
265 %{_libdir}/gstreamer-%{gst_branch}/libgstmfc.so
266 %{_libdir}/gstreamer-%{gst_branch}/libgstmidi.so
267 %{_libdir}/gstreamer-%{gst_branch}/libgstmxf.so
268 %{_libdir}/gstreamer-%{gst_branch}/libgstrfbsrc.so
269 %{_libdir}/gstreamer-%{gst_branch}/libgstvideofiltersbad.so
270 %{_libdir}/gstreamer-%{gst_branch}/libgstyadif.so
271
272 %if %{with wayland}
273 %{_libdir}/gstreamer-%{gst_branch}/libgstwaylandsink.so
274 %endif
275
276 %files -n libgstphotography
277 %manifest %{name}.manifest
278 %defattr(-, root, root)
279 %{_libdir}/libgstphotography-%{gst_branch}.so.0*
280
281 %files -n libgstbasecamerabinsrc
282 %manifest %{name}.manifest
283 %defattr(-, root, root)
284 %{_libdir}/libgstbasecamerabinsrc-%{gst_branch}.so.0*
285
286 %files -n libgstcodecparsers
287 %manifest %{name}.manifest
288 %defattr(-, root, root)
289 %{_libdir}/libgstcodecparsers-%{gst_branch}.so.0*
290
291 %files -n libgstegl
292 %manifest %{name}.manifest
293 %defattr(-, root, root)
294 %{_libdir}/libgstegl-%{gst_branch}.so.0*
295
296 %files -n libgstinsertbin
297 %manifest %{name}.manifest
298 %defattr(-, root, root)
299 %{_libdir}/libgstinsertbin-%{gst_branch}.so.0*
300
301 %files -n libgstmpegts
302 %manifest %{name}.manifest
303 %defattr(-, root, root)
304 %{_libdir}/libgstmpegts-%{gst_branch}.so.0*
305
306 %files -n libgsturidownloader
307 %manifest %{name}.manifest
308 %defattr(-, root, root)
309 %{_libdir}/libgsturidownloader-%{gst_branch}.so.0*
310
311 %files devel
312 %manifest %{name}.manifest
313 %defattr(-, root, root)
314 %{_includedir}/gstreamer-%{gst_branch}
315 %{_libdir}/*.so
316 %{_libdir}/pkgconfig/gstreamer-codecparsers-%{gst_branch}.pc
317 %{_libdir}/pkgconfig/gstreamer-plugins-bad-%{gst_branch}.pc
318 %{_libdir}/pkgconfig/gstreamer-egl-%{gst_branch}.pc
319 %{_libdir}/pkgconfig/gstreamer-insertbin-%{gst_branch}.pc