|
|
90b570 |
%global libsolv_version 0.6.34-1
|
|
|
90b570 |
%global libmodulemd_version 1.6.1
|
|
|
90b570 |
%global dnf_conflict 4.0.9.2
|
|
|
90b570 |
%global swig_version 3.0.12
|
|
|
d57e47 |
|
|
|
d57e47 |
%bcond_with valgrind
|
|
|
d57e47 |
|
|
|
d57e47 |
# Do not build bindings for python3 for RHEL <= 7
|
|
|
d57e47 |
%if 0%{?rhel} && 0%{?rhel} <= 7
|
|
|
d57e47 |
%bcond_with python3
|
|
|
d57e47 |
%else
|
|
|
d57e47 |
%bcond_without python3
|
|
|
d57e47 |
%endif
|
|
|
d57e47 |
|
|
|
90b570 |
%if 0%{?rhel} > 7 || 0%{?fedora} > 29
|
|
|
90b570 |
# Disable python2 build by default
|
|
|
90b570 |
%bcond_with python2
|
|
|
90b570 |
%else
|
|
|
90b570 |
%bcond_without python2
|
|
|
90b570 |
%endif
|
|
|
90b570 |
|
|
|
d57e47 |
%if 0%{?rhel} && ! 0%{?centos}
|
|
|
d57e47 |
%bcond_without rhsm
|
|
|
d57e47 |
%else
|
|
|
d57e47 |
%bcond_with rhsm
|
|
|
d57e47 |
%endif
|
|
|
d57e47 |
|
|
|
d57e47 |
%global _cmake_opts \\\
|
|
|
d57e47 |
-DENABLE_RHSM_SUPPORT=%{?with_rhsm:ON}%{!?with_rhsm:OFF} \\\
|
|
|
d57e47 |
%{nil}
|
|
|
d57e47 |
|
|
|
d57e47 |
Name: libdnf
|
|
|
90b570 |
Version: 0.22.5
|
|
|
90b570 |
Release: 1%{?dist}
|
|
|
d57e47 |
Summary: Library providing simplified C and Python API to libsolv
|
|
|
d57e47 |
License: LGPLv2+
|
|
|
d57e47 |
URL: https://github.com/rpm-software-management/libdnf
|
|
|
d57e47 |
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
|
|
|
90b570 |
Patch0: queue_init_clone-const_cast.patch
|
|
|
d57e47 |
|
|
|
d57e47 |
BuildRequires: cmake
|
|
|
d57e47 |
BuildRequires: gcc
|
|
|
90b570 |
BuildRequires: gcc-c++
|
|
|
d57e47 |
BuildRequires: libsolv-devel >= %{libsolv_version}
|
|
|
d57e47 |
BuildRequires: pkgconfig(librepo)
|
|
|
d57e47 |
BuildRequires: pkgconfig(check)
|
|
|
d57e47 |
%if %{with valgrind}
|
|
|
d57e47 |
BuildRequires: valgrind
|
|
|
d57e47 |
%endif
|
|
|
d57e47 |
BuildRequires: pkgconfig(gio-unix-2.0) >= 2.46.0
|
|
|
d57e47 |
BuildRequires: pkgconfig(gtk-doc)
|
|
|
d57e47 |
BuildRequires: rpm-devel >= 4.11.0
|
|
|
d57e47 |
%if %{with rhsm}
|
|
|
90b570 |
BuildRequires: pkgconfig(librhsm) >= 0.0.3
|
|
|
d57e47 |
%endif
|
|
|
90b570 |
BuildRequires: pkgconfig(sqlite3)
|
|
|
90b570 |
BuildRequires: pkgconfig(json-c)
|
|
|
90b570 |
BuildRequires: pkgconfig(cppunit)
|
|
|
90b570 |
BuildRequires: pkgconfig(libcrypto)
|
|
|
90b570 |
BuildRequires: pkgconfig(modulemd) >= %{libmodulemd_version}
|
|
|
90b570 |
BuildRequires: pkgconfig(smartcols)
|
|
|
90b570 |
BuildRequires: gettext
|
|
|
90b570 |
BuildRequires: gpgme-devel
|
|
|
90b570 |
|
|
|
90b570 |
Requires: libmodulemd%{?_isa} >= %{libmodulemd_version}
|
|
|
d57e47 |
Requires: libsolv%{?_isa} >= %{libsolv_version}
|
|
|
d57e47 |
|
|
|
d57e47 |
%description
|
|
|
d57e47 |
A Library providing simplified C and Python API to libsolv.
|
|
|
d57e47 |
|
|
|
d57e47 |
%package devel
|
|
|
d57e47 |
Summary: Development files for %{name}
|
|
|
d57e47 |
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
|
d57e47 |
Requires: libsolv-devel%{?_isa} >= %{libsolv_version}
|
|
|
d57e47 |
|
|
|
d57e47 |
%description devel
|
|
|
d57e47 |
Development files for %{name}.
|
|
|
d57e47 |
|
|
|
90b570 |
%if %{with python2}
|
|
|
90b570 |
%package -n python2-%{name}
|
|
|
90b570 |
%{?python_provide:%python_provide python2-%{name}}
|
|
|
90b570 |
Summary: Python 2 bindings for the libdnf library.
|
|
|
90b570 |
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
|
90b570 |
BuildRequires: python2-devel
|
|
|
90b570 |
%if 0%{?rhel} == 7
|
|
|
90b570 |
BuildRequires: python-sphinx
|
|
|
90b570 |
BuildRequires: swig3 >= %{swig_version}
|
|
|
90b570 |
%else
|
|
|
90b570 |
BuildRequires: python2-sphinx
|
|
|
90b570 |
BuildRequires: swig >= %{swig_version}
|
|
|
90b570 |
%endif
|
|
|
90b570 |
|
|
|
90b570 |
%description -n python2-%{name}
|
|
|
90b570 |
Python 2 bindings for the libdnf library.
|
|
|
90b570 |
%endif # with python2
|
|
|
90b570 |
|
|
|
90b570 |
%if %{with python3}
|
|
|
90b570 |
%package -n python3-%{name}
|
|
|
90b570 |
%{?python_provide:%python_provide python3-%{name}}
|
|
|
90b570 |
Summary: Python 3 bindings for the libdnf library.
|
|
|
90b570 |
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
|
90b570 |
BuildRequires: python3-devel
|
|
|
90b570 |
BuildRequires: python3-sphinx
|
|
|
90b570 |
BuildRequires: swig >= %{swig_version}
|
|
|
90b570 |
|
|
|
90b570 |
%description -n python3-%{name}
|
|
|
90b570 |
Python 3 bindings for the libdnf library.
|
|
|
90b570 |
%endif
|
|
|
90b570 |
|
|
|
90b570 |
%if %{with python2}
|
|
|
d57e47 |
%package -n python2-hawkey
|
|
|
d57e47 |
Summary: Python 2 bindings for the hawkey library
|
|
|
d57e47 |
%{?python_provide:%python_provide python2-hawkey}
|
|
|
d57e47 |
BuildRequires: python2-devel
|
|
|
d57e47 |
%if 0%{?rhel} && 0%{?rhel} <= 7
|
|
|
d57e47 |
BuildRequires: python-nose
|
|
|
d57e47 |
%else
|
|
|
d57e47 |
BuildRequires: python2-nose
|
|
|
d57e47 |
%endif
|
|
|
d57e47 |
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
|
90b570 |
Requires: python2-%{name} = %{version}-%{release}
|
|
|
d57e47 |
# Fix problem with hawkey - dnf version incompatibility
|
|
|
d57e47 |
# Can be deleted for distros where only python2-dnf >= 2.0.0
|
|
|
d57e47 |
Conflicts: python2-dnf < %{dnf_conflict}
|
|
|
d57e47 |
Conflicts: python-dnf < %{dnf_conflict}
|
|
|
d57e47 |
|
|
|
d57e47 |
%description -n python2-hawkey
|
|
|
d57e47 |
Python 2 bindings for the hawkey library.
|
|
|
90b570 |
%endif # with python2
|
|
|
d57e47 |
|
|
|
d57e47 |
%if %{with python3}
|
|
|
d57e47 |
%package -n python3-hawkey
|
|
|
d57e47 |
Summary: Python 3 bindings for the hawkey library
|
|
|
d57e47 |
%{?python_provide:%python_provide python3-hawkey}
|
|
|
d57e47 |
BuildRequires: python3-devel
|
|
|
d57e47 |
BuildRequires: python3-nose
|
|
|
d57e47 |
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
|
90b570 |
Requires: python3-%{name} = %{version}-%{release}
|
|
|
d57e47 |
# Fix problem with hawkey - dnf version incompatibility
|
|
|
d57e47 |
# Can be deleted for distros where only python3-dnf >= 2.0.0
|
|
|
d57e47 |
Conflicts: python3-dnf < %{dnf_conflict}
|
|
|
90b570 |
# Obsoletes F27 packages
|
|
|
d57e47 |
Obsoletes: platform-python-hawkey < %{version}-%{release}
|
|
|
d57e47 |
|
|
|
d57e47 |
%description -n python3-hawkey
|
|
|
d57e47 |
Python 3 bindings for the hawkey library.
|
|
|
d57e47 |
%endif
|
|
|
d57e47 |
|
|
|
d57e47 |
%prep
|
|
|
dd8687 |
%autosetup -p1
|
|
|
90b570 |
%if %{with python2}
|
|
|
d57e47 |
mkdir build-py2
|
|
|
90b570 |
%endif # with python2
|
|
|
d57e47 |
%if %{with python3}
|
|
|
d57e47 |
mkdir build-py3
|
|
|
d57e47 |
%endif
|
|
|
d57e47 |
|
|
|
d57e47 |
%build
|
|
|
90b570 |
%if %{with python2}
|
|
|
d57e47 |
pushd build-py2
|
|
|
90b570 |
%cmake -DPYTHON_DESIRED:FILEPATH=%{__python2} -DWITH_MAN=OFF ../ %{!?with_valgrind:-DDISABLE_VALGRIND=1} %{_cmake_opts}
|
|
|
d57e47 |
%make_build
|
|
|
d57e47 |
popd
|
|
|
90b570 |
%endif # with python2
|
|
|
d57e47 |
|
|
|
d57e47 |
%if %{with python3}
|
|
|
d57e47 |
pushd build-py3
|
|
|
90b570 |
%cmake -DPYTHON_DESIRED:FILEPATH=%{__python3} -DWITH_GIR=0 -DWITH_MAN=0 -Dgtkdoc=0 ../ %{!?with_valgrind:-DDISABLE_VALGRIND=1} %{_cmake_opts}
|
|
|
d57e47 |
%make_build
|
|
|
d57e47 |
popd
|
|
|
d57e47 |
%endif
|
|
|
d57e47 |
|
|
|
d57e47 |
%check
|
|
|
d57e47 |
if [ "$(id -u)" == "0" ] ; then
|
|
|
d57e47 |
cat <<ERROR 1>&2
|
|
|
d57e47 |
Package tests cannot be run under superuser account.
|
|
|
d57e47 |
Please build the package as non-root user.
|
|
|
d57e47 |
ERROR
|
|
|
d57e47 |
exit 1
|
|
|
d57e47 |
fi
|
|
|
90b570 |
|
|
|
90b570 |
%if %{with python2}
|
|
|
d57e47 |
pushd build-py2
|
|
|
d57e47 |
make ARGS="-V" test
|
|
|
d57e47 |
popd
|
|
|
90b570 |
%endif # with python2
|
|
|
d57e47 |
%if %{with python3}
|
|
|
d57e47 |
# Run just the Python tests, not all of them, since
|
|
|
d57e47 |
# we have coverage of the core from the first build
|
|
|
d57e47 |
pushd build-py3/python/hawkey/tests
|
|
|
d57e47 |
make ARGS="-V" test
|
|
|
d57e47 |
popd
|
|
|
d57e47 |
%endif
|
|
|
d57e47 |
|
|
|
d57e47 |
%install
|
|
|
90b570 |
%if %{with python2}
|
|
|
d57e47 |
pushd build-py2
|
|
|
d57e47 |
%make_install
|
|
|
d57e47 |
popd
|
|
|
90b570 |
%endif # with python2
|
|
|
d57e47 |
%if %{with python3}
|
|
|
d57e47 |
pushd build-py3
|
|
|
d57e47 |
%make_install
|
|
|
d57e47 |
popd
|
|
|
d57e47 |
%endif
|
|
|
d57e47 |
|
|
|
90b570 |
%find_lang %{name}
|
|
|
90b570 |
|
|
|
90b570 |
%if 0%{?rhel} && 0%{?rhel} <= 7
|
|
|
d57e47 |
%post -p /sbin/ldconfig
|
|
|
d57e47 |
%postun -p /sbin/ldconfig
|
|
|
90b570 |
%else
|
|
|
90b570 |
%ldconfig_scriptlets
|
|
|
90b570 |
%endif
|
|
|
d57e47 |
|
|
|
90b570 |
%files -f %{name}.lang
|
|
|
d57e47 |
%license COPYING
|
|
|
90b570 |
%doc README.md AUTHORS
|
|
|
d57e47 |
%{_libdir}/%{name}.so.*
|
|
|
90b570 |
%{_libdir}/libdnf/plugins/README
|
|
|
d57e47 |
|
|
|
d57e47 |
%files devel
|
|
|
d57e47 |
%doc %{_datadir}/gtk-doc/html/%{name}/
|
|
|
d57e47 |
%{_libdir}/%{name}.so
|
|
|
d57e47 |
%{_libdir}/pkgconfig/%{name}.pc
|
|
|
d57e47 |
%{_includedir}/%{name}/
|
|
|
d57e47 |
|
|
|
90b570 |
%if %{with python2}
|
|
|
90b570 |
%files -n python2-%{name}
|
|
|
90b570 |
%{python2_sitearch}/%{name}/
|
|
|
90b570 |
%endif # with python2
|
|
|
90b570 |
|
|
|
90b570 |
%if %{with python3}
|
|
|
90b570 |
%files -n python3-%{name}
|
|
|
90b570 |
%{python3_sitearch}/%{name}/
|
|
|
90b570 |
%endif
|
|
|
90b570 |
|
|
|
90b570 |
%if %{with python2}
|
|
|
d57e47 |
%files -n python2-hawkey
|
|
|
d57e47 |
%{python2_sitearch}/hawkey/
|
|
|
90b570 |
%endif # with python2
|
|
|
d57e47 |
|
|
|
d57e47 |
%if %{with python3}
|
|
|
d57e47 |
%files -n python3-hawkey
|
|
|
d57e47 |
%{python3_sitearch}/hawkey/
|
|
|
d57e47 |
%endif
|
|
|
d57e47 |
|
|
|
d57e47 |
%changelog
|
|
|
90b570 |
* Tue Jan 08 2019 Daniel Mach <dmach@redhat.com> - 0.22.5-1
|
|
|
90b570 |
- Update to 0.22.5
|
|
|
90b570 |
- queue_init_clone src argument const_cast for libsolv 0.6.34 compatibility
|
|
|
d57e47 |
|
|
|
90b570 |
* Wed Jun 13 2018 Marek Blaha <mblaha@redhat.com> - 0.11.1-1
|
|
|
90b570 |
- Update to 0.11.1
|
|
|
d57e47 |
|
|
|
90b570 |
* Fri May 18 2018 Daniel Mach <dmach@redhat.com> - 0.7.4-4
|
|
|
90b570 |
- Rebuild on additional architectures
|
|
|
d57e47 |
|
|
|
90b570 |
* Thu Mar 23 2017 Igor Gnatenko <ignatenko@redhat.com> - 0.7.4-3
|
|
|
90b570 |
- Backport patch to find releasever in RPMDB
|
|
|
d57e47 |
|
|
|
90b570 |
* Mon Feb 20 2017 Jan Silhan <jsilhan@redhat.com> - 0.7.4-2
|
|
|
90b570 |
- 0.7.4
|
|
|
d57e47 |
|
|
|
d57e47 |
* Fri Jan 06 2017 Igor Gnatenko <ignatenko@redhat.com> - 0.7.1-1
|
|
|
d57e47 |
- 0.7.1
|
|
|
d57e47 |
|
|
|
d57e47 |
* Wed Dec 21 2016 Peter Robinson <pbrobinson@fedoraproject.org> 0.7.0-0.7gitf9b798c
|
|
|
d57e47 |
- Rebuild for Python 3.6
|
|
|
d57e47 |
|
|
|
d57e47 |
* Mon Dec 19 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.7.0-0.6gitf9b798c
|
|
|
d57e47 |
- Use new upstream URL
|
|
|
d57e47 |
|
|
|
d57e47 |
* Tue Dec 13 2016 Stratakis Charalampos <cstratak@redhat.com> - 0.7.0-0.5gitf9b798c
|
|
|
d57e47 |
- Rebuild for Python 3.6
|
|
|
d57e47 |
|
|
|
d57e47 |
* Tue Dec 06 2016 Martin Hatina <mhatina@redhat.com> - 0.7.0-0.4gitf9b798c
|
|
|
d57e47 |
- Increase conflict version of dnf
|
|
|
d57e47 |
|
|
|
d57e47 |
* Thu Dec 01 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 0.7.0-0.3gitf9b798c
|
|
|
d57e47 |
- Update to latest snapshot
|
|
|
d57e47 |
|
|
|
d57e47 |
* Fri Nov 04 2016 Igor Gnatenko <ignatenko@redhat.com> - 0.7.0-0.2git8bd77f8
|
|
|
d57e47 |
- Update to latest snapshot
|
|
|
d57e47 |
|
|
|
d57e47 |
* Thu Sep 29 2016 Igor Gnatenko <ignatenko@redhat.com> - 0.7.0-0.1git179c0a6
|
|
|
d57e47 |
- Initial package
|