diff options
author | Pedro Alves <palves@redhat.com> | 2015-12-16 22:56:48 +0000 |
---|---|---|
committer | Pedro Alves <palves@redhat.com> | 2015-12-16 22:56:49 +0000 |
commit | 7544db951abbb5dca5373dcc7ae83ed60c0782ad (patch) | |
tree | 1d330718ad64483b8d7aea34ebc97152168d4b12 /gdb/configure.ac | |
parent | a4e22a5df64a46bc99f737a982c0b9d1e8a45e2b (diff) | |
download | gdb-7544db951abbb5dca5373dcc7ae83ed60c0782ad.zip gdb-7544db951abbb5dca5373dcc7ae83ed60c0782ad.tar.gz gdb-7544db951abbb5dca5373dcc7ae83ed60c0782ad.tar.bz2 |
Fix -Wno-unknown-warning support detection
Ref: https://sourceware.org/ml/gdb/2015-12/msg00024.html
We have code in configure.ac that tries to detect whether the compiler
supports each warning and suppress it if not, but that doesn't work
with "-Wno-" options, because gcc doesn't error out for
-Wno-unknown-warning unless other diagnostics are being produced.
See https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html.
Handle this by checking whether -Wfoo works when we actually want
-Wno-foo.
gdb/ChangeLog:
2015-12-16 Pedro Alves <palves@redhat.com>
* configure.ac (compiler warning flags): When testing a
-Wno-foo option, check whether -Wfoo works instead.
* configure: Regenerate.
gdb/gdbserver/ChangeLog:
2015-12-16 Pedro Alves <palves@redhat.com>
* configure.ac (compiler warning flags): When testing a
-Wno-foo option, check whether -Wfoo works instead.
* configure: Regenerate.
Diffstat (limited to 'gdb/configure.ac')
-rw-r--r-- | gdb/configure.ac | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/gdb/configure.ac b/gdb/configure.ac index ebd797b..b9d8f8b 100644 --- a/gdb/configure.ac +++ b/gdb/configure.ac @@ -2007,14 +2007,23 @@ then # Separate out the -Werror flag as some files just cannot be # compiled with it enabled. for w in ${build_warnings}; do + # GCC does not complain about -Wno-unknown-warning. Invert + # and test -Wunknown-warning instead. + case $w in + -Wno-*) + wtest=`echo $w | sed 's/-Wno-/-W/g'` ;; + *) + wtest=$w ;; + esac + case $w in -Werr*) WERROR_CFLAGS=-Werror ;; *) # Check whether GCC accepts it. saved_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $w" + CFLAGS="$CFLAGS $wtest" saved_CXXFLAGS="$CXXFLAGS" - CXXFLAGS="$CXXFLAGS $w" + CXXFLAGS="$CXXFLAGS $wtest" AC_TRY_COMPILE([],[],WARN_CFLAGS="${WARN_CFLAGS} $w",) CFLAGS="$saved_CFLAGS" CXXFLAGS="$saved_CXXFLAGS" |