* configure.ac: Add Intel compiler (icc) support. Although Intel

tries really hard to make icc look like gcc, there are some
	  differences. It's very verbose with -Wall and it doesn't support
	  the individual -W options. We are going to ignore some of these
	  warnings.
This commit is contained in:
hasso 2005-03-27 13:07:23 +00:00
parent 44f8a75790
commit 1969e4b963
2 changed files with 43 additions and 6 deletions

View file

@ -1,3 +1,11 @@
2005-03-27 Hasso Tepper <hasso at quagga.net>
* configure.ac: Add Intel compiler (icc) support. Although Intel
tries really hard to make icc look like gcc, there are some
differences. It's very verbose with -Wall and it doesn't support
the individual -W options. We are going to ignore some of these
warnings.
2005-03-26 Hasso Tepper <hasso at quagga.net> 2005-03-26 Hasso Tepper <hasso at quagga.net>
* doc/defines.texi.in, lib/version.h.in: Update copyright string to * doc/defines.texi.in, lib/version.h.in: Update copyright string to

View file

@ -5,7 +5,7 @@
## Copyright (c) 1996, 97, 98, 99, 2000 Kunihiro Ishiguro <kunihiro@zebra.org> ## Copyright (c) 1996, 97, 98, 99, 2000 Kunihiro Ishiguro <kunihiro@zebra.org>
## Portions Copyright (c) 2003 Paul Jakma <paul@dishone.st> ## Portions Copyright (c) 2003 Paul Jakma <paul@dishone.st>
## ##
## $Id: configure.ac,v 1.91 2005/03/25 13:05:47 vincent Exp $ ## $Id: configure.ac,v 1.92 2005/03/27 13:07:23 hasso Exp $
AC_PREREQ(2.53) AC_PREREQ(2.53)
AC_INIT(Quagga, 0.99.0, [http://bugzilla.quagga.net]) AC_INIT(Quagga, 0.99.0, [http://bugzilla.quagga.net])
@ -49,10 +49,25 @@ elif test -n "$CFLAGS" ; then
cflags_specified=yes ; cflags_specified=yes ;
fi fi
dnl -------- dnl --------------------
dnl Check CC dnl Check CC and friends
dnl -------- dnl --------------------
AC_PROG_CC AC_PROG_CC
AC_PROG_CPP
AC_PROG_EGREP
dnl ------------------------------------------------------------------
dnl Intel compiler check. Although Intel tries really hard to make icc
dnl look like gcc, there are some differences. It's very verbose with
dnl -Wall and it doesn't support the individual -W options.
dnl ------------------------------------------------------------------
AC_MSG_CHECKING([whether we are using the Intel compiler])
AC_EGREP_CPP([^__INTEL_COMPILER], [__INTEL_COMPILER],
ICC="no"
AC_MSG_RESULT([no]),
ICC="yes"
AC_MSG_RESULT([yes])
)
dnl --------------------------------------------- dnl ---------------------------------------------
dnl If CLFAGS doesn\'t exist set default value dnl If CLFAGS doesn\'t exist set default value
@ -60,20 +75,34 @@ dnl AC_PROG_CC will have set minimal default
dnl already, eg "-O2 -g" for gcc, "-g" for others dnl already, eg "-O2 -g" for gcc, "-g" for others
dnl (Wall is gcc specific... have to make sure dnl (Wall is gcc specific... have to make sure
dnl gcc is being used before setting it) dnl gcc is being used before setting it)
dnl Intel icc 8.0 also sets __GNUC__, but
dnl doesn't support all these fancy -W options.
dnl --------------------------------------------- dnl ---------------------------------------------
dnl dnl
if test "x$cflags_specified" = "x" ; then if test "x$cflags_specified" = "x" ; then
if test "x${GCC}" = "xyes"; then if test "x${GCC}" = "xyes" && test "x${ICC}" = "xno"; then
CFLAGS="-Os -g -Wall -Wsign-compare -Wpointer-arith" CFLAGS="-Os -g -Wall -Wsign-compare -Wpointer-arith"
CFLAGS="${CFLAGS} -Wbad-function-cast -Wwrite-strings" CFLAGS="${CFLAGS} -Wbad-function-cast -Wwrite-strings"
fi fi
# TODO: conditionally addd -Wpacked if handled # TODO: conditionally addd -Wpacked if handled
fi fi
dnl ---------------------------------------------------------------------
dnl Intel compiler warnings we ignore:
dnl 279: controlling expression is constant.
dnl 869: parameter "xxx" was never referenced - to avoid massive warnings
dnl about "self", "vty", "argc" and "argv" never referenced in DEFUN
dnl macro.
dnl 981: operands are evaluated in unspecified order.
dnl ---------------------------------------------------------------------
if test "$ICC" = "yes"; then
CFLAGS="-Os -g -Wall -wd 279,869,981"
fi
dnl -------------- dnl --------------
dnl Check programs dnl Check programs
dnl -------------- dnl --------------
AC_PROG_CPP
AC_PROG_INSTALL AC_PROG_INSTALL
AC_PROG_MAKE_SET AC_PROG_MAKE_SET
AC_CHECK_TOOL(AR, ar) AC_CHECK_TOOL(AR, ar)