1 /* A manual version of config.h fit for windows machines. */
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.
9 #define GOOGLE_PERFTOOLS_WINDOWS_CONFIG_H_
12 #ifndef GOOGLE_PERFTOOLS_WINDOWS_CONFIG_H_
13 #define GOOGLE_PERFTOOLS_WINDOWS_CONFIG_H_
15 /* define this if you are linking tcmalloc statically and overriding the
17 * For instructions on how to use this mode, see
18 * http://groups.google.com/group/google-perftools/browse_thread/thread/41cd3710af85e57b
20 #undef WIN32_OVERRIDE_ALLOCATORS
22 /* Define to 1 if your libc has a snprintf implementation */
25 /* Define to 1 if compiler supports __builtin_stack_pointer */
26 #undef HAVE_BUILTIN_STACK_POINTER
28 /* Define to 1 if you have the <conflict-signal.h> header file. */
29 #undef HAVE_CONFLICT_SIGNAL_H
31 /* Define to 1 if you have the <cygwin/signal.h> header file. */
32 #undef HAVE_CYGWIN_SIGNAL_H
34 /* Define to 1 if you have the declaration of `cfree', and to 0 if you don't.
36 #undef HAVE_DECL_CFREE
38 /* Define to 1 if you have the declaration of `memalign', and to 0 if you
40 #undef HAVE_DECL_MEMALIGN
42 /* Define to 1 if you have the declaration of `posix_memalign', and to 0 if
44 #undef HAVE_DECL_POSIX_MEMALIGN
46 /* Define to 1 if you have the declaration of `pvalloc', and to 0 if you
48 #undef HAVE_DECL_PVALLOC
50 /* Define to 1 if you have the declaration of `uname', and to 0 if you don't.
52 #undef HAVE_DECL_UNAME
54 /* Define to 1 if you have the declaration of `valloc', and to 0 if you don't.
56 #undef HAVE_DECL_VALLOC
58 /* Define to 1 if you have the <dlfcn.h> header file. */
61 /* Define to 1 if the system has the type `Elf32_Versym'. */
62 #undef HAVE_ELF32_VERSYM
64 /* Define to 1 if you have the <execinfo.h> header file. */
65 #undef HAVE_EXECINFO_H
67 /* Define to 1 if you have the <fcntl.h> header file. */
70 /* Define to 1 if you have the <features.h> header file. */
71 #undef HAVE_FEATURES_H
73 /* Define to 1 if you have the `geteuid' function. */
76 /* Define to 1 if you have the `getpagesize' function. */
77 #define HAVE_GETPAGESIZE 1 /* we define it in windows/port.cc */
79 /* Define to 1 if you have the <glob.h> header file. */
82 /* Define to 1 if you have the <grp.h> header file. */
85 /* Define to 1 if you have the <inttypes.h> header file. */
86 #undef HAVE_INTTYPES_H
88 /* Define to 1 if you have the <libunwind.h> header file. */
89 #undef HAVE_LIBUNWIND_H
91 /* Define to 1 if you have the <linux/ptrace.h> header file. */
92 #undef HAVE_LINUX_PTRACE_H
94 /* Define to 1 if you have the <malloc.h> header file. */
95 #define HAVE_MALLOC_H 1
97 /* Define to 1 if you have the <malloc/malloc.h> header file. */
98 #undef HAVE_MALLOC_MALLOC_H
100 /* Define to 1 if you have the <memory.h> header file. */
103 /* Define to 1 if you have a working `mmap' system call. */
106 /* define if the compiler implements namespaces */
107 #define HAVE_NAMESPACES 1
109 /* Define to 1 if you have the <poll.h> header file. */
112 /* define if libc has program_invocation_name */
113 #undef HAVE_PROGRAM_INVOCATION_NAME
115 /* Define if you have POSIX threads libraries and header files. */
118 /* Define to 1 if you have the <pwd.h> header file. */
121 /* Define to 1 if you have the `sbrk' function. */
124 /* Define to 1 if you have the <sched.h> header file. */
127 /* Define to 1 if you have the <stdint.h> header file. */
130 /* Define to 1 if you have the <stdlib.h> header file. */
131 #define HAVE_STDLIB_H 1
133 /* Define to 1 if you have the <strings.h> header file. */
134 #undef HAVE_STRINGS_H
136 /* Define to 1 if you have the <string.h> header file. */
137 #define HAVE_STRING_H 1
139 /* Define to 1 if the system has the type `struct mallinfo'. */
140 #undef HAVE_STRUCT_MALLINFO
142 /* Define to 1 if you have the <sys/cdefs.h> header file. */
143 #undef HAVE_SYS_CDEFS_H
145 /* Define to 1 if you have the <sys/malloc.h> header file. */
146 #undef HAVE_SYS_MALLOC_H
148 /* Define to 1 if you have the <sys/param.h> header file. */
149 #undef HAVE_SYS_PARAM_H
151 /* Define to 1 if you have the <sys/prctl.h> header file. */
152 #undef HAVE_SYS_PRCTL_H
154 /* Define to 1 if you have the <sys/resource.h> header file. */
155 #undef HAVE_SYS_RESOURCE_H
157 /* Define to 1 if you have the <sys/socket.h> header file. */
158 #undef HAVE_SYS_SOCKET_H
160 /* Define to 1 if you have the <sys/stat.h> header file. */
161 #define HAVE_SYS_STAT_H 1
163 /* Define to 1 if you have the <sys/syscall.h> header file. */
164 #undef HAVE_SYS_SYSCALL_H
166 /* Define to 1 if you have the <sys/types.h> header file. */
167 #define HAVE_SYS_TYPES_H 1
169 /* <sys/ucontext.h> is broken on redhat 7 */
170 #undef HAVE_SYS_UCONTEXT_H
172 /* Define to 1 if you have the <sys/wait.h> header file. */
173 #undef HAVE_SYS_WAIT_H
175 /* Define to 1 if compiler supports __thread */
178 /* Define to 1 if you have the <ucontext.h> header file. */
179 #undef HAVE_UCONTEXT_H
181 /* Define to 1 if you have the <unistd.h> header file. */
184 /* Define to 1 if you have the <unwind.h> header file. */
187 /* Define to 1 if you have the <valgrind.h> header file. */
188 #undef HAVE_VALGRIND_H
190 /* define if your compiler has __attribute__ */
191 #undef HAVE___ATTRIBUTE__
193 /* Define to 1 if compiler supports __environ */
194 #undef HAVE___ENVIRON
196 /* Define to 1 if the system has the type `__int64'. */
197 #define HAVE___INT64 1
199 /* prefix where we look for installed files */
200 #undef INSTALL_PREFIX
202 /* Define to 1 if int32_t is equivalent to intptr_t */
203 #undef INT32_EQUALS_INTPTR
205 /* Define to the sub-directory in which libtool stores uninstalled libraries.
209 /* Define to 'volatile' if __malloc_hook is declared volatile */
210 #undef MALLOC_HOOK_MAYBE_VOLATILE
212 /* Define to 1 if your C compiler doesn't accept -c and -o together. */
213 #undef NO_MINUS_C_MINUS_O
215 /* Name of package */
216 #define PACKAGE "gperftools"
218 /* Define to the address where bug reports for this package should be sent. */
219 #define PACKAGE_BUGREPORT "opensource@google.com"
221 /* Define to the full name of this package. */
222 #define PACKAGE_NAME "gperftools"
224 /* Define to the full name and version of this package. */
225 #define PACKAGE_STRING "gperftools 2.0"
227 /* Define to the one symbol short name of this package. */
228 #define PACKAGE_TARNAME "gperftools"
230 /* Define to the home page for this package. */
233 /* Define to the version of this package. */
234 #define PACKAGE_VERSION "2.0"
236 /* How to access the PC from a struct ucontext */
237 #undef PC_FROM_UCONTEXT
239 /* Always the empty-string on non-windows systems. On windows, should be
240 "__declspec(dllexport)". This way, when we compile the dll, we export our
241 functions/classes. It's safe to define this here because config.h is only
242 used internally, to compile the DLL, and every DLL source file #includes
243 "config.h" before anything else. */
244 #ifndef PERFTOOLS_DLL_DECL
245 # define PERFTOOLS_IS_A_DLL 1 /* not set if you're statically linking */
246 # define PERFTOOLS_DLL_DECL __declspec(dllexport)
247 # define PERFTOOLS_DLL_DECL_FOR_UNITTESTS __declspec(dllimport)
250 /* printf format code for printing a size_t and ssize_t */
253 /* printf format code for printing a size_t and ssize_t */
256 /* printf format code for printing a size_t and ssize_t */
259 /* Mark the systems where we know it's bad if pthreads runs too
260 early before main (before threads are initialized, presumably). */
262 #define PTHREADS_CRASHES_IF_RUN_TOO_EARLY 1
265 /* Define to necessary symbol if this constant uses a non-standard name on
267 #undef PTHREAD_CREATE_JOINABLE
269 /* Define to 1 if you have the ANSI C header files. */
270 #define STDC_HEADERS 1
272 /* the namespace where STL code like vector<> is defined */
273 #define STL_NAMESPACE std
275 /* Version number of package */
278 /* C99 says: define this to get the PRI... macros from stdint.h */
279 #ifndef __STDC_FORMAT_MACROS
280 # define __STDC_FORMAT_MACROS 1
283 /* Define to `__inline__' or `__inline' if that's what the C compiler
284 calls it, or to nothing if 'inline' is not supported under any name. */
289 // ---------------------------------------------------------------------
290 // Extra stuff not found in config.h.in
292 // This must be defined before the windows.h is included. We need at
293 // least 0x0400 for mutex.h to have access to TryLock, and at least
294 // 0x0501 for patch_functions.cc to have access to GetModuleHandleEx.
295 // (This latter is an optimization we could take out if need be.)
297 # define _WIN32_WINNT 0x0501
300 // We want to make sure not to ever try to #include heap-checker.h
301 #define NO_HEAP_CHECK 1
303 // TODO(csilvers): include windows/port.h in every relevant source file instead?
304 #include "windows/port.h"
306 #endif /* GOOGLE_PERFTOOLS_WINDOWS_CONFIG_H_ */