107 lines
2.8 KiB
RPMSpec
107 lines
2.8 KiB
RPMSpec
## START: Set by rpmautospec
|
|
## (rpmautospec version 0.3.5)
|
|
## RPMAUTOSPEC: autorelease, autochangelog
|
|
%define autorelease(e:s:pb:n) %{?-p:0.}%{lua:
|
|
release_number = 1;
|
|
base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}"));
|
|
print(release_number + base_release_number - 1);
|
|
}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}}
|
|
## END: Set by rpmautospec
|
|
|
|
%global glib2_version 2.45.8
|
|
%global realname libxmlb
|
|
|
|
Summary: Library for querying compressed XML metadata
|
|
Name: libxmlb2
|
|
Version: 0.3.14
|
|
Release: %autorelease
|
|
License: LGPLv2+
|
|
URL: https://github.com/hughsie/%{realname}
|
|
Source0: https://github.com/hughsie/%{realname}/releases/download/%{version}/%{realname}-%{version}.tar.xz
|
|
|
|
BuildRequires: glib2-devel >= %{glib2_version}
|
|
BuildRequires: gtk-doc
|
|
BuildRequires: libstemmer-devel
|
|
BuildRequires: meson
|
|
BuildRequires: gobject-introspection-devel
|
|
BuildRequires: xz-devel
|
|
BuildRequires: libzstd-devel
|
|
BuildRequires: python3-setuptools
|
|
|
|
# needed for the self tests
|
|
BuildRequires: shared-mime-info
|
|
|
|
Requires: glib2%{?_isa} >= %{glib2_version}
|
|
Requires: shared-mime-info
|
|
|
|
%description
|
|
XML is slow to parse and strings inside the document cannot be memory mapped as
|
|
they do not have a trailing NUL char. The libxmlb library takes XML source, and
|
|
converts it to a structured binary representation with a deduplicated string
|
|
table -- where the strings have the NULs included.
|
|
|
|
This allows an application to mmap the binary XML file, do an XPath query and
|
|
return some strings without actually parsing the entire document. This is all
|
|
done using (almost) zero allocations and no actual copying of the binary data.
|
|
|
|
%package devel
|
|
Summary: Development package for %{name}
|
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
Provides: pkgconfig(xmlb) = %{version}-%{release}
|
|
Conflicts: %{realname}-devel
|
|
|
|
%description devel
|
|
Files for development with %{name}.
|
|
|
|
%package tests
|
|
Summary: Files for installed tests
|
|
Conflicts: %{realname}-tests
|
|
|
|
%description tests
|
|
Executable and data files for installed tests.
|
|
|
|
%prep
|
|
%setup -q -n %{realname}-%{version}
|
|
|
|
%build
|
|
|
|
%meson \
|
|
-Dgtkdoc=true \
|
|
-Dtests=true
|
|
|
|
%meson_build
|
|
|
|
%check
|
|
%meson_test
|
|
|
|
%install
|
|
%meson_install
|
|
|
|
|
|
%files
|
|
%doc README.md
|
|
%license LICENSE
|
|
%{_bindir}/xb-tool
|
|
%{_mandir}/man1/xb-tool.1*
|
|
%dir %{_libdir}/girepository-1.0
|
|
%{_libdir}/girepository-1.0/Xmlb-2.0.typelib
|
|
%{_libdir}/libxmlb.so.2*
|
|
|
|
%files devel
|
|
%dir %{_datadir}/gir-1.0
|
|
%{_datadir}/gir-1.0/Xmlb-2.0.gir
|
|
%dir %{_datadir}/gtk-doc
|
|
%dir %{_datadir}/gtk-doc/html
|
|
%{_datadir}/gtk-doc/html/libxmlb
|
|
%{_includedir}/libxmlb-2
|
|
%{_libdir}/libxmlb.so
|
|
%{_libdir}/pkgconfig/xmlb.pc
|
|
|
|
%files tests
|
|
%dir %{_libexecdir}/installed-tests/libxmlb
|
|
%{_libexecdir}/installed-tests/libxmlb/xb-self-test
|
|
%{_libexecdir}/installed-tests/libxmlb/test.*
|
|
%dir %{_datadir}/installed-tests/libxmlb
|
|
%{_datadir}/installed-tests/libxmlb/libxmlb.test
|
|
|