Import bind 9.5.2 vendor sources.
[dragonfly.git] / contrib / bind-9.5.2 / lib / lwres / include / lwres / platform.h.in
1 /*
2  * Copyright (C) 2004, 2005, 2007  Internet Systems Consortium, Inc. ("ISC")
3  * Copyright (C) 2000, 2001  Internet Software Consortium.
4  *
5  * Permission to use, copy, modify, and/or distribute this software for any
6  * purpose with or without fee is hereby granted, provided that the above
7  * copyright notice and this permission notice appear in all copies.
8  *
9  * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
10  * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
11  * AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
12  * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13  * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
14  * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15  * PERFORMANCE OF THIS SOFTWARE.
16  */
17
18 /* $Id: platform.h.in,v 1.21 2007/06/19 23:47:23 tbox Exp $ */
19
20 /*! \file */
21
22 #ifndef LWRES_PLATFORM_H
23 #define LWRES_PLATFORM_H 1
24
25 /*****
26  ***** Platform-dependent defines.
27  *****/
28
29 /***
30  *** Network.
31  ***/
32
33 /*
34  * Define if this system needs the <netinet/in6.h> header file for IPv6.
35  */
36 @LWRES_PLATFORM_NEEDNETINETIN6H@
37
38 /*
39  * Define if this system needs the <netinet6/in6.h> header file for IPv6.
40  */
41 @LWRES_PLATFORM_NEEDNETINET6IN6H@
42
43 /*
44  * If sockaddrs on this system have an sa_len field, LWRES_PLATFORM_HAVESALEN
45  * will be defined.
46  */
47 @LWRES_PLATFORM_HAVESALEN@
48
49 /*
50  * If this system has the IPv6 structure definitions, LWRES_PLATFORM_HAVEIPV6
51  * will be defined.
52  */
53 @LWRES_PLATFORM_HAVEIPV6@
54
55 /*
56  * If this system is missing in6addr_any, LWRES_PLATFORM_NEEDIN6ADDRANY will
57  * be defined.
58  */
59 @LWRES_PLATFORM_NEEDIN6ADDRANY@
60
61 /*
62  * If this system is missing in6addr_loopback, 
63  * LWRES_PLATFORM_NEEDIN6ADDRLOOPBACK will be defined.
64  */
65 @LWRES_PLATFORM_NEEDIN6ADDRLOOPBACK@
66
67 /*
68  * If this system has in_addr6, rather than in6_addr,
69  * LWRES_PLATFORM_HAVEINADDR6 will be defined.
70  */
71 @LWRES_PLATFORM_HAVEINADDR6@
72
73 /*
74  * Defined if unistd.h does not cause fd_set to be delared.
75  */
76 @LWRES_PLATFORM_NEEDSYSSELECTH@
77
78 /*
79  * Used to control how extern data is linked; needed for Win32 platforms.
80  */
81 @LWRES_PLATFORM_USEDECLSPEC@
82
83 /*
84  * Defined this system needs vsnprintf() and snprintf().
85  */
86 @LWRES_PLATFORM_NEEDVSNPRINTF@
87  
88 /*
89  * If this system need a modern sprintf() that returns (int) not (char*).
90  */
91 @LWRES_PLATFORM_NEEDSPRINTF@
92
93 /*
94  * The printf format string modifier to use with lwres_uint64_t values.
95  */
96 @LWRES_PLATFORM_QUADFORMAT@
97
98 /*! \brief
99  * Define if this system needs strtoul.
100  */
101 @LWRES_PLATFORM_NEEDSTRTOUL@
102
103 #ifndef LWRES_PLATFORM_USEDECLSPEC
104 #define LIBLWRES_EXTERNAL_DATA
105 #else
106 #ifdef LIBLWRES_EXPORTS
107 #define LIBLWRES_EXTERNAL_DATA __declspec(dllexport)
108 #else
109 #define LIBLWRES_EXTERNAL_DATA __declspec(dllimport)
110 #endif
111 #endif
112
113 /*
114  * Tell Emacs to use C mode on this file.
115  * Local Variables:
116  * mode: c
117  * End:
118  */
119
120 #endif /* LWRES_PLATFORM_H */