commit 02af488dfdb40021042964ecf110d846434773c7
Author: Jacek Konieczny <[email protected]>
Date:   Wed Oct 30 09:05:25 2013 +0100

    Python 3 support added

 python-pysnmp.spec | 87 ++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 82 insertions(+), 5 deletions(-)
---
diff --git a/python-pysnmp.spec b/python-pysnmp.spec
index cac2e6f..b22a06d 100644
--- a/python-pysnmp.spec
+++ b/python-pysnmp.spec
@@ -1,5 +1,7 @@
 #
 %define                module  pysnmp
+%bcond_without python2 # CPython 2.x module
+%bcond_without python3 # CPython 3.x module
 #
 Summary:       SNMP engine for Python
 Summary(pl.UTF-8):     Obsługa SNMP dla Pythona
@@ -11,7 +13,16 @@ Group:               Libraries/Python
 Source0:       http://downloads.sourceforge.net/pysnmp/pysnmp-%{version}.tar.gz
 # Source0-md5: 1f75d3e392a050e84348904fc1be3212
 URL:           http://pysnmp.sourceforge.net/
+%if %{with python2}
 BuildRequires: python >= 1:2.5
+BuildRequires: python-distribute
+BuildRequires: python-modules
+%endif
+%if %{with python3}
+BuildRequires: python3 >= 1:2.3
+BuildRequires: python3-distribute
+BuildRequires: python3-modules
+%endif
 BuildRequires: rpm-pythonprov
 %pyrequires_eq python-modules
 Requires:      python-Crypto
@@ -30,11 +41,26 @@ protokołu SNMP. Zawiera procedury służące do zarządzania 
obiektami MIB
 (Management Information Base), opisanych przez normy SMI (Structure of
 Management Information) v1 i v2.
 
+%package -n python3-%{module}
+Summary:       SNMP engine for Python
+Summary(pl.UTF-8):     Obsługa SNMP dla Pythona
+Group:         Libraries/Python
+
+%description -n python3-%{module}
+This is a set of tools required by the Structure of Management
+Information (SMI v.1 & v.2) to be used in Python programming
+environment. Primarily, they are SNMP engine and MIB compiler.
+
+%description -n python3-%{module} -l pl.UTF-8
+Zestaw narzędzi pozwalających pisać w Pythonie programy korzystające z
+protokołu SNMP. Zawiera procedury służące do zarządzania obiektami MIB
+(Management Information Base), opisanych przez normy SMI (Structure of
+Management Information) v1 i v2.
+
 %package doc
 Summary:       Documentation for Python pysnmp module
 Summary(pl.UTF-8):     Dokumentacja do modułu Pythona pysnmp
 Group:         Libraries/Python
-Requires:      %{name} = %{version}-%{release}
 
 %description doc
 This package contains documentation files for Python pysnmp module.
@@ -54,39 +80,90 @@ This package contains example programs for Python pysnmp 
module.
 %description examples -l pl.UTF-8
 Ten pakiet zawiera przykładowe programy do modułu Pythona pysnmp.
 
+%package -n python3-%{module}-examples
+Summary:       Example programs for Python pysnmp module
+Summary(pl.UTF-8):     Programy przykładowe do modułu Pythona pysnmp
+Group:         Libraries/Python
+Requires:      python3-%{module} = %{version}-%{release}
+
+%description -n python3-%{module}-examples
+This package contains example programs for Python pysnmp module.
+
+%description -n python3-%{module}-examples -l pl.UTF-8
+Ten pakiet zawiera przykładowe programy do modułu Pythona pysnmp.
+
 %prep
 %setup -q -n %{module}-%{version}
 
 %build
-%{__python} setup.py build
+%if %{with python2}
+%{__python} setup.py build --build-base build-2
+%endif
+
+%if %{with python3}
+%{__python3} setup.py build --build-base build-3 %{?with_tests:test}
+%endif
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_bindir},%{_examplesdir}/%{name}-%{version}}
+install -d $RPM_BUILD_ROOT{%{_bindir},%{_examplesdir}}
 
-%{__python} setup.py install \
+%if %{with python2}
+%{__python} setup.py \
+       build --build-base build-2 \
+       install --skip-build \
        --optimize=2 \
        --root=$RPM_BUILD_ROOT
 
 find $RPM_BUILD_ROOT%{py_sitescriptdir} -type f -name "*.py" '!' -path 
'*/v4/smi/mibs/*' | xargs rm
 
-cp -a examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
+cp -a examples $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
+%endif
+
+%if %{with python3}
+%{__python3} setup.py \
+       build --build-base build-3 \
+       install --skip-build \
+       --optimize=2 \
+       --root=$RPM_BUILD_ROOT
+
+cp -a examples $RPM_BUILD_ROOT%{_examplesdir}/python3-%{module}-%{version}
+%endif
+
 install tools/libsmi2pysnmp $RPM_BUILD_ROOT%{_bindir}
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
+%if %{with python2}
 %files
 %defattr(644,root,root,755)
 %doc README CHANGES TODO docs/mibs/*
 %attr(755,root,root) %{_bindir}/*
 %{py_sitescriptdir}/%{module}
 %{py_sitescriptdir}/pysnmp-*.egg-info
+%endif
+
+%if %{with python3}
+%files -n python3-%{module}
+%defattr(644,root,root,755)
+%doc README CHANGES TODO docs/mibs/*
+%{py3_sitescriptdir}/%{module}
+%{py3_sitescriptdir}/pysnmp-*.egg-info
+%endif
 
 %files doc
 %defattr(644,root,root,755)
 %doc docs/*
 
+%if %{with python2}
 %files examples
 %defattr(644,root,root,755)
 %{_examplesdir}/%{name}-%{version}
+%endif
+
+%if %{with python3}
+%files -n python3-%{module}-examples
+%defattr(644,root,root,755)
+%{_examplesdir}/python3-%{module}-%{version}
+%endif
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/python-pysnmp.git/commitdiff/02af488dfdb40021042964ecf110d846434773c7

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to