dnl $Id$ dnl See whether we need a declaration for a function. dnl Copyright (C) 2003 Jan Kratochvil dnl dnl This program is free software; you can redistribute it and/or modify dnl it under the terms of the GNU General Public License as published by dnl the Free Software Foundation; exactly version 2 of June 1991 is required dnl dnl This program is distributed in the hope that it will be useful, dnl but WITHOUT ANY WARRANTY; without even the implied warranty of dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the dnl GNU General Public License for more details. dnl dnl You should have received a copy of the GNU General Public License dnl along with this program; if not, write to the Free Software dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 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 #ifdef HAVE_STRING_H #include #else #ifdef HAVE_STRINGS_H #include #endif #endif #ifdef HAVE_STDLIB_H #include #endif #ifdef HAVE_UNISTD_H #include #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 ] )