roken-frag.m4 revision 225736
1243789Sdimdnl $Id: roken-frag.m4 20639 2007-05-10 17:22:58Z lha $ 2243789Sdimdnl 3243789Sdimdnl some code to get roken working 4243789Sdimdnl 5243789Sdimdnl rk_ROKEN(subdir) 6243789Sdimdnl 7243789SdimAC_DEFUN([rk_ROKEN], [ 8243789Sdim 9243789SdimAC_REQUIRE([rk_CONFIG_HEADER]) 10243789Sdim 11243789SdimDIR_roken=roken 12243789SdimLIB_roken='$(top_builddir)/$1/libroken.la' 13243789SdimINCLUDES_roken='-I$(top_builddir)/$1 -I$(top_srcdir)/$1' 14243789Sdim 15243789Sdimdnl Checks for programs 16243789SdimAC_REQUIRE([AC_PROG_CC]) 17243789SdimAC_REQUIRE([AC_PROG_AWK]) 18243789SdimAC_REQUIRE([AC_OBJEXT]) 19243789SdimAC_REQUIRE([AC_EXEEXT]) 20243789SdimAC_REQUIRE([AC_PROG_LIBTOOL]) 21243789Sdim 22243789SdimAC_REQUIRE([AC_MIPS_ABI]) 23243789Sdim 24243789Sdimdnl C characteristics 25252723Sdim 26243789SdimAC_REQUIRE([AC_C___ATTRIBUTE__]) 27243789SdimAC_REQUIRE([AC_C_INLINE]) 28243789SdimAC_REQUIRE([AC_C_CONST]) 29243789Sdimrk_WFLAGS(-Wall -Wmissing-prototypes -Wpointer-arith -Wbad-function-cast -Wmissing-declarations -Wnested-externs) 30243789Sdim 31243789SdimAC_REQUIRE([rk_DB]) 32243789Sdim 33252723Sdimdnl C types 34252723Sdim 35243789SdimAC_REQUIRE([AC_TYPE_SIZE_T]) 36252723SdimAC_HAVE_TYPE([ssize_t],[#include <unistd.h>]) 37243789SdimAC_REQUIRE([AC_TYPE_PID_T]) 38243789SdimAC_REQUIRE([AC_TYPE_UID_T]) 39252723SdimAC_HAVE_TYPE([long long]) 40243789Sdim 41243789SdimAC_REQUIRE([rk_RETSIGTYPE]) 42252723Sdim 43243789Sdimdnl Checks for header files. 44243789SdimAC_REQUIRE([AC_HEADER_STDC]) 45263509SdimAC_REQUIRE([AC_HEADER_TIME]) 46243789Sdim 47243789SdimAC_CHECK_HEADERS([\ 48252723Sdim arpa/inet.h \ 49252723Sdim config.h \ 50252723Sdim crypt.h \ 51243789Sdim dirent.h \ 52243789Sdim errno.h \ 53243789Sdim err.h \ 54243789Sdim fcntl.h \ 55252723Sdim fnmatch.h \ 56252723Sdim grp.h \ 57243789Sdim ifaddrs.h \ 58243789Sdim netinet/in.h \ 59243789Sdim netinet/in6.h \ 60243789Sdim netinet/in_systm.h \ 61243789Sdim netinet6/in6.h \ 62243789Sdim paths.h \ 63243789Sdim poll.h \ 64243789Sdim pwd.h \ 65243789Sdim rpcsvc/ypclnt.h \ 66243789Sdim shadow.h \ 67243789Sdim stdint.h \ 68243789Sdim sys/bswap.h \ 69243789Sdim sys/ioctl.h \ 70243789Sdim sys/mman.h \ 71252723Sdim sys/param.h \ 72252723Sdim sys/resource.h \ 73252723Sdim sys/sockio.h \ 74243789Sdim sys/stat.h \ 75243789Sdim sys/time.h \ 76243789Sdim sys/tty.h \ 77243789Sdim sys/types.h \ 78252723Sdim sys/uio.h \ 79243789Sdim sys/utsname.h \ 80243789Sdim sys/wait.h \ 81243789Sdim syslog.h \ 82243789Sdim termios.h \ 83243789Sdim unistd.h \ 84243789Sdim userconf.h \ 85243789Sdim usersec.h \ 86243789Sdim util.h \ 87243789Sdim]) 88243789Sdim 89243789SdimAC_HAVE_TYPE([uintptr_t],[#ifdef HAVE_STDINT_H 90243789Sdim#include <stdint.h> 91243789Sdim#endif]) 92243789Sdim 93243789Sdimdnl Sunpro 5.2 has a vis.h which is something different. 94243789SdimAC_CHECK_HEADERS(vis.h, , , [ 95243789Sdim#include <vis.h> 96243789Sdim#ifndef VIS_SP 97243789Sdim#error invis 98243789Sdim#endif]) 99243789Sdim 100243789SdimAC_CHECK_HEADERS(netdb.h, , , [AC_INCLUDES_DEFAULT 101243789Sdim#ifdef HAVE_SYS_TYPES_H 102243789Sdim#include <sys/types.h> 103243789Sdim#endif 104243789Sdim]) 105243789Sdim 106252723SdimAC_CHECK_HEADERS(sys/socket.h, , , [AC_INCLUDES_DEFAULT 107252723Sdim#ifdef HAVE_SYS_TYPES_H 108243789Sdim#include <sys/types.h> 109243789Sdim#endif 110252723Sdim]) 111243789Sdim 112252723SdimAC_CHECK_HEADERS(net/if.h, , , [AC_INCLUDES_DEFAULT 113243789Sdim#ifdef HAVE_SYS_TYPES_H 114243789Sdim#include <sys/types.h> 115243789Sdim#endif 116243789Sdim#if HAVE_SYS_SOCKET_H 117243789Sdim#include <sys/socket.h> 118243789Sdim#endif]) 119243789Sdim 120243789SdimAC_CHECK_HEADERS(netinet6/in6_var.h, , , [AC_INCLUDES_DEFAULT 121243789Sdim#ifdef HAVE_SYS_TYPES_H 122243789Sdim#include <sys/types.h> 123243789Sdim#endif 124243789Sdim#if HAVE_SYS_SOCKET_H 125243789Sdim#include <sys/socket.h> 126243789Sdim#endif 127243789Sdim#ifdef HAVE_NETINET6_IN6_H 128243789Sdim#include <netinet6/in6.h> 129243789Sdim#endif 130243789Sdim]) 131243789Sdim 132243789SdimAC_CHECK_HEADERS(sys/sysctl.h, , , [AC_INCLUDES_DEFAULT 133243789Sdim#ifdef HAVE_SYS_PARAM_H 134243789Sdim#include <sys/param.h> 135243789Sdim#endif 136243789Sdim]) 137243789Sdim 138243789SdimAC_CHECK_HEADERS(sys/proc.h, , , [AC_INCLUDES_DEFAULT 139243789Sdim#ifdef HAVE_SYS_PARAM_H 140243789Sdim#include <sys/param.h> 141243789Sdim#endif 142243789Sdim]) 143243789Sdim 144243789SdimAC_REQUIRE([CHECK_NETINET_IP_AND_TCP]) 145243789Sdim 146243789SdimAM_CONDITIONAL(have_err_h, test "$ac_cv_header_err_h" = yes) 147243789SdimAM_CONDITIONAL(have_ifaddrs_h, test "$ac_cv_header_ifaddrs_h" = yes) 148243789SdimAM_CONDITIONAL(have_vis_h, test "$ac_cv_header_vis_h" = yes) 149252723Sdim 150243789Sdimdnl Check for functions and libraries 151243789Sdim 152243789SdimAC_FIND_FUNC(socket, socket) 153243789SdimAC_FIND_FUNC(gethostbyname, nsl) 154243789SdimAC_FIND_FUNC(syslog, syslog) 155243789Sdim 156243789SdimAC_KRB_IPV6 157243789Sdim 158243789SdimAC_FIND_FUNC(gethostbyname2, inet6 ip6) 159243789Sdim 160243789Sdimrk_RESOLV 161243789Sdim 162243789SdimAC_BROKEN_SNPRINTF 163243789SdimAC_BROKEN_VSNPRINTF 164243789Sdim 165243789SdimAC_BROKEN_GLOB 166243789Sdimif test "$ac_cv_func_glob_working" != yes; then 167243789Sdim AC_LIBOBJ(glob) 168243789Sdimfi 169243789SdimAM_CONDITIONAL(have_glob_h, test "$ac_cv_func_glob_working" = yes) 170243789Sdim 171243789Sdim 172243789SdimAC_CHECK_FUNCS([ \ 173263509Sdim asnprintf \ 174243789Sdim asprintf \ 175243789Sdim atexit \ 176243789Sdim cgetent \ 177243789Sdim getconfattr \ 178243789Sdim getprogname \ 179243789Sdim getrlimit \ 180243789Sdim getspnam \ 181243789Sdim initstate \ 182243789Sdim issetugid \ 183243789Sdim on_exit \ 184243789Sdim poll \ 185243789Sdim random \ 186243789Sdim setprogname \ 187243789Sdim setstate \ 188243789Sdim strsvis \ 189243789Sdim strunvis \ 190243789Sdim strvis \ 191243789Sdim strvisx \ 192243789Sdim svis \ 193243789Sdim sysconf \ 194243789Sdim sysctl \ 195243789Sdim uname \ 196243789Sdim unvis \ 197243789Sdim vasnprintf \ 198243789Sdim vasprintf \ 199243789Sdim vis \ 200243789Sdim]) 201243789Sdim 202243789Sdimif test "$ac_cv_func_cgetent" = no; then 203243789Sdim AC_LIBOBJ(getcap) 204252723Sdimfi 205243789SdimAM_CONDITIONAL(have_cgetent, test "$ac_cv_func_cgetent" = yes) 206243789Sdim 207252723SdimAC_REQUIRE([AC_FUNC_GETLOGIN]) 208252723Sdim 209252723SdimAC_REQUIRE([AC_FUNC_MMAP]) 210252723Sdim 211252723SdimAC_FIND_FUNC_NO_LIBS(getsockopt,, 212252723Sdim[#ifdef HAVE_SYS_TYPES_H 213252723Sdim#include <sys/types.h> 214243789Sdim#endif 215252723Sdim#ifdef HAVE_SYS_SOCKET_H 216252723Sdim#include <sys/socket.h> 217243789Sdim#endif], 218243789Sdim[0,0,0,0,0]) 219243789SdimAC_FIND_FUNC_NO_LIBS(setsockopt,, 220252723Sdim[#ifdef HAVE_SYS_TYPES_H 221252723Sdim#include <sys/types.h> 222243789Sdim#endif 223243789Sdim#ifdef HAVE_SYS_SOCKET_H 224243789Sdim#include <sys/socket.h> 225243789Sdim#endif], 226252723Sdim[0,0,0,0,0]) 227252723Sdim 228243789SdimAC_FIND_IF_NOT_BROKEN(hstrerror, resolv, 229243789Sdim[#ifdef HAVE_NETDB_H 230243789Sdim#include <netdb.h> 231252723Sdim#endif], 232252723Sdim17) 233243789SdimAC_NEED_PROTO([ 234243789Sdim#ifdef HAVE_NETDB_H 235243789Sdim#include <netdb.h> 236243789Sdim#endif], 237243789Sdimhstrerror) 238243789Sdim 239243789SdimAC_FOREACH([rk_func], [asprintf vasprintf asnprintf vasnprintf], 240243789Sdim [AC_NEED_PROTO([ 241243789Sdim #include <stdio.h> 242243789Sdim #include <string.h>], 243243789Sdim rk_func)]) 244243789Sdim 245243789SdimAC_FIND_FUNC_NO_LIBS(bswap16,, 246243789Sdim[#ifdef HAVE_SYS_BSWAP_H 247243789Sdim#include <sys/bswap.h> 248243789Sdim#endif],0) 249243789Sdim 250252723SdimAC_FIND_FUNC_NO_LIBS(bswap32,, 251252723Sdim[#ifdef HAVE_SYS_BSWAP_H 252243789Sdim#include <sys/bswap.h> 253252723Sdim#endif],0) 254252723Sdim 255252723SdimAC_FIND_FUNC_NO_LIBS(pidfile,util, 256243789Sdim[#ifdef HAVE_UTIL_H 257243789Sdim#include <util.h> 258243789Sdim#endif],0) 259243789Sdim 260243789SdimAC_FIND_IF_NOT_BROKEN(getaddrinfo,, 261243789Sdim[#ifdef HAVE_NETDB_H 262243789Sdim#include <netdb.h> 263243789Sdim#endif],[0,0,0,0]) 264243789Sdim 265243789SdimAC_FIND_IF_NOT_BROKEN(getnameinfo,, 266252723Sdim[#ifdef HAVE_NETDB_H 267243789Sdim#include <netdb.h> 268243789Sdim#endif],[0,0,0,0,0,0,0]) 269243789Sdim 270243789SdimAC_FIND_IF_NOT_BROKEN(freeaddrinfo,, 271243789Sdim[#ifdef HAVE_NETDB_H 272243789Sdim#include <netdb.h> 273243789Sdim#endif],[0]) 274243789Sdim 275243789SdimAC_FIND_IF_NOT_BROKEN(gai_strerror,, 276243789Sdim[#ifdef HAVE_NETDB_H 277243789Sdim#include <netdb.h> 278252723Sdim#endif],[0]) 279243789Sdim 280252723SdimAC_BROKEN([ \ 281243789Sdim chown \ 282243789Sdim copyhostent \ 283243789Sdim closefrom \ 284252723Sdim daemon \ 285243789Sdim ecalloc \ 286252723Sdim emalloc \ 287243789Sdim erealloc \ 288243789Sdim estrdup \ 289243789Sdim err \ 290243789Sdim errx \ 291243789Sdim fchown \ 292243789Sdim flock \ 293243789Sdim fnmatch \ 294243789Sdim freehostent \ 295243789Sdim getcwd \ 296243789Sdim getdtablesize \ 297243789Sdim getegid \ 298243789Sdim geteuid \ 299243789Sdim getgid \ 300243789Sdim gethostname \ 301243789Sdim getifaddrs \ 302243789Sdim getipnodebyaddr \ 303252723Sdim getipnodebyname \ 304252723Sdim getopt \ 305243789Sdim gettimeofday \ 306243789Sdim getuid \ 307243789Sdim getusershell \ 308243789Sdim initgroups \ 309243789Sdim innetgr \ 310243789Sdim iruserok \ 311252723Sdim localtime_r \ 312243789Sdim lstat \ 313263509Sdim memmove \ 314263509Sdim mkstemp \ 315263509Sdim putenv \ 316243789Sdim rcmd \ 317252723Sdim readv \ 318243789Sdim recvmsg \ 319243789Sdim sendmsg \ 320252723Sdim setegid \ 321252723Sdim setenv \ 322252723Sdim seteuid \ 323252723Sdim strcasecmp \ 324252723Sdim strdup \ 325243789Sdim strerror \ 326243789Sdim strftime \ 327243789Sdim strlcat \ 328243789Sdim strlcpy \ 329252723Sdim strlwr \ 330252723Sdim strncasecmp \ 331252723Sdim strndup \ 332252723Sdim strnlen \ 333252723Sdim strptime \ 334252723Sdim strsep \ 335252723Sdim strsep_copy \ 336252723Sdim strtok_r \ 337243789Sdim strupr \ 338243789Sdim swab \ 339252723Sdim timegm \ 340252723Sdim unsetenv \ 341252723Sdim verr \ 342252723Sdim verrx \ 343252723Sdim vsyslog \ 344252723Sdim vwarn \ 345252723Sdim vwarnx \ 346252723Sdim warn \ 347243789Sdim warnx \ 348243789Sdim writev \ 349243789Sdim]) 350243789Sdim 351243789SdimAM_CONDITIONAL(have_fnmatch_h, 352243789Sdim test "$ac_cv_header_fnmatch_h" = yes -a "$ac_cv_func_fnmatch" = yes) 353252723Sdim 354252723SdimAC_FOREACH([rk_func], [strndup strsep strtok_r], 355243789Sdim [AC_NEED_PROTO([#include <string.h>], rk_func)]) 356243789Sdim 357243789SdimAC_FOREACH([rk_func], [strsvis strunvis strvis strvisx svis unvis vis], 358243789Sdim[AC_NEED_PROTO([#ifdef HAVE_VIS_H 359243789Sdim#include <vis.h> 360243789Sdim#endif], rk_func)]) 361243789Sdim 362243789SdimAC_BROKEN2(inet_aton, 363252723Sdim[#ifdef HAVE_SYS_TYPES_H 364252723Sdim#include <sys/types.h> 365243789Sdim#endif 366243789Sdim#ifdef HAVE_SYS_SOCKET_H 367243789Sdim#include <sys/socket.h> 368252723Sdim#endif 369243789Sdim#ifdef HAVE_NETINET_IN_H 370252723Sdim#include <netinet/in.h> 371243789Sdim#endif 372252723Sdim#ifdef HAVE_ARPA_INET_H 373243789Sdim#include <arpa/inet.h> 374243789Sdim#endif], 375243789Sdim[0,0]) 376243789Sdim 377252723SdimAC_BROKEN2(inet_ntop, 378243789Sdim[#ifdef HAVE_SYS_TYPES_H 379252723Sdim#include <sys/types.h> 380243789Sdim#endif 381252723Sdim#ifdef HAVE_SYS_SOCKET_H 382243789Sdim#include <sys/socket.h> 383243789Sdim#endif 384243789Sdim#ifdef HAVE_NETINET_IN_H 385243789Sdim#include <netinet/in.h> 386243789Sdim#endif 387243789Sdim#ifdef HAVE_ARPA_INET_H 388243789Sdim#include <arpa/inet.h> 389243789Sdim#endif], 390243789Sdim[0, 0, 0, 0]) 391243789Sdim 392243789SdimAC_BROKEN2(inet_pton, 393243789Sdim[#ifdef HAVE_SYS_TYPES_H 394243789Sdim#include <sys/types.h> 395243789Sdim#endif 396243789Sdim#ifdef HAVE_SYS_SOCKET_H 397243789Sdim#include <sys/socket.h> 398243789Sdim#endif 399243789Sdim#ifdef HAVE_NETINET_IN_H 400243789Sdim#include <netinet/in.h> 401243789Sdim#endif 402243789Sdim#ifdef HAVE_ARPA_INET_H 403243789Sdim#include <arpa/inet.h> 404243789Sdim#endif], 405252723Sdim[0,0,0]) 406243789Sdim 407252723Sdimdnl 408243789Sdimdnl Check for sa_len in struct sockaddr, 409243789Sdimdnl needs to come before the getnameinfo test 410243789Sdimdnl 411243789SdimAC_HAVE_STRUCT_FIELD(struct sockaddr, sa_len, [#include <sys/types.h> 412243789Sdim#include <sys/socket.h>]) 413243789Sdim 414243789Sdimif test "$ac_cv_func_getaddrinfo" = "yes"; then 415243789Sdim rk_BROKEN_GETADDRINFO 416252723Sdim if test "$ac_cv_func_getaddrinfo_numserv" = no; then 417243789Sdim AC_LIBOBJ(getaddrinfo) 418243789Sdim AC_LIBOBJ(freeaddrinfo) 419243789Sdim fi 420243789Sdimfi 421243789Sdim 422243789SdimAC_NEED_PROTO([#include <stdlib.h>], setenv) 423243789SdimAC_NEED_PROTO([#include <stdlib.h>], unsetenv) 424243789SdimAC_NEED_PROTO([#include <unistd.h>], gethostname) 425243789SdimAC_NEED_PROTO([#include <unistd.h>], mkstemp) 426243789SdimAC_NEED_PROTO([#include <unistd.h>], getusershell) 427243789SdimAC_NEED_PROTO([#include <unistd.h>], daemon) 428243789SdimAC_NEED_PROTO([ 429243789Sdim#ifdef HAVE_SYS_TYPES_H 430243789Sdim#include <sys/types.h> 431243789Sdim#endif 432263509Sdim#ifdef HAVE_SYS_SOCKET_H 433263509Sdim#include <sys/socket.h> 434263509Sdim#endif 435263509Sdim#ifdef HAVE_NETINET_IN_H 436243789Sdim#include <netinet/in.h> 437263509Sdim#endif 438263509Sdim#ifdef HAVE_ARPA_INET_H 439263509Sdim#include <arpa/inet.h> 440263509Sdim#endif 441243789Sdim#ifdef HAVE_NETDB_H 442243789Sdim#include <netdb.h> 443243789Sdim#endif 444243789Sdim#ifdef HAVE_UNISTD_H 445243789Sdim#include <unistd.h> 446243789Sdim#endif], 447243789Sdimiruserok) 448243789Sdim 449243789SdimAC_NEED_PROTO([ 450243789Sdim#ifdef HAVE_SYS_TYPES_H 451243789Sdim#include <sys/types.h> 452243789Sdim#endif 453263509Sdim#ifdef HAVE_SYS_SOCKET_H 454243789Sdim#include <sys/socket.h> 455243789Sdim#endif 456243789Sdim#ifdef HAVE_NETINET_IN_H 457243789Sdim#include <netinet/in.h> 458243789Sdim#endif 459263509Sdim#ifdef HAVE_ARPA_INET_H 460263509Sdim#include <arpa/inet.h> 461243789Sdim#endif], 462243789Sdiminet_aton) 463243789Sdim 464243789SdimAC_FIND_FUNC_NO_LIBS(crypt, crypt)dnl 465243789Sdim 466243789SdimAC_REQUIRE([rk_BROKEN_REALLOC])dnl 467243789Sdim 468243789Sdimdnl AC_KRB_FUNC_GETCWD_BROKEN 469243789Sdim 470243789Sdimdnl 471243789Sdimdnl Checks for prototypes and declarations 472243789Sdimdnl 473243789Sdim 474243789SdimAC_PROTO_COMPAT([ 475243789Sdim#ifdef HAVE_SYS_TYPES_H 476243789Sdim#include <sys/types.h> 477243789Sdim#endif 478243789Sdim#ifdef HAVE_SYS_SOCKET_H 479243789Sdim#include <sys/socket.h> 480243789Sdim#endif 481243789Sdim#ifdef HAVE_NETINET_IN_H 482243789Sdim#include <netinet/in.h> 483243789Sdim#endif 484243789Sdim#ifdef HAVE_ARPA_INET_H 485243789Sdim#include <arpa/inet.h> 486243789Sdim#endif 487243789Sdim#ifdef HAVE_NETDB_H 488243789Sdim#include <netdb.h> 489243789Sdim#endif 490243789Sdim], 491243789Sdimgethostbyname, struct hostent *gethostbyname(const char *)) 492243789Sdim 493243789SdimAC_PROTO_COMPAT([ 494243789Sdim#ifdef HAVE_SYS_TYPES_H 495243789Sdim#include <sys/types.h> 496243789Sdim#endif 497243789Sdim#ifdef HAVE_SYS_SOCKET_H 498243789Sdim#include <sys/socket.h> 499243789Sdim#endif 500252723Sdim#ifdef HAVE_NETINET_IN_H 501243789Sdim#include <netinet/in.h> 502243789Sdim#endif 503243789Sdim#ifdef HAVE_ARPA_INET_H 504243789Sdim#include <arpa/inet.h> 505243789Sdim#endif 506243789Sdim#ifdef HAVE_NETDB_H 507243789Sdim#include <netdb.h> 508243789Sdim#endif 509243789Sdim], 510243789Sdimgethostbyaddr, struct hostent *gethostbyaddr(const void *, size_t, int)) 511243789Sdim 512243789SdimAC_PROTO_COMPAT([ 513243789Sdim#ifdef HAVE_SYS_TYPES_H 514243789Sdim#include <sys/types.h> 515243789Sdim#endif 516243789Sdim#ifdef HAVE_SYS_SOCKET_H 517243789Sdim#include <sys/socket.h> 518243789Sdim#endif 519243789Sdim#ifdef HAVE_NETINET_IN_H 520243789Sdim#include <netinet/in.h> 521243789Sdim#endif 522243789Sdim#ifdef HAVE_ARPA_INET_H 523243789Sdim#include <arpa/inet.h> 524243789Sdim#endif 525243789Sdim#ifdef HAVE_NETDB_H 526243789Sdim#include <netdb.h> 527243789Sdim#endif 528243789Sdim], 529263509Sdimgetservbyname, struct servent *getservbyname(const char *, const char *)) 530263509Sdim 531263509SdimAC_PROTO_COMPAT([ 532263509Sdim#ifdef HAVE_SYS_TYPES_H 533243789Sdim#include <sys/types.h> 534243789Sdim#endif 535243789Sdim#ifdef HAVE_SYS_SOCKET_H 536243789Sdim#include <sys/socket.h> 537243789Sdim#endif 538243789Sdim], 539243789Sdimgetsockname, int getsockname(int, struct sockaddr*, socklen_t*)) 540243789Sdim 541243789SdimAC_PROTO_COMPAT([ 542243789Sdim#ifdef HAVE_SYSLOG_H 543243789Sdim#include <syslog.h> 544243789Sdim#endif 545243789Sdim], 546243789Sdimopenlog, void openlog(const char *, int, int)) 547243789Sdim 548243789SdimAC_NEED_PROTO([ 549243789Sdim#ifdef HAVE_CRYPT_H 550243789Sdim#include <crypt.h> 551243789Sdim#endif 552243789Sdim#ifdef HAVE_UNISTD_H 553243789Sdim#include <unistd.h> 554243789Sdim#endif 555243789Sdim], 556243789Sdimcrypt) 557243789Sdim 558243789Sdimdnl variables 559243789Sdim 560243789Sdimrk_CHECK_VAR(h_errno, 561243789Sdim[#ifdef HAVE_SYS_TYPES_H 562243789Sdim#include <sys/types.h> 563243789Sdim#endif 564243789Sdim#ifdef HAVE_NETDB_H 565243789Sdim#include <netdb.h> 566243789Sdim#endif]) 567243789Sdim 568243789Sdimrk_CHECK_VAR(h_errlist, 569243789Sdim[#ifdef HAVE_NETDB_H 570243789Sdim#include <netdb.h> 571243789Sdim#endif]) 572243789Sdim 573243789Sdimrk_CHECK_VAR(h_nerr, 574243789Sdim[#ifdef HAVE_NETDB_H 575243789Sdim#include <netdb.h> 576243789Sdim#endif]) 577243789Sdim 578243789Sdimrk_CHECK_VAR([__progname], 579243789Sdim[#ifdef HAVE_ERR_H 580243789Sdim#include <err.h> 581243789Sdim#endif]) 582252723Sdim 583243789SdimAC_CHECK_DECLS([optarg, optind, opterr, optopt, environ],[],[][ 584243789Sdim#include <stdlib.h> 585243789Sdim#ifdef HAVE_UNISTD_H 586243789Sdim#include <unistd.h> 587243789Sdim#endif]) 588243789Sdim 589243789Sdimdnl 590243789Sdimdnl Check for fields in struct tm 591243789Sdimdnl 592243789Sdim 593243789SdimAC_HAVE_STRUCT_FIELD(struct tm, tm_gmtoff, [#include <time.h>]) 594243789SdimAC_HAVE_STRUCT_FIELD(struct tm, tm_zone, [#include <time.h>]) 595243789Sdim 596243789Sdimdnl 597243789Sdimdnl or do we have a variable `timezone' ? 598243789Sdimdnl 599252723Sdim 600252723Sdimrk_CHECK_VAR(timezone,[#include <time.h>]) 601243789Sdimrk_CHECK_VAR(altzone,[#include <time.h>]) 602243789Sdim 603243789SdimAC_HAVE_TYPE([sa_family_t],[ 604243789Sdim#include <sys/types.h> 605243789Sdim#include <sys/socket.h>]) 606243789SdimAC_HAVE_TYPE([socklen_t],[ 607243789Sdim#include <sys/types.h> 608243789Sdim#include <sys/socket.h>]) 609243789SdimAC_HAVE_TYPE([struct sockaddr], [ 610243789Sdim#include <sys/types.h> 611243789Sdim#include <sys/socket.h>]) 612243789SdimAC_HAVE_TYPE([struct sockaddr_storage], [ 613243789Sdim#include <sys/types.h> 614243789Sdim#include <sys/socket.h>]) 615243789SdimAC_HAVE_TYPE([struct addrinfo], [ 616243789Sdim#include <sys/types.h> 617243789Sdim#include <netdb.h>]) 618243789SdimAC_HAVE_TYPE([struct ifaddrs], [#include <ifaddrs.h>]) 619252723SdimAC_HAVE_TYPE([struct iovec],[ 620243789Sdim#include <sys/types.h> 621243789Sdim#include <sys/uio.h> 622243789Sdim]) 623243789SdimAC_HAVE_TYPE([struct msghdr],[ 624243789Sdim#include <sys/types.h> 625243789Sdim#include <sys/socket.h> 626243789Sdim]) 627243789Sdim 628243789Sdimdnl 629243789Sdimdnl Check for struct winsize 630243789Sdimdnl 631243789Sdim 632243789SdimAC_KRB_STRUCT_WINSIZE 633243789Sdim 634243789Sdimdnl 635243789Sdimdnl Check for struct spwd 636243789Sdimdnl 637243789Sdim 638243789SdimAC_KRB_STRUCT_SPWD 639243789Sdim 640243789Sdim# 641243789Sdim# Check if we want samba's socket wrapper 642243789Sdim# 643243789Sdim 644243789Sdimsamba_SOCKET_WRAPPER 645243789Sdim 646243789Sdimdnl won't work with automake 647243789Sdimdnl moved to AC_OUTPUT in configure.in 648243789Sdimdnl AC_CONFIG_FILES($1/Makefile) 649243789Sdim 650243789SdimLIB_roken="${LIB_roken} \$(LIB_crypt) \$(LIB_dbopen)" 651243789Sdim 652243789SdimAC_SUBST(DIR_roken)dnl 653243789SdimAC_SUBST(LIB_roken)dnl 654243789SdimAC_SUBST(INCLUDES_roken)dnl 655243789Sdim]) 656243789Sdim