Switch to python3.

PR:		249779
Reported by:	swills@
This commit is contained in:
Vanilla I. Shu 2020-09-26 14:57:08 +00:00
parent 1f64efe9b8
commit 8ab9c7824e
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=550192
3 changed files with 57 additions and 1 deletions

View File

@ -15,7 +15,7 @@ LICENSE_FILE= ${WRKSRC}/COPYING
OPTIONS_DEFINE= DOCS
USES= libtool pathfix pkgconfig python:2.7 shebangfix
USES= libtool pathfix pkgconfig python:build shebangfix
GNU_CONFIGURE= yes
SHEBANG_FILES= src/template-converter src/htmlparser/generate_fsm.py src/htmlparser/fsm_config.py
USE_LDCONFIG= yes

View File

@ -0,0 +1,15 @@
--- src/htmlparser/fsm_config.py.orig 2020-09-26 14:52:15 UTC
+++ src/htmlparser/fsm_config.py
@@ -210,7 +210,11 @@ class FSMConfig(object):
self.sm['state'] = self.AddState
self.sm['condition'] = self.AddCondition
- execfile(filename, self.sm)
+
+ with open(filename) as f:
+ code = compile(f.read(), filename, 'exec')
+ exec(code, self.sm)
+
self.name = self.sm['name']
if not self.name.isalnum():
raise Exception("State machine name must consist of only alphanumeric"

View File

@ -0,0 +1,41 @@
--- src/htmlparser/generate_fsm.py.orig 2020-09-26 14:51:40 UTC
+++ src/htmlparser/generate_fsm.py
@@ -264,7 +264,7 @@ class FSMGenerateC(FSMGenerateAbstract):
state_table = {}
for state in self._config.states:
- state_table[state] = [default_state for col in xrange(255)]
+ state_table[state] = [default_state for col in range(255)]
# We process the transition in reverse order while updating the table.
for i_transition in range(len(self._config.transitions) - 1, -1, -1):
@@ -281,7 +281,7 @@ class FSMGenerateC(FSMGenerateAbstract):
# Create the inner lists which map input characters to destination states.
for state in self._config.states:
transition_row = []
- for c in xrange(0, 255):
+ for c in range(0, 255):
transition_row.append(' /* %06s */ %s' % (repr(chr(c)),
state_table[state][c]))
@@ -306,17 +306,17 @@ class FSMGenerateC(FSMGenerateAbstract):
def Generate(self):
"""Returns the generated the C include statements for the statemachine."""
- print '\n'.join((self._CreateHeader(),
+ print('\n'.join((self._CreateHeader(),
self._CreateNumStates(),
self._CreateStatesEnum(),
self._CreateStatesExternal(),
self._CreateStatesInternalNames(),
- self._CreateTransitionTable()))
+ self._CreateTransitionTable())))
def main():
if len(sys.argv) != 2:
- print "usage: generate_fsm.py config_file"
+ print("usage: generate_fsm.py config_file")
sys.exit(1)
config = FSMConfig()