summaryrefslogtreecommitdiff
path: root/mesonbuild
diff options
context:
space:
mode:
authorDylan Baker <dylan@pnwbakers.com>2022-07-08 10:13:31 -0700
committerEli Schwartz <eschwartz93@gmail.com>2023-01-03 14:49:02 -0500
commitf7cde8d3f62c0ae0ef445698a407d1bdb2218cd6 (patch)
tree56a4129e486cdb2ae73b7fb5c5fb00168ce0c138 /mesonbuild
parent0a873f6470bf4e621f1ce2eeb250b5f5b918ac63 (diff)
downloadmeson-f7cde8d3f62c0ae0ef445698a407d1bdb2218cd6.tar.gz
Add fatal=False to many mlog.warnings()
There are lots of warnings that become fatal, that are simply unfixable by the end user. Things like using old versions of software (because they're using some kind of LTS release), warnings about compilers not supporting certain kinds of checks, or standards being upgraded due to skipped implementations (MSVC has c++98 and c++14, but not c++11). None of these should be fatal, they're informative, and too important to reduce to notices, but not important enough to stop meson if they're printed.
Diffstat (limited to 'mesonbuild')
-rw-r--r--mesonbuild/compilers/cpp.py7
-rw-r--r--mesonbuild/coredata.py3
-rw-r--r--mesonbuild/dependencies/dev.py4
-rw-r--r--mesonbuild/environment.py5
-rw-r--r--mesonbuild/modules/gnome.py8
5 files changed, 16 insertions, 11 deletions
diff --git a/mesonbuild/compilers/cpp.py b/mesonbuild/compilers/cpp.py
index 7296626a9..5789bb507 100644
--- a/mesonbuild/compilers/cpp.py
+++ b/mesonbuild/compilers/cpp.py
@@ -59,7 +59,7 @@ def non_msvc_eh_options(eh: str, args: T.List[str]) -> None:
args.append('-fno-exceptions')
elif eh in {'s', 'c'}:
mlog.warning(f'non-MSVC compilers do not support {eh} exception handling. '
- 'You may want to set eh to \'default\'.')
+ 'You may want to set eh to \'default\'.', fatal=False)
class CPPCompiler(CLikeCompiler, Compiler):
def attribute_check_func(self, name: str) -> str:
@@ -692,7 +692,8 @@ class CPP11AsCPP14Mixin(CompilerMixinBase):
key = OptionKey('std', machine=self.for_machine, lang=self.language)
if options[key].value in {'vc++11', 'c++11'}:
mlog.warning(self.id, 'does not support C++11;',
- 'attempting best effort; setting the standard to C++14', once=True)
+ 'attempting best effort; setting the standard to C++14',
+ once=True, fatal=False)
# Don't mutate anything we're going to change, we need to use
# deepcopy since we're messing with members, and we can't simply
# copy the members because the option proxy doesn't support it.
@@ -732,7 +733,7 @@ class VisualStudioCPPCompiler(CPP11AsCPP14Mixin, VisualStudioLikeCPPCompilerMixi
def get_option_compile_args(self, options: 'KeyedOptionDictType') -> T.List[str]:
key = OptionKey('std', machine=self.for_machine, lang=self.language)
if options[key].value != 'none' and version_compare(self.version, '<19.00.24210'):
- mlog.warning('This version of MSVC does not support cpp_std arguments')
+ mlog.warning('This version of MSVC does not support cpp_std arguments', fatal=False)
options = copy.copy(options)
options[key].value = 'none'
diff --git a/mesonbuild/coredata.py b/mesonbuild/coredata.py
index 965fc1b5a..a0086a65a 100644
--- a/mesonbuild/coredata.py
+++ b/mesonbuild/coredata.py
@@ -782,7 +782,8 @@ class CoreData:
try:
value.set_value(oldval.value)
except MesonException:
- mlog.warning(f'Old value(s) of {key} are no longer valid, resetting to default ({value.value}).')
+ mlog.warning(f'Old value(s) of {key} are no longer valid, resetting to default ({value.value}).',
+ fatal=False)
def is_cross_build(self, when_building_for: MachineChoice = MachineChoice.HOST) -> bool:
if when_building_for == MachineChoice.BUILD:
diff --git a/mesonbuild/dependencies/dev.py b/mesonbuild/dependencies/dev.py
index fd43a275d..de711e59e 100644
--- a/mesonbuild/dependencies/dev.py
+++ b/mesonbuild/dependencies/dev.py
@@ -422,7 +422,7 @@ class LLVMDependencyCMake(CMakeDependency):
# cmake if dynamic is required
if not self.static:
self.is_found = False
- mlog.warning('Ignoring LLVM CMake dependency because dynamic was requested')
+ mlog.warning('Ignoring LLVM CMake dependency because dynamic was requested', fatal=False)
return
if self.traceparser is None:
@@ -455,7 +455,7 @@ class LLVMDependencyCMake(CMakeDependency):
if required:
raise self._gen_exception(f'LLVM module {mod} was not found')
else:
- mlog.warning('Optional LLVM module', mlog.bold(mod), 'was not found')
+ mlog.warning('Optional LLVM module', mlog.bold(mod), 'was not found', fatal=False)
continue
for i in cm_targets:
res += [(i, required)]
diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py
index 2e2a228ea..9ad40fb4a 100644
--- a/mesonbuild/environment.py
+++ b/mesonbuild/environment.py
@@ -455,7 +455,7 @@ class Environment:
# If we stored previous command line options, we can recover from
# a broken/outdated coredata.
if os.path.isfile(coredata.get_cmd_line_file(self.build_dir)):
- mlog.warning('Regenerating configuration from scratch.')
+ mlog.warning('Regenerating configuration from scratch.', fatal=False)
mlog.log('Reason:', mlog.red(str(e)))
coredata.read_cmd_line_file(self.build_dir, options)
self.create_new_coredata(options)
@@ -551,7 +551,8 @@ class Environment:
if bt in self.options and (db in self.options or op in self.options):
mlog.warning('Recommend using either -Dbuildtype or -Doptimization + -Ddebug. '
'Using both is redundant since they override each other. '
- 'See: https://mesonbuild.com/Builtin-options.html#build-type-options')
+ 'See: https://mesonbuild.com/Builtin-options.html#build-type-options',
+ fatal=False)
exe_wrapper = self.lookup_binary_entry(MachineChoice.HOST, 'exe_wrapper')
if exe_wrapper is not None:
diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
index d447f098f..b9f97ff76 100644
--- a/mesonbuild/modules/gnome.py
+++ b/mesonbuild/modules/gnome.py
@@ -319,14 +319,15 @@ class GnomeModule(ExtensionModule):
gresource_dep_needed_version):
mlog.warning('GLib compiled dependencies do not work reliably with \n'
'the current version of GLib. See the following upstream issue:',
- mlog.bold('https://bugzilla.gnome.org/show_bug.cgi?id=774368'))
+ mlog.bold('https://bugzilla.gnome.org/show_bug.cgi?id=774368'),
+ fatal=False)
@staticmethod
def _print_gdbus_warning() -> None:
mlog.warning('Code generated with gdbus_codegen() requires the root directory be added to\n'
' include_directories of targets with GLib < 2.51.3:',
mlog.bold('https://github.com/mesonbuild/meson/issues/1387'),
- once=True)
+ once=True, fatal=False)
@typed_kwargs(
'gnome.post_install',
@@ -1966,7 +1967,8 @@ class GnomeModule(ExtensionModule):
else:
mlog.warning('The current version of GLib does not support extra arguments \n'
'for glib-genmarshal. You need at least GLib 2.53.3. See ',
- mlog.bold('https://github.com/mesonbuild/meson/pull/2049'))
+ mlog.bold('https://github.com/mesonbuild/meson/pull/2049'),
+ fatal=False)
for k in ['internal', 'nostdinc', 'skip_source', 'stdinc', 'valist_marshallers']:
# Mypy can't figure out that this is correct
if kwargs[k]: # type: ignore