dnl dnl Check for compiler mechanism to show functions in debugging dnl copied from an Ali patch floating on the internet dnl AC_DEFUN([AG_GST_CHECK_FUNCTION],[ dnl #1: __PRETTY_FUNCTION__ AC_MSG_CHECKING(whether $CC implements __PRETTY_FUNCTION__) AC_CACHE_VAL(gst_cv_have_pretty_function,[ AC_TRY_LINK([#include ], [printf("%s", __PRETTY_FUNCTION__);], gst_cv_have_pretty_function=yes, gst_cv_have_pretty_function=no) ]) AC_MSG_RESULT($gst_cv_have_pretty_function) if test "$gst_cv_have_pretty_function" = yes; then AC_DEFINE(HAVE_PRETTY_FUNCTION, 1, [defined if the compiler implements __PRETTY_FUNCTION__]) fi dnl #2: __FUNCTION__ AC_MSG_CHECKING(whether $CC implements __FUNCTION__) AC_CACHE_VAL(gst_cv_have_function,[ AC_TRY_LINK([#include ], [printf("%s", __FUNCTION__);], gst_cv_have_function=yes, gst_cv_have_function=no) ]) AC_MSG_RESULT($gst_cv_have_function) if test "$gst_cv_have_function" = yes; then AC_DEFINE(HAVE_FUNCTION, 1, [defined if the compiler implements __FUNCTION__]) fi dnl #3: __func__ AC_MSG_CHECKING(whether $CC implements __func__) AC_CACHE_VAL(gst_cv_have_func,[ AC_TRY_LINK([#include ], [printf("%s", __func__);], gst_cv_have_func=yes, gst_cv_have_func=no) ]) AC_MSG_RESULT($gst_cv_have_func) if test "$gst_cv_have_func" = yes; then AC_DEFINE(HAVE_FUNC, 1, [defined if the compiler implements __func__]) fi dnl now define FUNCTION to whatever works, and fallback to "" if test "$gst_cv_have_pretty_function" = yes; then function=__PRETTY_FUNCTION__ else if test "$gst_cv_have_function" = yes; then function=__FUNCTION__ else if test "$gst_cv_have_func" = yes; then function=__func__ else function=\"\" fi fi fi AC_DEFINE_UNQUOTED(GST_FUNCTION, $function, [macro to use to show function name]) ])