File grilo-plugins.spec of Package grilo-plugins
#
# spec file for package grilo-plugins
#
# Copyright (c) 2023 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/
#
%define plugin_dir %(pkg-config --variable plugindir grilo-0.3)
Name: grilo-plugins
Version: 0.3.16
Release: 0
Summary: Media and metadata plugins for the Grilo framework
License: LGPL-2.1-or-later
Group: Productivity/Multimedia/Other
URL: https://live.gnome.org/Grilo
Source0: https://download.gnome.org/sources/grilo-plugins/0.3/%{name}-%{version}.tar.xz
BuildRequires: docbook_4
BuildRequires: fdupes
BuildRequires: gperf
BuildRequires: intltool >= 0.40.0
BuildRequires: itstool
BuildRequires: meson >= 0.44.0
BuildRequires: pkgconfig
BuildRequires: pkgconfig(avahi-client)
BuildRequires: pkgconfig(avahi-glib)
BuildRequires: pkgconfig(avahi-gobject)
BuildRequires: pkgconfig(gio-2.0)
BuildRequires: pkgconfig(glib-2.0) >= 2.66
BuildRequires: pkgconfig(gmodule-2.0)
BuildRequires: pkgconfig(goa-1.0) >= 3.17.91
BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(gom-1.0) >= 0.4
BuildRequires: pkgconfig(grilo-0.3) >= 0.3.10
BuildRequires: pkgconfig(grilo-net-0.3) >= 0.3.10
BuildRequires: pkgconfig(grilo-pls-0.3)
BuildRequires: pkgconfig(gstreamer-1.0)
BuildRequires: pkgconfig(gstreamer-plugins-bad-1.0)
BuildRequires: pkgconfig(gthread-2.0)
BuildRequires: pkgconfig(json-glib-1.0)
BuildRequires: pkgconfig(libarchive)
BuildRequires: pkgconfig(libmediaart-2.0)
BuildRequires: pkgconfig(libsoup-3.0)
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: pkgconfig(lua) >= 5.3.0
BuildRequires: pkgconfig(oauth)
BuildRequires: pkgconfig(sqlite3)
BuildRequires: pkgconfig(totem-plparser) >= 3.4.1
BuildRequires: pkgconfig(tracker-sparql-3.0) >= 2.99
# Recommend gupnp-plugin-dleyna (UPnP support)
Recommends: gupnp-plugin-dleyna
%ifarch armv7hl i586
BuildRequires: gstreamer1(element-chromaprint)
%else
BuildRequires: gstreamer1(element-chromaprint)()(64bit)
%endif
BuildRequires: pkgconfig(libdmapsharing-4.0) >= 3.9.9
Obsoletes: grilo-plugin-youtube <= %{version}
%description
Grilo is a framework for browsing and searching media content from
various sources using a single API.
This package provides plugins for accessing content from various media
providers, including podcasts, Apple trailers, Flickr,
Jamendo, Vimeo, YouTube.
%package -n grilo-plugin-tracker
Summary: Tracker plugin for the Grilo framework
Group: Productivity/Multimedia/Other
Supplements: (grilo-plugins and tracker)
%description -n grilo-plugin-tracker
Grilo is a framework for browsing and searching media content from
various sources using a single API.
%package -n grilo-plugin-dleyna
Summary: DLNA (dLeyna) plugin for the Grilo media framework
# grilo-plugin-upnp was renamed to dleyna (based on the switch from libupnp to dleyna)
# the plugin interacts with dLeyna on dbus using com.intel.dleyna-server
Group: Productivity/Multimedia/Other
Requires: dbus(com.intel.dleyna-server)
Obsoletes: grilo-plugin-upnp < %{version}
Provides: grilo-plugin-upnp = %{version}
%description -n grilo-plugin-dleyna
Grilo is a framework for browsing and searching media content from
various sources using a single API.
This package provides a plugin for accessing content from a DLNA
(dLeyna) provider.
%package -n grilo-plugin-youtube
Summary: Youtube plugin for the Grilo media framework
Group: Productivity/Multimedia/Other
Supplements: (grilo-plugins and libgdata)
%description -n grilo-plugin-youtube
Grilo is a framework for browsing and searching media content from
various sources using a single API.
This package provides a plugin for accessing content from Youtube.
%package devel
Summary: Development files for Grilo plugins
Group: Development/Libraries/GNOME
Requires: grilo-plugin-dleyna = %{version}
Requires: grilo-plugin-tracker = %{version}
#Requires: grilo-plugin-youtube = %%{version}
Requires: grilo-plugins = %{version}
%description devel
Grilo is a framework for browsing and searching media content from
various sources using a single API.
This package provides the development files.
%lang_package
%prep
%autosetup -p1
%build
%meson \
%{nil}
%meson_build
%install
%meson_install
%find_lang %{name} %{?no_lang_C}
%fdupes %{buildroot}%{_datadir}/help
%check
# Temp disable make check for PPC arches as they fail - boo#915682 filed.
%ifnarch ppc64 || ppc64le
# Make check disabled - it fails without network access.
#make check
%endif
%files
%license COPYING
%doc AUTHORS NEWS README.md
%{_datadir}/help/C/grilo-plugins/
# Explicitly list plugins
%{plugin_dir}/libgrlbookmarks.so
%{plugin_dir}/libgrlchromaprint.so
%{plugin_dir}/libgrldaap.so
%{plugin_dir}/libgrldpap.so
%{plugin_dir}/libgrlfilesystem.so
%{plugin_dir}/libgrlflickr.so
%{plugin_dir}/libgrlfreebox.so
%{plugin_dir}/libgrlgravatar.so
%{plugin_dir}/libgrlmagnatune.so
%{plugin_dir}/libgrllocalmetadata.so
%{plugin_dir}/libgrlmetadatastore.so
#%%{plugin_dir}/libgrlopensubtitles.so
%{plugin_dir}/libgrlopticalmedia.so
%{plugin_dir}/libgrlpodcasts.so
%{plugin_dir}/libgrlraitv.so
%{plugin_dir}/libgrlshoutcast.so
%{plugin_dir}/libgrlthetvdb.so
%{plugin_dir}/libgrltmdb.so
%{plugin_dir}/libgrlluafactory.so
%dir %{_datadir}/grilo-plugins
%dir %{_datadir}/grilo-plugins/grl-lua-factory
%{_datadir}/grilo-plugins/grl-lua-factory/grl-appletrailers.lua
%{_datadir}/grilo-plugins/grl-lua-factory/grl-appletrailers.gresource
%{_datadir}/grilo-plugins/grl-lua-factory/grl-euronews.lua
%{_datadir}/grilo-plugins/grl-lua-factory/grl-euronews.gresource
%{_datadir}/grilo-plugins/grl-lua-factory/grl-guardianvideos.lua
%{_datadir}/grilo-plugins/grl-lua-factory/grl-guardianvideos.gresource
%{_datadir}/grilo-plugins/grl-lua-factory/grl-acoustid.lua
%{_datadir}/grilo-plugins/grl-lua-factory/grl-itunes-podcast.gresource
%{_datadir}/grilo-plugins/grl-lua-factory/grl-itunes-podcast.lua
%{_datadir}/grilo-plugins/grl-lua-factory/grl-thegamesdb.lua
%{_datadir}/grilo-plugins/grl-lua-factory/grl-musicbrainz-coverart.lua
%{_datadir}/grilo-plugins/grl-lua-factory/grl-radiofrance.lua
%{_datadir}/grilo-plugins/grl-lua-factory/grl-radiofrance.gresource
%{_datadir}/grilo-plugins/grl-lua-factory/grl-video-title-parsing.lua
%{_datadir}/grilo-plugins/grl-lua-factory/grl-lastfm-cover.lua
%{_datadir}/grilo-plugins/grl-lua-factory/grl-steam-store.lua
%{_datadir}/grilo-plugins/grl-lua-factory/grl-theaudiodb-cover.lua
%files lang -f %{name}.lang
%files -n grilo-plugin-tracker
%{plugin_dir}/libgrltracker3.so
%files -n grilo-plugin-dleyna
%{plugin_dir}/libgrldleyna.so
#%%files -n grilo-plugin-youtube
#%%{plugin_dir}/libgrlyoutube.so
%files devel
%{_datadir}/help/*/examples/
%{_libdir}/pkgconfig/grilo-plugins-0.3.pc
%changelog