Open Bug 1418596 Opened 8 years ago Updated 3 years ago

MetaCharacterException during configure when objdir contains characters such as ~

Categories

(Firefox Build System :: General, defect)

defect

Tracking

(Not tracked)

People

(Reporter: glandium, Unassigned)

References

Details

js/src> Traceback (most recent call last): js/src> File "/<<PKGBUILDDIR>>/build/../configure.py", line 127, in <module> js/src> sys.exit(main(sys.argv)) js/src> File "/<<PKGBUILDDIR>>/build/../configure.py", line 29, in main js/src> sandbox.run(os.path.join(os.path.dirname(__file__), 'moz.configure')) js/src> File "/<<PKGBUILDDIR>>/python/mozbuild/mozbuild/configure/__init__.py", line 428, in run js/src> func(*args) js/src> File "/<<PKGBUILDDIR>>/python/mozbuild/mozbuild/configure/__init__.py", line 474, in _value_fo r js/src> return self._value_for_depends(obj, need_help_dependency) js/src> File "/<<PKGBUILDDIR>>/python/mozbuild/mozbuild/util.py", line 944, in method_call js/src> cache[args] = self.func(instance, *args) js/src> File "/<<PKGBUILDDIR>>/python/mozbuild/mozbuild/configure/__init__.py", line 483, in _value_fo r_depends js/src> return obj.result(need_help_dependency) js/src> File "/<<PKGBUILDDIR>>/python/mozbuild/mozbuild/util.py", line 944, in method_call js/src> cache[args] = self.func(instance, *args) js/src> File "/<<PKGBUILDDIR>>/python/mozbuild/mozbuild/configure/__init__.py", line 123, in result js/src> return self._func(*resolved_args) js/src> File "/<<PKGBUILDDIR>>/python/mozbuild/mozbuild/configure/__init__.py", line 1003, in wrapped js/src> return new_func(*args, **kwargs) js/src> File "/<<PKGBUILDDIR>>/build/moz.configure/old.configure", line 378, in old_configure js/src> exec code in raw_config # noqa js/src> File "config.data", line 158, in <module> js/src> (''' NSPR_CFLAGS ''', list(split(r''' -I/<<PKGBUILDDIR>>/build-browser/dist/include/nspr '''))), js/src> File "/<<PKGBUILDDIR>>/python/mozbuild/mozbuild/shellutil.py", line 173, in split js/src> return _ClineSplitter(s).result js/src> File "/<<PKGBUILDDIR>>/python/mozbuild/mozbuild/shellutil.py", line 61, in __init__ js/src> self._parse_unquoted() js/src> File "/<<PKGBUILDDIR>>/python/mozbuild/mozbuild/shellutil.py", line 113, in _parse_unquoted js/src> raise MetaCharacterException(match['special']) js/src> mozbuild.shellutil.MetaCharacterException where <<PKGBUILDDIR>> is /build/firefox-58.0~b4. This somewhat a regression from bug 1403346. The core reason is that mozbuild.shellutil.split was originally written for pymake, and as such didn't make much effort splitting command lines with special characters because they would need to be sent to an actual shell anyways, and doing that doesn't require a split command line. ~ is a character that can be safely removed from that list of special characters, but I'd need to look more thoroughly what other characters could be removed as well.
Product: Core → Firefox Build System
~ is being handled in bug 1496610. We still need to look at the other special characters.
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.