1dnl Copyright (C) 2004-2008 Kim Woelders 2dnl Copyright (C) 2008 Vincent Torri <vtorri at univ-evry dot fr> 3dnl That code is public domain and can be freely used or copied. 4dnl Originally snatched from somewhere... 5 6dnl Macro for checking if the compiler supports __attribute__ 7 8dnl Usage: AC_C___ATTRIBUTE__ 9dnl call AC_DEFINE for HAVE___ATTRIBUTE__ and __UNUSED__ 10dnl if the compiler supports __attribute__, HAVE___ATTRIBUTE__ is 11dnl defined to 1 and __UNUSED__ is defined to __attribute__((unused)) 12dnl otherwise, HAVE___ATTRIBUTE__ is not defined and __UNUSED__ is 13dnl defined to nothing. 14 15AC_DEFUN([AC_C___ATTRIBUTE__], 16[ 17 18AC_MSG_CHECKING([for __attribute__]) 19 20AC_CACHE_VAL([ac_cv___attribute__], 21 [AC_TRY_COMPILE( 22 [ 23#include <stdlib.h> 24 25int func(int x); 26int foo(int x __attribute__ ((unused))) 27{ 28 exit(1); 29} 30 ], 31 [], 32 [ac_cv___attribute__="yes"], 33 [ac_cv___attribute__="no"] 34 )]) 35 36AC_MSG_RESULT($ac_cv___attribute__) 37 38if test "x${ac_cv___attribute__}" = "xyes" ; then 39 AC_DEFINE([HAVE___ATTRIBUTE__], [1], [Define to 1 if your compiler has __attribute__]) 40 AC_DEFINE([__UNUSED__], [__attribute__((unused))], [Macro declaring a function argument to be unused]) 41 else 42 AC_DEFINE([__UNUSED__], [], [Macro declaring a function argument to be unused]) 43fi 44 45]) 46 47dnl End of ac_attribute.m4 48