diff options
author | James Peach <jpeach@samba.org> | 2006-01-31 00:00:10 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:51:36 -0500 |
commit | b98a5bf92222e37eb62422f65ecc048511a8f256 (patch) | |
tree | 8165f61779632e5b5b2bd3510755b125b80d4623 | |
parent | bf75891495f3ea99fd6d10a521a7bd5a13f624f2 (diff) | |
download | samba-b98a5bf92222e37eb62422f65ecc048511a8f256.tar.gz samba-b98a5bf92222e37eb62422f65ecc048511a8f256.tar.bz2 samba-b98a5bf92222e37eb62422f65ecc048511a8f256.zip |
r13243: Bring __FUNCTION__ checks across from Samba 3.
(This used to be commit 92eec049628a79f8d9496c6d199d6de0238e7940)
-rw-r--r-- | source4/build/m4/check_cc.m4 | 8 | ||||
-rw-r--r-- | source4/include/debug.h | 10 |
2 files changed, 17 insertions, 1 deletions
diff --git a/source4/build/m4/check_cc.m4 b/source4/build/m4/check_cc.m4 index f65adbbca4..a2d2bae79b 100644 --- a/source4/build/m4/check_cc.m4 +++ b/source4/build/m4/check_cc.m4 @@ -187,3 +187,11 @@ fi AC_SUBST(HOSTCC) AC_PATH_PROG(GCOV,gcov) + +AC_CACHE_CHECK([for __FUNCTION__ macro],samba_cv_HAVE_FUNCTION_MACRO,[ +AC_TRY_COMPILE([#include <stdio.h>], [printf("%s\n", __FUNCTION__);], +samba_cv_HAVE_FUNCTION_MACRO=yes,samba_cv_HAVE_FUNCTION_MACRO=no)]) +if test x"$samba_cv_HAVE_FUNCTION_MACRO" = x"yes"; then + AC_DEFINE(HAVE_FUNCTION_MACRO,1,[Whether there is a __FUNCTION__ macro]) +fi + diff --git a/source4/include/debug.h b/source4/include/debug.h index 40d04766e1..8ff937e7b9 100644 --- a/source4/include/debug.h +++ b/source4/include/debug.h @@ -18,6 +18,14 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +/* If we have these macros, we can add additional info to the header. */ + +#ifdef HAVE_FUNCTION_MACRO +#define FUNCTION_MACRO (__FUNCTION__) +#else +#define FUNCTION_MACRO ("") +#endif + /* the debug operations structure - contains function pointers to various debug implementations of each operation */ struct debug_ops { @@ -44,7 +52,7 @@ extern int DEBUGLEVEL; #define _DEBUG(level, body, header) do { \ if (DEBUGLVL(level)) { \ if (header) { \ - do_debug_header(level, __location__, __FUNCTION__); \ + do_debug_header(level, __location__, FUNCTION_MACRO); \ } \ do_debug body; \ } \ |