File snapd-glib.spec of Package snapd-glib
Name: snapd-glib-2
Version: 1.66
Release: 0
Summary: Library to allow GLib/Qt based applications access to snapd
License: LGPL3
URL: https://github.com/snapcore/snapd-glib
Source0: snapd-glib-%{version}.tar.xz
BuildRequires: meson
BuildRequires: vala
# The default GCC version in Leap 15 is too old
%if 0%{?suse_version} == 1500
BuildRequires: gcc12-c++
%else
BuildRequires: gcc-c++
%endif
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(libsoup-3.0)
BuildRequires: pkgconfig(json-glib-1.0)
BuildRequires: pkgconfig(gobject-introspection-1.0)
BuildRequires: python3-gi-docgen
BuildRequires: qt6-base-devel
BuildRequires: qt6-tools-devel
BuildRequires: qt6-tools-linguist
BuildRequires: qt6-declarative-devel
%description
Library to allow GLib/Qt based applications access to snapd, the daemon that
controls Snaps.
%package -n libsnapd-glib-2-1
Summary: Library to allow GLib based applications access to snapd
Group: System/Libraries
%description -n libsnapd-glib-2-1
Library to allow GLib based applications access to snapd, the daemon that
controls Snaps.
%package -n libsnapd-glib-2-1-devel
Summary: Development files for snapd-glib
Requires: libsnapd-glib-2-1 = %{version}-%{release}
Requires: typelib-1_0-Snapd2-1_0 = %{version}-%{release}
%description -n libsnapd-glib-2-1-devel
Development files for snapd-glib.
%package -n libsnapd-qt-2-1
Summary: Library to allow Qt based applications access to snapd
Group: System/Libraries
Requires: libsnapd-glib-2-1 = %{version}-%{release}
%description -n libsnapd-qt-2-1
Library to allow Qt based applications access to snapd, the daemon that
controls Snaps.
%package -n libsnapd-qt-2-1-devel
Summary: Development files for snapd-qt
Requires: libsnapd-qt-2-1 = %{version}-%{release}
Requires: cmake(Qt6)
Requires: cmake(Qt6Qml)
%description -n libsnapd-qt-2-1-devel
Library to allow Qt based applications access to snapd, the daemon that
controls Snaps.
%package -n snapd-qml-module
Summary: QML module to allow Qt Lib based applications access to snapd
Group: System/Libraries
Requires: libsnapd-qt-2-1 = %{version}-%{release}
%description -n snapd-qml-module
A QML module to allow Qt based applications access to snapd, the daemon that
controls Snaps.
%package -n typelib-1_0-Snapd2-1_0
Summary: Introspection bindings for snapd-glib
Group: System/Libraries
Requires: libsnapd-glib-2-1 = %{version}-%{release}
%description -n typelib-1_0-Snapd2-1_0
Introspection bindings for snapd-glib.
%prep
%autosetup -n snapd-glib-%{version}
%build
# The default GCC version in Leap 15 is too old
%if 0%{?suse_version} == 1500
export CC=/usr/bin/gcc-12
export CXX=/usr/bin/g++-12
meson build -Dprefix=%{_prefix} -Dcpp_std=c++17 -Dc_std=c17
%else
meson build -Dprefix=%{_prefix}
%endif
ninja -C build
%install
DESTDIR=%{buildroot} meson install -C build
# remove install-tests
rm -rf %{buildroot}/usr/libexec/installed-tests
rm -rf %{buildroot}/usr/share/installed-tests
%ldconfig_scriptlets -n libsnapd-glib-2-1
%ldconfig_scriptlets -n libsnapd-qt-2-1
%files -n libsnapd-glib-2-1
%license COPYING.LGPL3
%doc NEWS
%{_libdir}/libsnapd-glib-2.so.*
%files -n libsnapd-qt-2-1
%{_libdir}/libsnapd-qt-2.so.*
%files -n snapd-qml-module
%{_qt6_archdatadir}/qml
%files -n libsnapd-glib-2-1-devel
%{_includedir}/snapd-glib-2/
%{_libdir}/libsnapd-glib-2.so
%{_libdir}/pkgconfig/snapd-glib-2.pc
%{_datadir}/doc/snapd-glib/
%{_datadir}/vala/vapi/snapd-glib-2.*
%{_datadir}/gir-1.0/Snapd-2.gir
%files -n libsnapd-qt-2-1-devel
%{_includedir}/snapd-qt-2/
%{_libdir}/libsnapd-qt-2.so
%{_libdir}/pkgconfig/snapd-qt-2.pc
%{_libdir}/cmake/Snapd2/
%files -n typelib-1_0-Snapd2-1_0
%{_libdir}/girepository-1.0/Snapd-2.typelib
%changelog