1 /* 2 * acconfig.h 3 * input file for autoheader/autoconf/configure: extra stuff for config.h 4 */ 5 /* 6 * This file is 7 * Copyright (C) 1997-2000 Ian Jackson <ian@davenant.greenend.org.uk> 8 * 9 * It is part of adns, which is 10 * Copyright (C) 1997-2000 Ian Jackson <ian@davenant.greenend.org.uk> 11 * Copyright (C) 1999-2000 Tony Finch <dot@dotat.at> 12 * 13 * This program is free software; you can redistribute it and/or modify 14 * it under the terms of the GNU General Public License as published by 15 * the Free Software Foundation; either version 2, or (at your option) 16 * any later version. 17 * 18 * This program is distributed in the hope that it will be useful, 19 * but WITHOUT ANY WARRANTY; without even the implied warranty of 20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21 * GNU General Public License for more details. 22 * 23 * You should have received a copy of the GNU General Public License 24 * along with this program; if not, write to the Free Software Foundation, 25 * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 26 */ 27 28 /* Define if inline functions a la GCC are available. */ 29 #undef HAVE_INLINE 30 31 /* Define if function attributes a la GCC 2.5 and higher are available. */ 32 #undef HAVE_GNUC25_ATTRIB 33 34 /* Define if constant functions a la GCC 2.5 and higher are available. */ 35 #undef HAVE_GNUC25_CONST 36 37 /* Define if nonreturning functions a la GCC 2.5 and higher are available. */ 38 #undef HAVE_GNUC25_NORETURN 39 40 /* Define if printf-format argument lists a la GCC are available. */ 41 #undef HAVE_GNUC25_PRINTFFORMAT 42 43 /* Define if we want to include rpc/types.h. Crap BSDs put INADDR_LOOPBACK there. */ 44 #undef HAVEUSE_RPCTYPES_H 45 46 @BOTTOM@ 47 48 /* Use the definitions: */ 49 50 #ifndef HAVE_INLINE 51 #define inline 52 #endif 53 54 #ifdef HAVE_POLL 55 #include <sys/poll.h> 56 #else 57 /* kludge it up */ 58 struct pollfd { int fd; short events; short revents; }; 59 #define POLLIN 1 60 #define POLLPRI 2 61 #define POLLOUT 4 62 #endif 63 64 /* GNU C attributes. */ 65 #ifndef FUNCATTR 66 #ifdef HAVE_GNUC25_ATTRIB 67 #define FUNCATTR(x) __attribute__(x) 68 #else 69 #define FUNCATTR(x) 70 #endif 71 #endif 72 73 /* GNU C printf formats, or null. */ 74 #ifndef ATTRPRINTF 75 #ifdef HAVE_GNUC25_PRINTFFORMAT 76 #define ATTRPRINTF(si,tc) format(printf,si,tc) 77 #else 78 #define ATTRPRINTF(si,tc) 79 #endif 80 #endif 81 #ifndef PRINTFFORMAT 82 #define PRINTFFORMAT(si,tc) FUNCATTR((ATTRPRINTF(si,tc))) 83 #endif 84 85 /* GNU C nonreturning functions, or null. */ 86 #ifndef ATTRNORETURN 87 #ifdef HAVE_GNUC25_NORETURN 88 #define ATTRNORETURN noreturn 89 #else 90 #define ATTRNORETURN 91 #endif 92 #endif 93 #ifndef NONRETURNING 94 #define NONRETURNING FUNCATTR((ATTRNORETURN)) 95 #endif 96 97 /* Combination of both the above. */ 98 #ifndef NONRETURNPRINTFFORMAT 99 #define NONRETURNPRINTFFORMAT(si,tc) FUNCATTR((ATTRPRINTF(si,tc),ATTRNORETURN)) 100 #endif 101 102 /* GNU C constant functions, or null. */ 103 #ifndef ATTRCONST 104 #ifdef HAVE_GNUC25_CONST 105 #define ATTRCONST const 106 #else 107 #define ATTRCONST 108 #endif 109 #endif 110 #ifndef CONSTANT 111 #define CONSTANT FUNCATTR((ATTRCONST)) 112 #endif 113 114 #ifdef HAVEUSE_RPCTYPES_H 115 #include <rpc/types.h> 116 #endif 117 118 #ifdef HAVE_SYS_SELECT_H 119 #include <sys/select.h> 120 #endif 121