json-glib/json-glib.spec

162 lines
5.4 KiB
RPMSpec

#
# spec file for package json-glib
#
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2009 Dominique Leuenberger, Almere, 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/
#
Name: json-glib
Version: 1.3.2
Release: 0
Summary: Library for JavaScript Object Notation format
License: LGPL-2.1+
Group: Development/Libraries/C and C++
Url: http://live.gnome.org/JsonGlib
Source0: http://download.gnome.org/sources/json-glib/1.3/%{name}-%{version}.tar.xz
Source99: baselibs.conf
BuildRequires: glib2-devel >= 2.46
BuildRequires: gobject-introspection-devel
BuildRequires: meson
%if !0%{?is_opensuse}
BuildRequires: translation-update-upstream
%endif
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
JSON is a lightweight data-interchange format.It is easy for humans to
read and write. It is easy for machines to parse and generate.
JSON-GLib provides a parser and a generator GObject classes and various
wrappers for the complex data types employed by JSON, such as arrays
and objects.
JSON-GLib uses GLib native data types and the generic value container
GValue for ease of development. It also provides integration with the
GObject classes for direct serialization into, and deserialization from,
JSON data streams.
%package -n libjson-glib-1_0-0
Summary: Library for JavaScript Object Notation format
# To make lang subpackage installable
Group: Development/Libraries/C and C++
Provides: %{name} = %{version}
Recommends: %{name}-lang
%description -n libjson-glib-1_0-0
JSON is a lightweight data-interchange format.It is easy for humans to
read and write. It is easy for machines to parse and generate.
JSON-GLib provides a parser and a generator GObject classes and various
wrappers for the complex data types employed by JSON, such as arrays
and objects.
JSON-GLib uses GLib native data types and the generic value container
GValue for ease of development. It also provides integration with the
GObject classes for direct serialization into, and deserialization from,
JSON data streams.
%package -n typelib-1_0-Json-1_0
Summary: Library for JavaScript Object Notation format -- Introspection bindings
Group: System/Libraries
%description -n typelib-1_0-Json-1_0
JSON is a lightweight data-interchange format.It is easy for humans to
read and write. It is easy for machines to parse and generate.
JSON-GLib provides a parser and a generator GObject classes and various
wrappers for the complex data types employed by JSON, such as arrays
and objects.
JSON-GLib uses GLib native data types and the generic value container
GValue for ease of development. It also provides integration with the
GObject classes for direct serialization into, and deserialization from,
JSON data streams.
This package provides the GObject Introspection bindings for JSON-GLib.
%package devel
Summary: Library for JavaScript Object Notation format - Development Files
Group: Development/Libraries/C and C++
Requires: libjson-glib-1_0-0 = %{version}
Requires: typelib-1_0-Json-1_0 = %{version}
%description devel
JSON is a lightweight data-interchange format.It is easy for humans to
read and write. It is easy for machines to parse and generate.
JSON-GLib provides a parser and a generator GObject classes and various
wrappers for the complex data types employed by JSON, such as arrays
and objects.
JSON-GLib uses GLib native data types and the generic value container
GValue for ease of development. It also provides integration with the
GObject classes for direct serialization into, and deserialization from,
JSON data streams.
This package contains development files needed to develop with the
json-glib library.
%lang_package
%prep
%setup -q
%if !0%{?is_opensuse}
translation-update-upstream
%endif
%build
# These 2 options should work, but currently install fase fails.
# FIXME -Denable-man=true \
# FIXME -Denable-gtk-doc=true \
%meson \
%{nil}
%meson_build
%install
%meson_install
find %{buildroot}%{_libdir} -name '*.la' -delete -print
%find_lang %{name}-1.0
%post -n libjson-glib-1_0-0 -p /sbin/ldconfig
%postun -n libjson-glib-1_0-0 -p /sbin/ldconfig
%files -n libjson-glib-1_0-0
%defattr(-,root,root)
%doc COPYING
%{_libdir}/*.so.*
%files -n typelib-1_0-Json-1_0
%defattr(-,root,root)
%{_libdir}/girepository-1.0/Json-1.0.typelib
%files devel
%defattr(-,root,root)
%doc NEWS README.md
# Those could potentially be split in a -tools package, but are never used by non-devs.
%{_bindir}/json-glib-format
%{_bindir}/json-glib-validate
%{_includedir}/%{name}-1.0
%{_libdir}/*.so
%{_libdir}/pkgconfig/*.pc
%{_datadir}/gir-1.0/*.gir
%dir %{_datadir}/installed-tests
%dir %{_libexecdir}/installed-tests
%{_datadir}/installed-tests/json-glib-1.0/
%{_libexecdir}/installed-tests/json-glib-1.0/
%files lang -f %{name}-1.0.lang
%changelog