Blame m4/as-compiler-flag.m4

Packit f228a3
dnl as-compiler-flag.m4 0.1.0
Packit f228a3
Packit f228a3
dnl autostars m4 macro for detection of compiler flags
Packit f228a3
Packit f228a3
dnl David Schleef <ds@schleef.org>
Packit f228a3
Packit f228a3
dnl $Id: as-compiler-flag.m4,v 1.1 2005/12/15 23:35:19 ds Exp $
Packit f228a3
Packit f228a3
dnl AS_COMPILER_FLAG(CFLAGS, ACTION-IF-ACCEPTED, [ACTION-IF-NOT-ACCEPTED])
Packit f228a3
dnl Tries to compile with the given CFLAGS.
Packit f228a3
dnl Runs ACTION-IF-ACCEPTED if the compiler can compile with the flags,
Packit f228a3
dnl and ACTION-IF-NOT-ACCEPTED otherwise.
Packit f228a3
Packit f228a3
AC_DEFUN([AS_COMPILER_FLAG],
Packit f228a3
[
Packit f228a3
  AC_MSG_CHECKING([to see if compiler understands $1])
Packit f228a3
Packit f228a3
  save_CFLAGS="$CFLAGS"
Packit f228a3
  CFLAGS="$CFLAGS $1"
Packit f228a3
Packit f228a3
  AC_TRY_COMPILE([ ], [], [flag_ok=yes], [flag_ok=no])
Packit f228a3
  CFLAGS="$save_CFLAGS"
Packit f228a3
Packit f228a3
  if test "X$flag_ok" = Xyes ; then
Packit f228a3
    m4_ifvaln([$2],[$2])
Packit f228a3
    true
Packit f228a3
  else
Packit f228a3
    m4_ifvaln([$3],[$3])
Packit f228a3
    true
Packit f228a3
  fi
Packit f228a3
  AC_MSG_RESULT([$flag_ok])
Packit f228a3
])
Packit f228a3
Packit f228a3
dnl AS_COMPILER_FLAGS(VAR, FLAGS)
Packit f228a3
dnl Tries to compile with the given CFLAGS.
Packit f228a3
Packit f228a3
AC_DEFUN([AS_COMPILER_FLAGS],
Packit f228a3
[
Packit f228a3
  list=$2
Packit f228a3
  flags_supported=""
Packit f228a3
  flags_unsupported=""
Packit f228a3
  AC_MSG_CHECKING([for supported compiler flags])
Packit f228a3
  for each in $list
Packit f228a3
  do
Packit f228a3
    save_CFLAGS="$CFLAGS"
Packit f228a3
    CFLAGS="$CFLAGS $each"
Packit f228a3
    AC_TRY_COMPILE([ ], [], [flag_ok=yes], [flag_ok=no])
Packit f228a3
    CFLAGS="$save_CFLAGS"
Packit f228a3
Packit f228a3
    if test "X$flag_ok" = Xyes ; then
Packit f228a3
      flags_supported="$flags_supported $each"
Packit f228a3
    else
Packit f228a3
      flags_unsupported="$flags_unsupported $each"
Packit f228a3
    fi
Packit f228a3
  done
Packit f228a3
  AC_MSG_RESULT([$flags_supported])
Packit f228a3
  if test "X$flags_unsupported" != X ; then
Packit f228a3
    AC_MSG_WARN([unsupported compiler flags: $flags_unsupported])
Packit f228a3
  fi
Packit f228a3
  $1="$$1 $flags_supported"
Packit f228a3
])
Packit f228a3