summaryrefslogtreecommitdiff
path: root/source4/lib
diff options
context:
space:
mode:
Diffstat (limited to 'source4/lib')
-rw-r--r--source4/lib/replace/config.m48
-rw-r--r--source4/lib/replace/replace.h4
2 files changed, 12 insertions, 0 deletions
diff --git a/source4/lib/replace/config.m4 b/source4/lib/replace/config.m4
index bac38f6439..bf46bdcc58 100644
--- a/source4/lib/replace/config.m4
+++ b/source4/lib/replace/config.m4
@@ -167,6 +167,14 @@ 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])
+else
+ dnl __func__ macro
+ AC_CACHE_CHECK([for __func__ macro],samba_cv_HAVE_func_MACRO,[
+ AC_TRY_COMPILE([#include <stdio.h>], [printf("%s\n", __func__);],
+ samba_cv_HAVE_func_MACRO=yes,samba_cv_HAVE_func_MACRO=no)])
+ if test x"$samba_cv_HAVE_func_MACRO" = x"yes"; then
+ AC_DEFINE(HAVE_func_MACRO,1,[Whether there is a __func__ macro])
+ fi
fi
AC_CHECK_HEADERS([sys/param.h])
diff --git a/source4/lib/replace/replace.h b/source4/lib/replace/replace.h
index 77f42acc97..d0575f4b60 100644
--- a/source4/lib/replace/replace.h
+++ b/source4/lib/replace/replace.h
@@ -212,8 +212,12 @@ typedef int bool;
#endif
#ifndef HAVE_FUNCTION_MACRO
+#ifdef HAVE_func_MACRO
+#define __FUNCTION__ __func__
+#else
#define __FUNCTION__ ("")
#endif
+#endif
#ifdef HAVE_SYS_PARAM_H
#include <sys/param.h>