[packages/gstreamer-libav/DEVEL-1.18] - updated to 1.18.5; now uses meson+hotdoc and supports only system ffmpeg

qboosh qboosh at pld-linux.org
Sun Oct 10 21:26:40 CEST 2021


commit 26aae24768d6004af6f4efb26b28d9e11d00bd93
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Sun Oct 10 21:31:30 2021 +0200

    - updated to 1.18.5; now uses meson+hotdoc and supports only system ffmpeg

 gstreamer-libav.spec | 101 +++++++++++++++------------------------------------
 1 file changed, 29 insertions(+), 72 deletions(-)
---
diff --git a/gstreamer-libav.spec b/gstreamer-libav.spec
index 40bbf64..499ca69 100644
--- a/gstreamer-libav.spec
+++ b/gstreamer-libav.spec
@@ -1,68 +1,39 @@
 #
 # Conditional build:
-%bcond_without	gpl		# GPL licensed components
-%bcond_without	vdpau		# build libav without VDPAU support
-%bcond_with	system_ffmpeg	# system ffmpeg (note: upstream does not accept bugs with system ffmpeg)
+%bcond_without	apidocs		# API documentation
 
 %define		gstname		gst-libav
 %define		gstmver		1.0
-%define		gst_ver		1.16.3
-%define		gstpb_ver	1.16.3
+%define		gst_ver		1.18.5
+%define		gstpb_ver	1.18.5
 %define		ffmpeg_ver	4.1.3
 
 Summary:	GStreamer Streaming-media framework plug-in using libav
 Summary(pl.UTF-8):	Wtyczka do środowiska obróbki strumieni GStreamer używająca libav
 Name:		gstreamer-libav
-Version:	1.16.3
+Version:	1.18.5
 Release:	1
-%if %{with gpl}
-License:	GPL v2+
-%else
-License:	LGPL v2+
-%endif
+License:	LGPL v2.1+
 Group:		Libraries
 Source0:	https://gstreamer.freedesktop.org/src/gst-libav/%{gstname}-%{version}.tar.xz
-# Source0-md5:	d08fb5429f102d5a3f1eca3dee2a0add
-Patch0:		link.patch
+# Source0-md5:	9a49ce948d4e400b6e1b073d0e034080
 URL:		https://gstreamer.freedesktop.org/
-BuildRequires:	autoconf >= 2.69
-BuildRequires:	automake >= 1:1.14
-BuildRequires:	glib2-devel >= 1:2.40.0
+# libavfilter >= 7.16.100, libavformat >= 58.12.100, libavcodec >= 58.18.100, libavutil >= 56.14.100
+BuildRequires:	ffmpeg-devel >= %{ffmpeg_ver}
 BuildRequires:	gstreamer-devel >= %{gst_ver}
 BuildRequires:	gstreamer-plugins-base-devel >= %{gstpb_ver}
-BuildRequires:	gtk-doc >= 1.12
-BuildRequires:	libtool >= 2:2.2.6
-BuildRequires:	orc-devel >= 0.4.16
+%{?with_apidocs:BuildRequires:	hotdoc >= 0.11.0}
+BuildRequires:	meson >= 0.48.0
+BuildRequires:	ninja >= 1.5
 BuildRequires:	pkgconfig >= 1:0.9.0
 BuildRequires:	python >= 2.1
 BuildRequires:	rpm-build >= 4.6
-BuildRequires:	rpmbuild(macros) >= 1.470
+BuildRequires:	rpmbuild(macros) >= 1.736
 BuildRequires:	tar >= 1:1.22
 BuildRequires:	xz
-%if %{with system_ffmpeg}
-# libavformat,libavcodec >= 57,libavutil,libswscale needed
-BuildRequires:	ffmpeg-devel >= %{ffmpeg_ver}
-%else
-# libav dependencies
-BuildRequires:	bzip2-devel
-BuildRequires:	libvdpau-devel
-BuildRequires:	xorg-lib-libX11-devel
-%if %{with vdpau}
-BuildRequires:	xorg-lib-libXvMC-devel
-%endif
-BuildRequires:	xz-devel
-BuildRequires:	zlib-devel
-%ifarch %{ix86} %{x8664}
-BuildRequires:	yasm
-%endif
-%endif
-Requires:	glib2 >= 1:2.40.0
+Requires:	ffmpeg-libs >= %{ffmpeg_ver}
 Requires:	gstreamer >= %{gst_ver}
 Requires:	gstreamer-plugins-base >= %{gstpb_ver}
-%if %{with system_ffmpeg}
-Requires:	ffmpeg-libs >= %{ffmpeg_ver}
-%endif
-Requires:	orc >= 0.4.16
 Obsoletes:	gstreamer-ffmpeg < 1
 Obsoletes:	gstreamer-real < 1
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
@@ -95,7 +66,6 @@ najpopularniejsze formaty multimedialne.
 Summary:	API documentation for GStreamer libav plugin
 Summary(pl.UTF-8):	Dokumentacja API do wtyczki GStreamera libav
 Group:		Documentation
-Requires:	gtk-doc-common
 BuildArch:	noarch
 
 %description apidocs
@@ -106,50 +76,37 @@ Dokumentacja API do wtyczki GStreamera libav.
 
 %prep
 %setup -q -n %{gstname}-%{version}
-%patch0 -p1
 
 %build
-%{__libtoolize}
-%{__aclocal} -I m4 -I common/m4
-%{__autoconf}
-%{__autoheader}
-%{__automake}
-
-LIBAV_OPTS="%{?with_vdpau:--enable-vdpau}"
-%ifarch x32
-LIBAV_OPTS="$LIBAV_OPTS --disable-asm"
+%meson build \
+	--default-library=shared \
+	%{!?with_apidocs:-Ddoc=false}
+
+%ninja_build -C build
+
+%if %{with apidocs}
+cd build/docs
+LC_ALL=C.UTF-8 hotdoc run --conf-file libav-doc.json
 %endif
-%configure \
-	CPPFLAGS="%{rpmcppflags}" \
-	%{?with_system_ffmpeg:--with-system-libav} \
-	--with-libav-extra-configure="$LIBAV_OPTS" \
-	%{?with_gpl:--enable-gpl} \
-	--disable-silent-rules \
-	--disable-static \
-	--with-html-dir=%{_gtkdocdir}
-
-# V=1 is for libav (--disable-silent-rules affects only main gst-libav sources)
-%{__make} \
-	V=1
 
 %install
 rm -rf $RPM_BUILD_ROOT
 
-%{__make} install \
-	DESTDIR=$RPM_BUILD_ROOT
+%ninja_install -C build
 
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{gstmver}/*.la
+%if %{with apidocs}
+install -d $RPM_BUILD_ROOT%{_docdir}/gstreamer-%{gstmver}
+cp -pr build/docs/libav-doc $RPM_BUILD_ROOT%{_docdir}/gstreamer-%{gstmver}
+%endif
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %files
 %defattr(644,root,root,755)
-%doc AUTHORS ChangeLog NEWS README TODO
+%doc AUTHORS ChangeLog NEWS README.md
 %attr(755,root,root) %{_libdir}/gstreamer-%{gstmver}/libgstlibav.so
-# disabled in (upstream) 1.2.0 until someone fixes it
-#%attr(755,root,root) %{_libdir}/gstreamer-%{gstmver}/libgstavscale.so
 
 %files apidocs
 %defattr(644,root,root,755)
-%{_gtkdocdir}/gst-libav-plugins-1.0
+%{_docdir}/gstreamer-%{gstmver}/libav-doc
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/gstreamer-libav.git/commitdiff/26aae24768d6004af6f4efb26b28d9e11d00bd93



More information about the pld-cvs-commit mailing list