# # spec file for package gstreamer-plugins-rs # # Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # %global rustflags '-Clink-arg=-Wl,-z,relro,-z,now' %define gstreamer_req_version %(echo %{version} | sed -e "s/+.*//") %define _name gstreamer-plugins-rs %define gst_branch 1.0 Name: gstreamer-plugins-rs Version: 0.6.0+git20201201.58786fa Release: 0 Summary: GStreamer Streaming-Media Framework Plug-Ins License: LGPL-2.1-or-later Group: Productivity/Multimedia/Other URL: https://gstreamer.freedesktop.org/ Source0: %{_name}-%{version}.tar.xz Source1: vendor.tar.xz Source2: cargo_config Source3: gstreamer-plugins-rs.appdata.xml Source99: baselibs.conf BuildRequires: cargo BuildRequires: csound-devel BuildRequires: gcc-c++ BuildRequires: llvm-devel BuildRequires: meson >= 0.47.0 BuildRequires: pkgconfig BuildRequires: rust >= 1.40 BuildRequires: rust-packaging BuildRequires: rust-std BuildRequires: pkgconfig(cairo) >= 1.10.0 BuildRequires: pkgconfig(gstreamer-1.0) >= %{gstreamer_req_version} BuildRequires: pkgconfig(gstreamer-base-1.0) >= %{gstreamer_req_version} BuildRequires: pkgconfig(gstreamer-plugins-base-1.0) >= %{gstreamer_req_version} BuildRequires: pkgconfig(gtk+-3.0) >= 3.15.0 BuildRequires: pkgconfig(openssl) Requires: gstreamer >= %{gstreamer_req_version} Requires: gstreamer-plugins-base >= %{gstreamer_req_version} Enhances: gstreamer %description GStreamer is a streaming media framework based on graphs of filters that operate on media data. Applications using this library can do anything media-related, from real-time sound processing to playing videos. Its plug-in-based architecture means that new data types or processing capabilities can be added simply by installing new plug-ins. %prep %autosetup -n %{_name}-%{version} -p1 %setup -q -D -T -a 1 %define cargo_registry $(pwd)/vendor mkdir .cargo cp %{SOURCE2} .cargo/config sed -i -e "/video\/dav1d/d" Cargo.toml #translation-update-upstream po gst-plugins-good-%%{gst_branch} %build #export CARGO_HOME=$PWD/vendor export RUSTFLAGS=%{rustflags} export CSOUND_LIB_DIR=%{_libdir} %meson \ -Dpackage-name='openSUSE GStreamer-plugins-rs package' \ -Dpackage-origin='http://download.opensuse.org' \ -Ddav1d=disabled %{nil} #/usr/bin/meson compile -C build -j1 --verbose cd %_vpath_builddir %{cargo_build} %install export RUSTFLAGS=%{rustflags} mkdir -p %{buildroot}%{_libdir}/gstreamer-%{gst_branch}/ cp target/release/*.so %{buildroot}%{_libdir}/gstreamer-%{gst_branch}/ mkdir -p %{buildroot}%{_datadir}/appdata cp %{SOURCE3} %{buildroot}%{_datadir}/appdata/ %files %license LICENSE-APACHE LICENSE-LGPLv2 LICENSE-MIT %doc README.md %dir %{_libdir}/gstreamer-%{gst_branch} %{_libdir}/gstreamer-%{gst_branch}/libgstcdg.so %{_libdir}/gstreamer-%{gst_branch}/libgstclaxon.so %{_libdir}/gstreamer-%{gst_branch}/libgstcsound.so %{_libdir}/gstreamer-%{gst_branch}/libgstfallbackswitch.so %{_libdir}/gstreamer-%{gst_branch}/libgstgif.so %{_libdir}/gstreamer-%{gst_branch}/libgstlewton.so %{_libdir}/gstreamer-%{gst_branch}/libgstrav1e.so %{_libdir}/gstreamer-%{gst_branch}/libgstreqwest.so %{_libdir}/gstreamer-%{gst_branch}/libgstrsaudiofx.so %{_libdir}/gstreamer-%{gst_branch}/libgstrsclosedcaption.so %{_libdir}/gstreamer-%{gst_branch}/libgstrsfile.so %{_libdir}/gstreamer-%{gst_branch}/libgstrsflv.so %{_libdir}/gstreamer-%{gst_branch}/libgstrspng.so %{_libdir}/gstreamer-%{gst_branch}/libgstrstextwrap.so %{_libdir}/gstreamer-%{gst_branch}/libgstrstutorial.so %{_libdir}/gstreamer-%{gst_branch}/libgstrusoto.so %{_libdir}/gstreamer-%{gst_branch}/libgstsodium.so %{_libdir}/gstreamer-%{gst_branch}/libgstthreadshare.so %{_libdir}/gstreamer-%{gst_branch}/libgsttogglerecord.so %dir %{_datadir}/appdata %{_datadir}/appdata/gstreamer-plugins-rs.appdata.xml %changelog