appstream-glib/appstream-glib.spec
Bjørn Lie 1312f66845 Accepting request 291172 from GNOME:Next
- Add gdk-pixbuf-loader-rsvg Requires: needed, in order to be able
  to convert .svg icons to pixmaps.

- Update to version 0.3.5:
  + New Features:
    - Add new API required for firmware support.
    - Add new API required for OSTree and xdg-app support.
    - Add 'news-to-appdata' and 'appdata-to-news' cmds to
      appstream-util.
    - Support all of the yet-unreleased AppStream 0.9 spec.
  + Bugfixes:
    - Add releases from the upstream AppData files.
    - Allow short descriptions when validating <description> in
      releases.
    - Correctly load descriptions from <releases> in AppData files.
    - Fix a builder crash where a package depends on itself.
    - Fix a crash when more than one thread tries to ensure the
      same package.
    - Fix DSO Linking error when built with --as-needed.
    - Make the failed AppStream metadata optional.
    - Make the icon tarball optional.
    - Relax validation checks to allow empty release sections.
    - Return the correct exit code from appstream-builder.
- Add gcab BuildRequires and Requires: needed for the cab
  extraction of the new Firmware support.

OBS-URL: https://build.opensuse.org/request/show/291172
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/appstream-glib?expand=0&rev=23
2015-03-17 13:09:04 +00:00

235 lines
8.2 KiB
RPMSpec

#
# spec file for package appstream-glib
#
# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2014 Dominique Leuenberger, Amsterdam, The Netherlands
#
# 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 _build_from_vcs 1
Name: appstream-glib
Version: 0.3.5
Release: 0
Summary: AppStream Abstraction Library
License: LGPL-2.1+
Group: System/Libraries
Url: http://people.freedesktop.org/~hughsient/appstream-glib/
#Source: http://people.freedesktop.org/~hughsient/appstream-glib/releases/%{name}-%{version}.tar.xz
Source: %{name}-%{version}.tar.xz
%if %{_build_from_vcs}
BuildRequires: gnome-common
%else
# We still need some part to build the man pages
BuildRequires: xsltproc
%endif
BuildRequires: gcab
BuildRequires: gobject-introspection-devel
BuildRequires: intltool >= 0.40.0
BuildRequires: libyaml-devel
BuildRequires: pkgconfig(gdk-pixbuf-2.0) >= 2.14
BuildRequires: pkgconfig(gio-2.0)
BuildRequires: pkgconfig(gio-unix-2.0)
BuildRequires: pkgconfig(glib-2.0) >= 2.16.1
BuildRequires: pkgconfig(gmodule-2.0)
BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(gthread-2.0)
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(libarchive)
BuildRequires: pkgconfig(libsoup-2.4) >= 2.24
BuildRequires: pkgconfig(rpm)
BuildRequires: pkgconfig(sqlite3)
Requires: gcab
# Required in order to be able to convert .svg icons
Requires: gdk-pixbuf-loader-rsvg
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
This library provides GObjects and helper methods to make it easy to read and write AppStream metadata.
It also provides a simple DOM implementation that makes it easy to edit nodes and
convert to and from the standardized XML representation.
What this library allows you to do:
* Read and write compressed AppStream XML files
* Add and search for applications in an application store
* Get screenshot image data and release announcements
* Easily retrieve the best application data for the current locale
* Efficiently interface with more heavy-weight parsers like expat
%package -n libappstream-glib7
Summary: AppStream Abstraction Library
Group: System/Libraries
%description -n libappstream-glib7
This library provides GObjects and helper methods to make it easy to read and write AppStream metadata.
It also provides a simple DOM implementation that makes it easy to edit nodes and
convert to and from the standardized XML representation.
What this library allows you to do:
* Read and write compressed AppStream XML files
* Add and search for applications in an application store
* Get screenshot image data and release announcements
* Easily retrieve the best application data for the current locale
* Efficiently interface with more heavy-weight parsers like expat
%package -n libappstream-builder7
Summary: AppStream Abstraction Library
Group: System/Libraries
%description -n libappstream-builder7
This library provides GObjects and helper methods to make it easy to read and write AppStream metadata.
It also provides a simple DOM implementation that makes it easy to edit nodes and
convert to and from the standardized XML representation.
What this library allows you to do:
* Read and write compressed AppStream XML files
* Add and search for applications in an application store
* Get screenshot image data and release announcements
* Easily retrieve the best application data for the current locale
* Efficiently interface with more heavy-weight parsers like expat
%package -n typelib-1_0-AppStreamBuilder-1_0
Summary: AppStream Abstraction Library -- Introspection bindings
Group: System/Libraries
%description -n typelib-1_0-AppStreamBuilder-1_0
This library provides GObjects and helper methods to make it easy to read and write AppStream metadata.
It also provides a simple DOM implementation that makes it easy to edit nodes and
convert to and from the standardized XML representation.
%package -n typelib-1_0-AppStreamGlib-1_0
Summary: AppStream Abstraction Library -- Introspection bindings
Group: System/Libraries
%description -n typelib-1_0-AppStreamGlib-1_0
This library provides GObjects and helper methods to make it easy to read and write AppStream metadata.
It also provides a simple DOM implementation that makes it easy to edit nodes and
convert to and from the standardized XML representation.
%package devel
Summary: AppStream Abstraction Library -- Development files
Group: Development/Languages/C and C++
Requires: libappstream-builder7 = %{version}
Requires: libappstream-glib7 = %{version}
Requires: typelib-1_0-AppStreamBuilder-1_0 = %{version}
Requires: typelib-1_0-AppStreamGlib-1_0 = %{version}
# appdata-tools was consumed into appstream-glib and is no longer maintained upstream
Obsoletes: appdata-tools < 0.1.9
Provides: appdata-tools = 0.1.9
# Also obsolete the -lang package; or we end up with strange conflicts
Obsoletes: appdata-tools-lang < 0.1.9
%description devel
This library provides GObjects and helper methods to make it easy to read and write AppStream metadata.
It also provides a simple DOM implementation that makes it easy to edit nodes and
convert to and from the standardized XML representation.
What this library allows you to do:
* Read and write compressed AppStream XML files
* Add and search for applications in an application store
* Get screenshot image data and release announcements
* Easily retrieve the best application data for the current locale
* Efficiently interface with more heavy-weight parsers like expat
%lang_package
%prep
%setup -q
%build
%if %{_build_from_vcs}
NOCONFIGURE=1 ./autogen.sh
%endif
%configure \
--disable-static \
--enable-gtk-doc \
--enable-rpm
make %{?_smp_mflags}
%install
%make_install
# We don't care for 'installed tests'; that's used by GNOME Smoke Testing.
rm %{buildroot}%{_datadir}/installed-tests/appstream-glib/*.test
find %{buildroot} -type f -name "*.la" -delete -print
%find_lang %{name}
%check
if make check; then
echo CHECKS passed
exit 0
else
echo CHECKS failed... dumping log file
cat libappstream-builder/test-suite.log
exit 1
fi
%post -n libappstream-glib7 -p /sbin/ldconfig
%postun -n libappstream-glib7 -p /sbin/ldconfig
%post -n libappstream-builder7 -p /sbin/ldconfig
%postun -n libappstream-builder7 -p /sbin/ldconfig
%files
%defattr(-,root,root)
%{_bindir}/appstream-builder
%{_bindir}/appstream-util
%{_datadir}/bash-completion/completions/appstream-builder
%{_datadir}/bash-completion/completions/appstream-util
%{_libdir}/asb-plugins/
%{_mandir}/man1/appstream-builder.1%{?ext_man}
%{_mandir}/man1/appstream-util.1%{?ext_man}
%files -n libappstream-builder7
%defattr(-,root,root)
%doc COPYING
%{_libdir}/libappstream-builder.so.*
%files -n libappstream-glib7
%defattr(-,root,root)
%doc COPYING
%{_libdir}/libappstream-glib.so.*
%files -n typelib-1_0-AppStreamBuilder-1_0
%defattr(-,root,root)
%{_libdir}/girepository-1.0/AppStreamBuilder-1.0.typelib
%files -n typelib-1_0-AppStreamGlib-1_0
%defattr(-,root,root)
%{_libdir}/girepository-1.0/AppStreamGlib-1.0.typelib
%files devel
%defattr(-,root,root)
%{_bindir}/appdata-validate
%{_datadir}/aclocal/appdata-xml.m4
%{_datadir}/aclocal/appstream-xml.m4
%{_datadir}/gir-1.0/AppStreamBuilder-1.0.gir
%{_datadir}/gir-1.0/AppStreamGlib-1.0.gir
%{_datadir}/gtk-doc/html/appstream-glib/
%{_includedir}/libappstream-builder/
%{_includedir}/libappstream-glib/
%{_libdir}/pkgconfig/appstream-builder.pc
%{_libdir}/pkgconfig/appstream-glib.pc
%{_libdir}/libappstream-builder.so
%{_libdir}/libappstream-glib.so
%files lang -f %{name}.lang
%defattr(-,root,root)
%changelog