1#serial 18 2 3dnl This is just a wrapper function to encapsulate this kludge. 4dnl Putting it in a separate file like this helps share it between 5dnl different packages. 6AC_DEFUN([jm_CHECK_DECLS], 7[ 8 AC_REQUIRE([_jm_DECL_HEADERS]) 9 AC_REQUIRE([AC_HEADER_TIME]) 10 headers=' 11#include <stdio.h> 12#if HAVE_STRING_H 13# if !STDC_HEADERS && HAVE_MEMORY_H 14# include <memory.h> 15# endif 16# include <string.h> 17#else 18# if HAVE_STRINGS_H 19# include <strings.h> 20# endif 21#endif 22#if HAVE_STDLIB_H 23# include <stdlib.h> 24#endif 25#if HAVE_UNISTD_H 26# include <unistd.h> 27#endif 28 29#include <sys/types.h> 30#if TIME_WITH_SYS_TIME 31# include <sys/time.h> 32# include <time.h> 33#else 34# if HAVE_SYS_TIME_H 35# include <sys/time.h> 36# else 37# include <time.h> 38# endif 39#endif 40 41#if HAVE_UTMP_H 42# include <utmp.h> 43#endif 44 45#if HAVE_GRP_H 46# include <grp.h> 47#endif 48 49#if HAVE_PWD_H 50# include <pwd.h> 51#endif 52' 53 54 AC_CHECK_DECLS([ 55 free, 56 getenv, 57 geteuid, 58 getgrgid, 59 getlogin, 60 getpwuid, 61 getuid, 62 getutent, 63 lseek, 64 malloc, 65 memchr, 66 memrchr, 67 nanosleep, 68 realloc, 69 stpcpy, 70 strndup, 71 strnlen, 72 strstr, 73 strtoul, 74 strtoull, 75 ttyname], , , $headers) 76]) 77 78dnl FIXME: when autoconf has support for it. 79dnl This is a little helper so we can require these header checks. 80AC_DEFUN([_jm_DECL_HEADERS], 81[ 82 AC_REQUIRE([AC_HEADER_STDC]) 83 AC_CHECK_HEADERS(grp.h memory.h pwd.h string.h strings.h stdlib.h \ 84 unistd.h sys/time.h utmp.h utmpx.h) 85]) 86