[BACK]Return to warning.m4 CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / external / gpl3 / binutils.old / dist / bfd

Annotation of src/external/gpl3/binutils.old/dist/bfd/warning.m4, Revision 1.1.1.4

1.1.1.2   christos    1: dnl Common configure.ac fragment
                      2: dnl
1.1.1.4 ! christos    3: dnl   Copyright (C) 2012-2018 Free Software Foundation, Inc.
1.1.1.2   christos    4: dnl
                      5: dnl This file is free software; you can redistribute it and/or modify
                      6: dnl it under the terms of the GNU General Public License as published by
                      7: dnl the Free Software Foundation; either version 3 of the License, or
                      8: dnl (at your option) any later version.
                      9: dnl
                     10: dnl This program is distributed in the hope that it will be useful,
                     11: dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
                     12: dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                     13: dnl GNU General Public License for more details.
                     14: dnl
                     15: dnl You should have received a copy of the GNU General Public License
                     16: dnl along with this program; see the file COPYING3.  If not see
                     17: dnl <http://www.gnu.org/licenses/>.
                     18: dnl
1.1       christos   19:
1.1.1.4 ! christos   20: # AC_EGREP_CPP_FOR_BUILD(PATTERN, PROGRAM,
        !            21: #              [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
        !            22: # ------------------------------------------------------
        !            23: AC_DEFUN([AC_EGREP_CPP_FOR_BUILD],
        !            24: [AC_LANG_PREPROC_REQUIRE()dnl
        !            25: AC_REQUIRE([AC_PROG_EGREP])dnl
        !            26: AC_LANG_CONFTEST([AC_LANG_SOURCE([[$2]])])
        !            27: AS_IF([dnl eval is necessary to expand ac_cpp.
        !            28: dnl Ultrix and Pyramid sh refuse to redirect output of eval, so use subshell.
        !            29: (eval "$ac_cpp_for_build conftest.$ac_ext") 2>&AS_MESSAGE_LOG_FD |
        !            30: dnl Quote $1 to prevent m4 from eating character classes
        !            31:   $EGREP "[$1]" >/dev/null 2>&1],
        !            32:   [$3],
        !            33:   [$4])
        !            34: rm -f conftest*
        !            35: ])# AC_EGREP_CPP_FOR_BUILD
        !            36:
        !            37:
1.1       christos   38: AC_DEFUN([AM_BINUTILS_WARNINGS],[
1.1.1.2   christos   39: # Set the 'development' global.
                     40: . $srcdir/../bfd/development.sh
                     41:
1.1.1.4 ! christos   42: # Set acp_cpp_for_build variable
        !            43: ac_cpp_for_build="$CC_FOR_BUILD -E $CPPFLAGS_FOR_BUILD"
        !            44:
1.1.1.3   christos   45: # Default set of GCC warnings to enable.
1.1       christos   46: GCC_WARN_CFLAGS="-W -Wall -Wstrict-prototypes -Wmissing-prototypes"
1.1.1.4 ! christos   47: GCC_WARN_CFLAGS_FOR_BUILD="-W -Wall -Wstrict-prototypes -Wmissing-prototypes"
1.1.1.3   christos   48:
                     49: # Add -Wshadow if the compiler is a sufficiently recent version of GCC.
1.1       christos   50: AC_EGREP_CPP([^[0-3]$],[__GNUC__],,GCC_WARN_CFLAGS="$GCC_WARN_CFLAGS -Wshadow")
                     51:
1.1.1.3   christos   52: # Add -Wstack-usage if the compiler is a sufficiently recent version of GCC.
                     53: AC_EGREP_CPP([^[0-4]$],[__GNUC__],,GCC_WARN_CFLAGS="$GCC_WARN_CFLAGS -Wstack-usage=262144")
                     54:
                     55: # Set WARN_WRITE_STRINGS if the compiler supports -Wwrite-strings.
                     56: WARN_WRITE_STRINGS=""
                     57: AC_EGREP_CPP([^[0-3]$],[__GNUC__],,WARN_WRITE_STRINGS="-Wwrite-strings")
                     58:
1.1.1.4 ! christos   59: # Verify CC_FOR_BUILD to be compatible with warning flags
        !            60:
        !            61: # Add -Wshadow if the compiler is a sufficiently recent version of GCC.
        !            62: AC_EGREP_CPP_FOR_BUILD([^[0-3]$],[__GNUC__],,GCC_WARN_CFLAGS_FOR_BUILD="$GCC_WARN_CFLAGS_FOR_BUILD -Wshadow")
        !            63:
        !            64: # Add -Wstack-usage if the compiler is a sufficiently recent version of GCC.
        !            65: AC_EGREP_CPP_FOR_BUILD([^[0-4]$],[__GNUC__],,GCC_WARN_CFLAGS_FOR_BUILD="$GCC_WARN_CFLAGS_FOR_BUILD -Wstack-usage=262144")
        !            66:
1.1       christos   67: AC_ARG_ENABLE(werror,
                     68:   [  --enable-werror         treat compile warnings as errors],
                     69:   [case "${enableval}" in
                     70:      yes | y) ERROR_ON_WARNING="yes" ;;
                     71:      no | n)  ERROR_ON_WARNING="no" ;;
                     72:      *) AC_MSG_ERROR(bad value ${enableval} for --enable-werror) ;;
                     73:    esac])
                     74:
                     75: # Disable -Wformat by default when using gcc on mingw
                     76: case "${host}" in
                     77:   *-*-mingw32*)
                     78:     if test "${GCC}" = yes -a -z "${ERROR_ON_WARNING}" ; then
                     79:       GCC_WARN_CFLAGS="$GCC_WARN_CFLAGS -Wno-format"
1.1.1.4 ! christos   80:       GCC_WARN_CFLAGS_FOR_BUILD="$GCC_WARN_CFLAGS_FOR_BUILD -Wno-format"
1.1       christos   81:     fi
                     82:     ;;
                     83:   *) ;;
                     84: esac
                     85:
1.1.1.2   christos   86: # Enable -Werror by default when using gcc.  Turn it off for releases.
                     87: if test "${GCC}" = yes -a -z "${ERROR_ON_WARNING}" -a "$development" = true ; then
1.1       christos   88:     ERROR_ON_WARNING=yes
                     89: fi
                     90:
                     91: NO_WERROR=
                     92: if test "${ERROR_ON_WARNING}" = yes ; then
                     93:     GCC_WARN_CFLAGS="$GCC_WARN_CFLAGS -Werror"
1.1.1.4 ! christos   94:     GCC_WARN_CFLAGS_FOR_BUILD="$GCC_WARN_CFLAGS_FOR_BUILD -Werror"
1.1       christos   95:     NO_WERROR="-Wno-error"
                     96: fi
1.1.1.2   christos   97:
1.1       christos   98: if test "${GCC}" = yes ; then
                     99:   WARN_CFLAGS="${GCC_WARN_CFLAGS}"
1.1.1.4 ! christos  100:   WARN_CFLAGS_FOR_BUILD="${GCC_WARN_CFLAGS_FOR_BUILD}"
1.1       christos  101: fi
                    102:
                    103: AC_ARG_ENABLE(build-warnings,
                    104: [  --enable-build-warnings enable build-time compiler warnings],
                    105: [case "${enableval}" in
1.1.1.4 ! christos  106:   yes) WARN_CFLAGS="${GCC_WARN_CFLAGS}"
        !           107:         WARN_CFLAGS_FOR_BUILD="${GCC_WARN_CFLAGS_FOR_BUILD}";;
1.1       christos  108:   no)  if test "${GCC}" = yes ; then
                    109:          WARN_CFLAGS="-w"
1.1.1.4 ! christos  110:       WARN_CFLAGS_FOR_BUILD="-w"
1.1       christos  111:        fi;;
                    112:   ,*)   t=`echo "${enableval}" | sed -e "s/,/ /g"`
1.1.1.4 ! christos  113:         WARN_CFLAGS="${GCC_WARN_CFLAGS} ${t}"
        !           114:         WARN_CFLAGS_FOR_BUILD="${GCC_WARN_CFLAGS_FOR_BUILD} ${t}";;
1.1       christos  115:   *,)   t=`echo "${enableval}" | sed -e "s/,/ /g"`
1.1.1.4 ! christos  116:         WARN_CFLAGS="${t} ${GCC_WARN_CFLAGS}"
        !           117:         WARN_CFLAGS_FOR_BUILD="${t} ${GCC_WARN_CFLAGS_FOR_BUILD}";;
        !           118:   *)    WARN_CFLAGS=`echo "${enableval}" | sed -e "s/,/ /g"`
        !           119:         WARN_CFLAGS_FOR_BUILD=`echo "${enableval}" | sed -e "s/,/ /g"`;;
1.1       christos  120: esac])
                    121:
                    122: if test x"$silent" != x"yes" && test x"$WARN_CFLAGS" != x""; then
                    123:   echo "Setting warning flags = $WARN_CFLAGS" 6>&1
                    124: fi
                    125:
                    126: AC_SUBST(WARN_CFLAGS)
1.1.1.4 ! christos  127: AC_SUBST(WARN_CFLAGS_FOR_BUILD)
1.1       christos  128: AC_SUBST(NO_WERROR)
1.1.1.3   christos  129:      AC_SUBST(WARN_WRITE_STRINGS)
1.1       christos  130: ])

CVSweb <webmaster@jp.NetBSD.org>