summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTupone Alfredo <tupone@gentoo.org>2017-12-14 21:53:02 +0100
committerTupone Alfredo <tupone@gentoo.org>2017-12-14 21:53:51 +0100
commit60324f1ab1eac2a18f7af728cdccefea8f0331ad (patch)
tree1b9098399a8f938d17c090da3a8be0c677498deb /dev-python/quex
parentdev-libs/libgcrypt: New upstream version 1.8.2 (diff)
downloadgentoo-60324f1ab1eac2a18f7af728cdccefea8f0331ad.tar.gz
gentoo-60324f1ab1eac2a18f7af728cdccefea8f0331ad.tar.bz2
gentoo-60324f1ab1eac2a18f7af728cdccefea8f0331ad.zip
dev-python/quex: Adding quex - Lexican Analyzer Generator
Package-Manager: Portage-2.3.13, Repoman-2.3.3
Diffstat (limited to 'dev-python/quex')
-rw-r--r--dev-python/quex/Manifest1
-rw-r--r--dev-python/quex/files/quex-0.65.4-gentoo.patch43
-rw-r--r--dev-python/quex/metadata.xml24
-rw-r--r--dev-python/quex/quex-0.65.4.ebuild44
4 files changed, 112 insertions, 0 deletions
diff --git a/dev-python/quex/Manifest b/dev-python/quex/Manifest
new file mode 100644
index 000000000000..28b6c4074ede
--- /dev/null
+++ b/dev-python/quex/Manifest
@@ -0,0 +1 @@
+DIST quex-0.65.4.tar.gz 2202154 BLAKE2B 6b273998c9641aeee458291245a4fb956b5fe9b66d8c42f0c1d9b360a4d171c830a1d487bcbab9ccea49d10b7532ed488ce66dc165f31cce9521f97c5a4575f4 SHA512 0b11d7e5c5165674626fbbe7f54853656c579c63b78bd2fef2f5a9b316171dc647812d9a37df4e7c49c05de11a307b6425089f4ab281affb6c03a9cf09e2a035
diff --git a/dev-python/quex/files/quex-0.65.4-gentoo.patch b/dev-python/quex/files/quex-0.65.4-gentoo.patch
new file mode 100644
index 000000000000..cbe161a18e11
--- /dev/null
+++ b/dev-python/quex/files/quex-0.65.4-gentoo.patch
@@ -0,0 +1,43 @@
+--- quex-0.65.4/quex-exe.py.old 2017-12-13 21:42:48.633280478 +0100
++++ quex-0.65.4/quex-exe.py 2017-12-13 21:43:02.066040530 +0100
+@@ -40,11 +40,6 @@
+ print("error: Please, use Python versions 2.x.")
+ sys.exit(-1)
+
+-if os.environ.has_key("QUEX_PATH") == False:
+- print("Environment variable QUEX_PATH has not been defined.")
+-else:
+- sys.path.insert(0, os.environ["QUEX_PATH"])
+-
+ try:
+ exception_checker.do_on_import(sys.argv)
+ import quex.DEFINITIONS
+--- quex-0.65.4/quex/DEFINITIONS.py.old 2017-12-13 21:48:52.887765325 +0100
++++ quex-0.65.4/quex/DEFINITIONS.py 2017-12-13 21:52:29.805877359 +0100
+@@ -23,7 +23,7 @@
+ QUEX_VERSION = '0.65.4'
+
+ try:
+- QUEX_INSTALLATION_DIR = os.environ["QUEX_PATH"]
++ QUEX_INSTALLATION_DIR = "@PYTHON_SITEDIR@"
+ # Note, that windows can also deal with backslashes.
+ QUEX_INSTALLATION_DIR = QUEX_INSTALLATION_DIR.replace("\\", "/")
+ except:
+@@ -49,15 +49,14 @@
+ sys.exit(-1) # sys.exit(-1) is acceptable
+
+ QUEX_PATH = QUEX_INSTALLATION_DIR
+-QUEX_CODEC_DB_PATH = QUEX_PATH + "/quex/engine/codec_db/database"
++QUEX_CODEC_DB_PATH = "/usr/share/quex/database"
+
+-sys.path.insert(0, QUEX_INSTALLATION_DIR)
+
+ def check():
+ global QUEX_INSTALLATION_DIR
+
+ # -- Try to acces the file 'quex-exe.py' in order to verify
+- if os.access(QUEX_INSTALLATION_DIR + "/quex-exe.py", os.F_OK) == False:
++ if False:
+ print "error: Environment variable 'QUEX_PATH' does not point to"
+ print "error: a valid installation directory of quex."
+ print "error: current setting of 'QUEX_PATH':"
diff --git a/dev-python/quex/metadata.xml b/dev-python/quex/metadata.xml
new file mode 100644
index 000000000000..7500e5f0c488
--- /dev/null
+++ b/dev-python/quex/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>python@gentoo.org</email>
+ </maintainer>
+ <maintainer type="person">
+ <email>tupone@gentoo.org</email>
+ <name>Tupone Alfredo</name>
+ </maintainer>
+ <longdescription lang="en">
+ It is:
+ a tool to generate lexical analyzers. A lexical analyzer is a program
+ that transforms a stream of characters into a stream of
+ 'atomic chunks of meaning', so called tokens.
+
+ It does:
+ generate directly coded lexical analyzers, rather than table based
+ engines.
+ respond to queries on Unicode properties and regular expressions on the
+ command line.
+ generate state transition graphs of the generated engines.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-python/quex/quex-0.65.4.ebuild b/dev-python/quex/quex-0.65.4.ebuild
new file mode 100644
index 000000000000..0bf833a64191
--- /dev/null
+++ b/dev-python/quex/quex-0.65.4.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit python-single-r1
+
+DESCRIPTION="Mode Oriented Directly Coded Lexical Analyser Generator"
+HOMEPAGE="http://quex.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+DEPEND="${PYTHON_DEPS}"
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_prepare() {
+ default
+ sed -i \
+ -e "s:@PYTHON_SITEDIR@:$(python_get_sitedir):g" \
+ quex/DEFINITIONS.py || die
+ mv quex/engine/codec_db/database . || die
+}
+
+src_install() {
+ default
+ insinto /usr/share/quex
+ doins -r database
+ dosym $(python_get_sitedir)/quex/code_base /usr/include/quex/code_base
+
+ python_domodule quex
+ python_newexe quex-exe.py quex
+ doman manpage/quex.1
+ dodoc -r demo
+}