[packages/python-ply] - up to 3.8; add python3 module

arekm arekm at pld-linux.org
Fri Jul 29 11:20:09 CEST 2016


commit d10e53f5993426659da4b38eb9f4f5f49f53e5ec
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date:   Fri Jul 29 11:19:59 2016 +0200

    - up to 3.8; add python3 module

 python-ply.spec | 83 +++++++++++++++++++++++++++++++++++++++++++++++++++------
 1 file changed, 75 insertions(+), 8 deletions(-)
---
diff --git a/python-ply.spec b/python-ply.spec
index a596369..9bd9e34 100644
--- a/python-ply.spec
+++ b/python-ply.spec
@@ -1,17 +1,27 @@
+# Conditional build:
+%bcond_without  tests   # do not perform "make test"
+%bcond_without  python2 # CPython 2.x module
+%bcond_without  python3 # CPython 3.x module
+#
 %define		module	ply
 Summary:	Python Lex-Yacc
 Summary(pl.UTF-8):	lex i yacc dla Pythona
 Name:		python-%{module}
-Version:	3.4
-Release:	4
+Version:	3.8
+Release:	1
 License:	BSD
 Group:		Libraries/Python
 Source0:	http://www.dabeaz.com/ply/ply-%{version}.tar.gz
-# Source0-md5:	ffdc95858819347bf92d7c2acc074894
+# Source0-md5:	94726411496c52c87c2b9429b12d5c50
 URL:		http://www.dabeaz.com/ply/
 BuildRequires:	rpmbuild(macros) >= 1.710
+%if %{with python3}
 BuildRequires:	python >= 2.2.1
-%pyrequires_eq	python
+Requires:	python
+%endif
+%if %{with python3}
+BuildRequires:	python3
+%endif
 Obsoletes:	%{module}
 BuildArch:	noarch
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
@@ -40,6 +50,36 @@ powodów, dla których można zainteresować się PLY:
 - Jest niezwykle łatwy w użyciu oraz zapewnia rozległą kontrolę
   błędów.
 
+%package -n python3-%{module}
+Summary:	Python Lex-Yacc
+Summary(pl.UTF-8):	lex i yacc dla Pythona
+Group:		Libraries/Python
+Requires:	python3-modules
+
+%description -n python3-%{module}
+PLY is yet another implementation of lex and yacc for Python. Although
+several other parsing tools are available for Python, there are
+several reasons why you might want to take a look at PLY:
+- It uses LR-parsing which is reasonably efficient and well suited for
+  larger grammars.
+- PLY provides most of the standard lex/yacc features including
+  support for empty productions, precedence rules, error recovery, and
+  support for ambiguous grammars.
+- PLY is extremely easy to use and provides very extensive error
+  checking.
+
+%description -n python3-%{module} -l pl.UTF-8
+PLY to kolejna implementacja narzędzi lex i yacc dla Pythona. Mimo iż
+istnieje kilka innych analizatorów dla Pythona, to istnieje kilka
+powodów, dla których można zainteresować się PLY:
+- Używa on analizy LR, która jest w miarę wydajna i dość dobra dla
+  większych gramatyk.
+- Udostępnia większość możliwości standardowych lex/yacc, w tym
+  obsługę pustych produkcji, reguł poprzedzania, rekompensowania błędów
+  oraz obsługę niejednoznacznych gramatyk.
+- Jest niezwykle łatwy w użyciu oraz zapewnia rozległą kontrolę
+  błędów.
+
 %package examples
 Summary:	Python Lex-Yacc - examples
 Summary(pl.UTF-8):	lex i yacc dla Pythona - przykłady
@@ -54,29 +94,56 @@ lex i yacc dla Pythona - przykłady.
 %prep
 %setup -q -n %{module}-%{version}
 
+%if %{with python2}
+%py_build %{?with_tests:test}
+%endif
+
+%if %{with python3}
+%py3_build %{?with_tests:test}
+%endif
+
 %install
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
 
-%py_install \
-	 --root $RPM_BUILD_ROOT \
-	 --optimize=2
+%if %{with python2}
+%py_install
+%py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
+%py_comp $RPM_BUILD_ROOT%{py_sitedir}
+
 %py_postclean
+%endif
+
+%if %{with python3}
+%py3_install
+%endif
 
 cp -Rf example/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
+%if %{with python2}
 %files
 %defattr(644,root,root,755)
-%doc ANNOUNCE CHANGES README TODO doc/*.html
+%doc ANNOUNCE CHANGES README.md TODO doc/*.html
 %dir %{py_sitescriptdir}/ply
 %{py_sitescriptdir}/ply/*.py[co]
 %if "%{py_ver}" >= "2.5"
 %{py_sitescriptdir}/ply-%{version}-py*.egg-info
 %endif
+%endif
+
+%if %{with python3}
+%files -n python3-%{module}
+%defattr(644,root,root,755)
+%doc ANNOUNCE CHANGES README.md TODO doc/*.html
+%{py3_sitescriptdir}/%{module}
+%{py3_sitescriptdir}/%{module}-%{version}-py*.egg-info
+%endif
 
 %files examples
 %defattr(644,root,root,755)
 %{_examplesdir}/%{name}-%{version}
+
+
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/python-ply.git/commitdiff/d10e53f5993426659da4b38eb9f4f5f49f53e5ec



More information about the pld-cvs-commit mailing list