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