ast_gcc_attribute.m4 808 B

123456789101112131415161718192021222324252627
  1. # Helper function to check for gcc attributes.
  2. # AST_GCC_ATTRIBUTE([attribute name], [attribute syntax], [attribute scope], [makeopts flag])
  3. AC_DEFUN([AST_GCC_ATTRIBUTE],
  4. [
  5. AC_MSG_CHECKING(for compiler 'attribute $1' support)
  6. saved_CFLAGS="$CFLAGS"
  7. CFLAGS="$CFLAGS -Wall -Wno-unused -Werror"
  8. m4_ifval([$4],$4=0)
  9. ax_cv_have_func_attribute_$1=0
  10. AC_COMPILE_IFELSE(
  11. [AC_LANG_PROGRAM(
  12. m4_ifval([$2],
  13. [$3 void __attribute__(($2)) *test(void *muffin, ...) ;],
  14. [$3 void __attribute__(($1)) *test(void *muffin, ...) {return (void *) 0;}]))],
  15. AC_MSG_RESULT(yes)
  16. m4_ifval([$4],$4=1)
  17. ax_cv_have_func_attribute_$1=1
  18. AC_DEFINE_UNQUOTED([HAVE_ATTRIBUTE_$1], 1, [Define to 1 if your GCC C compiler supports the '$1' attribute.]),
  19. AC_MSG_RESULT(no)
  20. )
  21. m4_ifval([$4],[AC_SUBST($4)])
  22. CFLAGS="$saved_CFLAGS"
  23. ]
  24. )