X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=gstreamer.spec;h=42a9e0a01609a33343cbee6c3e335498d8e66c39;hb=e08e41e1a74c0bb2decbd723dcba0cc5195e65e7;hp=4b380fa384200819a2485e0ab37e5cee1ed61b83;hpb=d3c2688132a266b2b87569cca9fb781d3a3fc737;p=packages%2Fgstreamer.git diff --git a/gstreamer.spec b/gstreamer.spec index 4b380fa..42a9e0a 100644 --- a/gstreamer.spec +++ b/gstreamer.spec @@ -1,49 +1,54 @@ +# TODO: suid/capabilities for ptp-helper? +# +# Conditional build: +%bcond_without apidocs # hotdoc based API documentation + +%define gstmver 1.0 + Summary: GStreamer Streaming-media framework runtime Summary(pl.UTF-8): GStreamer - biblioteki środowiska do obróbki strumieni Name: gstreamer -Version: 0.10.25 +Version: 1.20.0 Release: 1 License: LGPL v2+ Group: Libraries -Source0: http://gstreamer.freedesktop.org/src/gstreamer/%{name}-%{version}.tar.bz2 -# Source0-md5: 88544e034a051baf472983791d233076 -Source1: %{name}-rpmdeps.sh -Patch0: %{name}-without_ps_pdf.patch -Patch1: %{name}-eps.patch -Patch2: %{name}-inspect-rpm-format.patch -URL: http://gstreamer.net/ -BuildRequires: autoconf >= 2.52 -BuildRequires: automake >= 1.6 -BuildRequires: bison >= 1.35 -BuildRequires: check >= 0.9.3-2 -BuildRequires: docbook-dtd30-sgml +Source0: https://gstreamer.freedesktop.org/src/gstreamer/%{name}-%{version}.tar.xz +# Source0-md5: aa2990f8e587249875a9598af07e39c4 +Patch0: %{name}-inspect-rpm-format.patch +URL: https://gstreamer.freedesktop.org/ +BuildRequires: bash-completion-devel >= 2.0 +BuildRequires: bison >= 1.875 BuildRequires: docbook-dtd412-xml -BuildRequires: docbook-utils >= 0.6.10 -BuildRequires: flex -BuildRequires: gettext-devel >= 0.11.5 -BuildRequires: glib2-devel >= 1:2.12.0 +BuildRequires: elfutils-devel +BuildRequires: flex >= 2.5.31 +BuildRequires: gettext-tools >= 0.17 +BuildRequires: glib2-devel >= 1:2.56.0 +%if %(locale -a | grep -q '^C\.UTF-8$'; echo $?) +BuildRequires: glibc-localedb-all +%endif BuildRequires: glibc-misc -BuildRequires: gnome-doc-tools -BuildRequires: gobject-introspection-devel >= 0.6.5 -BuildRequires: gtk-doc >= 1.6 -BuildRequires: libtool >= 1.4 -BuildRequires: libxml2-devel >= 1:2.6.26 -BuildRequires: nasm +BuildRequires: gobject-introspection-devel >= 1.31.1 +%{?with_apidocs:BuildRequires: hotdoc >= 0.11.0} +BuildRequires: libcap-devel +%ifarch %{ix86} %{x8664} x32 %{arm} hppa ia64 mips ppc ppc64 sh +BuildRequires: libunwind-devel +%endif +BuildRequires: meson >= 0.59 +BuildRequires: ninja >= 1.5 BuildRequires: perl-base BuildRequires: pkgconfig >= 1:0.9.0 -BuildRequires: popt-devel >= 1.6.3 -# not sure it is a right place for this BR -BuildRequires: python-PyXML -BuildRequires: transfig -BuildRequires: xmlto -Requires: glib2 >= 1:2.12.0 +BuildRequires: python3 >= 1:3.2 +BuildRequires: rpm-build >= 4.6 +BuildRequires: rpmbuild(macros) >= 1.736 +BuildRequires: sed >= 4.0 +BuildRequires: tar >= 1:1.22 +BuildRequires: xz +Requires: glib2 >= 1:2.56.0 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) -%define vmajor %(echo %{version} | cut -d. -f1,2) -%define _gstlibdir %{_libdir}/gstreamer-%{vmajor} -%define _gstincludedir %{_includedir}/gstreamer-%{vmajor} - -%define rpmlibdir /usr/lib/rpm +%define gstlibdir %{_libdir}/gstreamer-%{gstmver} +%define gstlibexecdir %{_libexecdir}/gstreamer-%{gstmver} +%define gstincludedir %{_includedir}/gstreamer-%{gstmver} %description GStreamer is a streaming-media framework, based on graphs of filters @@ -66,10 +71,9 @@ Summary: Include files for GStreamer streaming-media framework Summary(pl.UTF-8): Pliki nagłówkowe do środowiska obróbki strumieni GStreamer Group: Development/Libraries Requires: %{name} = %{version}-%{release} -Requires: glib2-devel >= 1:2.12.0 -Requires: libxml2-devel >= 1:2.6.26 -Requires: popt-devel >= 1.6.3 +Requires: glib2-devel >= 1:2.56.0 Obsoletes: gstreamer-plugins-bad-devel < 0.10.10 +Conflicts: gstreamer-plugins-bad-devel < 1.14 %description devel This package contains the includes files necessary to develop @@ -93,57 +97,81 @@ Statyczne wersje bibliotek GStreamer. %package apidocs Summary: GStreamer API documentation -Summary(pl.UTF-8): Dokumentacja API Gstreamera +Summary(pl.UTF-8): Dokumentacja API GStreamera Group: Documentation -Requires: gtk-doc-common +BuildArch: noarch %description apidocs GStreamer API documentation. %description apidocs -l pl.UTF-8 -Dokumentacja API Gstreamera. +Dokumentacja API GStreamera. + +%package gdb +Summary: GStreamer pretty printers for GDB +Summary(pl.UTF-8): Funkcje wypisujące dane GStreamer dla GDB +Group: Development/Debuggers + +%description gdb +This package contains Python scripts for GDB pretty printing of the +GStreamer types. + +%description gdb -l pl.UTF-8 +Ten pakiet zawiera skrypty Pythona dla GDB służące do ładnego +wypisywania typów GStreamer. + +%package -n bash-completion-gstreamer +Summary: Bash completion for GStreamer utilities +Summary(pl.UTF-8): Bashowe uzupełnianie parametrów narzędzi GStreamera +Group: Applications/Shells +Requires: %{name} = %{version}-%{release} +Requires: bash-completion >= 2.0 + +%description -n bash-completion-gstreamer +Bash completion for GStreamer utilities: gst-inspect and gst-launch. + +%description -n bash-completion-gstreamer +Bashowe uzupełnianie parametrów narzędzi GStreamera: gst-inspect oraz +gst-launch. %prep %setup -q %patch0 -p1 -%patch1 -p1 -%patch2 -p1 + +%{__sed} -i -e '1s,/usr/bin/env python3,%{__python3},' docs/gst-plugins-doc-cache-generator.py %build -# po/Makefile.in.in is modified -#{__gettextize} -%{__libtoolize} -%{__aclocal} -I common/m4 -I . -%{__autoconf} -%{__autoheader} -%{__automake} -%configure \ - --disable-examples \ - --disable-pspdf \ - --disable-tests \ - --enable-docbook \ - --enable-gtk-doc \ - --with-html-dir=%{_gtkdocdir} - -%{__make} V=1 +%meson build \ + %{?with_apidocs:-Ddoc=enabled} \ + -D tests=disabled \ + -D examples=disabled + +%ninja_build -C build + +%if %{with apidocs} +cd build/docs +for component in base check controller coreelements coretracers gstreamer net ; do + LC_ALL=C.UTF-8 hotdoc run --conf-file ${component}-doc.json +done +%endif %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{%{_docdir}/%{name}-devel-%{version},%{rpmlibdir}} -%{__make} install \ - DESTDIR=$RPM_BUILD_ROOT +%ninja_install -C build -install %{SOURCE1} $RPM_BUILD_ROOT%{rpmlibdir}/gstreamerdeps.sh +%find_lang %{name} --all-name --with-gnome -mv $RPM_BUILD_ROOT%{_docdir}/%{name}-{%{vmajor},%{version}} -mv $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/{manual,pwg} \ - $RPM_BUILD_ROOT%{_docdir}/%{name}-devel-%{version} +%py3_comp $RPM_BUILD_ROOT%{_datadir}/gstreamer-1.0/gdb +%py3_ocomp $RPM_BUILD_ROOT%{_datadir}/gstreamer-1.0/gdb -%find_lang %{name} --all-name --with-gnome +# no static modules - shut up check files +%{__rm} $RPM_BUILD_ROOT%{gstlibdir}/lib*.a -# no static modules and *.la for them - shut up check files -rm -f $RPM_BUILD_ROOT%{_gstlibdir}/lib*.{la,a} +%if %{with apidocs} +install -d $RPM_BUILD_ROOT%{_docdir}/gstreamer-%{gstmver} +cp -pr build/docs/{base,check,controller,coreelements,coretracers,gstreamer,net}-doc $RPM_BUILD_ROOT%{_docdir}/gstreamer-%{gstmver} +%endif %clean rm -rf $RPM_BUILD_ROOT @@ -153,71 +181,98 @@ rm -rf $RPM_BUILD_ROOT %files -f %{name}.lang %defattr(644,root,root,755) -%doc AUTHORS ChangeLog NEWS README TODO -%attr(755,root,root) %{_bindir}/gst-* -%attr(755,root,root) %{_libdir}/libgstbase-0.10.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libgstbase-0.10.so.0 -%attr(755,root,root) %{_libdir}/libgstcheck-0.10.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libgstcheck-0.10.so.0 -%attr(755,root,root) %{_libdir}/libgstcontroller-0.10.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libgstcontroller-0.10.so.0 -%attr(755,root,root) %{_libdir}/libgstdataprotocol-0.10.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libgstdataprotocol-0.10.so.0 -%attr(755,root,root) %{_libdir}/libgstnet-0.10.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libgstnet-0.10.so.0 -%attr(755,root,root) %{_libdir}/libgstreamer-0.10.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libgstreamer-0.10.so.0 -%dir %{_gstlibdir} -%attr(755,root,root) %{_gstlibdir}/libgstcoreelements.so -%attr(755,root,root) %{_gstlibdir}/libgstcoreindexers.so -%{_mandir}/man1/gst-*.1* -%{_libdir}/girepository-1.0/Gst-0.10.typelib -%{_libdir}/girepository-1.0/GstBase-0.10.typelib -%{_libdir}/girepository-1.0/GstCheck-0.10.typelib -%{_libdir}/girepository-1.0/GstController-0.10.typelib -%{_libdir}/girepository-1.0/GstNet-0.10.typelib +%doc AUTHORS ChangeLog MAINTAINERS NEWS README RELEASE +%attr(755,root,root) %{_bindir}/gst-inspect-1.0 +%attr(755,root,root) %{_bindir}/gst-launch-1.0 +%attr(755,root,root) %{_bindir}/gst-stats-1.0 +%attr(755,root,root) %{_bindir}/gst-typefind-1.0 +%attr(755,root,root) %{_libdir}/libgstbase-%{gstmver}.so.*.*.* +%attr(755,root,root) %ghost %{_libdir}/libgstbase-%{gstmver}.so.0 +%attr(755,root,root) %{_libdir}/libgstcheck-%{gstmver}.so.*.*.* +%attr(755,root,root) %ghost %{_libdir}/libgstcheck-%{gstmver}.so.0 +%attr(755,root,root) %{_libdir}/libgstcontroller-%{gstmver}.so.*.*.* +%attr(755,root,root) %ghost %{_libdir}/libgstcontroller-%{gstmver}.so.0 +%attr(755,root,root) %{_libdir}/libgstnet-%{gstmver}.so.*.*.* +%attr(755,root,root) %ghost %{_libdir}/libgstnet-%{gstmver}.so.0 +%attr(755,root,root) %{_libdir}/libgstreamer-%{gstmver}.so.*.*.* +%attr(755,root,root) %ghost %{_libdir}/libgstreamer-%{gstmver}.so.0 +%if "%{_libexecdir}" != "%{_libdir}" +%dir %{gstlibexecdir} +%endif +%attr(755,root,root) %{gstlibexecdir}/gst-plugin-scanner +%attr(755,root,root) %{gstlibexecdir}/gst-ptp-helper +%dir %{gstlibdir} +%attr(755,root,root) %{gstlibdir}/libgstcoreelements.so +%attr(755,root,root) %{gstlibdir}/libgstcoretracers.so +# common for some plugins +%dir %{_datadir}/gstreamer-1.0 +%{_mandir}/man1/gst-inspect-1.0.1* +%{_mandir}/man1/gst-launch-1.0.1* +%{_mandir}/man1/gst-stats-1.0.1* +%{_mandir}/man1/gst-typefind-1.0.1* +%{_libdir}/girepository-1.0/Gst-%{gstmver}.typelib +%{_libdir}/girepository-1.0/GstBase-%{gstmver}.typelib +%{_libdir}/girepository-1.0/GstCheck-%{gstmver}.typelib +%{_libdir}/girepository-1.0/GstController-%{gstmver}.typelib +%{_libdir}/girepository-1.0/GstNet-%{gstmver}.typelib %files devel %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/libgstbase-0.10.so -%attr(755,root,root) %{_libdir}/libgstcheck-0.10.so -%attr(755,root,root) %{_libdir}/libgstcontroller-0.10.so -%attr(755,root,root) %{_libdir}/libgstdataprotocol-0.10.so -%attr(755,root,root) %{_libdir}/libgstnet-0.10.so -%attr(755,root,root) %{_libdir}/libgstreamer-0.10.so -%{_libdir}/libgstbase-0.10.la -%{_libdir}/libgstcheck-0.10.la -%{_libdir}/libgstcontroller-0.10.la -%{_libdir}/libgstdataprotocol-0.10.la -%{_libdir}/libgstnet-0.10.la -%{_libdir}/libgstreamer-0.10.la -%{_docdir}/%{name}-devel-%{version} -%{_gstincludedir} -%{_pkgconfigdir}/gstreamer-0.10.pc -%{_pkgconfigdir}/gstreamer-base-0.10.pc -%{_pkgconfigdir}/gstreamer-check-0.10.pc -%{_pkgconfigdir}/gstreamer-controller-0.10.pc -%{_pkgconfigdir}/gstreamer-dataprotocol-0.10.pc -%{_pkgconfigdir}/gstreamer-net-0.10.pc -%{_aclocaldir}/gst-element-check-0.10.m4 -%attr(755,root,root) %{rpmlibdir}/gstreamerdeps.sh -%{_datadir}/gir-1.0/Gst-0.10.gir -%{_datadir}/gir-1.0/GstBase-0.10.gir -%{_datadir}/gir-1.0/GstCheck-0.10.gir -%{_datadir}/gir-1.0/GstController-0.10.gir -%{_datadir}/gir-1.0/GstNet-0.10.gir +%if %{with apidocs} +%attr(755,root,root) %{gstlibexecdir}/gst-hotdoc-plugins-scanner +%attr(755,root,root) %{gstlibexecdir}/gst-plugins-doc-cache-generator +%endif +%attr(755,root,root) %{_libdir}/libgstbase-%{gstmver}.so +%attr(755,root,root) %{_libdir}/libgstcheck-%{gstmver}.so +%attr(755,root,root) %{_libdir}/libgstcontroller-%{gstmver}.so +%attr(755,root,root) %{_libdir}/libgstnet-%{gstmver}.so +%attr(755,root,root) %{_libdir}/libgstreamer-%{gstmver}.so +%dir %{gstlibdir}/pkgconfig +%{gstlibdir}/pkgconfig/gstcoreelements.pc +%{gstlibdir}/pkgconfig/gstcoretracers.pc +%dir %{gstincludedir} +%{gstincludedir}/gst +%{_pkgconfigdir}/gstreamer-%{gstmver}.pc +%{_pkgconfigdir}/gstreamer-base-%{gstmver}.pc +%{_pkgconfigdir}/gstreamer-check-%{gstmver}.pc +%{_pkgconfigdir}/gstreamer-controller-%{gstmver}.pc +%{_pkgconfigdir}/gstreamer-net-%{gstmver}.pc +%{_aclocaldir}/gst-element-check-%{gstmver}.m4 +%{_datadir}/gir-1.0/Gst-%{gstmver}.gir +%{_datadir}/gir-1.0/GstBase-%{gstmver}.gir +%{_datadir}/gir-1.0/GstCheck-%{gstmver}.gir +%{_datadir}/gir-1.0/GstController-%{gstmver}.gir +%{_datadir}/gir-1.0/GstNet-%{gstmver}.gir %files static %defattr(644,root,root,755) -%{_libdir}/libgstbase-0.10.a -%{_libdir}/libgstcheck-0.10.a -%{_libdir}/libgstcontroller-0.10.a -%{_libdir}/libgstdataprotocol-0.10.a -%{_libdir}/libgstnet-0.10.a -%{_libdir}/libgstreamer-0.10.a +%{_libdir}/libgstbase-%{gstmver}.a +%{_libdir}/libgstcheck-%{gstmver}.a +%{_libdir}/libgstcontroller-%{gstmver}.a +%{_libdir}/libgstnet-%{gstmver}.a +%{_libdir}/libgstreamer-%{gstmver}.a +%if %{with apidocs} %files apidocs %defattr(644,root,root,755) -%{_gtkdocdir}/gstreamer-0.10 -%{_gtkdocdir}/gstreamer-libs-0.10 -%{_gtkdocdir}/gstreamer-plugins-0.10 +%dir %{_docdir}/gstreamer-%{gstmver} +%{_docdir}/gstreamer-%{gstmver}/base-doc +%{_docdir}/gstreamer-%{gstmver}/check-doc +%{_docdir}/gstreamer-%{gstmver}/controller-doc +%{_docdir}/gstreamer-%{gstmver}/coreelements-doc +%{_docdir}/gstreamer-%{gstmver}/coretracers-doc +%{_docdir}/gstreamer-%{gstmver}/gstreamer-doc +%{_docdir}/gstreamer-%{gstmver}/net-doc +%endif + +%files gdb +%defattr(644,root,root,755) +%{_datadir}/gdb/auto-load%{_libdir}/libgstreamer-%{gstmver}.so.*.*.*-gdb.py +%{_datadir}/gstreamer-1.0/gdb + +%files -n bash-completion-gstreamer +%defattr(644,root,root,755) +%{bash_compdir}/gst-inspect-1.0 +%{bash_compdir}/gst-launch-1.0 +%attr(755,root,root) %{gstlibexecdir}/gst-completion-helper +%attr(755,root,root) %{_datadir}/bash-completion/helpers/gst