Closed
Bug 1490017
Opened 7 years ago
Closed 7 years ago
quote() fails when explicitly disabling features in JS build
Categories
(Firefox Build System :: General, defect)
Firefox Build System
General
Tracking
(Not tracked)
RESOLVED
INVALID
People
(Reporter: bbouvier, Unassigned)
Details
Over the course of bug 1469027, I tried to use --disable-cranelift to make sure the fix suggested by :glandium was working on my machine, as well as trying to compile *without* cranelift.
When running the configure line with --disable-cranelift, I get the following error:
Traceback (most recent call last):
File "/code/mozilla-inbound/js/src/../../configure.py", line 123, in <module>
sys.exit(main(sys.argv))
File "/code/mozilla-inbound/js/src/../../configure.py", line 34, in main
return config_status(config)
File "/code/mozilla-inbound/js/src/../../configure.py", line 94, in config_status
partial_config.write_vars(sanitized_config)
File "/code/mozilla-inbound/python/mozbuild/mozbuild/backend/configenvironment.py", line 356, in write_vars
for name in sorted(global_defines)])
File "/code/mozilla-inbound/python/mozbuild/mozbuild/shellutil.py", line 206, in quote
return ' '.join(_quote(s) for s in strings)
File "/code/mozilla-inbound/python/mozbuild/mozbuild/shellutil.py", line 206, in <genexpr>
return ' '.join(_quote(s) for s in strings)
File "/code/mozilla-inbound/python/mozbuild/mozbuild/shellutil.py", line 194, in _quote
return t("'%s'") % s.replace(t("'"), t("'\\''"))
AttributeError: 'NegativeOptionValue' object has no attribute 'replace'
When trying with a different line that has --disable-pipeline-operator, I get the following error:
Traceback (most recent call last):
File "/code/mozilla-inbound/js/src/../../configure.py", line 123, in <module>
sys.exit(main(sys.argv))
File "/code/mozilla-inbound/js/src/../../configure.py", line 34, in main
return config_status(config)
File "/code/mozilla-inbound/js/src/../../configure.py", line 94, in config_status
partial_config.write_vars(sanitized_config)
File "/code/mozilla-inbound/python/mozbuild/mozbuild/backend/configenvironment.py", line 356, in write_vars
for name in sorted(global_defines)])
File "/code/mozilla-inbound/python/mozbuild/mozbuild/shellutil.py", line 206, in quote
return ' '.join(_quote(s) for s in strings)
File "/code/mozilla-inbound/python/mozbuild/mozbuild/shellutil.py", line 206, in <genexpr>
return ' '.join(_quote(s) for s in strings)
File "/code/mozilla-inbound/python/mozbuild/mozbuild/shellutil.py", line 187, in _quote
if s and not SHELL_QUOTE_RE.search(s):
TypeError: expected string or buffer
Both of these errors happen when creating the config.status file. For what it's worth, here's the full configure line I'm using:
CC="clang" \
CXX="clang++" \
/code/mozilla-inbound/js/src/configure \
--enable-debug \
--disable-optimize \
--with-ccache \
--without-intl-api \
--disable-pipeline-operator \
--enable-linker=lld
| Reporter | ||
Comment 1•7 years ago
|
||
My moz.configure was containing:
@depends('--enable-cranelift')
def enable_cranelift(value):
return value
When it should have contained
@depends('--enable-cranelift')
def enable_cranelift(value):
if value:
return True
and then PositiveOptionValue/NegativeOptionValue implicitly convert to boolean thanks to their their __nonzero__ implementation.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → INVALID
You need to log in
before you can comment on or make changes to this bug.
Description
•