diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-lrparsing.spec | 132 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 134 insertions, 0 deletions
@@ -0,0 +1 @@ +/lrparsing-1.0.13.tar.gz diff --git a/python-lrparsing.spec b/python-lrparsing.spec new file mode 100644 index 0000000..f1271dc --- /dev/null +++ b/python-lrparsing.spec @@ -0,0 +1,132 @@ +%global _empty_manifest_terminate_build 0 +Name: python-lrparsing +Version: 1.0.13 +Release: 1 +Summary: An LR(1) parser hiding behind a pythonic interface +License: GNU Affero General Public License v3 or later (AGPLv3+) +URL: http://lrparsing.sourceforge.net/ +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/e8/70/a588cc2f662899e577331d38ce835656668d41d1539866f1ffe374e6d0e2/lrparsing-1.0.13.tar.gz +BuildArch: noarch + + +%description + +Lrparsing provides both an LR(1) parser and a +tokeniser. It differs from other Python LR(1) parsers in +using Python expressions as grammars, and offers simple to use +disambiguation tools. + +The result is something that is powerful yet concise. For simple +tasks this means it can be thought of as an extension to Python's +existing re module, used when regular expressions become +too cumbersome. For complex tasks lrparsing offers a high speed +parser (very roughly 25us per token from string to parse tree +on a desktop CPU), pre-compilation of the grammar and error recovery +hooks so parsing can continue after an error is found. + +In addition to extensive documentation it comes with a parser for +Sqlite3 data manipulation statements and a Lua 5.2 to Python +compiler as examples. The documentation can be read online at +http://lrparsing.sourceforge.net/doc/html/. + + + + +%package -n python3-lrparsing +Summary: An LR(1) parser hiding behind a pythonic interface +Provides: python-lrparsing +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-lrparsing + +Lrparsing provides both an LR(1) parser and a +tokeniser. It differs from other Python LR(1) parsers in +using Python expressions as grammars, and offers simple to use +disambiguation tools. + +The result is something that is powerful yet concise. For simple +tasks this means it can be thought of as an extension to Python's +existing re module, used when regular expressions become +too cumbersome. For complex tasks lrparsing offers a high speed +parser (very roughly 25us per token from string to parse tree +on a desktop CPU), pre-compilation of the grammar and error recovery +hooks so parsing can continue after an error is found. + +In addition to extensive documentation it comes with a parser for +Sqlite3 data manipulation statements and a Lua 5.2 to Python +compiler as examples. The documentation can be read online at +http://lrparsing.sourceforge.net/doc/html/. + + + + +%package help +Summary: Development documents and examples for lrparsing +Provides: python3-lrparsing-doc +%description help + +Lrparsing provides both an LR(1) parser and a +tokeniser. It differs from other Python LR(1) parsers in +using Python expressions as grammars, and offers simple to use +disambiguation tools. + +The result is something that is powerful yet concise. For simple +tasks this means it can be thought of as an extension to Python's +existing re module, used when regular expressions become +too cumbersome. For complex tasks lrparsing offers a high speed +parser (very roughly 25us per token from string to parse tree +on a desktop CPU), pre-compilation of the grammar and error recovery +hooks so parsing can continue after an error is found. + +In addition to extensive documentation it comes with a parser for +Sqlite3 data manipulation statements and a Lua 5.2 to Python +compiler as examples. The documentation can be read online at +http://lrparsing.sourceforge.net/doc/html/. + + + + +%prep +%autosetup -n lrparsing-1.0.13 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-lrparsing -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Thu Mar 09 2023 Python_Bot <Python_Bot@openeuler.org> - 1.0.13-1 +- Package Spec generated @@ -0,0 +1 @@ +f8c95cb2a16586333fc7a1f8e8b37e31 lrparsing-1.0.13.tar.gz |