Blame SPECS/libvirt-python.spec

12421c
# -*- rpm-spec -*-
12421c
12421c
# This spec file assumes you are building on a Fedora or RHEL version
12421c
# that's still supported by the vendor. It may work on other distros
12421c
# or versions, but no effort will be made to ensure that going forward
12421c
%define min_rhel 6
12421c
%define min_fedora 25
12421c
12421c
%if (0%{?fedora} && 0%{?fedora} >= %{min_fedora}) || (0%{?rhel} && 0%{?rhel} >= %{min_rhel})
12421c
    %define supported_platform 1
12421c
%else
12421c
    %define supported_platform 0
12421c
%endif
12421c
12421c
%define _with_python2 1
12421c
%if 0%{?fedora} > 29 || 0%{?rhel} > 7
12421c
%define _with_python2 0
12421c
%endif
12421c
12421c
%define _with_python3 0
12421c
%if 0%{?fedora} || 0%{?rhel} > 7
12421c
%define _with_python3 1
12421c
%endif
12421c
12421c
# Whether py2 packages are assumed to have python2- name prefix
12421c
%define py2_versioned_deps 0
12421c
%if 0%{?fedora} || 0%{?rhel} > 7
12421c
%define py2_versioned_deps 1
12421c
%endif
12421c
12421c
%{!?with_python2: %define with_python2 %{_with_python2}}
12421c
%{!?with_python3: %define with_python3 %{_with_python3}}
12421c
12421c
Summary: The libvirt virtualization API python2 binding
12421c
Name: libvirt-python
12421c
Version: 4.5.0
12421c
Release: 1%{?dist}%{?extra_release}
12421c
Source0: http://libvirt.org/sources/python/%{name}-%{version}.tar.gz
12421c
Url: http://libvirt.org
12421c
License: LGPLv2+
12421c
Group: Development/Libraries
12421c
BuildRequires: git
12421c
BuildRequires: libvirt-devel >= 4.5.0-1%{?dist}
12421c
%if %{with_python2}
12421c
%if %{py2_versioned_deps}
12421c
BuildRequires: python2-devel
12421c
BuildRequires: python2-nose
12421c
BuildRequires: python2-lxml
12421c
%else
12421c
BuildRequires: python-devel
12421c
BuildRequires: python-nose
12421c
BuildRequires: python-lxml
12421c
%endif
12421c
%endif
12421c
%if %{with_python3}
12421c
BuildRequires: python3-devel
12421c
BuildRequires: python3-nose
12421c
BuildRequires: python3-lxml
12421c
%endif
12421c
12421c
# Don't want provides for python shared objects
12421c
%if %{with_python2}
12421c
%{?filter_provides_in: %filter_provides_in %{python_sitearch}/.*\.so}
12421c
%endif
12421c
%if %{with_python3}
12421c
%{?filter_provides_in: %filter_provides_in %{python3_sitearch}/.*\.so}
12421c
%endif
12421c
%{?filter_setup}
12421c
12421c
%description
12421c
The libvirt-python package contains a module that permits applications
12421c
written in the Python programming language to use the interface
12421c
supplied by the libvirt library to use the virtualization capabilities
12421c
of recent versions of Linux (and other OSes).
12421c
12421c
%if %{with_python2}
12421c
%package -n python2-libvirt
12421c
Summary: The libvirt virtualization API python2 binding
12421c
Url: http://libvirt.org
12421c
License: LGPLv2+
12421c
Group: Development/Libraries
12421c
%{?python_provide:%python_provide python2-libvirt}
12421c
Provides: libvirt-python = %{version}-%{release}
12421c
Obsoletes: libvirt-python <= 3.6.0-1%{?dist}
12421c
12421c
%description -n python2-libvirt
12421c
The python2-libvirt package contains a module that permits applications
12421c
written in the Python programming language to use the interface
12421c
supplied by the libvirt library to use the virtualization capabilities
12421c
of recent versions of Linux (and other OSes).
12421c
%endif
12421c
12421c
%if %{with_python3}
12421c
%package -n python3-libvirt
12421c
Summary: The libvirt virtualization API python3 binding
12421c
Url: http://libvirt.org
12421c
License: LGPLv2+
12421c
Group: Development/Libraries
12421c
%{?python_provide:%python_provide python3-libvirt}
12421c
Provides: libvirt-python3 = %{version}-%{release}
12421c
Obsoletes: libvirt-python3 <= 3.6.0-1%{?dist}
12421c
12421c
%description -n python3-libvirt
12421c
The python3-libvirt package contains a module that permits applications
12421c
written in the Python programming language to use the interface
12421c
supplied by the libvirt library to use the virtualization capabilities
12421c
of recent versions of Linux (and other OSes).
12421c
%endif
12421c
12421c
%prep
12421c
%setup -q
12421c
12421c
# Unset execute bit for example scripts; it can introduce spurious
12421c
# RPM dependencies, like /usr/bin/python which can pull in python2
12421c
# for the -python3 package
12421c
find examples -type f -exec chmod 0644 \{\} \;
12421c
12421c
%build
12421c
%if ! %{supported_platform}
12421c
echo "This RPM requires either Fedora >= %{min_fedora} or RHEL >= %{min_rhel}"
12421c
exit 1
12421c
%endif
12421c
12421c
%if %{with_python2}
12421c
CFLAGS="$RPM_OPT_FLAGS" %{__python} setup.py build
12421c
%endif
12421c
%if %{with_python3}
12421c
CFLAGS="$RPM_OPT_FLAGS" %{__python3} setup.py build
12421c
%endif
12421c
12421c
%install
12421c
%if %{with_python2}
12421c
%{__python} setup.py install --skip-build --root=%{buildroot}
12421c
%endif
12421c
%if %{with_python3}
12421c
%{__python3} setup.py install --skip-build --root=%{buildroot}
12421c
%endif
12421c
12421c
%check
12421c
%if %{with_python2}
12421c
%{__python} setup.py test
12421c
%endif
12421c
%if %{with_python3}
12421c
%{__python3} setup.py test
12421c
%endif
12421c
12421c
%if %{with_python2}
12421c
%files -n python2-libvirt
12421c
%defattr(-,root,root)
12421c
%doc ChangeLog AUTHORS NEWS README COPYING COPYING.LESSER examples/
12421c
%{python_sitearch}/libvirt.py*
12421c
%{python_sitearch}/libvirt_qemu.py*
12421c
%{python_sitearch}/libvirt_lxc.py*
12421c
%{python_sitearch}/libvirtmod*
12421c
%{python_sitearch}/*egg-info
12421c
%endif
12421c
12421c
%if %{with_python3}
12421c
%files -n python3-libvirt
12421c
%defattr(-,root,root)
12421c
%doc ChangeLog AUTHORS NEWS README COPYING COPYING.LESSER examples/
12421c
%{python3_sitearch}/libvirt.py*
12421c
%{python3_sitearch}/libvirtaio.py*
12421c
%{python3_sitearch}/libvirt_qemu.py*
12421c
%{python3_sitearch}/libvirt_lxc.py*
12421c
%{python3_sitearch}/__pycache__/libvirt.cpython-*.py*
12421c
%{python3_sitearch}/__pycache__/libvirt_qemu.cpython-*.py*
12421c
%{python3_sitearch}/__pycache__/libvirt_lxc.cpython-*.py*
12421c
%{python3_sitearch}/__pycache__/libvirtaio.cpython-*.py*
12421c
%{python3_sitearch}/libvirtmod*
12421c
%{python3_sitearch}/*egg-info
12421c
%endif
12421c
12421c
%changelog
12421c
* Tue Jul  3 2018 Jiri Denemark <jdenemar@redhat.com> - 4.5.0-1
12421c
- Rebased to libvirt-python-4.5.0
12421c
12421c
* Fri May 25 2018 Jiri Denemark <jdenemar@redhat.com> - 4.3.0-1
12421c
- Rebased to libvirt-python-4.3.0
12421c
12421c
* Mon Mar  5 2018 Daniel P. Berrange <berrange@redhat.com> - 4.1.0-1
12421c
- Update to 4.1.0 release
12421c
12421c
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.0-2
12421c
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
12421c
12421c
* Fri Jan 19 2018 Daniel P. Berrange <berrange@redhat.com> - 4.0.0-1
12421c
- Update to 4.0.0 release
12421c
12421c
* Tue Dec  5 2017 Daniel P. Berrange <berrange@redhat.com> - 3.10.0-1
12421c
- Update to 3.10.0 release
12421c
12421c
* Fri Nov  3 2017 Daniel P. Berrange <berrange@redhat.com> - 3.9.0-1
12421c
- Update to 3.9.0 release
12421c
12421c
* Wed Oct  4 2017 Daniel P. Berrange <berrange@redhat.com> - 3.8.0-1
12421c
- Update to 3.8.0 release
12421c
12421c
* Mon Sep  4 2017 Daniel P. Berrange <berrange@redhat.com> - 3.7.0-1
12421c
- Update to 3.7.0 release
12421c
12421c
* Fri Aug 11 2017 Daniel P. Berrange <berrange@redhat.com> - 3.6.0-2
12421c
- Rename sub-RPMs to python2-libvirt & python3-libvirt
12421c
- Re-add py3 conditionals for benefit of RHEL/CentOS builds
12421c
12421c
* Thu Aug 10 2017 Daniel P. Berrange <berrange@redhat.com> - 3.6.0-1
12421c
- Update to 3.6.0 release
12421c
- Always build py3 package
12421c
12421c
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.5.0-4
12421c
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
12421c
12421c
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.5.0-3
12421c
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
12421c
12421c
* Fri Jul 07 2017 Igor Gnatenko <ignatenko@redhat.com> - 3.5.0-2
12421c
- Rebuild due to bug in RPM (RHBZ #1468476)
12421c
12421c
* Thu Jul  6 2017 Daniel P. Berrange <berrange@redhat.com> - 3.5.0-1
12421c
- Update to 3.5.0 release
12421c
12421c
* Mon Jun  5 2017 Daniel P. Berrange <berrange@redhat.com> - 3.4.0-1
12421c
- Update to 3.4.0 release
12421c
12421c
* Mon May  8 2017 Daniel P. Berrange <berrange@redhat.com> - 3.3.0-1
12421c
- Update to 3.3.0 release
12421c
12421c
* Mon Apr  3 2017 Daniel P. Berrange <berrange@redhat.com> - 3.2.0-1
12421c
- Update to 3.2.0 release
12421c
12421c
* Fri Mar  3 2017 Daniel P. Berrange <berrange@redhat.com> - 3.1.0-1
12421c
- Update to 3.1.0 release
12421c
12421c
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.0-2
12421c
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
12421c
12421c
* Thu Jan 19 2017 Daniel P. Berrange <berrange@redhat.com> - 3.0.0-1
12421c
- Update to 3.0.0 release