json-glib/json-glib.spec
2025-02-17 19:28:42 +00:00

98 lines
2.6 KiB
RPMSpec

%define api 1.0
%define major 0
%define libname %mklibname %{name} %{api} %{major}
%define girname %mklibname %{name}-gir %{api}
%define devname %mklibname %{name} -d
Summary: Library for JavaScript Object Notation format
Name: json-glib
Version: 1.10.6
Release: 1
License: LGPLv2+
Group: System/Libraries
URL: https://gitlab.gnome.org/GNOME/json-glib
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
BuildRequires: gtk-doc
BuildRequires: meson >= 1.2.0
BuildRequires: xsltproc
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(gobject-introspection-1.0)
BuildRequires: pkgconfig(python3)
BuildRequires: pkgconfig(python-3.8)
%description
%{name} is a library providing serialization and deserialization support
for the JavaScript Object Notation (JSON) format.
%files -f %{name}-%{api}.lang
%{_bindir}/json-glib-format
%{_bindir}/json-glib-validate
%{_mandir}/man1/json-glib-format.1*
%{_mandir}/man1/json-glib-validate.1*
#----------------------------------------------------------------------------
%package -n %{libname}
Summary: Shared libraries for %{name}
Group: System/Libraries
%description -n %{libname}
%{name} is a library providing serialization and deserialization support
for the JavaScript Object Notation (JSON) format.
%files -n %{libname}
%{_libdir}/lib%{name}-%{api}.so.%{major}*
#----------------------------------------------------------------------------
%package -n %{girname}
Summary: GObject introspection interface library for %{name}
Group: System/Libraries
Requires: %{libname} = %{EVRD}
Conflicts: %{_lib}json-gliblib1.0_0 < 1.2.2
%description -n %{girname}
GObject introspection interface library for %{name}.
%files -n %{girname}
%{_libdir}/girepository-1.0/Json-%{api}.typelib
#----------------------------------------------------------------------------
%package -n %{devname}
Summary: Development files for %{name}
Group: Development/C
Requires: %{libname} = %{EVRD}
Requires: %{girname} = %{EVRD}
Provides: %{name}-devel = %{EVRD}
%description -n %{devname}
The %{devname} package contains libraries and header files for
developing applications that use %{name}.
%files -n %{devname}
%doc NEWS
%{_libdir}/lib%{name}-%{api}.so
%{_libdir}/pkgconfig/%{name}-%{api}.pc
%{_includedir}/%{name}-%{api}/
%dir %{_datadir}/gtk-doc/html
%{_datadir}/gtk-doc/html/%{name}/
%{_datadir}/gir-1.0/Json-%{api}.gir
%{_datadir}/installed-tests/
%{_libdir}/installed-tests/
#----------------------------------------------------------------------------
%prep
%setup -q
%build
%meson
# -Ddocs=true
%meson_build
%install
%meson_install
%find_lang %{name}-%{api}