aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to '')
-rwxr-xr-xconfigure4
-rw-r--r--script/mconfig.py4
2 files changed, 7 insertions, 1 deletions
diff --git a/configure b/configure
index e8c5b15..e50683d 100755
--- a/configure
+++ b/configure
@@ -16,6 +16,7 @@ settings.add_setting_option('enable_tests', '--enable-tests', 'tests!', False, b
settings.add_setting_option('enable_ios_bootstrap', '--enable-ios-bootstrap', 'default: true if you pass --xcode-sdk=iphoneos',
lambda: 'iphoneos' in str(settings.host_machine().toolchains()[0].sdk_opt.value),
bool=True)
+settings.add_setting_option('enable_werror', '--enable-werror', '', False, bool=True)
ldid_tool = mconfig.CLITool('ldid', ['ldid'], 'LDID', settings.host_machine(), settings.host_machine().toolchains())
ldid_tool.optional()
@@ -51,6 +52,9 @@ mconfig.mark_safe_to_clean('(src)/generated/darwin-inject-asm.S', settings)
if settings.enable_ios_bootstrap:
mconfig.log('Will build iOS bootstrap.\n')
+if settings.enable_werror:
+ for mach in machs + [settings.host_machine()]:
+ settings[mach.name].cflags = ['-Werror'] + settings[mach.name].cflags
# todo make overridable?
cc_argv = c.cc.argv()
diff --git a/script/mconfig.py b/script/mconfig.py
index 26556d6..88e5341 100644
--- a/script/mconfig.py
+++ b/script/mconfig.py
@@ -906,8 +906,10 @@ class MakefileEmitter(Emitter):
# TODO avoid deleting partial output?
stub = '''
%(banner)s
-_ := $(shell "$(MAKE_COMMAND)" -s -f %(main_mk_arg)s %(makefile_arg)s >&2)
+_out := $(shell "$(MAKE_COMMAND)" -s -f %(main_mk_arg)s %(makefile_arg)s >&2 || echo fail)
+ifneq ($(_out),fail)
include %(main_mk)s
+endif
'''.lstrip() \
% {
'makefile_arg': argv_to_shell([makefile]),