## START: Set by rpmautospec
## (rpmautospec version 0.3.0)
%define autorelease(e:s:pb:n) %{?-p:0.}%{lua:
    release_number = 2;
    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

%bcond_without check

Name:           gplugin
Version:        0.39.1
Release:        %autorelease
Summary:        GObject based library that implements a reusable plugin system

License:        LGPLv2+
URL:            https://keep.imfreedom.org/gplugin/gplugin
Source0:        https://downloads.sourceforge.net/pidgin/%{name}-%{version}.tar.xz
Source1:        https://downloads.sourceforge.net/pidgin/%{name}-%{version}.tar.xz.asc
Source2:        https://keybase.io/grim/pgp_keys.asc

BuildRequires:  gnupg2
BuildRequires:  meson >= 0.61.0
BuildRequires:  gcc
BuildRequires:  gi-docgen
BuildRequires:  /usr/bin/help2man
BuildRequires:  pkgconfig(glib-2.0) >= 2.70.0
BuildRequires:  pkgconfig(gobject-2.0)
BuildRequires:  pkgconfig(gmodule-2.0)
BuildRequires:  gettext
%if %{with check}
BuildRequires:  /usr/bin/gtester
%endif
Requires:       %{name}-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}

%description
GPlugin is a GObject based library that implements a reusable plugin system
which supports loading plugins in other languages via loaders.
It relies heavily on GObject Introspection to expose its API to the other
languages.

It has a very simple API which makes it very simple to use in your application.

%package        libs
Summary:        Library for %{name}

%description    libs
%{summary}.

%package        gtk4
Summary:        GTK4 applications for %{name}
BuildRequires:  pkgconfig(gtk4) >= 4
Requires:       %{name}-gtk4-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}

%description    gtk4
%{summary}.

%package        gtk4-libs
Summary:        GTK4 libraries for %{name}
Requires:       %{name}-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}

%description    gtk4-libs
%{summary}.

%package        loader-lua
Summary:        Lua loader for %{name}
BuildRequires:  pkgconfig(lua) >= 5.1.0
BuildRequires:  lua-lgi
Requires:       %{name}-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
Requires:       lua-lgi

%description    loader-lua
%{summary}.

%package        loader-python
Summary:        Python loader for %{name}
BuildRequires:  pkgconfig(python3-embed)
BuildRequires:  pkgconfig(pygobject-3.0) >= 3.0.0
Requires:       %{name}-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
Requires:       pkgconfig(pygobject-3.0) >= 3.0.0

%description    loader-python
%{summary}.

%package        devel
Summary:        Development libraries and header files for %{name}-libs
Requires:       %{name}-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}

%description    devel
%{summary}.

%package        gtk4-devel
Summary:        Development libraries and header files for %{name}-gtk4-libs
Requires:       %{name}-gtk4-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}

%description    gtk4-devel
%{summary}.

%package        vala
Summary:        Vala bindings for %{name}-libs
BuildRequires:  vala
Requires:       %{name}-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}

%description    vala
%{summary}.

%package        gtk4-vala
Summary:        Vala bindings for %{name}-gtk4-libs
Requires:       %{name}-vala%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}

%description    gtk4-vala
%{summary}.

%prep
%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}'
%autosetup -p1
# We install docs ourselves
sed -i -e '/install_data/,+1 d' meson.build
sed -i -e '/install_data/,+1 d' gplugin/share/valgrind/meson.build

%build
%meson
%meson_build

%install
%meson_install

%if %{with check}
%check
# Everything is tested during build process...
%meson_test
%endif

%files
%{_bindir}/gplugin-query
%{_mandir}/man1/gplugin-query.1*

%files libs
%license COPYING
%doc ChangeLog README.md
%{_libdir}/libgplugin.so.0
%{_libdir}/libgplugin.so.0.*
%dir %{_libdir}/gplugin/
%dir %{_libdir}/girepository-1.0
%{_libdir}/girepository-1.0/GPlugin-1.0.typelib

%files gtk4
%{_bindir}/gplugin-gtk4-viewer
%{_mandir}/man1/gplugin-gtk4-viewer.1*

%files gtk4-libs
%{_libdir}/libgplugin-gtk4.so.*
%dir %{_libdir}/girepository-1.0
%{_libdir}/girepository-1.0/GPluginGtk4-1.0.typelib

%files loader-lua
%{_libdir}/gplugin/gplugin-lua.so

%files loader-python
%{_libdir}/gplugin/gplugin-python3.so

%files devel
%doc gplugin/share/valgrind/gplugin.supp
%doc %{_docdir}/gplugin
%{_libdir}/libgplugin.so
%dir %{_includedir}/gplugin-1.0/
%{_includedir}/gplugin-1.0/gplugin/
%{_includedir}/gplugin-1.0/gplugin.h
%{_includedir}/gplugin-1.0/gplugin-native.h
%{_libdir}/pkgconfig/gplugin.pc
%dir %{_datadir}/gir-1.0
%{_datadir}/gir-1.0/GPlugin-1.0.gir

%files gtk4-devel
%doc %{_docdir}/gplugin-gtk4
%{_libdir}/libgplugin-gtk4.so
%{_includedir}/gplugin-gtk4-1.0/
%{_libdir}/pkgconfig/gplugin-gtk4.pc
%dir %{_datadir}/gir-1.0
%{_datadir}/gir-1.0/GPluginGtk4-1.0.gir

%files vala
%dir %{_datadir}/vala
%dir %{_datadir}/vala/vapi
%{_datadir}/vala/vapi/gplugin.deps
%{_datadir}/vala/vapi/gplugin.vapi

%files gtk4-vala
%{_datadir}/vala/vapi/gplugin-gtk4.deps
%{_datadir}/vala/vapi/gplugin-gtk4.vapi

%changelog
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> 0.39.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild

* Thu Nov 24 2022 Elliott Sales de Andrade <quantum.analyst@gmail.com> 0.39.1-1
- Update to latest version (#2147545)

* Fri Oct 28 2022 Elliott Sales de Andrade <quantum.analyst@gmail.com> 0.39.0-1
- Update to latest version (#2138311)

* Sun Sep 18 2022 Elliott Sales de Andrade <quantum.analyst@gmail.com> 0.38.1-1
- Update to latest version (#2122451)

* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> 0.37.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild

* Mon Jun 13 2022 Python Maint <python-maint@redhat.com> 0.37.0-3
- Rebuilt for Python 3.11

* Wed Jun 01 2022 Jitka Plesnikova <jplesnik@redhat.com> 0.37.0-2
- Perl 5.36 rebuild

* Tue Feb 22 2022 Elliott Sales de Andrade <quantum.analyst@gmail.com> 0.37.0-1
- Update to latest version (#2014375)

* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> 0.36.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild

* Sun Oct 17 2021 Elliott Sales de Andrade <quantum.analyst@gmail.com> 0.36.0-1
- Update to latest version (#2014375)

* Thu Sep 30 2021 Elliott Sales de Andrade <quantum.analyst@gmail.com> 0.35.0-1
- Update to latest version (#2009193)

* Thu Sep 30 2021 Elliott Sales de Andrade <quantum.analyst@gmail.com> 0.34.1-2
- Add runtime gobject-introspection dependencies

* Sun Sep 26 2021 Elliott Sales de Andrade <quantum.analyst@gmail.com> 0.34.1-1
- Update to latest version (#2007868)

* Fri Sep 24 2021 Elliott Sales de Andrade <quantum.analyst@gmail.com> 0.34.0-1
- Update to latest version

* Thu Aug 12 2021 Elliott Sales de Andrade <quantum.analyst@gmail.com> 0.33.0-2
- Fix Vala tests on aarch64.

* Fri Aug 06 2021 Elliott Sales de Andrade <quantum.analyst@gmail.com> 0.33.0-1
- Update to latest version; fixes rhbz#1988198.

* Fri Jul 30 2021 Elliott Sales de Andrade <quantum.analyst@gmail.com> 0.32.1-1
- Update to latest version (#1988198).

* Fri Jul 30 2021 Elliott Sales de Andrade <quantum.analyst@gmail.com> 0.32.0-1
- Update to 0.32.0.

* Fri Jul 30 2021 Elliott Sales de Andrade <quantum.analyst@gmail.com> 0.31.0-1
- Update to 0.31.0.

* Fri Jul 30 2021 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 0.30.0-6
- Fix build with GLib 2.69.
- Switch sources URLs from Bintray to SourceForge.

* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.30.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild

* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 0.30.0-4
- Rebuilt for Python 3.10

* Sat May 22 2021 Jitka Plesnikova <jplesnik@redhat.com> - 0.30.0-3
- Perl 5.34 rebuild

* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.30.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild

* Fri Dec 04 2020 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 0.30.0-1
- Update to latest version
- Add Perl and Vala subpackages
- Add development documentation
- Update URLs to new upstream location
- Check source tarball GPG signature

* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.29.0-6
- Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild

* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.29.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild

* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 0.29.0-4
- Rebuilt for Python 3.9

* Mon Apr 06 2020 Igor Raits <ignatenkobrain@fedoraproject.org> - 0.29.0-3
- Fix build with GCC 10

* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.29.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild

* Mon Nov 18 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.29.0-1
- Update to 0.29.0

* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 0.28.0-2
- Rebuilt for Python 3.8

* Sun Jul 28 17:04:09 CEST 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.28.0-1
- Update to 0.28.0

* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.27.0-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild

* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.27.0-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.27.0-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild

* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.27.0-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild

* Fri Feb 02 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.27.0-7
- Switch to %%ldconfig_scriptlets

* Fri Aug 11 2017 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 0.27.0-6
- Remove extraneous pkgconfig library path.

* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.27.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild

* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.27.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild

* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.27.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild

* Tue Jan 10 2017 Igor Gnatenko <ignatenko@redhat.com> - 0.27.0-2
- Add missing ldconfig scriptlets

* Mon Jan 09 2017 Igor Gnatenko <ignatenko@redhat.com> - 0.27.0-1
- Initial package