windows: Send -Wno-* flags to meson.build for a while

This commit is contained in:
João Paulo Taylor Ienczak Zanette 2020-03-13 17:52:42 -03:00
parent 77fb4f9fe4
commit c12949c9fa
4 changed files with 80 additions and 89 deletions

View File

@ -71,82 +71,6 @@ exit /B 0
set CFLAGS=-I%cd:\=/%/src/lib/evil %CFLAGS%
set CFLAGS=-I%cd:\=/%/src/lib/evil/unposix/ %CFLAGS%
:: ---------------------------------
:: Ignored warnings
:: TODO: Re-enable warnings one by one and solve them.
:: Compiler-specific
set CFLAGS=-Wno-reserved-id-macro %CFLAGS%
set CFLAGS=-Wno-deprecated-declarations %CFLAGS%
set CFLAGS=-Wno-gnu-zero-variadic-macro-arguments %CFLAGS%
set CFLAGS=-Wno-nonportable-system-include-path %CFLAGS%
set CFLAGS=-Wno-microsoft-enum-forward-reference %CFLAGS%
:: Syntax/Parsing
set CFLAGS=-Wno-implicit-function-declaration %CFLAGS%
set CFLAGS=-Wno-missing-prototypes %CFLAGS%
set CFLAGS=-Wno-unreachable-code %CFLAGS%
set CFLAGS=-Wno-unreachable-code-return %CFLAGS%
set CFLAGS=-Wno-extra-semi %CFLAGS%
set CFLAGS=-Wno-extra-semi-stmt %CFLAGS%
:: Declaration not visible outside function:
set CFLAGS=-Wno-visibility %CFLAGS%
:: A global variable declared in a .c file is not static and hasn't
:: been declarated with `extern` anywhere.
set CFLAGS=-Wno-missing-variable-declarations %CFLAGS%
set CFLAGS=-Wno-missing-noreturn %CFLAGS%
:: Possible misuse of comma operator
set CFLAGS=-Wno-comma %CFLAGS%
set CFLAGS=-Wno-unreachable-code-break %CFLAGS%
:: Architectural
set CFLAGS=-Wno-cast-align %CFLAGS%
set CFLAGS=-Wno-shorten-64-to-32 %CFLAGS%
:: Type system
:: When a switch-case misses one possible enum vlaue
set CFLAGS=-Wno-switch-enum %CFLAGS%
:: Discarding `const` qualifier in cast (`(T)const_value`
set CFLAGS=-Wno-cast-qual %CFLAGS%
set CFLAGS=-Wno-pedantic %CFLAGS%
set CFLAGS=-Wno-double-promotion %CFLAGS%
set CFLAGS=-Wno-float-conversion %CFLAGS%
set CFLAGS=-Wno-implicit-float-conversion %CFLAGS%
set CFLAGS=-Wno-int-conversion %CFLAGS%
:: Implicit conversion like int -> short, short -> char or long -> char
set CFLAGS=-Wno-implicit-int-conversion %CFLAGS%
set CFLAGS=-Wno-sign-conversion %CFLAGS%
set CFLAGS=-Wno-bad-function-cast %CFLAGS%
:: Assign enum to a value not in range defined by the enum type
set CFLAGS=-Wno-assign-enum %CFLAGS%
:: uchar_value > 255 is always false
set CFLAGS=-Wno-tautological-type-limit-compare %CFLAGS%
:: Comparing float with == is unsafe (since floats not necessarily will
:: have that specific value)
set CFLAGS=-Wno-float-equal %CFLAGS%
:: Implicit conversion turns string literal into bool
set CFLAGS=-Wno-string-conversion %CFLAGS%
set CFLAGS=-Wno-sign-compare %CFLAGS%
set CFLAGS=-Wno-shadow %CFLAGS%
:: Pointer-related
set CFLAGS=-Wno-pointer-integer-compare %CFLAGS%
:: Safety (important!)
set CFLAGS=-Wno-uninitialized %CFLAGS%
:: Others
set CFLAGS=-Wno-covered-switch-default %CFLAGS%
set CFLAGS=-Wno-documentation %CFLAGS%
set CFLAGS=-Wno-documentation-unknown-command %CFLAGS%
set CFLAGS=-Wno-format-nonliteral %CFLAGS%
:: Using an undefined macro (which will be evaluated to 0)
set CFLAGS=-Wno-undef %CFLAGS%
set CFLAGS=-Wno-unused-function %CFLAGS%
set CFLAGS=-Wno-unused-macros %CFLAGS%
set CFLAGS=-Wno-unused-parameter %CFLAGS%
set CFLAGS=-Wno-class-varargs %CFLAGS%
:: Leave until functions are going to be implemented
set CFLAGS=-Wno-#warnings %CFLAGS%
:: ------------------------------------
:: Default flags for native compilation
set CFLAGS=-Wno-language-extension-token %CFLAGS%
set CFLAGS=-DWIN32_LEAN_AND_MEAN %CFLAGS%
if defined VERBOSE (
set CFLAGS=-v %CFLAGS%

View File

@ -231,7 +231,7 @@ if sys_windows == true
zlib_dir = get_option('zlib_dir')
zlib_include_dir = zlib_dir + '/include'
if cc.has_header('zlib.h', args: '-I' + zlib_include_dir) == false
error('zlib.h cannot be found')
error('zlib.h cannot be found (tried "' + zlib_include_dir + '")')
endif
zlib = cc.find_library('zlib',
dirs: [zlib_dir + '/lib'],

View File

@ -98,6 +98,85 @@ endif
if sys_windows == true
dl = declare_dependency()
m = declare_dependency()
# ---------------------------------
# Ignored warnings
# TODO: Re-enable warnings one by one and solve them.
add_global_arguments([
# Compiler-specific
'-Wno-reserved-id-macro',
'-Wno-deprecated-declarations',
'-Wno-gnu-zero-variadic-macro-arguments',
'-Wno-nonportable-system-include-path',
'-Wno-microsoft-enum-forward-reference',
# Syntax/Parsing
# '-Wno-implicit-function-declaration',
'-Wno-missing-prototypes',
'-Wno-unreachable-code',
'-Wno-unreachable-code-return',
'-Wno-extra-semi',
'-Wno-extra-semi-stmt',
# Declaration not visible outside function:
'-Wno-visibility',
# A global variable declared in a .c file is not static and hasn't
# been declarated with `extern` anywhere.
'-Wno-missing-variable-declarations',
'-Wno-missing-noreturn',
# Possible misuse of comma operator
'-Wno-comma',
'-Wno-unreachable-code-break',
# Architectural
'-Wno-cast-align',
'-Wno-shorten-64-to-32',
# Type system
# When a switch-case misses one possible enum vlaue
'-Wno-switch-enum',
# Discarding `const` qualifier in cast (`(T)const_value`
'-Wno-cast-qual',
'-Wno-pedantic',
'-Wno-double-promotion',
'-Wno-float-conversion',
'-Wno-implicit-float-conversion',
'-Wno-int-conversion',
# Implicit conversion like int -> short, short -> char or long -> char
'-Wno-implicit-int-conversion',
'-Wno-sign-conversion',
'-Wno-bad-function-cast',
# Assign enum to a value not in range defined by the enum type
'-Wno-assign-enum',
# uchar_value > 255 is always false
'-Wno-tautological-type-limit-compare',
# Comparing float with == is unsafe (since floats not necessarily will
# have that specific value)
'-Wno-float-equal',
# Implicit conversion turns string literal into bool
'-Wno-string-conversion',
'-Wno-sign-compare',
'-Wno-shadow',
# Pointer-related
'-Wno-pointer-integer-compare',
# Safety (important!)
'-Wno-uninitialized',
# Others
'-Wno-covered-switch-default',
'-Wno-documentation',
'-Wno-documentation-unknown-command',
'-Wno-format-nonliteral',
# Using an undefined macro (which will be evaluated to 0)
'-Wno-undef',
'-Wno-unused-variable',
'-Wno-unused-function',
'-Wno-unused-macros',
'-Wno-unused-parameter',
'-Wno-class-varargs',
# Leave until functions are going to be implemented
'-Wno-#warnings',
# ------------------------------------
# Default flags for native compilation
'-Wno-language-extension-token',
'-DWIN32_LEAN_AND_MEAN'
], language : 'c')
endif
foreach lang : ['c', 'objc', 'cpp']

View File

@ -1,15 +1,3 @@
[binaries]
c = 'clang-cl'
cpp = 'clang-cl'
[properties]
c_args = [
'-fcolor-diagnostics',
'-Wno-language-extension-token',
'-I ./src/lib/evil/pcre/',
'-Wfatal-errors',
'-W-doesnt-exists-no-language-extension-token-kakaka'
]
cpp_args = [
'-fcolor-diagnostics',
]