]> git.pld-linux.org Git - packages/gstreamer-vaapi.git/blobdiff - gstreamer-vaapi.spec
- up to 1.19.3
[packages/gstreamer-vaapi.git] / gstreamer-vaapi.spec
index 75ccecc9c8fc06e40dce525bfc796494007dc37c..3514cfe8c0ea6c02dc45399fd83e2548edac9295 100644 (file)
@@ -1,55 +1,75 @@
 #
 # Conditional build:
-%bcond_without static_libs     # static libraries
-#
-%define                gstapi  1.4
-#
+%bcond_without apidocs         # API documentation
+%bcond_with    api             # GST VA-API libraries API [no longer exported as of 1.6.0]
+
+%define                gstapi          1.6
+%define                gst_ver         1.19.3
+%define                gstpb_ver       1.19.3
+%define                gstpd_ver       1.19.3
 Summary:       GStreamer plugin to support Video Acceleration API
 Summary(pl.UTF-8):     Wtyczka GStreamera obsługująca Video Acceleration API
 Name:          gstreamer-vaapi
-Version:       0.6.0
-Release:       2
+Version:       1.19.3
+Release:       1
 License:       LGPL v2.1+
 Group:         Libraries
-Source0:       http://www.freedesktop.org/software/vaapi/releases/gstreamer-vaapi/%{name}-%{version}.tar.bz2
-# Source0-md5: c8d8ba19d7d18d9e7bd455f73bb5daf2
-Patch0:                %{name}-link.patch
-URL:           http://www.freedesktop.org/wiki/Software/vaapi/
-BuildRequires: Mesa-libEGL-devel
-BuildRequires: Mesa-libGL-devel
-BuildRequires: Mesa-libGLES-devel
-BuildRequires: autoconf >= 2.66
-BuildRequires: automake >= 1:1.11
-BuildRequires: glib2-devel >= 1:2.32.0
-BuildRequires: gstreamer-devel >= 1.4.0
-BuildRequires: gstreamer-plugins-bad-devel >= 1.4.0
-BuildRequires: gstreamer-plugins-base-devel >= 1.4.0
-BuildRequires: gtk-doc >= 1.12
-BuildRequires: libdrm-devel
-BuildRequires: libtool >= 2:2.2
-BuildRequires: libva-devel >= 1.2.0
+Source0:       https://gstreamer.freedesktop.org/src/gstreamer-vaapi/%{name}-%{version}.tar.xz
+# Source0-md5: 9f876a6b01b8e810bf07f9b52e03055d
+URL:           https://gstreamer.freedesktop.org/
+BuildRequires: EGL-devel
+BuildRequires: OpenGL-devel
+BuildRequires: OpenGL-GLX-devel
+BuildRequires: OpenGLESv2-devel
+BuildRequires: OpenGLESv3-devel
+BuildRequires: glib2-devel >= 1:2.44.0
+BuildRequires: gstreamer-devel >= %{gst_ver}
+BuildRequires: gstreamer-gl-devel >= %{gstpb_ver}
+# gstreamer-codecparsers
+BuildRequires: gstreamer-plugins-bad-devel >= %{gstpd_ver}
+BuildRequires: gstreamer-plugins-base-devel >= %{gstpb_ver}
+%{?with_apidocs:BuildRequires: hotdoc >= 0.11.0}
+BuildRequires: libdrm-devel >= 2.4.98
+BuildRequires: libva-devel >= 1.6.0
 BuildRequires: libva-drm-devel >= 1.1.0
-BuildRequires: libva-glx-devel >= 1.0.9
 BuildRequires: libva-wayland-devel >= 1.1.0
 BuildRequires: libva-x11-devel >= 1.0.3
+BuildRequires: meson >= 0.48.0
+BuildRequires: ninja >= 1.5
 BuildRequires: pkgconfig
+BuildRequires: pkgconfig(egl)
+BuildRequires: pkgconfig(gl)
+BuildRequires: pkgconfig(glesv2)
 # libva API versions
-BuildRequires: pkgconfig(libva) >= 0.34.0
-BuildRequires: pkgconfig(libva-drm) >= 0.33.0
-BuildRequires: pkgconfig(libva-glx) >= 0.32.0
-BuildRequires: pkgconfig(libva-wayland) >= 0.33.0
-BuildRequires: pkgconfig(libva-x11) >= 0.31.0
+BuildRequires: pkgconfig(libva) >= 0.39.0
+BuildRequires: pkgconfig(libva-drm) >= 0.39.0
+BuildRequires: pkgconfig(libva-wayland) >= 0.39.0
+BuildRequires: pkgconfig(libva-x11) >= 0.39.0
+BuildRequires: rpm-build >= 4.6
+BuildRequires: rpmbuild(macros) >= 1.736
+BuildRequires: tar >= 1:1.22
 BuildRequires: udev-devel
-BuildRequires: wayland-devel >= 1.0.0
+BuildRequires: wayland-devel >= 1.11.0
+BuildRequires: wayland-protocols >= 1.15
 BuildRequires: xorg-lib-libX11-devel
 BuildRequires: xorg-lib-libXrandr-devel
 BuildRequires: xorg-lib-libXrender-devel
-Requires:      glib2 >= 1:2.32.0
-Requires:      gstreamer >= 1.0.0
-Requires:      gstreamer-plugins-bad >= 1.4.0
-Requires:      gstreamer-plugins-base >= 1.4.0
-Requires:      libva >= 1.2.0
-Requires:      wayland >= 1.0.0
+BuildRequires: xz
+%ifarch %{ix86} %{x8664} x32
+BuildRequires: yasm
+%endif
+Requires:      glib2 >= 1:2.44.0
+Requires:      gstreamer >= %{gst_ver}
+Requires:      gstreamer-gl-libs >= %{gstpb_ver}
+Requires:      gstreamer-plugins-bad >= %{gstpd_ver}
+Requires:      gstreamer-plugins-base >= %{gstpb_ver}
+Requires:      libdrm >= 2.4.98
+Requires:      libva >= 1.6.0
+Requires:      wayland >= 1.11.0
+%if %{without api}
+Obsoletes:     gstreamer-vaapi-devel < %{version}
+Obsoletes:     gstreamer-vaapi-static < %{version}
+%endif
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
@@ -65,13 +85,13 @@ Summary:    Header files for GStreamer VA-API libraries
 Summary(pl.UTF-8):     Pliki nagłówkowe bibliotek VA-API GStreamera
 Group:         Development/Libraries
 Requires:      %{name} = %{version}-%{release}
-Requires:      gstreamer-devel >= 1.4.0
-Requires:      gstreamer-plugins-base-devel >= 1.4.0
-Requires:      libva-devel >= 1.2.0
+Requires:      gstreamer-devel >= %{gst_ver}
+Requires:      gstreamer-plugins-base-devel >= %{gstpb_ver}
+Requires:      libva-devel >= 1.6.0
 Requires:      libva-drm-devel >= 1.1.0
-Requires:      libva-glx-devel >= 1.0.9
 Requires:      libva-wayland-devel >= 1.1.0
 Requires:      libva-x11-devel >= 1.0.3
+Obsoletes:     gstreamer-vaapi-static < %{version}
 
 %description devel
 Header files for GStreamer VA-API helper libraries.
@@ -79,76 +99,73 @@ Header files for GStreamer VA-API helper libraries.
 %description devel -l pl.UTF-8
 Pliki nagłówkowe bibliotek pomocniczych VA-API GStreamera.
 
-%package static
-Summary:       Static GStreamer VA-API libraries
-Summary(pl.UTF-8):     Statyczne biblioteki VA-API GStreamera
-Group:         Development/Libraries
-Requires:      %{name}-devel = %{version}-%{release}
+%package apidocs
+Summary:       GStreamer VA-API plugins documentation
+Summary(pl.UTF-8):     Dokumentacja do wtyczek GStreamera VA-API
+Group:         Documentation
+BuildArch:     noarch
 
-%description static
-Static GStreamer VA-API libraries.
+%description apidocs
+GStreamer VA-API plugins documentation.
 
-%description static -l pl.UTF-8
-Statyczne biblioteki VA-API GStreamera.
+%description apidocs -l pl.UTF-8
+Dokumentacja do wtyczek GStreamera VA-API.
 
 %prep
 %setup -q
-%patch0 -p1
 
 %build
-%{__libtoolize}
-%{__aclocal}
-%{__autoconf}
-%{__autoheader}
-%{__automake}
-%configure \
-       --disable-silent-rules \
-       %{!?with_static_libs:--disable-static} \
-       --with-gstreamer-api=%{gstapi}
-
-%{__make} V=1 \
-       HAVE_GNU_STRIP=no \
-       CC="%{__cc}" \
-       LD="%{__cc}" \
-       LDFLAGS="%{rpmldflags}"
+%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 vaapi-doc.json
+%endif
 
 %install
 rm -rf $RPM_BUILD_ROOT
 
-%{__make} install \
-       DESTDIR=$RPM_BUILD_ROOT
+%ninja_install -C build
 
-# gstreamer module
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/gstreamer-1.0/libgst*.la
-# obsoleted by pkg-config
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/lib*.la
+%if %{with apidocs}
+install -d $RPM_BUILD_ROOT%{_docdir}/gstreamer-%{gstmver}
+cp -pr build/docs/vaapi-doc $RPM_BUILD_ROOT%{_docdir}/gstreamer-%{gstmver}
+%endif
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
+%if %{with api}
 %post  -p /sbin/ldconfig
 %postun        -p /sbin/ldconfig
+%endif
 
 %files
 %defattr(644,root,root,755)
 %doc AUTHORS NEWS README
+%if %{with api}
 %attr(755,root,root) %{_libdir}/libgstcodecparsers_vpx.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libgstcodecparsers_vpx.so.0
 %attr(755,root,root) %{_libdir}/libgstvaapi-%{gstapi}.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-%{gstapi}.so.2
+%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-%{gstapi}.so.1
 %attr(755,root,root) %{_libdir}/libgstvaapi-drm-%{gstapi}.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-drm-%{gstapi}.so.2
+%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-drm-%{gstapi}.so.1
 %attr(755,root,root) %{_libdir}/libgstvaapi-egl-%{gstapi}.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-egl-%{gstapi}.so.2
+%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-egl-%{gstapi}.so.1
 %attr(755,root,root) %{_libdir}/libgstvaapi-glx-%{gstapi}.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-glx-%{gstapi}.so.2
+%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-glx-%{gstapi}.so.1
 %attr(755,root,root) %{_libdir}/libgstvaapi-wayland-%{gstapi}.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-wayland-%{gstapi}.so.2
+%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-wayland-%{gstapi}.so.1
 %attr(755,root,root) %{_libdir}/libgstvaapi-x11-%{gstapi}.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-x11-%{gstapi}.so.2
+%attr(755,root,root) %ghost %{_libdir}/libgstvaapi-x11-%{gstapi}.so.1
+%endif
 %attr(755,root,root) %{_libdir}/gstreamer-1.0/libgstvaapi.so
-%attr(755,root,root) %{_libdir}/gstreamer-1.0/libgstvaapi_parse.so
 
+%if %{with api}
 %files devel
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libgstcodecparsers_vpx.so
@@ -164,15 +181,10 @@ rm -rf $RPM_BUILD_ROOT
 %{_pkgconfigdir}/gstreamer-vaapi-glx-1.0.pc
 %{_pkgconfigdir}/gstreamer-vaapi-wayland-1.0.pc
 %{_pkgconfigdir}/gstreamer-vaapi-x11-1.0.pc
+%endif
 
-%if %{with static_libs}
-%files static
+%if %{with apidocs}
+%files apidocs
 %defattr(644,root,root,755)
-%{_libdir}/libgstcodecparsers_vpx.a
-%{_libdir}/libgstvaapi-%{gstapi}.a
-%{_libdir}/libgstvaapi-drm-%{gstapi}.a
-%{_libdir}/libgstvaapi-egl-%{gstapi}.a
-%{_libdir}/libgstvaapi-glx-%{gstapi}.a
-%{_libdir}/libgstvaapi-wayland-%{gstapi}.a
-%{_libdir}/libgstvaapi-x11-%{gstapi}.a
+%{_docdir}/gstreamer-%{gstmver}/vaapi-doc
 %endif
This page took 0.132932 seconds and 4 git commands to generate.