49 lines
2.1 KiB
Diff
49 lines
2.1 KiB
Diff
From 4a06a1a6a71293decb83aee7adb74bc709493106 Mon Sep 17 00:00:00 2001
|
|
From: Philip Chimento <philip.chimento@gmail.com>
|
|
Date: Wed, 5 Jul 2017 22:57:09 -0700
|
|
Subject: [PATCH] build: Include configure script, be nicer about options
|
|
|
|
A configure script is not included in the SpiderMonkey tarball by
|
|
default. Also, we have to account for JHbuild passing extra unknown
|
|
options like --disable-Werror.
|
|
|
|
https://bugzilla.mozilla.org/show_bug.cgi?id=1379540
|
|
---
|
|
js/src/configure | 9 +++++++++
|
|
python/mozbuild/mozbuild/configure/__init__.py | 2 +-
|
|
python/mozbuild/mozbuild/configure/options.py | 6 +++++-
|
|
3 files changed, 15 insertions(+), 2 deletions(-)
|
|
create mode 100755 js/src/configure
|
|
|
|
diff --git a/python/mozbuild/mozbuild/configure/__init__.py b/python/mozbuild/mozbuild/configure/__init__.py
|
|
index 0fe640ca..09b460d3 100644
|
|
--- a/python/mozbuild/mozbuild/configure/__init__.py
|
|
+++ b/python/mozbuild/mozbuild/configure/__init__.py
|
|
@@ -356,7 +356,7 @@ def run(self, path=None):
|
|
# All options should have been removed (handled) by now.
|
|
for arg in self._helper:
|
|
without_value = arg.split('=', 1)[0]
|
|
- raise InvalidOptionError('Unknown option: %s' % without_value)
|
|
+ print('Ignoring', without_value, ': Unknown option')
|
|
|
|
# Run the execution queue
|
|
for func, args in self._execution_queue:
|
|
diff --git a/python/mozbuild/mozbuild/configure/options.py b/python/mozbuild/mozbuild/configure/options.py
|
|
index 4310c862..15bfe425 100644
|
|
--- a/python/mozbuild/mozbuild/configure/options.py
|
|
+++ b/python/mozbuild/mozbuild/configure/options.py
|
|
@@ -402,7 +402,11 @@ def __init__(self, environ=os.environ, argv=sys.argv):
|
|
|
|
def add(self, arg, origin='command-line', args=None):
|
|
assert origin != 'default'
|
|
- prefix, name, values = Option.split_option(arg)
|
|
+ try:
|
|
+ prefix, name, values = Option.split_option(arg)
|
|
+ except InvalidOptionError as e:
|
|
+ print('Ignoring', arg, ':', e)
|
|
+ return
|
|
if args is None:
|
|
args = self._extra_args
|
|
if args is self._extra_args and name in self._extra_args:
|
|
|