From: "Daniel P. Berrange" <berrange(a)redhat.com>
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(a)redhat.com>
---
autobuild.sh | 6 ++++++
libvirt-python.spec.in | 57 +++++++++++++++++++++++++++++++++++++++++++-------
2 files changed, 56 insertions(+), 7 deletions(-)
diff --git a/autobuild.sh b/autobuild.sh
index b3beaf1..c7d2661 100755
--- a/autobuild.sh
+++ b/autobuild.sh
@@ -13,6 +13,12 @@ python setup.py build
python setup.py test
python 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
if [ -n "$AUTOBUILD_COUNTER" ]; then
diff --git a/libvirt-python.spec.in b/libvirt-python.spec.in
index 7c6257e..c61febc 100644
--- a/libvirt-python.spec.in
+++ b/libvirt-python.spec.in
@@ -1,5 +1,10 @@
-Summary: The libvirt virtualization API python binding
+%global with_python3 0
+%if 0%{?fedora} > 18
+%global 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
+CFLAGS="$RPM_OPT_FLAGS" %{__python2} setup.py build
+%if %{with_python3}
+CFLAGS="$RPM_OPT_FLAGS" %{__python3} setup.py build
+%endif
%install
-%{__python} setup.py install --skip-build --root=%{buildroot}
+%{__python2} 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