Patch #409504: Fix regex problems, consider \-continuation lines in Makefile
and Setup.
diff --git a/Tools/freeze/parsesetup.py b/Tools/freeze/parsesetup.py
index 7f90075..7a6b72e 100644
--- a/Tools/freeze/parsesetup.py
+++ b/Tools/freeze/parsesetup.py
@@ -13,11 +13,17 @@
def getmakevars(filename):
variables = {}
fp = open(filename)
+ pendingline = ""
try:
while 1:
line = fp.readline()
+ if pendingline:
+ line = pendingline + line
+ pendingline = ""
if not line:
break
+ if line.endswith('\\\n'):
+ pendingline = line[:-2]
matchobj = makevardef.match(line)
if not matchobj:
continue
@@ -44,15 +50,22 @@
modules = {}
variables = {}
fp = open(filename)
+ pendingline = ""
try:
while 1:
line = fp.readline()
+ if pendingline:
+ line = pendingline + line
+ pendingline = ""
if not line:
break
# Strip comments
i = string.find(line, '#')
if i >= 0:
line = line[:i]
+ if line.endswith('\\\n'):
+ pendingline = line[:-2]
+ continue
matchobj = setupvardef.match(line)
if matchobj:
(name, value) = matchobj.group(1, 2)