Closed
Bug 604279
Opened 15 years ago
Closed 15 years ago
Pymake doesn't handle spacing in front of an endef
Categories
(Firefox Build System :: General, defect)
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: khuey, Assigned: khuey)
References
Details
Attachments
(1 file)
|
2.07 KB,
patch
|
ted
:
review+
|
Details | Diff | Splinter Review |
No description provided.
Attachment #483066 -
Flags: review?(ted.mielczarek)
| Assignee | ||
Comment 1•15 years ago
|
||
That print directive is obviously debug code. Ignore that.
Comment 2•15 years ago
|
||
Comment on attachment 483066 [details] [diff] [review]
Patch
># HG changeset patch
># Parent 4f7a8e2c7b205ff37585d8670f45a3ce57067f52
>diff --git a/build/pymake/pymake/parser.py b/build/pymake/pymake/parser.py
>--- a/build/pymake/pymake/parser.py
>+++ b/build/pymake/pymake/parser.py
>@@ -228,31 +228,32 @@ def itercommandchars(d, offset, tokenlis
> if token in tokenlist or (token[0] == '$' and '$' in tokenlist):
> yield starttext, token, mstart, mend
> else:
> yield starttext + token, None, None, mend
> offset = mend
>
> yield s[offset:d.lend].replace('\n\t', '\n'), None, None, None
>
>-_redefines = re.compile('define|endef')
>+_redefines = re.compile('\s*define|\s*endef')
> def iterdefinelines(it, startloc):
> """
> Process the insides of a define. Most characters are included literally. Escaped newlines are treated
> as they would be in makefile syntax. Internal define/endef pairs are ignored.
> """
>
> results = []
>
> definecount = 1
> for d in it:
> m = _redefines.match(d.s, d.lstart, d.lend)
> if m is not None:
> directive = m.group(0)
Just strip it right here to avoid having to do it below?
>diff --git a/build/pymake/tests/define-directive.mk b/build/pymake/tests/define-directive.mk
>--- a/build/pymake/tests/define-directive.mk
>+++ b/build/pymake/tests/define-directive.mk
>@@ -45,15 +45,25 @@ ifneq ($(TEST8),is this \# a comment?)
> endif
>
> # A backslash continuation "hides" the endef
> define TEST9
> value \
> endef
> endef
>
>+# Test ridiculous spacing
>+ define TEST9
You probably want to start with TEST10, for consistency.
r=me with those nits fixed.
Attachment #483066 -
Flags: review?(ted.mielczarek) → review+
| Assignee | ||
Comment 3•15 years ago
|
||
http://hg.mozilla.org/users/bsmedberg_mozilla.com/pymake/rev/f7f475ddc5c0
http://hg.mozilla.org/mozilla-central/rev/cb298b961fe2
Status: ASSIGNED → RESOLVED
Closed: 15 years ago
Flags: in-testsuite+
Resolution: --- → FIXED
Updated•8 years ago
|
Product: Core → Firefox Build System
You need to log in
before you can comment on or make changes to this bug.
Description
•