112 lines
3.0 KiB
Diff
112 lines
3.0 KiB
Diff
|
--- lib/libvcc/vmodtool.py.orig 2016-03-29 11:16:00.534066134 +0200
|
||
|
+++ lib/libvcc/vmodtool.py 2016-03-29 12:11:54.571647851 +0200
|
||
|
@@ -33,8 +33,8 @@
|
||
|
vmod_${name}.rst -- Extracted documentation
|
||
|
"""
|
||
|
|
||
|
-# This script should work with both Python 2 and Python 3.
|
||
|
-from __future__ import print_function
|
||
|
+## This script should work with both Python 2 and Python 3.
|
||
|
+#from __future__ import print_function
|
||
|
|
||
|
import sys
|
||
|
import re
|
||
|
@@ -45,6 +45,16 @@
|
||
|
from os.path import dirname, exists, join, realpath
|
||
|
from pprint import pprint, pformat
|
||
|
|
||
|
+# __future__ print_function is not available on python2.4 in rhel5, so
|
||
|
+# make a local simple variant _print
|
||
|
+
|
||
|
+def _print(*objects, **kwargs):
|
||
|
+ sep = kwargs.get('sep', ' ')
|
||
|
+ end = kwargs.get('end', '\n')
|
||
|
+ out = kwargs.get('file', sys.stdout)
|
||
|
+ out.write(sep.join(objects) + end)
|
||
|
+
|
||
|
+
|
||
|
ctypes = {
|
||
|
'ACL': "VCL_ACL",
|
||
|
'BACKEND': "VCL_BACKEND",
|
||
|
@@ -728,7 +738,7 @@
|
||
|
def get_token(self):
|
||
|
while True:
|
||
|
if len(self.tl) > 0:
|
||
|
- # print("T\t", self.tl[0])
|
||
|
+ # _print("T\t", self.tl[0])
|
||
|
return self.tl.pop(0)
|
||
|
if len(self.l) == 0:
|
||
|
break
|
||
|
@@ -796,7 +806,7 @@
|
||
|
raise FormatError("Unknown keyword: %s" %
|
||
|
t.str, "")
|
||
|
else:
|
||
|
- print("WARNING: Unknown keyword: %s:" %
|
||
|
+ _print("WARNING: Unknown keyword: %s:" %
|
||
|
t.str, file=sys.stderr)
|
||
|
o = None
|
||
|
while len(self.tl) > 0:
|
||
|
@@ -809,8 +819,8 @@
|
||
|
if opts.strict:
|
||
|
raise FormatError(m, details)
|
||
|
else:
|
||
|
- print("WARNING: %s:" % m, file=sys.stderr)
|
||
|
- print(details, file=sys.stderr)
|
||
|
+ _print("WARNING: %s:" % m, file=sys.stderr)
|
||
|
+ _print(details, file=sys.stderr)
|
||
|
else:
|
||
|
for ln, i in self.l:
|
||
|
o.doc(i)
|
||
|
@@ -852,9 +862,12 @@
|
||
|
def runmain(inputvcc, rstdir, outputprefix):
|
||
|
# Read the file in
|
||
|
lines = []
|
||
|
- with open(inputvcc, "r") as fp:
|
||
|
+ fp = open(inputvcc, "r")
|
||
|
+ try:
|
||
|
for i in fp:
|
||
|
lines.append(i.rstrip())
|
||
|
+ finally:
|
||
|
+ fp.close
|
||
|
ln = 0
|
||
|
|
||
|
#######################################################################
|
||
|
@@ -874,7 +887,7 @@
|
||
|
|
||
|
if False:
|
||
|
for i in copy_right:
|
||
|
- print("(C)\t", i)
|
||
|
+ _print("(C)\t", i)
|
||
|
|
||
|
#######################################################################
|
||
|
# Break into sections
|
||
|
@@ -899,14 +912,14 @@
|
||
|
for i in sl:
|
||
|
i.parse(vx)
|
||
|
assert len(i.tl) == 0
|
||
|
- except ParseError as e:
|
||
|
- print("ERROR: Parse error reading \"%s\":" % inputvcc)
|
||
|
+ except ParseError, e:
|
||
|
+ _print("ERROR: Parse error reading \"%s\":" % inputvcc)
|
||
|
pprint(str(e))
|
||
|
exit(-1)
|
||
|
- except FormatError as e:
|
||
|
- print("ERROR: Format error reading \"%s\": %s" %
|
||
|
+ except FormatError, e:
|
||
|
+ _print("ERROR: Format error reading \"%s\": %s" %
|
||
|
(inputvcc, pformat(e.msg)))
|
||
|
- print(e.details)
|
||
|
+ _print(e.details)
|
||
|
exit(-2)
|
||
|
|
||
|
#######################################################################
|
||
|
@@ -981,7 +994,7 @@
|
||
|
if not i_vcc:
|
||
|
i_vcc = "vmod.vcc"
|
||
|
else:
|
||
|
- print("ERROR: No vmod.vcc file supplied or found.",
|
||
|
+ _print("ERROR: No vmod.vcc file supplied or found.",
|
||
|
file=sys.stderr)
|
||
|
oparser.print_help()
|
||
|
exit(-1)
|