gupnp/gupnp.spec
Luciano Santos d6c169e895 Accepting request 1099199 from GNOME:Next
- Add upstream patches to fix build with meson 1.2.0:
  + a10c57bd.patch: Add missing "s" to wrap file syntax.
  + 884639bd.patch: properly spell [provide] in *.wrap files.

OBS-URL: https://build.opensuse.org/request/show/1099199
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gupnp?expand=0&rev=142
2023-07-19 01:11:44 +00:00

155 lines
5.4 KiB
RPMSpec

#
# spec file for package gupnp
#
# 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/
#
# When bumping soname, do not forget to bump in baselibs.conf too.
%define soname 1_6-0
%define sover 1.6
Name: gupnp
Version: 1.6.4
Release: 0
Summary: Implementation of the UPnP specification
License: LGPL-2.1-or-later
Group: Development/Libraries/C and C++
URL: http://www.gupnp.org/
Source0: https://download.gnome.org/sources/gupnp/1.6/%{name}-%{version}.tar.xz
Source1: baselibs.conf
# PATCH-FIX-UPSTREAM 884639bd.patch dimstar@opensuse.org -- properly spell [provide] in *.wrap files.
Patch0: 884639bd.patch
# PATCH-FIX-UPSTREAM a10c57bd.patch dimstar@opensuse.org -- Add missing "s" to wrap file syntax.
Patch1: a10c57bd.patch
BuildRequires: docbook-xsl-stylesheets
BuildRequires: meson >= 0.54.0
BuildRequires: pkgconfig
BuildRequires: xsltproc
BuildRequires: pkgconfig(gi-docgen)
BuildRequires: pkgconfig(gio-2.0) >= 2.66
BuildRequires: pkgconfig(glib-2.0) >= 2.66
BuildRequires: pkgconfig(gmodule-2.0) >= 2.66
BuildRequires: pkgconfig(gobject-2.0) >= 2.66
BuildRequires: pkgconfig(gobject-introspection-1.0) >= 0.6.4
BuildRequires: pkgconfig(gssdp-1.6) >= 1.6.2
BuildRequires: pkgconfig(libsoup-3.0)
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: pkgconfig(uuid)
BuildRequires: pkgconfig(vapigen)
%description
GUPnP implements the UPnP specification: resource announcement and
discovery, description, control, event notification, and presentation
(GUPnP includes basic web server functionality through libsoup). GUPnP
does not include helpers for construction or control of specific
standardized resources (e.g. MediaServer); this is left for higher level
libraries utilizing the GUPnP framework.
%package -n libgupnp-%{soname}
Summary: Implementation of the UPnP specification
Group: Development/Libraries/C and C++
# libgupnp-1.2.so.1 was wrongly shipped for a while in libgupnp-1_2-0
Obsoletes: libgupnp-1_2-0
%description -n libgupnp-%{soname}
GUPnP implements the UPnP specification: resource announcement and
discovery, description, control, event notification, and presentation
(GUPnP includes basic web server functionality through libsoup). GUPnP
does not include helpers for construction or control of specific
standardized resources (e.g. MediaServer); this is left for higher level
libraries utilizing the GUPnP framework.
%package -n typelib-1_0-GUPnP-1_0
Summary: Implementation of the UPnP specification -- Introspection bindings
Group: System/Libraries
%description -n typelib-1_0-GUPnP-1_0
GUPnP implements the UPnP specification: resource announcement and
discovery, description, control, event notification, and presentation
(GUPnP includes basic web server functionality through libsoup). GUPnP
does not include helpers for construction or control of specific
standardized resources (e.g. MediaServer); this is left for higher level
libraries utilizing the GUPnP framework.
This package provides the GObject Introspection bindings for GUPnP.
%package doc
Summary: Documentation for %{name}
BuildArch: noarch
%description doc
Documentation for GUPnP.
%package -n libgupnp-devel
Summary: Implementation of the UPnP specification - Development Files
Group: Development/Libraries/C and C++
Requires: libgupnp-%{soname} = %{version}
Requires: typelib-1_0-GUPnP-1_0 = %{version}
%description -n libgupnp-devel
GUPnP implements the UPnP specification: resource announcement and
discovery, description, control, event notification, and presentation
(GUPnP includes basic web server functionality through libsoup). GUPnP
does not include helpers for construction or control of specific
standardized resources (e.g. MediaServer); this is left for higher level
libraries utilizing the GUPnP framework.
%prep
%autosetup -p1
sed -i 's|env python3|python3|' tools/gupnp-binding-tool
%build
%meson \
-Dcontext_manager=network-manager \
-Dintrospection=true \
-Dvapi=true \
-Dgtk_doc=true \
-Dexamples=false \
%{nil}
%meson_build
%install
%meson_install
# Make default docdir ref openSUSE standard
mkdir -p %{buildroot}%{_docdir}/%{name}-%{sover}
# Move docs from upstream docdir to openSUSE docdir standard
mv %{buildroot}%{_datadir}/doc/%{name}-%{sover} %{buildroot}%{_docdir}
%ldconfig_scriptlets -n libgupnp-%{soname}
%files -n libgupnp-%{soname}
%license COPYING
%doc AUTHORS NEWS
%{_libdir}/*.so.*
%files -n typelib-1_0-GUPnP-1_0
%{_libdir}/girepository-1.0/GUPnP-%{sover}.typelib
%files doc
%doc %{_docdir}/%{name}-%{sover}
%files -n libgupnp-devel
%{_mandir}/man1/gupnp-binding-tool-1.6.1%{?ext_man}
%{_bindir}/gupnp-binding-tool-%{sover}
%{_includedir}/%{name}-%{sover}
%{_libdir}/*.so
%{_libdir}/pkgconfig/*.pc
%{_datadir}/gir-1.0/GUPnP-%{sover}.gir
%{_datadir}/vala/vapi/gupnp-%{sover}.deps
%{_datadir}/vala/vapi/gupnp-%{sover}.vapi
%changelog