From: "Daniel P. Berrange" <berrange@xxxxxxxxxx> This updates autobuild.sh to test the python3 build process. The RPM specfile is changed to build a libvirt-python3 RPM on Fedora > 18 Signed-off-by: Daniel P. Berrange <berrange@xxxxxxxxxx> --- autobuild.sh | 14 +++++++++---- libvirt-python.spec.in | 53 +++++++++++++++++++++++++++++++++++++++++++++----- 2 files changed, 58 insertions(+), 9 deletions(-) diff --git a/autobuild.sh b/autobuild.sh index b3beaf1..5dffe96 100755 --- a/autobuild.sh +++ b/autobuild.sh @@ -7,11 +7,17 @@ set -ve rm -rf MANIFEST dist build -python setup.py sdist +python2 setup.py sdist -python setup.py build -python setup.py test -python setup.py install --root="$AUTOBUILD_INSTALL_ROOT" +python2 setup.py build +python2 setup.py test +python2 setup.py install --root="$AUTOBUILD_INSTALL_ROOT" + +if test -f /usr/bin/python3 ; then + python3 setup.py build + python3 setup.py test + python3 setup.py install --root="$AUTOBUILD_INSTALL_ROOT" +fi type -p /usr/bin/rpmbuild > /dev/null 2>&1 || exit 0 diff --git a/libvirt-python.spec.in b/libvirt-python.spec.in index 7c6257e..ac399cb 100644 --- a/libvirt-python.spec.in +++ b/libvirt-python.spec.in @@ -1,5 +1,10 @@ -Summary: The libvirt virtualization API python binding +%define with_python3 0 +%if 0%{?fedora} > 18 +%define with_python3 1 +%endif + +Summary: The libvirt virtualization API python2 binding Name: libvirt-python Version: @PY_VERSION@ Release: 1%{?dist}%{?extra_release} @@ -9,6 +14,17 @@ License: LGPLv2+ Group: Development/Libraries BuildRequires: libvirt-devel >= @C_VERSION@ BuildRequires: python-devel +%if %{with_python3} +BuildRequires: python3-devel +%endif + +%if %{with_python3} +%package -n libvirt-python3 +Summary: The libvirt virtualization API python3 binding +Url: http://libvirt.org +License: LGPLv2+ +Group: Development/Libraries +%endif # Don't want provides for python shared objects %{?filter_provides_in: %filter_provides_in %{python_sitearch}/.*\.so} @@ -20,22 +36,49 @@ written in the Python programming language to use the interface supplied by the libvirt library to use the virtualization capabilities of recent versions of Linux (and other OSes). +%if %{with_python3} +%description -n libvirt-python3 +The libvirt-python package contains a module that permits applications +written in the Python programming language to use the interface +supplied by the libvirt library to use the virtualization capabilities +of recent versions of Linux (and other OSes). +%endif + %prep %setup -q %build CFLAGS="$RPM_OPT_FLAGS" %{__python} setup.py build +%if %{with_python3} +CFLAGS="$RPM_OPT_FLAGS" %{__python3} setup.py build +%endif %install %{__python} setup.py install --skip-build --root=%{buildroot} +%if %{with_python3} +%{__python3} setup.py install --skip-build --root=%{buildroot} +%endif rm -f %{buildroot}%{_libdir}/python*/site-packages/*egg-info %files %defattr(-,root,root) %doc ChangeLog AUTHORS NEWS README COPYING COPYING.LESSER examples/ -%{_libdir}/python*/site-packages/libvirt.py* -%{_libdir}/python*/site-packages/libvirt_qemu.py* -%{_libdir}/python*/site-packages/libvirt_lxc.py* -%{_libdir}/python*/site-packages/libvirtmod* +%{_libdir}/python2*/site-packages/libvirt.py* +%{_libdir}/python2*/site-packages/libvirt_qemu.py* +%{_libdir}/python2*/site-packages/libvirt_lxc.py* +%{_libdir}/python2*/site-packages/libvirtmod* + +%if %{with_python3} +%files -n libvirt-python3 +%defattr(-,root,root) +%doc ChangeLog AUTHORS NEWS README COPYING COPYING.LESSER examples/ +%{_libdir}/python3*/site-packages/libvirt.py* +%{_libdir}/python3*/site-packages/libvirt_qemu.py* +%{_libdir}/python3*/site-packages/libvirt_lxc.py* +%{_libdir}/python3*/site-packages/__pycache__/libvirt.cpython-*.py* +%{_libdir}/python3*/site-packages/__pycache__/libvirt_qemu.cpython-*.py* +%{_libdir}/python3*/site-packages/__pycache__/libvirt_lxc.cpython-*.py* +%{_libdir}/python3*/site-packages/libvirtmod* +%endif %changelog -- 1.8.3.1 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list