Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
New module: mmalloc (mapped malloc)
[simgrid.git] / acmacro / bfd_need_declarations.m4
diff --git a/acmacro/bfd_need_declarations.m4 b/acmacro/bfd_need_declarations.m4
new file mode 100644 (file)
index 0000000..68ef008
--- /dev/null
@@ -0,0 +1,28 @@
+dnl See whether we need a declaration for a function.
+AC_DEFUN([BFD_NEED_DECLARATION],
+[AC_MSG_CHECKING([whether $1 must be declared])
+AC_CACHE_VAL(bfd_cv_decl_needed_$1,
+[AC_TRY_COMPILE([
+#include <stdio.h>
+#ifdef HAVE_STRING_H
+#include <string.h>
+#else
+#ifdef HAVE_STRINGS_H
+#include <strings.h>
+#endif
+#endif
+#ifdef HAVE_STDLIB_H
+#include <stdlib.h>
+#endif
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif],
+[char *(*pfn) = (char *(*)) $1],
+bfd_cv_decl_needed_$1=no, bfd_cv_decl_needed_$1=yes)])
+AC_MSG_RESULT($bfd_cv_decl_needed_$1)
+if test $bfd_cv_decl_needed_$1 = yes; then
+  AC_DEFINE([NEED_DECLARATION_]translit($1, [a-z], [A-Z]), 1,
+           [Define if $1 is not declared in system header files.])
+fi
+])dnl
+