]> git.pld-linux.org Git - packages/gstreamer.git/blob - gstreamer.spec
- merge dev-18 branch
[packages/gstreamer.git] / gstreamer.spec
1 # TODO: suid/capabilities for ptp-helper?
2 #
3 # Conditional build:
4 %bcond_without  apidocs         # hotdoc based API documentation
5
6 %define         gstmver         1.0
7
8 Summary:        GStreamer Streaming-media framework runtime
9 Summary(pl.UTF-8):      GStreamer - biblioteki środowiska do obróbki strumieni
10 Name:           gstreamer
11 Version:        1.19.3
12 Release:        2
13 License:        LGPL v2+
14 Group:          Libraries
15 Source0:        https://gstreamer.freedesktop.org/src/gstreamer/%{name}-%{version}.tar.xz
16 # Source0-md5:  5af65dab2d400fbc5a9850b16bb5db05
17 Patch0:         %{name}-inspect-rpm-format.patch
18 URL:            https://gstreamer.freedesktop.org/
19 BuildRequires:  bison >= 1.875
20 BuildRequires:  docbook-dtd412-xml
21 BuildRequires:  elfutils-devel
22 BuildRequires:  flex >= 2.5.31
23 BuildRequires:  gettext-tools >= 0.17
24 BuildRequires:  glib2-devel >= 1:2.44.0
25 %if %(locale -a | grep -q '^C\.UTF-8$'; echo $?)
26 BuildRequires:  glibc-localedb-all
27 %endif
28 BuildRequires:  glibc-misc
29 BuildRequires:  gobject-introspection-devel >= 1.31.1
30 %{?with_apidocs:BuildRequires:  hotdoc >= 0.11.0}
31 BuildRequires:  libcap-devel
32 %ifarch %{ix86} %{x8664} x32 %{arm} hppa ia64 mips ppc ppc64 sh
33 BuildRequires:  libunwind-devel
34 %endif
35 BuildRequires:  meson >= 0.48
36 BuildRequires:  ninja >= 1.5
37 BuildRequires:  perl-base
38 BuildRequires:  pkgconfig >= 1:0.9.0
39 BuildRequires:  python3 >= 1:3.2
40 BuildRequires:  rpm-build >= 4.6
41 BuildRequires:  rpmbuild(macros) >= 1.736
42 BuildRequires:  sed >= 4.0
43 BuildRequires:  tar >= 1:1.22
44 BuildRequires:  xz
45 Requires:       glib2 >= 1:2.44.0
46 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
47
48 %define         gstlibdir       %{_libdir}/gstreamer-%{gstmver}
49 %define         gstlibexecdir   %{_libexecdir}/gstreamer-%{gstmver}
50 %define         gstincludedir   %{_includedir}/gstreamer-%{gstmver}
51
52 %description
53 GStreamer is a streaming-media framework, based on graphs of filters
54 which operate on media data. Applications using this library can do
55 anything from real-time sound processing to playing videos, and just
56 about anything else media-related. Its plugin-based architecture means
57 that new data types or processing capabilities can be added simply by
58 installing new plugins.
59
60 %description -l pl.UTF-8
61 GStreamer to środowisko obróbki danych strumieniowych, bazujące na
62 grafie filtrów operujących na danych medialnych. Aplikacje używające
63 tej biblioteki mogą robić wszystko od przetwarzania dźwięku w czasie
64 rzeczywistym, do odtwarzania filmów i czegokolwiek innego związanego z
65 mediami. Architektura bazująca na wtyczkach pozwala na łatwe dodawanie
66 nowych typów danych lub możliwości obróbki.
67
68 %package devel
69 Summary:        Include files for GStreamer streaming-media framework
70 Summary(pl.UTF-8):      Pliki nagłówkowe do środowiska obróbki strumieni GStreamer
71 Group:          Development/Libraries
72 Requires:       %{name} = %{version}-%{release}
73 Requires:       glib2-devel >= 1:2.44.0
74 Obsoletes:      gstreamer-plugins-bad-devel < 0.10.10
75 Conflicts:      gstreamer-plugins-bad-devel < 1.14
76
77 %description devel
78 This package contains the includes files necessary to develop
79 applications and plugins for GStreamer.
80
81 %description devel -l pl.UTF-8
82 Ten pakiet zawiera pliki nagłówkowe potrzebne do rozwijania aplikacji
83 i wtyczek do GStreamera.
84
85 %package static
86 Summary:        GStreamer static libraries
87 Summary(pl.UTF-8):      Biblioteki statyczne GStreamer
88 Group:          Development/Libraries
89 Requires:       %{name}-devel = %{version}-%{release}
90
91 %description static
92 Static versions of GStreamer libraries.
93
94 %description static -l pl.UTF-8
95 Statyczne wersje bibliotek GStreamer.
96
97 %package apidocs
98 Summary:        GStreamer API documentation
99 Summary(pl.UTF-8):      Dokumentacja API GStreamera
100 Group:          Documentation
101 BuildArch:      noarch
102
103 %description apidocs
104 GStreamer API documentation.
105
106 %description apidocs -l pl.UTF-8
107 Dokumentacja API GStreamera.
108
109 %package gdb
110 Summary:        GStreamer pretty printers for GDB
111 Summary(pl.UTF-8):      Funkcje wypisujące dane GStreamer dla GDB
112 Group:          Development/Debuggers
113
114 %description gdb
115 This package contains Python scripts for GDB pretty printing of the
116 GStreamer types.
117
118 %description gdb -l pl.UTF-8
119 Ten pakiet zawiera skrypty Pythona dla GDB służące do ładnego
120 wypisywania typów GStreamer.
121
122 %package -n bash-completion-gstreamer
123 Summary:        Bash completion for GStreamer utilities
124 Summary(pl.UTF-8):      Bashowe uzupełnianie parametrów narzędzi GStreamera
125 Group:          Applications/Shells
126 Requires:       %{name} = %{version}-%{release}
127 Requires:       bash-completion >= 2.0
128
129 %description -n bash-completion-gstreamer
130 Bash completion for GStreamer utilities: gst-inspect and gst-launch.
131
132 %description -n bash-completion-gstreamer
133 Bashowe uzupełnianie parametrów narzędzi GStreamera: gst-inspect oraz
134 gst-launch.
135
136 %prep
137 %setup -q
138 %patch0 -p1
139
140 %{__sed} -i -e '1s,/usr/bin/env python3,%{__python3},' docs/gst-plugins-doc-cache-generator.py
141
142 %build
143 %meson build \
144         %{?with_apidocs:-Ddoc=enabled} \
145         -D tests=disabled \
146         -D examples=disabled
147
148 %ninja_build -C build
149
150 %if %{with apidocs}
151 cd build/docs
152 for component in base check controller coreelements coretracers gstreamer net ; do
153         LC_ALL=C.UTF-8 hotdoc run --conf-file ${component}-doc.json
154 done
155 %endif
156
157 %install
158 rm -rf $RPM_BUILD_ROOT
159
160 %ninja_install -C build
161
162 %find_lang %{name} --all-name --with-gnome
163
164 %py3_comp $RPM_BUILD_ROOT%{_datadir}/gstreamer-1.0/gdb
165 %py3_ocomp $RPM_BUILD_ROOT%{_datadir}/gstreamer-1.0/gdb
166
167 # no static modules - shut up check files
168 %{__rm} $RPM_BUILD_ROOT%{gstlibdir}/lib*.a
169
170 %if %{with apidocs}
171 install -d $RPM_BUILD_ROOT%{_docdir}/gstreamer-%{gstmver}
172 cp -pr build/docs/{base,check,controller,coreelements,coretracers,gstreamer,net}-doc $RPM_BUILD_ROOT%{_docdir}/gstreamer-%{gstmver}
173 %endif
174
175 %clean
176 rm -rf $RPM_BUILD_ROOT
177
178 %post   -p /sbin/ldconfig
179 %postun -p /sbin/ldconfig
180
181 %files -f %{name}.lang
182 %defattr(644,root,root,755)
183 %doc AUTHORS ChangeLog MAINTAINERS NEWS README RELEASE
184 %attr(755,root,root) %{_bindir}/gst-inspect-1.0
185 %attr(755,root,root) %{_bindir}/gst-launch-1.0
186 %attr(755,root,root) %{_bindir}/gst-stats-1.0
187 %attr(755,root,root) %{_bindir}/gst-typefind-1.0
188 %attr(755,root,root) %{_libdir}/libgstbase-%{gstmver}.so.*.*.*
189 %attr(755,root,root) %ghost %{_libdir}/libgstbase-%{gstmver}.so.0
190 %attr(755,root,root) %{_libdir}/libgstcheck-%{gstmver}.so.*.*.*
191 %attr(755,root,root) %ghost %{_libdir}/libgstcheck-%{gstmver}.so.0
192 %attr(755,root,root) %{_libdir}/libgstcontroller-%{gstmver}.so.*.*.*
193 %attr(755,root,root) %ghost %{_libdir}/libgstcontroller-%{gstmver}.so.0
194 %attr(755,root,root) %{_libdir}/libgstnet-%{gstmver}.so.*.*.*
195 %attr(755,root,root) %ghost %{_libdir}/libgstnet-%{gstmver}.so.0
196 %attr(755,root,root) %{_libdir}/libgstreamer-%{gstmver}.so.*.*.*
197 %attr(755,root,root) %ghost %{_libdir}/libgstreamer-%{gstmver}.so.0
198 %if "%{_libexecdir}" != "%{_libdir}"
199 %dir %{gstlibexecdir}
200 %endif
201 %attr(755,root,root) %{gstlibexecdir}/gst-plugin-scanner
202 %attr(755,root,root) %{gstlibexecdir}/gst-ptp-helper
203 %dir %{gstlibdir}
204 %attr(755,root,root) %{gstlibdir}/libgstcoreelements.so
205 %attr(755,root,root) %{gstlibdir}/libgstcoretracers.so
206 # common for some plugins
207 %dir %{_datadir}/gstreamer-1.0
208 %{_mandir}/man1/gst-inspect-1.0.1*
209 %{_mandir}/man1/gst-launch-1.0.1*
210 %{_mandir}/man1/gst-stats-1.0.1*
211 %{_mandir}/man1/gst-typefind-1.0.1*
212 %{_libdir}/girepository-1.0/Gst-%{gstmver}.typelib
213 %{_libdir}/girepository-1.0/GstBase-%{gstmver}.typelib
214 %{_libdir}/girepository-1.0/GstCheck-%{gstmver}.typelib
215 %{_libdir}/girepository-1.0/GstController-%{gstmver}.typelib
216 %{_libdir}/girepository-1.0/GstNet-%{gstmver}.typelib
217
218 %files devel
219 %defattr(644,root,root,755)
220 %if %{with apidocs}
221 %attr(755,root,root) %{gstlibexecdir}/gst-hotdoc-plugins-scanner
222 %attr(755,root,root) %{gstlibexecdir}/gst-plugins-doc-cache-generator
223 %endif
224 %attr(755,root,root) %{_libdir}/libgstbase-%{gstmver}.so
225 %attr(755,root,root) %{_libdir}/libgstcheck-%{gstmver}.so
226 %attr(755,root,root) %{_libdir}/libgstcontroller-%{gstmver}.so
227 %attr(755,root,root) %{_libdir}/libgstnet-%{gstmver}.so
228 %attr(755,root,root) %{_libdir}/libgstreamer-%{gstmver}.so
229 %dir %{gstlibdir}/pkgconfig
230 %{gstlibdir}/pkgconfig/gstcoreelements.pc
231 %{gstlibdir}/pkgconfig/gstcoretracers.pc
232 %dir %{gstincludedir}
233 %{gstincludedir}/gst
234 %{_pkgconfigdir}/gstreamer-%{gstmver}.pc
235 %{_pkgconfigdir}/gstreamer-base-%{gstmver}.pc
236 %{_pkgconfigdir}/gstreamer-check-%{gstmver}.pc
237 %{_pkgconfigdir}/gstreamer-controller-%{gstmver}.pc
238 %{_pkgconfigdir}/gstreamer-net-%{gstmver}.pc
239 %{_aclocaldir}/gst-element-check-%{gstmver}.m4
240 %{_datadir}/gir-1.0/Gst-%{gstmver}.gir
241 %{_datadir}/gir-1.0/GstBase-%{gstmver}.gir
242 %{_datadir}/gir-1.0/GstCheck-%{gstmver}.gir
243 %{_datadir}/gir-1.0/GstController-%{gstmver}.gir
244 %{_datadir}/gir-1.0/GstNet-%{gstmver}.gir
245
246 %files static
247 %defattr(644,root,root,755)
248 %{_libdir}/libgstbase-%{gstmver}.a
249 %{_libdir}/libgstcheck-%{gstmver}.a
250 %{_libdir}/libgstcontroller-%{gstmver}.a
251 %{_libdir}/libgstnet-%{gstmver}.a
252 %{_libdir}/libgstreamer-%{gstmver}.a
253
254 %if %{with apidocs}
255 %files apidocs
256 %defattr(644,root,root,755)
257 %dir %{_docdir}/gstreamer-%{gstmver}
258 %{_docdir}/gstreamer-%{gstmver}/base-doc
259 %{_docdir}/gstreamer-%{gstmver}/check-doc
260 %{_docdir}/gstreamer-%{gstmver}/controller-doc
261 %{_docdir}/gstreamer-%{gstmver}/coreelements-doc
262 %{_docdir}/gstreamer-%{gstmver}/coretracers-doc
263 %{_docdir}/gstreamer-%{gstmver}/gstreamer-doc
264 %{_docdir}/gstreamer-%{gstmver}/net-doc
265 %endif
266
267 %files gdb
268 %defattr(644,root,root,755)
269 %{_datadir}/gdb/auto-load%{_libdir}/libgstreamer-%{gstmver}.so.*.*.*-gdb.py
270 %{_datadir}/gstreamer-1.0/gdb
271
272 %files -n bash-completion-gstreamer
273 %defattr(644,root,root,755)
274 %{bash_compdir}/gst-inspect-1.0
275 %{bash_compdir}/gst-launch-1.0
276 %attr(755,root,root) %{gstlibexecdir}/gst-completion-helper
277 %attr(755,root,root) %{_datadir}/bash-completion/helpers/gst
This page took 0.23374 seconds and 4 git commands to generate.