]>
Commit | Line | Data |
---|---|---|
2ed4d46e | 1 | # TODO: -devel and Qt*Declarative-* packages conflict with gstreamer0.10 equivalents |
ba518b99 JB |
2 | # |
3 | # Conditional build: | |
4 | %bcond_without qt4 # Qt 4 libraries | |
5 | %bcond_without qt5 # Qt 5 libraries | |
6 | # | |
7 | Summary: QtGStreamer - libraries integrating Qt 4 with GStreamer | |
8 | Summary(pl.UTF-8): QtGStreamer - biblioteki integrujące Qt 4 z GStreamerem | |
3b311080 | 9 | Name: qt-gstreamer |
93d46f34 | 10 | Version: 1.2.0 |
3b311080 JB |
11 | Release: 1 |
12 | License: LGPL v2+ | |
13 | Group: Libraries | |
2ed4d46e | 14 | Source0: http://gstreamer.freedesktop.org/src/qt-gstreamer/%{name}-%{version}.tar.xz |
93d46f34 | 15 | # Source0-md5: fd794045a828c184acc1794b08a463fd |
3b311080 | 16 | URL: http://gstreamer.net/ |
a8f475c6 | 17 | BuildRequires: OpenGL-devel |
3b311080 | 18 | BuildRequires: bison |
f6eae54a | 19 | BuildRequires: boost-devel >= 1.39 |
40f731f5 | 20 | BuildRequires: cmake >= 2.8.9 |
2ed4d46e | 21 | BuildRequires: doxygen |
3b311080 | 22 | BuildRequires: flex |
a8f475c6 | 23 | BuildRequires: glib2-devel >= 2.0 |
2ed4d46e JB |
24 | BuildRequires: gstreamer-devel >= 1.0.0 |
25 | BuildRequires: gstreamer-plugins-base-devel >= 1.0.0 | |
3b311080 JB |
26 | BuildRequires: libstdc++-devel >= 6:4.5 |
27 | BuildRequires: pkgconfig | |
2ed4d46e JB |
28 | BuildRequires: tar >= 1:1.22 |
29 | BuildRequires: xz | |
ba518b99 JB |
30 | %if %{with qt4} |
31 | BuildRequires: QtCore-devel >= 4.7 | |
32 | BuildRequires: QtDeclarative-devel >= 4.7 | |
33 | BuildRequires: QtGui-devel >= 4.7 | |
34 | BuildRequires: QtOpenGL-devel >= 4.7 | |
35 | BuildRequires: QtTest-devel >= 4.7 | |
a8f475c6 | 36 | BuildRequires: qt4-qmake >= 4.7 |
ba518b99 JB |
37 | %endif |
38 | %if %{with qt5} | |
39 | BuildRequires: Qt5Core-devel >= 5.0.0 | |
d431bec6 | 40 | BuildRequires: Qt5Declarative-devel >= 5.0.0 |
ba518b99 JB |
41 | BuildRequires: Qt5Gui-devel >= 5.0.0 |
42 | BuildRequires: Qt5OpenGL-devel >= 5.0.0 | |
2ed4d46e JB |
43 | BuildRequires: Qt5Qml-devel >= 5.0.0 |
44 | BuildRequires: Qt5Quick-devel >= 5.0.0 | |
ba518b99 JB |
45 | BuildRequires: Qt5Widgets-devel >= 5.0.0 |
46 | BuildRequires: Qt5Test-devel >= 5.0.0 | |
47 | BuildRequires: qt5-qmake >= 5.0.0 | |
48 | %endif | |
a8f475c6 JB |
49 | Requires: QtCore >= 4.7 |
50 | Requires: QtGui >= 4.7 | |
51 | Requires: QtOpenGL >= 4.7 | |
2ed4d46e JB |
52 | Requires: gstreamer >= 1.0.0 |
53 | Requires: gstreamer-plugins-base >= 1.0.0 | |
3b311080 JB |
54 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
55 | ||
56 | %description | |
57 | QtGStreamer is a set of libraries and plugins providing C++ bindings | |
58 | for GStreamer with a Qt-style API plus some helper classes for | |
ba518b99 | 59 | integrating GStreamer better in Qt 4 applications. |
3b311080 JB |
60 | |
61 | Currently, it consists of the following parts: | |
ba518b99 | 62 | * QtGLib - library providing C++/Qt 4 bindings for parts of the GLib |
3b311080 | 63 | and GObject APIs, a base on which QtGStreamer is built. |
ba518b99 | 64 | * QtGStreamer - library providing C++/Qt 4 bindings for GStreamer |
3b311080 JB |
65 | * QtGStreamerUi - library providing integration with QtGui; |
66 | currently, it only provides a video widget that embeds GStreamer's | |
67 | video sinks. | |
f6eae54a JB |
68 | * QtGStreamerUtils - library providing some high level utility |
69 | classes. | |
3b311080 JB |
70 | |
71 | In addition, it provides a "qwidgetvideosink" GStreamer element, an | |
72 | video sink element that can draw directly on QWidgets using QPainter. | |
73 | ||
74 | %description -l pl.UTF-8 | |
75 | QtGStreamer to zestaw bibliotek i wtyczek z wiązaniami C++ do | |
76 | GStreamera o API w stylu Qt oraz klasami pomocniczymi dla lepszej | |
ba518b99 | 77 | integracji GStreamera w aplikacjach Qt 4. |
3b311080 JB |
78 | |
79 | Obecnie zawiera następujące części: | |
ba518b99 | 80 | - QtGLib - biblioteka z wiązaniami C++/Qt 4 dla części API bibliotek |
3b311080 | 81 | GLib i GObject; w oparciu o nią zbudowany jest QtGStreamer |
ba518b99 | 82 | - QtGStreamer - biblioteka z wiązaniami C++/Qt 4 do GStreamera |
3b311080 JB |
83 | - QtGStreamerUi - biblioteka integrująca z QtGui; obecnie zawiera |
84 | tylko widget wideo osadzający wyjście obrazu (videosink) GStremera. | |
f6eae54a JB |
85 | - QtGStreamerUtils - biblioteka udostępniająca klasy narzędziowe |
86 | wysokiego poziomu. | |
3b311080 JB |
87 | |
88 | Ponadto pakiet udostępnia element GStreamera "qwidgetvideosink" - | |
89 | element wyjściowy obrazu rysujący bezpośrednio na QWidgetach przy | |
90 | użyciu QPaintera. | |
91 | ||
3b311080 JB |
92 | %package devel |
93 | Summary: Header files for QtGStreamer libraries | |
94 | Summary(pl.UTF-8): Pliki nagłówkowe bibliotek QtGStreamer | |
95 | Group: Development/Libraries | |
96 | Requires: %{name} = %{version}-%{release} | |
a8f475c6 JB |
97 | Requires: QtCore-devel >= 4.7 |
98 | Requires: QtGui-devel >= 4.7 | |
2ed4d46e JB |
99 | Requires: gstreamer-devel >= 1.0.0 |
100 | Requires: gstreamer-plugins-base-devel >= 1.0.0 | |
3b311080 JB |
101 | |
102 | %description devel | |
103 | Header files for QtGStreamer libraries. | |
104 | ||
105 | %description devel -l pl.UTF-8 | |
106 | Pliki nagłówkowe bibliotek QtGStreamer. | |
107 | ||
a8f475c6 JB |
108 | %package -n QtDeclarative-plugin-gstreamer |
109 | Summary: Qt GStreamer plugin for QtDeclarative | |
110 | Summary(pl.UTF-8): Wtyczka Qt GStreamer dla QtDeclarative | |
111 | Group: Libraries | |
112 | Requires: %{name} = %{version}-%{release} | |
113 | Requires: QtDeclarative >= 4.7 | |
114 | ||
115 | %description -n QtDeclarative-plugin-gstreamer | |
116 | Qt GStreamer plugin for QtDeclarative. | |
117 | ||
118 | %description -n QtDeclarative-plugin-gstreamer -l pl.UTF-8 | |
119 | Wtyczka Qt GStreamer dla QtDeclarative. | |
120 | ||
ba518b99 JB |
121 | %package -n qt5-gstreamer |
122 | Summary: Qt5GStreamer - libraries integrating Qt 5 with GStreamer | |
123 | Summary(pl.UTF-8): Qt5GStreamer - biblioteki integrujące Qt 5 z GStreamerem | |
124 | Group: Libraries | |
125 | Requires: Qt5Core >= 5.0.0 | |
126 | Requires: Qt5Gui >= 5.0.0 | |
127 | Requires: Qt5OpenGL >= 5.0.0 | |
2ed4d46e JB |
128 | Requires: Qt5Quick >= 5.0.0 |
129 | Requires: Qt5Widgets >= 5.0.0 | |
130 | Requires: gstreamer >= 1.0.0 | |
131 | Requires: gstreamer-plugins-base >= 1.0.0 | |
ba518b99 JB |
132 | |
133 | %description -n qt5-gstreamer | |
134 | Qt5GStreamer is a set of libraries and plugins providing C++ bindings | |
135 | for GStreamer with a Qt-style API plus some helper classes for | |
136 | integrating GStreamer better in Qt 5 applications. | |
137 | ||
138 | Currently, it consists of the following parts: | |
139 | * Qt5GLib - library providing C++/Qt 5 bindings for parts of the GLib | |
140 | and GObject APIs, a base on which Qt5GStreamer is built. | |
141 | * Qt5GStreamer - library providing C++/Qt 5 bindings for GStreamer | |
142 | * Qt5GStreamerUi - library providing integration with Qt5Gui; | |
143 | currently, it only provides a video widget that embeds GStreamer's | |
144 | video sinks. | |
145 | * Qt5GStreamerUtils - library providing some high level utility | |
146 | classes. | |
147 | ||
148 | In addition, it provides a "qwidgetvideosink" GStreamer element, an | |
149 | video sink element that can draw directly on QWidgets using QPainter. | |
150 | ||
151 | %description -n qt5-gstreamer -l pl.UTF-8 | |
152 | Qt5GStreamer to zestaw bibliotek i wtyczek z wiązaniami C++ do | |
153 | GStreamera o API w stylu Qt oraz klasami pomocniczymi dla lepszej | |
154 | integracji GStreamera w aplikacjach Qt 5. | |
155 | ||
156 | Obecnie zawiera następujące części: | |
157 | - Qt5GLib - biblioteka z wiązaniami C++/Qt 5 dla części API bibliotek | |
158 | GLib i GObject; w oparciu o nią zbudowany jest QtGStreamer | |
159 | - Qt5GStreamer - biblioteka z wiązaniami C++/Qt 5 do GStreamera | |
160 | - Qt5GStreamerUi - biblioteka integrująca z Qt5Gui; obecnie zawiera | |
161 | tylko widget wideo osadzający wyjście obrazu (videosink) GStremera. | |
162 | - QtGStreamerUtils - biblioteka udostępniająca klasy narzędziowe | |
163 | wysokiego poziomu. | |
164 | ||
165 | Ponadto pakiet udostępnia element GStreamera "qwidgetvideosink" - | |
166 | element wyjściowy obrazu rysujący bezpośrednio na QWidgetach przy | |
167 | użyciu QPaintera. | |
168 | ||
169 | %package -n qt5-gstreamer-devel | |
170 | Summary: Header files for Qt5GStreamer libraries | |
171 | Summary(pl.UTF-8): Pliki nagłówkowe bibliotek QtGStreamer | |
172 | Group: Development/Libraries | |
173 | Requires: %{name} = %{version}-%{release} | |
174 | Requires: Qt5Core-devel >= 5.0.0 | |
175 | Requires: Qt5Gui-devel >= 5.0.0 | |
2ed4d46e JB |
176 | Requires: Qt5Quick-devel >= 5.0.0 |
177 | Requires: Qt5Widgets-devel >= 5.0.0 | |
178 | Requires: gstreamer-devel >= 1.0.0 | |
179 | Requires: gstreamer-plugins-base-devel >= 1.0.0 | |
ba518b99 JB |
180 | |
181 | %description -n qt5-gstreamer-devel | |
182 | Header files for Qt5GStreamer libraries. | |
183 | ||
184 | %description -n qt5-gstreamer-devel -l pl.UTF-8 | |
185 | Pliki nagłówkowe bibliotek Qt5GStreamer. | |
186 | ||
d431bec6 | 187 | %package -n Qt5Declarative-plugin-gstreamer |
2ed4d46e JB |
188 | Summary: Qt GStreamer plugin for Qt5Declarative (Quick1) |
189 | Summary(pl.UTF-8): Wtyczka Qt GStreamer dla Qt5Declarative (Quick1) | |
d431bec6 JB |
190 | Group: Libraries |
191 | Requires: %{name} = %{version}-%{release} | |
192 | Requires: Qt5Declarative >= 5.0.0 | |
193 | ||
194 | %description -n Qt5Declarative-plugin-gstreamer | |
2ed4d46e | 195 | Qt GStreamer plugin for Qt5Declarative (Quick1). |
d431bec6 JB |
196 | |
197 | %description -n Qt5Declarative-plugin-gstreamer -l pl.UTF-8 | |
2ed4d46e JB |
198 | Wtyczka Qt GStreamer dla Qt5Declarative (Quick1). |
199 | ||
200 | %package -n Qt5Qml-plugin-gstreamer | |
201 | Summary: Qt GStreamer plugin for Qt5Qml (Quick2) | |
202 | Summary(pl.UTF-8): Wtyczka Qt GStreamer dla Qt5Qml (Quick2) | |
203 | Group: Libraries | |
204 | Requires: %{name} = %{version}-%{release} | |
205 | Requires: Qt5Qml >= 5.0.0 | |
206 | Requires: Qt5Quick >= 5.0.0 | |
207 | ||
208 | %description -n Qt5Qml-plugin-gstreamer | |
209 | Qt GStreamer plugin for Qt5Qml (Quick2). | |
210 | ||
211 | %description -n Qt5Qml-plugin-gstreamer -l pl.UTF-8 | |
212 | Wtyczka Qt GStreamer dla Qt5Qml (Quick2). | |
d431bec6 | 213 | |
3b311080 JB |
214 | %prep |
215 | %setup -q | |
216 | ||
217 | %build | |
ba518b99 JB |
218 | %if %{with qt4} |
219 | install -d build-qt4 | |
220 | cd build-qt4 | |
3b311080 JB |
221 | %cmake .. \ |
222 | -DCMAKE_CXX_FLAGS_RELEASE="-DNDEBUG" \ | |
223 | -DQTGSTREAMER_EXAMPLES=OFF \ | |
224 | -DQT_QMAKE_EXECUTABLE=/usr/bin/qmake-qt4 | |
ba518b99 JB |
225 | %{__make} |
226 | cd .. | |
227 | %endif | |
3b311080 | 228 | |
ba518b99 JB |
229 | %if %{with qt5} |
230 | install -d build-qt5 | |
231 | cd build-qt5 | |
232 | %cmake .. \ | |
233 | -DCMAKE_CXX_FLAGS_RELEASE="-DNDEBUG" \ | |
234 | -DQTGSTREAMER_EXAMPLES=OFF \ | |
235 | -DQT_QMAKE_EXECUTABLE=/usr/bin/qmake-qt5 \ | |
236 | -DQT_VERSION=5 | |
3b311080 | 237 | %{__make} |
ba518b99 JB |
238 | cd .. |
239 | %endif | |
3b311080 JB |
240 | |
241 | %install | |
242 | rm -rf $RPM_BUILD_ROOT | |
243 | ||
ba518b99 JB |
244 | %if %{with qt4} |
245 | %{__make} -C build-qt4 install \ | |
246 | DESTDIR=$RPM_BUILD_ROOT | |
247 | %endif | |
248 | ||
249 | %if %{with qt5} | |
250 | %{__make} -C build-qt5 install \ | |
3b311080 | 251 | DESTDIR=$RPM_BUILD_ROOT |
ba518b99 | 252 | %endif |
3b311080 JB |
253 | |
254 | %clean | |
255 | rm -rf $RPM_BUILD_ROOT | |
256 | ||
257 | %post -p /sbin/ldconfig | |
258 | %postun -p /sbin/ldconfig | |
259 | ||
ba518b99 JB |
260 | %post -n qt5-gstreamer -p /sbin/ldconfig |
261 | %postun -n qt5-gstreamer -p /sbin/ldconfig | |
262 | ||
263 | %if %{with qt4} | |
3b311080 JB |
264 | %files |
265 | %defattr(644,root,root,755) | |
a8f475c6 | 266 | %doc NEWS README |
3b311080 JB |
267 | %attr(755,root,root) %{_libdir}/libQtGLib-2.0.so.*.*.* |
268 | %attr(755,root,root) %ghost %{_libdir}/libQtGLib-2.0.so.0 | |
2ed4d46e JB |
269 | %attr(755,root,root) %{_libdir}/libQtGStreamer-1.0.so.*.*.* |
270 | %attr(755,root,root) %ghost %{_libdir}/libQtGStreamer-1.0.so.0 | |
271 | %attr(755,root,root) %{_libdir}/libQtGStreamerUi-1.0.so.*.*.* | |
272 | %attr(755,root,root) %ghost %{_libdir}/libQtGStreamerUi-1.0.so.0 | |
273 | %attr(755,root,root) %{_libdir}/libQtGStreamerUtils-1.0.so.*.*.* | |
274 | %attr(755,root,root) %ghost %{_libdir}/libQtGStreamerUtils-1.0.so.0 | |
275 | %attr(755,root,root) %{_libdir}/gstreamer-1.0/libgstqtvideosink.so | |
3b311080 JB |
276 | |
277 | %files devel | |
278 | %defattr(644,root,root,755) | |
279 | %attr(755,root,root) %{_libdir}/libQtGLib-2.0.so | |
2ed4d46e JB |
280 | %attr(755,root,root) %{_libdir}/libQtGStreamer-1.0.so |
281 | %attr(755,root,root) %{_libdir}/libQtGStreamerUi-1.0.so | |
282 | %attr(755,root,root) %{_libdir}/libQtGStreamerUtils-1.0.so | |
3b311080 JB |
283 | %{_includedir}/QtGStreamer |
284 | %{_pkgconfigdir}/QtGLib-2.0.pc | |
2ed4d46e JB |
285 | %{_pkgconfigdir}/QtGStreamer-1.0.pc |
286 | %{_pkgconfigdir}/QtGStreamerUi-1.0.pc | |
287 | %{_pkgconfigdir}/QtGStreamerUtils-1.0.pc | |
40f731f5 | 288 | %{_libdir}/cmake/QtGStreamer |
a8f475c6 JB |
289 | |
290 | %files -n QtDeclarative-plugin-gstreamer | |
291 | %defattr(644,root,root,755) | |
292 | %dir %{_libdir}/qt4/imports/QtGStreamer | |
40f731f5 | 293 | %attr(755,root,root) %{_libdir}/qt4/imports/QtGStreamer/libQtGStreamerQuick1.so |
a8f475c6 | 294 | %{_libdir}/qt4/imports/QtGStreamer/qmldir |
ba518b99 JB |
295 | %endif |
296 | ||
297 | %if %{with qt5} | |
298 | %files -n qt5-gstreamer | |
299 | %defattr(644,root,root,755) | |
300 | %doc NEWS README | |
301 | %attr(755,root,root) %{_libdir}/libQt5GLib-2.0.so.*.*.* | |
302 | %attr(755,root,root) %ghost %{_libdir}/libQt5GLib-2.0.so.0 | |
2ed4d46e JB |
303 | %attr(755,root,root) %{_libdir}/libQt5GStreamer-1.0.so.*.*.* |
304 | %attr(755,root,root) %ghost %{_libdir}/libQt5GStreamer-1.0.so.0 | |
305 | %attr(755,root,root) %{_libdir}/libQt5GStreamerQuick-1.0.so.*.*.* | |
306 | %attr(755,root,root) %ghost %{_libdir}/libQt5GStreamerQuick-1.0.so.0 | |
307 | %attr(755,root,root) %{_libdir}/libQt5GStreamerUi-1.0.so.*.*.* | |
308 | %attr(755,root,root) %ghost %{_libdir}/libQt5GStreamerUi-1.0.so.0 | |
309 | %attr(755,root,root) %{_libdir}/libQt5GStreamerUtils-1.0.so.*.*.* | |
310 | %attr(755,root,root) %ghost %{_libdir}/libQt5GStreamerUtils-1.0.so.0 | |
311 | %attr(755,root,root) %{_libdir}/gstreamer-1.0/libgstqt5videosink.so | |
ba518b99 JB |
312 | |
313 | %files -n qt5-gstreamer-devel | |
314 | %defattr(644,root,root,755) | |
315 | %attr(755,root,root) %{_libdir}/libQt5GLib-2.0.so | |
2ed4d46e JB |
316 | %attr(755,root,root) %{_libdir}/libQt5GStreamer-1.0.so |
317 | %attr(755,root,root) %{_libdir}/libQt5GStreamerQuick-1.0.so | |
318 | %attr(755,root,root) %{_libdir}/libQt5GStreamerUi-1.0.so | |
319 | %attr(755,root,root) %{_libdir}/libQt5GStreamerUtils-1.0.so | |
ba518b99 JB |
320 | %{_includedir}/Qt5GStreamer |
321 | %{_pkgconfigdir}/Qt5GLib-2.0.pc | |
2ed4d46e JB |
322 | %{_pkgconfigdir}/Qt5GStreamer-1.0.pc |
323 | %{_pkgconfigdir}/Qt5GStreamerQuick-1.0.pc | |
324 | %{_pkgconfigdir}/Qt5GStreamerUi-1.0.pc | |
325 | %{_pkgconfigdir}/Qt5GStreamerUtils-1.0.pc | |
ba518b99 | 326 | %{_libdir}/cmake/Qt5GStreamer |
d431bec6 JB |
327 | |
328 | %files -n Qt5Declarative-plugin-gstreamer | |
329 | %defattr(644,root,root,755) | |
330 | %dir %{_libdir}/qt5/imports/QtGStreamer | |
331 | %attr(755,root,root) %{_libdir}/qt5/imports/QtGStreamer/libQtGStreamerQuick1.so | |
332 | %{_libdir}/qt5/imports/QtGStreamer/qmldir | |
2ed4d46e JB |
333 | |
334 | %files -n Qt5Qml-plugin-gstreamer | |
335 | %defattr(644,root,root,755) | |
336 | %dir %{_libdir}/qt5/qml/QtGStreamer | |
337 | %attr(755,root,root) %{_libdir}/qt5/qml/QtGStreamer/libQtGStreamerQuick2.so | |
338 | %{_libdir}/qt5/qml/QtGStreamer/qmldir | |
ba518b99 | 339 | %endif |