Move gdb/warning.m4 to gdbsupport
authorSimon Marchi <simon.marchi@efficios.com>
Tue, 11 Feb 2020 15:51:43 +0000 (10:51 -0500)
committerSimon Marchi <simon.marchi@efficios.com>
Tue, 11 Feb 2020 15:51:43 +0000 (10:51 -0500)
This file is used by gdbsupport, gdbserver and gdb, so I think it
belongs in gdbsupport.  Move it there and update the references the
various acinclude.m4 files.

gdbsupport/ChangeLog:

* warning.m4: Move here, from gdb/warning.m4.
* acinclude.m4: Update warning.m4 path.
* Makefile.in: Re-generate.

gdbserver/ChangeLog:

* acinclude.m4: Update warning.m4 path.

gdb/ChangeLog:

* acinclude: Update warning.m4 path.
* warning.m4: Move to gdbsupport.

gdb/ChangeLog
gdb/acinclude.m4
gdb/warning.m4 [deleted file]
gdbserver/ChangeLog
gdbserver/acinclude.m4
gdbsupport/ChangeLog
gdbsupport/Makefile.in
gdbsupport/acinclude.m4
gdbsupport/warning.m4 [new file with mode: 0644]

index 4f104bc8df134936a9830941771716c816f982cd..fcb7980c367755b3c8c02930e3a4838e6b56b648 100644 (file)
@@ -1,3 +1,8 @@
+2020-02-11  Simon Marchi  <simon.marchi@efficios.com>
+
+       * acinclude: Update warning.m4 path.
+       * warning.m4: Move to gdbsupport.
+
 2020-02-11  Tom Tromey  <tromey@adacore.com>
 
        * remote.c (remote_console_output): Update.
index d60b2fe19c16ba30fd644deb94d03739e8198379..14304bbe50ff037710f34a1ae167baee5d9adab9 100644 (file)
@@ -10,7 +10,7 @@ m4_include(acx_configure_dir.m4)
 m4_include(transform.m4)
 
 # This gets AM_GDB_WARNINGS.
-m4_include(warning.m4)
+m4_include(../gdbsupport/warning.m4)
 
 # AM_GDB_UBSAN
 m4_include(sanitize.m4)
diff --git a/gdb/warning.m4 b/gdb/warning.m4
deleted file mode 100644 (file)
index e2b8a43..0000000
+++ /dev/null
@@ -1,159 +0,0 @@
-dnl Autoconf configure script for GDB, the GNU debugger.
-dnl Copyright (C) 1995-2020 Free Software Foundation, Inc.
-dnl
-dnl This file is part of GDB.
-dnl
-dnl This program is free software; you can redistribute it and/or modify
-dnl it under the terms of the GNU General Public License as published by
-dnl the Free Software Foundation; either version 3 of the License, or
-dnl (at your option) any later version.
-dnl
-dnl This program is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-dnl GNU General Public License for more details.
-dnl
-dnl You should have received a copy of the GNU General Public License
-dnl along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-AC_DEFUN([AM_GDB_WARNINGS],[
-AC_ARG_ENABLE(werror,
-  AS_HELP_STRING([--enable-werror], [treat compile warnings as errors]),
-  [case "${enableval}" in
-     yes | y) ERROR_ON_WARNING="yes" ;;
-     no | n)  ERROR_ON_WARNING="no" ;;
-     *) AC_MSG_ERROR(bad value ${enableval} for --enable-werror) ;;
-   esac])
-
-# Enable -Werror by default when using gcc.  Turn it off for releases.
-if test "${GCC}" = yes -a -z "${ERROR_ON_WARNING}" && $development; then
-    ERROR_ON_WARNING=yes
-fi
-
-WERROR_CFLAGS=""
-if test "${ERROR_ON_WARNING}" = yes ; then
-    WERROR_CFLAGS="-Werror"
-fi
-
-# The options we'll try to enable.
-build_warnings="-Wall -Wpointer-arith \
--Wno-unused -Wunused-value -Wunused-variable -Wunused-function \
--Wno-switch -Wno-char-subscripts \
--Wempty-body -Wunused-but-set-parameter -Wunused-but-set-variable \
--Wno-sign-compare -Wno-error=maybe-uninitialized \
--Wno-mismatched-tags \
--Wno-error=deprecated-register \
--Wsuggest-override \
--Wimplicit-fallthrough=3 \
--Wduplicated-cond \
--Wshadow=local \
--Wdeprecated-copy \
--Wdeprecated-copy-dtor \
--Wredundant-move \
--Wmissing-declarations"
-
-case "${host}" in
-  *-*-mingw32*)
-    # Enable -Wno-format by default when using gcc on mingw since many
-    # GCC versions complain about %I64.
-    build_warnings="$build_warnings -Wno-format" ;;
-  *-*-solaris*)
-    # Solaris 11.4 <python2.7/ceval.h> uses #pragma no_inline that GCC
-    # doesn't understand.
-    build_warnings="$build_warnings -Wno-unknown-pragmas"
-    # Solaris 11 <unistd.h> marks vfork deprecated.
-    build_warnings="$build_warnings -Wno-deprecated-declarations" ;;
-  *)
-    # Note that gcc requires -Wformat for -Wformat-nonliteral to work,
-    # but there's a special case for this below.
-    build_warnings="$build_warnings -Wformat-nonliteral" ;;
-esac
-
-AC_ARG_ENABLE(build-warnings,
-AS_HELP_STRING([--enable-build-warnings], [enable build-time compiler warnings if gcc is used]),
-[case "${enableval}" in
-  yes) ;;
-  no)  build_warnings="-w";;
-  ,*)   t=`echo "${enableval}" | sed -e "s/,/ /g"`
-        build_warnings="${build_warnings} ${t}";;
-  *,)   t=`echo "${enableval}" | sed -e "s/,/ /g"`
-        build_warnings="${t} ${build_warnings}";;
-  *)    build_warnings=`echo "${enableval}" | sed -e "s/,/ /g"`;;
-esac
-if test x"$silent" != x"yes" && test x"$build_warnings" != x""; then
-  echo "Setting compiler warning flags = $build_warnings" 6>&1
-fi])dnl
-AC_ARG_ENABLE(gdb-build-warnings,
-AS_HELP_STRING([--enable-gdb-build-warnings], [enable GDB specific build-time compiler warnings if gcc is used]),
-[case "${enableval}" in
-  yes) ;;
-  no)  build_warnings="-w";;
-  ,*)   t=`echo "${enableval}" | sed -e "s/,/ /g"`
-        build_warnings="${build_warnings} ${t}";;
-  *,)   t=`echo "${enableval}" | sed -e "s/,/ /g"`
-        build_warnings="${t} ${build_warnings}";;
-  *)    build_warnings=`echo "${enableval}" | sed -e "s/,/ /g"`;;
-esac
-if test x"$silent" != x"yes" && test x"$build_warnings" != x""; then
-  echo "Setting GDB specific compiler warning flags = $build_warnings" 6>&1
-fi])dnl
-
-# The set of warnings supported by a C++ compiler is not the same as
-# of the C compiler.
-AC_LANG_PUSH([C++])
-
-WARN_CFLAGS=""
-if test "x${build_warnings}" != x -a "x$GCC" = xyes
-then
-    AC_MSG_CHECKING(compiler warning flags)
-    # 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'` ;;
-        -Wformat-nonliteral)
-               # gcc requires -Wformat before -Wformat-nonliteral
-               # will work, so stick them together.
-               w="-Wformat $w"
-               wtest="$w"
-               ;;
-       *)
-               wtest=$w ;;
-       esac
-
-       case $w in
-       -Werr*) WERROR_CFLAGS=-Werror ;;
-       *)
-           # Check whether GCC accepts it.
-           saved_CFLAGS="$CFLAGS"
-           CFLAGS="$CFLAGS -Werror $wtest"
-           saved_CXXFLAGS="$CXXFLAGS"
-           CXXFLAGS="$CXXFLAGS -Werror $wtest"
-           if test "x$w" = "x-Wunused-variable"; then
-             # Check for https://gcc.gnu.org/bugzilla/show_bug.cgi?id=38958,
-             # fixed in GCC 4.9.  This test is derived from the gdb
-             # source code that triggered this bug in GCC.
-             AC_TRY_COMPILE(
-               [struct scoped_restore_base {};
-                 struct scoped_restore_tmpl : public scoped_restore_base {
-                  ~scoped_restore_tmpl() {}
-                };],
-               [const scoped_restore_base &b = scoped_restore_tmpl();],
-               WARN_CFLAGS="${WARN_CFLAGS} $w",)
-           else
-             AC_TRY_COMPILE([],[],WARN_CFLAGS="${WARN_CFLAGS} $w",)
-           fi
-           CFLAGS="$saved_CFLAGS"
-           CXXFLAGS="$saved_CXXFLAGS"
-       esac
-    done
-    AC_MSG_RESULT(${WARN_CFLAGS} ${WERROR_CFLAGS})
-fi
-AC_SUBST(WARN_CFLAGS)
-AC_SUBST(WERROR_CFLAGS)
-
-AC_LANG_POP([C++])
-])
index 4f3e8cb247859ef8692e87597441b1b6dc7890e6..05620affa925509c84f6f7be9c92367f3277baf3 100644 (file)
@@ -1,3 +1,7 @@
+2020-02-11  Simon Marchi  <simon.marchi@efficios.com>
+
+       * acinclude.m4: Update warning.m4 path.
+
 2020-02-09  Hannes Domani  <ssbssa@yahoo.de>
 
        * win32-low.c (win32_clear_inferiors): Reset siginfo_er.
index 5a284515c82ba10f68da04592d8a7e01b8da8e38..6ed43ddd5219ec7e134ec0e3957f0475d7e1a92e 100644 (file)
@@ -3,8 +3,8 @@ m4_include(../bfd/bfd.m4)
 
 m4_include(../gdb/acx_configure_dir.m4)
 
-# This gets AM_GDB_WARNINGS.
-m4_include(../gdb/warning.m4)
+dnl This gets AM_GDB_WARNINGS.
+m4_include(../gdbsupport/warning.m4)
 
 dnl This gets autoconf bugfixes
 m4_include(../config/override.m4)
index 4a820acf527ed2ec4d907cb9e705ca617ea22e9b..f03bb34bac13407b597004bc2bb5486fa72f7928 100644 (file)
@@ -1,3 +1,9 @@
+2020-02-11  Simon Marchi  <simon.marchi@efficios.com>
+
+       * warning.m4: Move here, from gdb/warning.m4.
+       * acinclude.m4: Update warning.m4 path.
+       * Makefile.in: Re-generate.
+
 2020-02-11  Simon Marchi  <simon.marchi@efficios.com>
 
        * acinclude.m4: Include ../gdb/warning.m4.
index 91164175bc0462f314e295e7e5711ebf29cbf008..be4d53545311145fb0e9f78d777ab7d47855ff3c 100644 (file)
@@ -124,7 +124,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/codeset.m4 \
        $(top_srcdir)/../gdb/ax_cxx_compile_stdcxx.m4 \
        $(top_srcdir)/../gdb/libiberty.m4 \
        $(top_srcdir)/../gdb/selftest.m4 \
-       $(top_srcdir)/../gdb/ptrace.m4 $(top_srcdir)/../gdb/warning.m4 \
+       $(top_srcdir)/../gdb/ptrace.m4 $(top_srcdir)/warning.m4 \
        $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
index 3598b201b94b882c1da0ef4edfc22d6a1cc1a527..d638ebcb543a0d595c022bca36c693e1a4271ad1 100644 (file)
@@ -7,4 +7,4 @@ m4_include([../gdb/selftest.m4])
 m4_include([../gdb/ptrace.m4])
 
 dnl This gets AM_GDB_WARNINGS.
-m4_include(../gdb/warning.m4)
+m4_include(warning.m4)
diff --git a/gdbsupport/warning.m4 b/gdbsupport/warning.m4
new file mode 100644 (file)
index 0000000..e2b8a43
--- /dev/null
@@ -0,0 +1,159 @@
+dnl Autoconf configure script for GDB, the GNU debugger.
+dnl Copyright (C) 1995-2020 Free Software Foundation, Inc.
+dnl
+dnl This file is part of GDB.
+dnl
+dnl This program is free software; you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation; either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+AC_DEFUN([AM_GDB_WARNINGS],[
+AC_ARG_ENABLE(werror,
+  AS_HELP_STRING([--enable-werror], [treat compile warnings as errors]),
+  [case "${enableval}" in
+     yes | y) ERROR_ON_WARNING="yes" ;;
+     no | n)  ERROR_ON_WARNING="no" ;;
+     *) AC_MSG_ERROR(bad value ${enableval} for --enable-werror) ;;
+   esac])
+
+# Enable -Werror by default when using gcc.  Turn it off for releases.
+if test "${GCC}" = yes -a -z "${ERROR_ON_WARNING}" && $development; then
+    ERROR_ON_WARNING=yes
+fi
+
+WERROR_CFLAGS=""
+if test "${ERROR_ON_WARNING}" = yes ; then
+    WERROR_CFLAGS="-Werror"
+fi
+
+# The options we'll try to enable.
+build_warnings="-Wall -Wpointer-arith \
+-Wno-unused -Wunused-value -Wunused-variable -Wunused-function \
+-Wno-switch -Wno-char-subscripts \
+-Wempty-body -Wunused-but-set-parameter -Wunused-but-set-variable \
+-Wno-sign-compare -Wno-error=maybe-uninitialized \
+-Wno-mismatched-tags \
+-Wno-error=deprecated-register \
+-Wsuggest-override \
+-Wimplicit-fallthrough=3 \
+-Wduplicated-cond \
+-Wshadow=local \
+-Wdeprecated-copy \
+-Wdeprecated-copy-dtor \
+-Wredundant-move \
+-Wmissing-declarations"
+
+case "${host}" in
+  *-*-mingw32*)
+    # Enable -Wno-format by default when using gcc on mingw since many
+    # GCC versions complain about %I64.
+    build_warnings="$build_warnings -Wno-format" ;;
+  *-*-solaris*)
+    # Solaris 11.4 <python2.7/ceval.h> uses #pragma no_inline that GCC
+    # doesn't understand.
+    build_warnings="$build_warnings -Wno-unknown-pragmas"
+    # Solaris 11 <unistd.h> marks vfork deprecated.
+    build_warnings="$build_warnings -Wno-deprecated-declarations" ;;
+  *)
+    # Note that gcc requires -Wformat for -Wformat-nonliteral to work,
+    # but there's a special case for this below.
+    build_warnings="$build_warnings -Wformat-nonliteral" ;;
+esac
+
+AC_ARG_ENABLE(build-warnings,
+AS_HELP_STRING([--enable-build-warnings], [enable build-time compiler warnings if gcc is used]),
+[case "${enableval}" in
+  yes) ;;
+  no)  build_warnings="-w";;
+  ,*)   t=`echo "${enableval}" | sed -e "s/,/ /g"`
+        build_warnings="${build_warnings} ${t}";;
+  *,)   t=`echo "${enableval}" | sed -e "s/,/ /g"`
+        build_warnings="${t} ${build_warnings}";;
+  *)    build_warnings=`echo "${enableval}" | sed -e "s/,/ /g"`;;
+esac
+if test x"$silent" != x"yes" && test x"$build_warnings" != x""; then
+  echo "Setting compiler warning flags = $build_warnings" 6>&1
+fi])dnl
+AC_ARG_ENABLE(gdb-build-warnings,
+AS_HELP_STRING([--enable-gdb-build-warnings], [enable GDB specific build-time compiler warnings if gcc is used]),
+[case "${enableval}" in
+  yes) ;;
+  no)  build_warnings="-w";;
+  ,*)   t=`echo "${enableval}" | sed -e "s/,/ /g"`
+        build_warnings="${build_warnings} ${t}";;
+  *,)   t=`echo "${enableval}" | sed -e "s/,/ /g"`
+        build_warnings="${t} ${build_warnings}";;
+  *)    build_warnings=`echo "${enableval}" | sed -e "s/,/ /g"`;;
+esac
+if test x"$silent" != x"yes" && test x"$build_warnings" != x""; then
+  echo "Setting GDB specific compiler warning flags = $build_warnings" 6>&1
+fi])dnl
+
+# The set of warnings supported by a C++ compiler is not the same as
+# of the C compiler.
+AC_LANG_PUSH([C++])
+
+WARN_CFLAGS=""
+if test "x${build_warnings}" != x -a "x$GCC" = xyes
+then
+    AC_MSG_CHECKING(compiler warning flags)
+    # 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'` ;;
+        -Wformat-nonliteral)
+               # gcc requires -Wformat before -Wformat-nonliteral
+               # will work, so stick them together.
+               w="-Wformat $w"
+               wtest="$w"
+               ;;
+       *)
+               wtest=$w ;;
+       esac
+
+       case $w in
+       -Werr*) WERROR_CFLAGS=-Werror ;;
+       *)
+           # Check whether GCC accepts it.
+           saved_CFLAGS="$CFLAGS"
+           CFLAGS="$CFLAGS -Werror $wtest"
+           saved_CXXFLAGS="$CXXFLAGS"
+           CXXFLAGS="$CXXFLAGS -Werror $wtest"
+           if test "x$w" = "x-Wunused-variable"; then
+             # Check for https://gcc.gnu.org/bugzilla/show_bug.cgi?id=38958,
+             # fixed in GCC 4.9.  This test is derived from the gdb
+             # source code that triggered this bug in GCC.
+             AC_TRY_COMPILE(
+               [struct scoped_restore_base {};
+                 struct scoped_restore_tmpl : public scoped_restore_base {
+                  ~scoped_restore_tmpl() {}
+                };],
+               [const scoped_restore_base &b = scoped_restore_tmpl();],
+               WARN_CFLAGS="${WARN_CFLAGS} $w",)
+           else
+             AC_TRY_COMPILE([],[],WARN_CFLAGS="${WARN_CFLAGS} $w",)
+           fi
+           CFLAGS="$saved_CFLAGS"
+           CXXFLAGS="$saved_CXXFLAGS"
+       esac
+    done
+    AC_MSG_RESULT(${WARN_CFLAGS} ${WERROR_CFLAGS})
+fi
+AC_SUBST(WARN_CFLAGS)
+AC_SUBST(WERROR_CFLAGS)
+
+AC_LANG_POP([C++])
+])