summaryrefslogtreecommitdiff
path: root/source4/lib
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2006-04-08 16:25:53 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 14:04:00 -0500
commit4ab73d6045aacd354894fe5edf0c5cfc75784064 (patch)
tree9504f41360cc4a99d059f36d69e11380df026e2c /source4/lib
parent4a61e4901ebc751fea57880424f9045e3bdf238e (diff)
downloadsamba-4ab73d6045aacd354894fe5edf0c5cfc75784064.tar.gz
samba-4ab73d6045aacd354894fe5edf0c5cfc75784064.tar.bz2
samba-4ab73d6045aacd354894fe5edf0c5cfc75784064.zip
r15000: Move some more autoconf tests out of build/m4/rewrite.m4
Guarantee availability of __FUNCTION__ in libreplace (This used to be commit 76b1576541210f2bb306ae17e0876b254e8dcead)
Diffstat (limited to 'source4/lib')
-rw-r--r--source4/lib/replace/README4
-rw-r--r--source4/lib/replace/config.m48
-rw-r--r--source4/lib/replace/replace.h4
-rw-r--r--source4/lib/util/capability.c1
-rw-r--r--source4/lib/util/capability.m417
-rw-r--r--source4/lib/util/debug.h10
6 files changed, 33 insertions, 11 deletions
diff --git a/source4/lib/replace/README b/source4/lib/replace/README
index a789f66b81..841bcf4b8d 100644
--- a/source4/lib/replace/README
+++ b/source4/lib/replace/README
@@ -65,6 +65,10 @@ UINT16_MAX
UINT32_MAX
UINT64_MAX
+Macros:
+va_copy
+__FUNCTION__
+
Prerequisites:
memset (for bzero)
syslog (for vsyslog)
diff --git a/source4/lib/replace/config.m4 b/source4/lib/replace/config.m4
index 99cecc630e..fb6e791353 100644
--- a/source4/lib/replace/config.m4
+++ b/source4/lib/replace/config.m4
@@ -152,4 +152,10 @@ if test x"$samba_cv_HAVE___VA_COPY" = x"yes"; then
fi
fi
-
+dnl __FUNCTION__ macro
+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/lib/replace/replace.h b/source4/lib/replace/replace.h
index f68c5b23a9..814936c49f 100644
--- a/source4/lib/replace/replace.h
+++ b/source4/lib/replace/replace.h
@@ -209,4 +209,8 @@ typedef bool int;
#define true (1)
#endif
+#ifndef HAVE_FUNCTION_MACRO
+#define __FUNCTION__ ("")
+#endif
+
#endif
diff --git a/source4/lib/util/capability.c b/source4/lib/util/capability.c
index 09af293087..683bc99723 100644
--- a/source4/lib/util/capability.c
+++ b/source4/lib/util/capability.c
@@ -114,4 +114,3 @@ _PUBLIC_ void oplock_set_capability(BOOL this_process, BOOL inherit)
set_inherited_process_capability(KERNEL_OPLOCK_CAPABILITY,inherit);
#endif
}
-
diff --git a/source4/lib/util/capability.m4 b/source4/lib/util/capability.m4
new file mode 100644
index 0000000000..2a95a607d5
--- /dev/null
+++ b/source4/lib/util/capability.m4
@@ -0,0 +1,17 @@
+AC_CACHE_CHECK([for irix specific capabilities],samba_cv_HAVE_IRIX_SPECIFIC_CAPABILITIES,[
+AC_TRY_RUN([#include <sys/types.h>
+#include <sys/capability.h>
+main() {
+ cap_t cap;
+ if ((cap = cap_get_proc()) == NULL)
+ exit(1);
+ cap->cap_effective |= CAP_NETWORK_MGT;
+ cap->cap_inheritable |= CAP_NETWORK_MGT;
+ cap_set_proc(cap);
+ exit(0);
+}
+],
+samba_cv_HAVE_IRIX_SPECIFIC_CAPABILITIES=yes,samba_cv_HAVE_IRIX_SPECIFIC_CAPABILITIES=no,samba_cv_HAVE_IRIX_SPECIFIC_CAPABILITIES=cross)])
+if test x"$samba_cv_HAVE_IRIX_SPECIFIC_CAPABILITIES" = x"yes"; then
+ AC_DEFINE(HAVE_IRIX_SPECIFIC_CAPABILITIES,1,[Whether IRIX specific capabilities are available])
+fi
diff --git a/source4/lib/util/debug.h b/source4/lib/util/debug.h
index 10d7d0697c..80155cdccf 100644
--- a/source4/lib/util/debug.h
+++ b/source4/lib/util/debug.h
@@ -23,14 +23,6 @@
* @brief Debugging macros
*/
-/* 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 {
@@ -54,7 +46,7 @@ extern int DEBUGLEVEL;
#define _DEBUG(level, body, header) do { \
if (DEBUGLVL(level)) { \
if (header) { \
- do_debug_header(level, __location__, FUNCTION_MACRO); \
+ do_debug_header(level, __location__, __FUNCTION__); \
} \
do_debug body; \
} \