aboutsummaryrefslogtreecommitdiffstats
path: root/macros/need-declaration.m4
diff options
context:
space:
mode:
authorRaja R Harinath <harinath@src.gnome.org>1998-07-16 07:47:31 +0800
committerRaja R Harinath <harinath@src.gnome.org>1998-07-16 07:47:31 +0800
commit04472528403b0c43456e46b3fda3669c02949ee2 (patch)
tree4546519e9a36dba1c9dc54f88b3e92d9c76994b5 /macros/need-declaration.m4
parent1f4e3ff9bc7aea7966cf7df0503582ef1f7657b0 (diff)
downloadgsoc2013-evolution-04472528403b0c43456e46b3fda3669c02949ee2.tar
gsoc2013-evolution-04472528403b0c43456e46b3fda3669c02949ee2.tar.gz
gsoc2013-evolution-04472528403b0c43456e46b3fda3669c02949ee2.tar.bz2
gsoc2013-evolution-04472528403b0c43456e46b3fda3669c02949ee2.tar.lz
gsoc2013-evolution-04472528403b0c43456e46b3fda3669c02949ee2.tar.xz
gsoc2013-evolution-04472528403b0c43456e46b3fda3669c02949ee2.tar.zst
gsoc2013-evolution-04472528403b0c43456e46b3fda3669c02949ee2.zip
Add `need-declaration.m4'.
* Makefile.am (MACROS): Add `need-declaration.m4'. * gnome-support.m4 (AC_REPLACE_FUNCS): Add memmove, strtod, strtol, strtoul. (GCC_NEED_DECLARATIONS): New check. Check whether `gethostname' needs to be declared. * need-declaration.m4: New file. Stolen from EGCS. svn path=/trunk/; revision=281
Diffstat (limited to 'macros/need-declaration.m4')
-rw-r--r--macros/need-declaration.m442
1 files changed, 42 insertions, 0 deletions
diff --git a/macros/need-declaration.m4 b/macros/need-declaration.m4
new file mode 100644
index 0000000000..d5b7bc66d5
--- /dev/null
+++ b/macros/need-declaration.m4
@@ -0,0 +1,42 @@
+dnl See whether we need a declaration for a function.
+dnl GCC_NEED_DECLARATION(FUNCTION [, EXTRA-HEADER-FILES])
+AC_DEFUN(GCC_NEED_DECLARATION,
+[AC_MSG_CHECKING([whether $1 must be declared])
+AC_CACHE_VAL(gcc_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
+$2],
+[char *(*pfn) = (char *(*)) $1],
+eval "gcc_cv_decl_needed_$1=no", eval "gcc_cv_decl_needed_$1=yes")])
+if eval "test \"`echo '$gcc_cv_decl_needed_'$1`\" = yes"; then
+ AC_MSG_RESULT(yes)
+ gcc_need_declarations="$gcc_need_declarations $1"
+ gcc_tr_decl=NEED_DECLARATION_`echo $1 | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
+ AC_DEFINE_UNQUOTED($gcc_tr_decl)
+else
+ AC_MSG_RESULT(no)
+fi
+])dnl
+
+dnl Check multiple functions to see whether each needs a declaration.
+dnl GCC_NEED_DECLARATIONS(FUNCTION... [, EXTRA-HEADER-FILES])
+AC_DEFUN(GCC_NEED_DECLARATIONS,
+[for ac_func in $1
+do
+GCC_NEED_DECLARATION($ac_func, $2)
+done
+]
+)