Reviewed-by: Jeremy Huddleston <[email protected]> On Apr 25, 2011, at 20:35, Alan Coopersmith wrote:
> Check for gcc vs. intel vs. sun in one place, instead of > continuing to grow more places the check is replicated. > > Add clang check here too, as it's now seeing a lot of use to build X. > > Signed-off-by: Alan Coopersmith <[email protected]> > --- > xorg-macros.m4.in | 24 ++++++++++++++++++++---- > 1 files changed, 20 insertions(+), 4 deletions(-) > > diff --git a/xorg-macros.m4.in b/xorg-macros.m4.in > index 76462b5..bdf734e 100644 > --- a/xorg-macros.m4.in > +++ b/xorg-macros.m4.in > @@ -1290,6 +1290,23 @@ AM_CONDITIONAL(MAKE_LINT_LIB, [test x$make_lint_lib != > xno]) > > ]) # XORG_LINT_LIBRARY > > +# XORG_COMPILER_BRAND > +# ------------------- > +# Minimum version: 1.14.0 > +# > +# Checks for various brands of compilers and sets flags as appropriate: > +# GNU gcc - relies on AC_PROG_CC (via AC_PROG_CC_C99) to set GCC to "yes" > +# clang compiler - sets CLANGCC to "yes" > +# Intel compiler - sets INTELCC to "yes" > +# Sun/Oracle Solaris Studio cc - sets SUNCC to "yes" > +# > +AC_DEFUN([XORG_COMPILER_BRAND], [ > +AC_REQUIRE([AC_PROG_CC_C99]) > +AC_CHECK_DECL([__clang__], [CLANGCC="yes"], [CLANGCC="no"]) > +AC_CHECK_DECL([__INTEL_COMPILER], [INTELCC="yes"], [INTELCC="no"]) > +AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"]) > +]) # XORG_COMPILER_BRAND > + > # XORG_CWARNFLAGS > # --------------- > # Minimum version: 1.2.0 > @@ -1298,6 +1315,7 @@ AM_CONDITIONAL(MAKE_LINT_LIB, [test x$make_lint_lib != > xno]) > # > AC_DEFUN([XORG_CWARNFLAGS], [ > AC_REQUIRE([AC_PROG_CC_C99]) > +AC_REQUIRE([XORG_COMPILER_BRAND]) > if test "x$GCC" = xyes ; then > CWARNFLAGS="-Wall -Wpointer-arith -Wstrict-prototypes > -Wmissing-prototypes \ > -Wmissing-declarations -Wnested-externs -fno-strict-aliasing \ > @@ -1308,7 +1326,6 @@ if test "x$GCC" = xyes ; then > ;; > esac > else > - AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"]) > if test "x$SUNCC" = "xyes"; then > CWARNFLAGS="-v" > fi > @@ -1324,6 +1341,7 @@ AC_SUBST(CWARNFLAGS) > AC_DEFUN([XORG_STRICT_OPTION], [ > # If the module's configure.ac calls AC_PROG_CC later on, CC gets set to C89 > AC_REQUIRE([AC_PROG_CC_C99]) > +AC_REQUIRE([XORG_COMPILER_BRAND]) > AC_REQUIRE([XORG_CWARNFLAGS]) > > AC_ARG_ENABLE(strict-compilation, > @@ -1331,13 +1349,11 @@ AC_ARG_ENABLE(strict-compilation, > [Enable all warnings from compiler and make them > errors (default: disabled)]), > [STRICT_COMPILE=$enableval], [STRICT_COMPILE=no]) > if test "x$STRICT_COMPILE" = "xyes"; then > - AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"]) > - AC_CHECK_DECL([__INTEL_COMPILER], [INTELCC="yes"], [INTELCC="no"]) > if test "x$GCC" = xyes ; then > STRICT_CFLAGS="-pedantic -Werror" > elif test "x$SUNCC" = "xyes"; then > STRICT_CFLAGS="-errwarn" > - elif test "x$INTELCC" = "xyes"; then > + elif test "x$INTELCC" = "xyes"; then > STRICT_CFLAGS="-Werror" > fi > fi > -- > 1.7.3.2 > > _______________________________________________ > [email protected]: X.Org development > Archives: http://lists.x.org/archives/xorg-devel > Info: http://lists.x.org/mailman/listinfo/xorg-devel > _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
