mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-06 15:20:17 +01:00
configure: avoid testing for negative compiler options
gcc seems to always accept unsupported negative compiler warning options: echo "int i;" | gcc -c -xc -Wno-bob - # no error echo "int i;" | gcc -c -xc -Walice - # unsupported compiler option Inverting the options fixes the tests. V2: fix options in meson build Reviewed-by: Matt Turner <mattst88@gmail.com> Reviewed-by: Dylan Baker <dylan@pnwbakers.com> Signed-off-by: Marc Dietrich <marvin24@gmx.de>
This commit is contained in:
parent
0ed952c7e9
commit
d93fabb013
2 changed files with 19 additions and 10 deletions
|
|
@ -394,8 +394,10 @@ esac
|
|||
AC_SUBST([VISIBILITY_CFLAGS])
|
||||
AC_SUBST([VISIBILITY_CXXFLAGS])
|
||||
|
||||
AX_CHECK_COMPILE_FLAG([-Wno-override-init], [WNO_OVERRIDE_INIT="$WNO_OVERRIDE_INIT -Wno-override-init"]) # gcc
|
||||
AX_CHECK_COMPILE_FLAG([-Wno-initializer-overrides], [WNO_OVERRIDE_INIT="$WNO_OVERRIDE_INIT -Wno-initializer-overrides"]) # clang
|
||||
dnl For some reason, the test for -Wno-foo always succeeds with gcc, even if the
|
||||
dnl option is not supported. Hence, check for -Wfoo instead.
|
||||
AX_CHECK_COMPILE_FLAG([-Woverride-init], [WNO_OVERRIDE_INIT="$WNO_OVERRIDE_INIT -Wno-override-init"]) # gcc
|
||||
AX_CHECK_COMPILE_FLAG([-Winitializer-overrides], [WNO_OVERRIDE_INIT="$WNO_OVERRIDE_INIT -Wno-initializer-overrides"]) # clang
|
||||
AC_SUBST([WNO_OVERRIDE_INIT])
|
||||
|
||||
dnl
|
||||
|
|
|
|||
23
meson.build
23
meson.build
|
|
@ -503,11 +503,25 @@ endif
|
|||
cpp = meson.get_compiler('cpp')
|
||||
cpp_args = []
|
||||
foreach a : ['-Wall', '-fno-math-errno', '-fno-trapping-math',
|
||||
'-Qunused-arguments', '-Wno-non-virtual-dtor']
|
||||
'-Qunused-arguments']
|
||||
if cpp.has_argument(a)
|
||||
cpp_args += a
|
||||
endif
|
||||
endforeach
|
||||
|
||||
# For some reason, the test for -Wno-foo always succeeds with gcc, even if the
|
||||
# option is not supported. Hence, check for -Wfoo instead.
|
||||
if cpp.has_argument('-Wnon-virtual-dtor')
|
||||
cpp_args += '-Wno-non-virtual-dtor'
|
||||
endif
|
||||
|
||||
no_override_init_args = []
|
||||
foreach a : ['override-init', 'initializer-overrides']
|
||||
if cc.has_argument('-W' + a)
|
||||
no_override_init_args += '-Wno-' + a
|
||||
endif
|
||||
endforeach
|
||||
|
||||
cpp_vis_args = []
|
||||
if cpp.has_argument('-fvisibility=hidden')
|
||||
cpp_vis_args += '-fvisibility=hidden'
|
||||
|
|
@ -527,13 +541,6 @@ foreach a : ['-Werror=pointer-arith', '-Werror=vla']
|
|||
endif
|
||||
endforeach
|
||||
|
||||
no_override_init_args = []
|
||||
foreach a : ['-Wno-override-init', '-Wno-initializer-overrides']
|
||||
if cc.has_argument(a)
|
||||
no_override_init_args += a
|
||||
endif
|
||||
endforeach
|
||||
|
||||
if host_machine.cpu_family().startswith('x86')
|
||||
pre_args += '-DHAVE_SSE41'
|
||||
with_sse41 = true
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue