Hi, On 2024-03-15 18:36:55 +0900, Sutou Kouhei wrote: > +warning_level = get_option('warning_level') > +# See https://mesonbuild.com/Builtin-options.html#details-for-warning_level > for > +# warning_level values. > +if warning_level == '1' > + common_builtin_flags += ['-Wall', '/W2'] > +elif warning_level == '2' > + common_builtin_flags += ['-Wall', '-Wextra', '/W3'] > +elif warning_level == '3' > + common_builtin_flags += ['-Wall', '-Wextra', '-Wpedantic', '/W4'] > +elif warning_level == 'everything' > + common_builtin_flags += ['-Weverything', '/Wall'] > +endif
> +cflags_builtin = cc.get_supported_arguments(common_builtin_flags) > +if llvm.found() > + cxxflags_builtin = cpp.get_supported_arguments(common_builtin_flags) > +endif This seems like a fair amount of extra configure tests. Particularly because /W* isn't ever interesting for Makefile.global - they're msvc flags - because you can't use that with msvc. I'm also doubtful that it's worth supporting warning_level=3/everything, you end up with a completely flood of warnings that way. Greetings, Andres Freund