File AppStream.spec of Package AppStream

#
# spec file for package AppStream
#
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
#
# 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 http://bugs.opensuse.org/
#

%define libappstream_sover 4

Name:           AppStream
Version:        0.10.0
Release:        0
Summary:        Utilities to generate, maintain and access the AppStream Xapian database
License:        GPL-2.0+ and LGPL-2.1+
Group:          Development/Libraries/C and C++
Url:            https://www.freedesktop.org/software/appstream/docs/
Source:         http://www.freedesktop.org/software/appstream/releases/%{name}-%{version}.tar.xz
BuildRequires:  cmake >= 3.1.0
BuildRequires:  gettext
BuildRequires:  intltool
BuildRequires:  xmlto
BuildRequires:  pkgconfig(Qt5Core)
BuildRequires:  pkgconfig(Qt5Test)
BuildRequires:  pkgconfig(gio-2.0)
BuildRequires:  pkgconfig(gobject-introspection-1.0)
BuildRequires:  pkgconfig(libxml-2.0)
BuildRequires:  pkgconfig(packagekit-glib2)
BuildRequires:  pkgconfig(protobuf)
BuildRequires:  pkgconfig(vapigen)
BuildRequires:  libxapian-devel
BuildRequires:  pkgconfig(yaml-0.1)
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
AppStream-Core makes it easy to access application information from the
AppStream database over a nice GObject-based interface.

%package -n libappstream%{libappstream_sover}
Summary:        The main library for AppStream
License:        GPL-2.0+ and LGPL-2.1+
Group:          System/Libraries

%description -n libappstream%{libappstream_sover}
The main library for AppStream.

%package -n libAppstreamQt1
Summary:        Qt5 bindings for AppStream
License:        GPL-2.0+ and LGPL-2.1+
Group:          System/Libraries

%description -n libAppstreamQt1
The Qt5 bindings for AppStream.

%package -n libAppstreamQt-devel
Summary:        Needed include files and libraries for development
License:        GPL-2.0+ and LGPL-2.1+
Group:          Development/Libraries/C and C++
Requires:       libAppstreamQt1 = %{version}
Requires:       libappstream%{libappstream_sover} = %{version}

%description -n libAppstreamQt-devel
This package contains all necessary include files, libraries,
configuration files and development tools (with manual pages) needed to
compile and link applications using the Qt bindings for AppStream.

%package devel
Summary:        Needed include files and libraries for development
License:        GPL-2.0+
Group:          Development/Libraries/C and C++
Requires:       libappstream%{libappstream_sover} = %{version}

%description devel
This package contains all necessary include files, libraries,
configuration files and development tools (with manual pages) needed to
compile and link applications using AppStream.

%package -n typelib-1_0-AppStream-1.0
Summary:        Simple software installation management software -- Introspection bindings
License:        LGPL-2.1+
Group:          System/Libraries

%description -n typelib-1_0-AppStream-1.0
PackageKit is a system designed to make installing and updating
software on your computer easier.  The primary design goal is to unify
all the software graphical tools used in different distributions, and
use some of the latest technology like PolicyKit to make the process
suck less.

%lang_package

%prep
%setup -q

%build
%if "%{?_lib}" == "lib64"
SUFFIX="64"
%else
SUFFIX=""
%endif

%cmake -DQT=ON \
       -DVAPI=ON \
       -DINSTALL_PREBUILT_DOCS=OFF \
       -DDOCUMENTATION=OFF \
       -DSTEMMING=OFF \
       -DAPPSTREAM_QT_VERSION=5

%make_jobs

%install
%make_install -C build

%find_lang appstream %{name}.lang

%post -n libappstream%{libappstream_sover} -p /sbin/ldconfig

%postun -n libappstream%{libappstream_sover} -p /sbin/ldconfig

%post -n libAppstreamQt1 -p /sbin/ldconfig

%postun -n libAppstreamQt1 -p /sbin/ldconfig

%files lang -f %{name}.lang

%files
%defattr(-,root,root)
%doc LICENSE* NEWS
%{_bindir}/appstreamcli
%config(noreplace) %{_sysconfdir}/appstream.conf
#dir %{_datadir}/app-info
#{_datadir}/app-info/categories.xml
%{_mandir}/man1/appstreamcli.*

%files -n libappstream%{libappstream_sover}
%defattr(-,root,root)
%doc LICENSE* NEWS
%{_libdir}/libappstream.so.*

%files -n libAppstreamQt1
%defattr(-,root,root)
%doc LICENSE*
%{_libdir}/libAppstreamQt.so.*

%files -n libAppstreamQt-devel
%defattr(-,root,root)
%{_includedir}/AppstreamQt/
%{_libdir}/cmake/AppstreamQt/
%{_libdir}/libAppstreamQt.so

%files devel
%defattr(-,root,root)
%{_libdir}/libappstream.so
%{_libdir}/pkgconfig/appstream.pc
%{_includedir}/AppStream/
%{_datadir}/gir-1.0/AppStream-1.0.gir
%{_datadir}/gettext/
%dir %{_datadir}/vala/
%dir %{_datadir}/vala/vapi/
%{_datadir}/vala/vapi/appstream.vapi

%files -n typelib-1_0-AppStream-1.0
%defattr(-,root,root)
%doc LICENSE*
%{_libdir}/girepository-1.0/AppStream-1.0.typelib

%changelog