blob: d8a1e94644f364bcec39120bfce9adfb96c2f39e [file] [log] [blame]
Brian Silverman70325d62015-09-20 17:00:43 -04001/* A manual version of config.h fit for windows machines. */
2
3/* Sometimes we accidentally #include this config.h instead of the one
4 in .. -- this is particularly true for msys/mingw, which uses the
5 unix config.h but also runs code in the windows directory.
6*/
7#if defined(__MINGW32__) || defined(__MING64__)
8#define CTEMPLATE_DLL_DECL
9// These two lines make sure we read the unix-style config.h, and not the
10// windows-style config.h -- it would be bad if we tried to read both!
11#include "../config.h"
12#define GOOGLE_CTEMPLATE_WINDOWS_CONFIG_H_
13#endif
14
15#ifndef GOOGLE_CTEMPLATE_WINDOWS_CONFIG_H_
16#define GOOGLE_CTEMPLATE_WINDOWS_CONFIG_H_
17
18/* Namespace for Google classes */
19#define GOOGLE_NAMESPACE ctemplate
20
21/* the location of <unordered_map> or <hash_map> */
22#define HASH_MAP_H <hash_map>
23
24/* the namespace of hash_map/hash_set */
25#define HASH_NAMESPACE stdext
26
27/* the location of <unordered_set> or <hash_set> */
28#define HASH_SET_H <hash_set>
29
30/* Define to 1 if you have the <byteswap.h> header file. */
31#undef HAVE_BYTESWAP_H
32
33/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
34 */
35#undef HAVE_DIRENT_H
36
37/* Define to 1 if you have the <dlfcn.h> header file. */
38#undef HAVE_DLFCN_H
39
40/* Define to 1 if you have the <endian.h> header file. */
41#undef HAVE_ENDIAN_H
42
43/* Define to 1 if you have the `getopt' function. */
44#undef HAVE_GETOPT
45
46/* Define to 1 if you have the <getopt.h> header file. */
47#undef HAVE_GETOPT_H
48
49/* Define to 1 if you have the `getopt_long' function. */
50#undef HAVE_GETOPT_LONG
51
52/* define if the compiler has hash_map */
53#define HAVE_HASH_MAP 1
54
55/* define if the compiler has hash_set */
56#define HAVE_HASH_SET 1
57
58/* Define to 1 if you have the <inttypes.h> header file. */
59#undef HAVE_INTTYPES_H
60
61/* Define to 1 if you have the <libkern/OSByteOrder.h> header file. */
62#undef HAVE_LIBKERN_OSBYTEORDER_H
63
64/* Define to 1 if you have the <machine/endian.h> header file. */
65#undef HAVE_MACHINE_ENDIAN_H
66
67/* Define to 1 if you have the <memory.h> header file. */
68#define HAVE_MEMORY_H 1
69
70/* define if the compiler implements namespaces */
71#define HAVE_NAMESPACES 1
72
73/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
74#undef HAVE_NDIR_H
75
76/* Define if you have POSIX threads libraries and header files. */
77#undef HAVE_PTHREAD
78
79/* define if the compiler implements pthread_rwlock_* */
80#undef HAVE_RWLOCK
81
82/* Define to 1 if you have the <stdint.h> header file. */
83#undef HAVE_STDINT_H
84
85/* Define to 1 if you have the <stdlib.h> header file. */
86#define HAVE_STDLIB_H 1
87
88/* Define to 1 if you have the <strings.h> header file. */
89#undef HAVE_STRINGS_H
90
91/* Define to 1 if you have the <string.h> header file. */
92#define HAVE_STRING_H 1
93
94/* Define to 1 if you have the <sys/byteorder.h> header file. */
95#undef HAVE_SYS_BYTEORDER_H
96
97/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
98 */
99#undef HAVE_SYS_DIR_H
100
101/* Define to 1 if you have the <sys/endian.h> header file. */
102#undef HAVE_SYS_ENDIAN_H
103
104/* Define to 1 if you have the <sys/isa_defs.h> header file. */
105#undef HAVE_SYS_ISA_DEFS_H
106
107/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
108 */
109#undef HAVE_SYS_NDIR_H
110
111/* Define to 1 if you have the <sys/stat.h> header file. */
112#define HAVE_SYS_STAT_H 1
113
114/* Define to 1 if you have the <sys/types.h> header file. */
115#define HAVE_SYS_TYPES_H 1
116
117/* Define to 1 if the system has the type `uint32_t'. */
118#undef HAVE_UINT32_T
119
120/* Define to 1 if the system has the type `uint64_t'. */
121#undef HAVE_UINT64_T
122
123/* Define to 1 if you have the <unistd.h> header file. */
124#undef HAVE_UNISTD_H
125
126/* define if the compiler supports unordered_{map,set} */
127#undef HAVE_UNORDERED_MAP
128
129/* Define to 1 if you have the <utime.h> header file. */
130#undef HAVE_UTIME_H
131
132/* Define to 1 if the system has the type `u_int32_t'. */
133#undef HAVE_U_INT32_T
134
135/* Define to 1 if the system has the type `u_int64_t'. */
136#undef HAVE_U_INT64_T
137
138/* define if your compiler has __attribute__ */
139#undef HAVE___ATTRIBUTE__
140
141/* Define to 1 if the system has the type `__uint32. */
142#define HAVE___INT32 1
143
144/* Define to 1 if the system has the type `__uint64. */
145#define HAVE___INT64 1
146
147/* The namespace to put the htmlparser code. */
148#define HTMLPARSER_NAMESPACE google_ctemplate_streamhtmlparser
149
150/* define if first argument to InterlockedExchange is just LONG */
151#undef INTERLOCKED_EXCHANGE_NONVOLATILE
152
153/* Define to the sub-directory in which libtool stores uninstalled libraries.
154 */
155#undef LT_OBJDIR
156
157/* Name of package */
158#undef PACKAGE
159
160/* Define to the address where bug reports for this package should be sent. */
161#undef PACKAGE_BUGREPORT
162
163/* Define to the full name of this package. */
164#undef PACKAGE_NAME
165
166/* Define to the full name and version of this package. */
167#define PACKAGE_STRING "ctemplate 1.1"
168
169/* Define to the one symbol short name of this package. */
170#undef PACKAGE_TARNAME
171
172/* Define to the home page for this package. */
173#undef PACKAGE_URL
174
175/* Define to the version of this package. */
176#undef PACKAGE_VERSION
177
178/* printf format code for printing a size_t and ssize_t */
179#define PRIdS "Id"
180
181/* printf format code for printing a size_t and ssize_t */
182#define PRIuS "Iu"
183
184/* printf format code for printing a size_t and ssize_t */
185#define PRIxS "Ix"
186
187/* Define to necessary symbol if this constant uses a non-standard name on
188 your system. */
189#undef PTHREAD_CREATE_JOINABLE
190
191/* Define to 1 if you have the ANSI C header files. */
192#define STDC_HEADERS 1
193
194/* the namespace where STL code like vector<> is defined */
195#define STL_NAMESPACE std
196
197/* Version number of package */
198#undef VERSION
199
200/* Stops putting the code inside the Google namespace */
201#define _END_GOOGLE_NAMESPACE_ }
202
203/* Puts following code inside the Google namespace */
204#define _START_GOOGLE_NAMESPACE_ namespace ctemplate {
205
206// ---------------------------------------------------------------------
207// Extra stuff not found in config.h.in
208
209// This must be defined before anything else in our project: make sure
210// that when compiling the dll, we export our functions/classes. Safe
211// to define this here because this file is only used internally, to
212// compile the DLL, and every dll source file #includes "config.h"
213// before anything else.
214#ifndef CTEMPLATE_DLL_DECL
215# define CTEMPLATE_DLL_DECL __declspec(dllexport)
216# define CTEMPLATE_DLL_DECL_FOR_UNITTESTS __declspec(dllimport)
217#endif
218
219// TODO(csilvers): include windows/port.h in every relevant source file instead?
220#include "windows/port.h"
221
222#endif /* GOOGLE_CTEMPLATE_WINDOWS_CONFIG_H_ */